mirror of
				https://github.com/gitbucket/gitbucket.git
				synced 2025-10-31 18:46:28 +01:00 
			
		
		
		
	Added the index page which is used while in development.
This commit is contained in:
		| @@ -4,8 +4,9 @@ import javax.servlet._ | ||||
|  | ||||
| class ScalatraBootstrap extends LifeCycle { | ||||
|   override def init(context: ServletContext) { | ||||
|     context.mount(new CreateRepositoryController, "/new") | ||||
|     context.mount(new IndexController, "/") | ||||
|     context.mount(new WikiController, "/*") | ||||
|     context.mount(new CreateRepositoryController, "/*") | ||||
|     context.mount(new RepositoryViewerController, "/*") | ||||
|      | ||||
|     context.addListener(new ServletContextListener(){ | ||||
|   | ||||
| @@ -13,11 +13,11 @@ abstract class ControllerBase extends ScalatraFilter with ClientSideValidationFo | ||||
|    | ||||
|   implicit val jsonFormats = DefaultFormats | ||||
|    | ||||
|   implicit def context: Context = Context(servletContext.getContextPath) | ||||
|   implicit def context: Context = Context(servletContext.getContextPath, LoginUser) | ||||
|    | ||||
|   // TODO get from session | ||||
|   val LoginUser = System.getProperty("user.name") | ||||
|   private val LoginUser = System.getProperty("user.name") | ||||
|    | ||||
| } | ||||
|  | ||||
| case class Context(path: String) | ||||
| case class Context(path: String, loginUser: String) | ||||
| @@ -23,15 +23,15 @@ class CreateRepositoryController extends ControllerBase { | ||||
|   /** | ||||
|    * Show the new repository form. | ||||
|    */ | ||||
|   get("/") { | ||||
|   get("/new") { | ||||
|     html.newrepo() | ||||
|   } | ||||
|    | ||||
|   /** | ||||
|    * Create new repository. | ||||
|    */ | ||||
|   post("/", form) { form => | ||||
|     val gitdir = getRepositoryDir(LoginUser, form.name) | ||||
|   post("/new", form) { form => | ||||
|     val gitdir = getRepositoryDir(context.loginUser, form.name) | ||||
|     val repository = new RepositoryBuilder().setGitDir(gitdir).setBare.build | ||||
|  | ||||
|     repository.create | ||||
| @@ -40,7 +40,7 @@ class CreateRepositoryController extends ControllerBase { | ||||
|     config.setBoolean("http", null, "receivepack", true) | ||||
|     config.save | ||||
|  | ||||
|     val tmpdir = getInitRepositoryDir(LoginUser, form.name) | ||||
|     val tmpdir = getInitRepositoryDir(context.loginUser, form.name) | ||||
|     try { | ||||
|       // Clone the repository | ||||
|       Git.cloneRepository.setURI(gitdir.toURI.toString).setDirectory(tmpdir).call | ||||
| @@ -62,7 +62,7 @@ class CreateRepositoryController extends ControllerBase { | ||||
|     } | ||||
|      | ||||
|     // redirect to the repository | ||||
|     redirect("/%s/%s".format(LoginUser, form.name)) | ||||
|     redirect("/%s/%s".format(context.loginUser, form.name)) | ||||
|   } | ||||
|    | ||||
|   /** | ||||
| @@ -72,7 +72,7 @@ class CreateRepositoryController extends ControllerBase { | ||||
|     def validate(name: String, value: String): Option[String] = { | ||||
|       if(!value.matches("^[a-z0-9\\-_]+$")){ | ||||
|         Some("Repository name contains invalid character.") | ||||
|       } else if(getRepositories(LoginUser).contains(value)){ | ||||
|       } else if(getRepositories(context.loginUser).contains(value)){ | ||||
|         Some("Repository already exists.") | ||||
|       } else { | ||||
|         None | ||||
|   | ||||
							
								
								
									
										9
									
								
								src/main/scala/app/IndexController.scala
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								src/main/scala/app/IndexController.scala
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| package app | ||||
|  | ||||
| class IndexController extends ControllerBase { | ||||
|    | ||||
|   get("/"){ | ||||
|     html.index() | ||||
|   } | ||||
|  | ||||
| } | ||||
| @@ -63,7 +63,7 @@ class WikiController extends ControllerBase { | ||||
|     val repository = params("repository") | ||||
|      | ||||
|     WikiUtil.savePage(owner, repository, form.currentPageName, form.pageName,  | ||||
|         form.content, LoginUser, form.message.getOrElse("")) | ||||
|         form.content, context.loginUser, form.message.getOrElse("")) | ||||
|      | ||||
|     redirect("%s/%s/wiki/%s".format(owner, repository, form.pageName)) | ||||
|   } | ||||
|   | ||||
							
								
								
									
										9
									
								
								src/main/twirl/index.scala.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								src/main/twirl/index.scala.html
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | ||||
| @()(implicit context: app.Context) | ||||
| @import context._ | ||||
| @main("GitBucket"){ | ||||
|   <h1>GitBucket</h1> | ||||
|   <ul> | ||||
|     <li><a href="@path/@context.loginUser">User page</a></li> | ||||
|     <li><a href="@path/new">Create new repository</a></li> | ||||
|   </ul> | ||||
| } | ||||
| @@ -31,7 +31,7 @@ | ||||
|           <div class="nav-collapse collapse"> | ||||
|             <ul class="nav pull-right"> | ||||
|               <li><a href="@path/new">New repo</a></li> | ||||
|               <li><a href="#about">Account</a></li> | ||||
|               <li><a href="@path/@context.loginUser">Account</a></li> | ||||
|               <li><a href="#users">Users</a></li> | ||||
|               <li><a href="#contact">Sign out</a></li> | ||||
|             </ul> | ||||
| @@ -39,7 +39,7 @@ | ||||
|         </div> | ||||
|       </div> | ||||
|     </div> | ||||
|     <div class="container"> | ||||
|     <div class="container body"> | ||||
|       @body | ||||
|     </div> | ||||
|   </body> | ||||
|   | ||||
| @@ -9,6 +9,9 @@ div.head a { | ||||
|  | ||||
| div.container { | ||||
|   width: 920px; | ||||
| } | ||||
|  | ||||
| div.body { | ||||
|   margin-bottom: 40px; | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user