parent
ab7206d6b7
commit
0ddb1eb769
File diff suppressed because one or more lines are too long
@ -1,97 +1,105 @@ |
|||||||
@import "base"; |
@import "base"; |
||||||
@import "../ui/var"; |
@import "../ui/var"; |
||||||
#promo-wrapper { |
#promo-wrapper { |
||||||
padding-top: 50px; |
padding-top: 50px; |
||||||
background-color: @headerBgColor; |
background-color: @headerBgColor; |
||||||
} |
} |
||||||
|
|
||||||
#promo-logo { |
#promo-logo { |
||||||
img { |
margin-right: 50px; |
||||||
max-width: 250px; |
padding-bottom: 50px; |
||||||
} |
img { |
||||||
margin-right: 50px; |
max-width: 250px; |
||||||
padding-bottom: 50px; |
} |
||||||
} |
} |
||||||
|
|
||||||
#promo-content { |
#promo-content { |
||||||
color: #FFF; |
color: #FFF; |
||||||
margin-left: 300px; |
margin-left: 300px; |
||||||
h1, |
h1, |
||||||
h2 { |
h2 { |
||||||
font-family: 'PT Sans Narrow', sans-serif; |
font-family: 'PT Sans Narrow', sans-serif; |
||||||
line-height: 60px; |
line-height: 60px; |
||||||
margin-bottom: 0; |
margin-bottom: 0; |
||||||
text-shadow: 0 2px 1px rgba(0, 0, 0, 0.5); |
text-shadow: 0 2px 1px rgba(0, 0, 0, 0.5); |
||||||
} |
} |
||||||
h1 { |
h1 { |
||||||
font-size: 96px; |
font-size: 96px; |
||||||
line-height: 96px; |
line-height: 96px; |
||||||
margin-bottom: 30px; |
margin-bottom: 30px; |
||||||
} |
} |
||||||
h2 { |
h2 { |
||||||
font-size: 52px; |
font-size: 52px; |
||||||
line-height: 70px; |
line-height: 70px; |
||||||
font-weight: normal; |
font-weight: normal; |
||||||
} |
} |
||||||
} |
} |
||||||
|
|
||||||
#promo-form { |
#promo-form { |
||||||
padding: 40px 0; |
padding: 40px 0; |
||||||
.ipt-large { |
.ipt-large { |
||||||
border: none; |
border: none; |
||||||
border-radius: 4px; |
border-radius: 4px; |
||||||
font-size: 18px; |
font-size: 18px; |
||||||
&:focus { |
margin-right: 12px; |
||||||
box-shadow: 0 0 3px #FFF; |
&:focus { |
||||||
|
box-shadow: 0 0 3px #FFF; |
||||||
|
} |
||||||
|
} |
||||||
|
.btn-large { |
||||||
|
border-radius: 4px; |
||||||
|
font-size: 18px; |
||||||
|
margin-right: 12px; |
||||||
} |
} |
||||||
margin-right: 12px; |
|
||||||
} |
|
||||||
.btn-large { |
|
||||||
border-radius: 4px; |
|
||||||
font-size: 18px; |
|
||||||
margin-right: 12px; |
|
||||||
} |
|
||||||
} |
} |
||||||
|
|
||||||
#promo-social { |
#promo-social { |
||||||
padding-bottom: 60px; |
padding-bottom: 60px; |
||||||
.qq{ |
.qq{ |
||||||
box-shadow: 0 0 1px #1c6399; |
box-shadow: 0 0 1px #1c6399; |
||||||
} |
} |
||||||
} |
} |
||||||
|
|
||||||
#feature-wrapper { |
#feature-wrapper { |
||||||
font-family: Lato, sans-serif; |
font-family: Lato, sans-serif; |
||||||
font-size: 18px; |
font-size: 18px; |
||||||
padding: 50px 0 100px 0; |
padding: 50px 0 100px 0; |
||||||
.octicon { |
.octicon { |
||||||
color: @btnRedColor; |
color: @btnRedColor; |
||||||
font-size: 60px; |
font-size: 60px; |
||||||
height: 60px; |
height: 60px; |
||||||
width: 60px; |
width: 60px; |
||||||
line-height: 60px; |
line-height: 60px; |
||||||
margin-right: 12px; |
margin-right: 12px; |
||||||
vertical-align: middle; |
vertical-align: middle; |
||||||
display: inline-block; |
display: inline-block; |
||||||
} |
} |
||||||
b { |
b { |
||||||
color: #000; |
color: #000; |
||||||
font-size: 24px; |
font-size: 24px; |
||||||
display: inline-block; |
display: inline-block; |
||||||
line-height: 60px; |
line-height: 60px; |
||||||
} |
} |
||||||
p { |
p { |
||||||
margin: 1em 0; |
margin: 1em 0; |
||||||
line-height: 40px; |
line-height: 40px; |
||||||
padding-right: 30px; |
padding-right: 30px; |
||||||
} |
} |
||||||
a { |
a { |
||||||
color: @btnRedColor; |
color: @btnRedColor; |
||||||
&:hover { |
&:hover { |
||||||
color: @btnHoverRedColor; |
color: @btnHoverRedColor; |
||||||
|
} |
||||||
|
} |
||||||
|
.grid-1-2 { |
||||||
|
margin-bottom: 30px; |
||||||
|
} |
||||||
|
} |
||||||
|
#install-form { |
||||||
|
padding: 15px; |
||||||
|
label { |
||||||
|
width: 35%; |
||||||
|
} |
||||||
|
input { |
||||||
|
width: 30%; |
||||||
|
} |
||||||
|
input[type="checkbox"], |
||||||
|
input[type="radio"] { |
||||||
|
width: auto; |
||||||
} |
} |
||||||
} |
|
||||||
.grid-1-2 { |
|
||||||
margin-bottom: 30px; |
|
||||||
} |
|
||||||
} |
} |
@ -1 +1 @@ |
|||||||
0.4.9.0905 Beta |
0.5.0.0907 Beta |
@ -1,197 +1,149 @@ |
|||||||
{{template "base/head" .}} |
{{template "ng/base/head" .}} |
||||||
<div id="body" class="container"> |
<div id="setting-wrapper" class="main-wrapper"> |
||||||
<form action="/install" method="post" class="form-horizontal card" id="install-card"> |
<div class="container clear"> |
||||||
{{.CsrfTokenHtml}} |
<div class="setting-content"> |
||||||
<h3>Install Steps For First-time Run</h3> |
{{template "ng/base/alert" .}} |
||||||
{{template "base/alert" .}} |
<div id="setting-content"> |
||||||
<p class="help-block text-center">Gogs requires MySQL, SQLite3. or PostgreSQL. SQLite3 is only available in the official binary version.</p> |
<div class="panel panel-radius"> |
||||||
<div class="form-group"> |
<div class="panel-header"> |
||||||
<label class="col-md-3 control-label">Database Type: </label> |
<strong>{{.i18n.Tr "install.title"}}</strong> |
||||||
<div class="col-md-8"> |
</div> |
||||||
<select name="database" id="install-database" class="form-control"> |
<form class="form form-align panel-body" id="install-form" action="/install" method="post"> |
||||||
{{if .CurDbOption}}<option value="{{.CurDbOption}}">{{.CurDbOption}}</option>{{end}} |
{{.CsrfTokenHtml}} |
||||||
{{range .DbOptions}} |
<div class="text-center panel-desc">{{.i18n.Tr "install.requite_db_desc"}}</div> |
||||||
{{if not (eq $.CurDbOption .)}}<option value="{{.}}" >{{.}}</option>{{end}} |
<div class="field"> |
||||||
{{end}} |
<label class="req">{{.i18n.Tr "install.db_type"}}</label> |
||||||
</select> |
<select name="database" id="install-database" class="form-control"> |
||||||
</div> |
{{range .DbOptions}} |
||||||
</div> |
<option value="{{.}}"{{if eq $.CurDbOption .}}selected{{end}}>{{.}}</option> |
||||||
|
{{end}} |
||||||
<div class="server-sql {{if eq .CurDbOption "SQLite3"}}hide{{end}}"> |
</select> |
||||||
<div class="form-group"> |
</div> |
||||||
<label class="col-md-3 control-label">Host: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<input name="host" id="database-host" class="form-control" placeholder="Type database server host" value="{{.host}}"> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="form-group"> |
|
||||||
<label class="col-md-3 control-label">User: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<input name="user" class="form-control" placeholder="Type database username" value="{{.user}}"> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="form-group"> |
|
||||||
<label class="col-md-3 control-label">Password: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<input name="passwd" type="password" class="form-control" placeholder="Type database password" value="{{.passwd}}"> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="form-group"> |
|
||||||
<label class="col-md-3 control-label">Database Name: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<input name="database_name" type="text" class="form-control" placeholder="Type mysql database name" value="{{.database_name}}"> |
|
||||||
<p class="help-block">Recommend use INNODB engine with utf8_general_ci charset.</p> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="form-group pgsql-setting {{if not (eq .CurDbOption "PostgreSQL")}}hide{{end}}"> |
|
||||||
<label class="col-md-3 control-label">SSL Mode: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<select name="ssl_mode" class="form-control"> |
|
||||||
<option value="disable">Disable</option> |
|
||||||
<option value="require">Require</option> |
|
||||||
<option value="verify-full">Verify Full</option> |
|
||||||
</select> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="sqlite-setting {{if not (eq .CurDbOption "SQLite3")}}hide{{end}}"> |
|
||||||
<div class="form-group"> |
|
||||||
<label class="col-md-3 control-label">Path: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<input name="database_path" class="form-control" placeholder="Type sqlite3 file path" value="{{.database_path}}"> |
|
||||||
<p class="help-block">The file path of SQLite3 database.</p> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<hr/> |
|
||||||
|
|
||||||
<p class="help-block text-center">General Settings of Gogs</p> |
|
||||||
<div class="form-group"> |
|
||||||
<label class="col-md-3 control-label">Repository Path: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<input name="repo_path" type="text" class="form-control" placeholder="Type your repository directory" value="{{.repo_path}}" required="required"> |
|
||||||
<p class="help-block">The git copy of each repository is saved in this directory.</p> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="form-group"> |
<div class="server-sql {{if eq .CurDbOption "SQLite3"}}hide{{end}}"> |
||||||
<label class="col-md-3 control-label">Run User: </label> |
<div class="field"> |
||||||
<div class="col-md-8"> |
<label class="req" for="host">{{.i18n.Tr "install.host"}}</label> |
||||||
<input name="run_user" type="text" class="form-control" placeholder="Type system user name" value="{{.run_user}}" required="required"> |
<input class="ipt ipt-large ipt-radius {{if .Err_DbHost}}ipt-error{{end}}" id="host" name="host" value="{{.host}}" /> |
||||||
<p class="help-block">The user has access to visit and run Gogs.</p> |
</div> |
||||||
</div> |
<div class="field"> |
||||||
</div> |
<label class="req" for="user">{{.i18n.Tr "install.user"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_DbUser}}ipt-error{{end}}" id="user" name="user" value="{{.user}}" /> |
||||||
|
</div> |
||||||
|
<div class="field"> |
||||||
|
<label class="req" for="passwd">{{.i18n.Tr "install.password"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_DbPasswd}}ipt-error{{end}}" id="passwd" name="passwd" type="password" value="{{.passwd}}" /> |
||||||
|
</div> |
||||||
|
<div class="field"> |
||||||
|
<label class="req" for="database_name">{{.i18n.Tr "install.db_name"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_DatabaseName}}ipt-error{{end}}" id="database_name" name="database_name" value="{{.database_name}}" /> |
||||||
|
<label></label> |
||||||
|
<span class="help">{{.i18n.Tr "install.db_helper"}}</span> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
<div class="form-group"> |
<div class="field pgsql-setting {{if not (eq .CurDbOption "PostgreSQL")}}hide{{end}}"> |
||||||
<label class="col-md-3 control-label">Domain: </label> |
<label class="req">{{.i18n.Tr "install.ssl_mode"}}</label> |
||||||
<div class="col-md-8"> |
<select name="ssl_mode" class="form-control"> |
||||||
<input name="domain" type="text" class="form-control" placeholder="Type your domain name" value="{{.domain}}" required="required"> |
<option value="disable">Disable</option> |
||||||
<p class="help-block">This affects SSH clone URL.</p> |
<option value="require">Require</option> |
||||||
</div> |
<option value="verify-full">Verify Full</option> |
||||||
</div> |
</select> |
||||||
|
</div> |
||||||
|
|
||||||
<div class="form-group"> |
<div class="field sqlite-setting {{if not (eq .CurDbOption "SQLite3")}}hide{{end}}"> |
||||||
<label class="col-md-3 control-label">App URL: </label> |
<label class="req" for="database_path">{{.i18n.Tr "install.path"}}</label> |
||||||
<div class="col-md-8"> |
<input class="ipt ipt-large ipt-radius {{if .Err_DatabasePath}}ipt-error{{end}}" id="database_path" name="database_path" value="{{.database_path}}" /> |
||||||
<input name="app_url" type="text" class="form-control" placeholder="Type app root URL" value="{{.app_url}}" required="required"> |
<label></label> |
||||||
<p class="help-block">This affects HTTP/HTTPS clone URL and somewhere in e-mail.</p> |
<span class="help">{{.i18n.Tr "install.sqlite_helper"}}</span> |
||||||
</div> |
</div> |
||||||
</div> |
|
||||||
|
|
||||||
<hr/> |
<hr> |
||||||
|
|
||||||
<p class="help-block text-center">Admin Account Settings</p> |
<div class="text-center panel-desc">{{.i18n.Tr "install.general_title"}}</div> |
||||||
<div class="form-group {{if .Err_AdminName}}has-error has-feedback{{end}}"> |
<div class="field"> |
||||||
<label class="col-md-3 control-label">Username: </label> |
<label class="req" for="repo_path">{{.i18n.Tr "install.repo_path"}}</label> |
||||||
<div class="col-md-8"> |
<input class="ipt ipt-large ipt-radius {{if .Err_RepoRootPath}}ipt-error{{end}}" id="repo_path" name="repo_path" value="{{.repo_path}}" required /> |
||||||
<input name="admin_name" type="text" class="form-control" placeholder="Type admin user name" value="{{.admin_name}}" required="required"> |
<label></label> |
||||||
</div> |
<span class="help">{{.i18n.Tr "install.repo_path_helper"}}</span> |
||||||
</div> |
</div> |
||||||
|
<div class="field"> |
||||||
|
<label class="req" for="run_user">{{.i18n.Tr "install.run_user"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_RunUser}}ipt-error{{end}}" id="run_user" name="run_user" value="{{.run_user}}" required /> |
||||||
|
<label></label> |
||||||
|
<span class="help">{{.i18n.Tr "install.run_user_helper"}}</span> |
||||||
|
</div> |
||||||
|
<div class="field"> |
||||||
|
<label class="req" for="domain">{{.i18n.Tr "install.domain"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_Domain}}ipt-error{{end}}" id="domain" name="domain" value="{{.domain}}" required /> |
||||||
|
<label></label> |
||||||
|
<span class="help">{{.i18n.Tr "install.domain_helper"}}</span> |
||||||
|
</div> |
||||||
|
<div class="field"> |
||||||
|
<label class="req" for="app_url">{{.i18n.Tr "install.app_url"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_AppUrl}}ipt-error{{end}}" id="app_url" name="app_url" value="{{.app_url}}" required /> |
||||||
|
<label></label> |
||||||
|
<span class="help">{{.i18n.Tr "install.app_url_helper"}}</span> |
||||||
|
</div> |
||||||
|
|
||||||
<div class="form-group {{if .Err_AdminPasswd}}has-error has-feedback{{end}}"> |
<hr> |
||||||
<label class="col-md-3 control-label">Password: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<input name="admin_pwd" type="password" class="form-control" placeholder="Type admin user password" value="{{.admin_pwd}}" required="required"> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="form-group {{if .Err_AdminEmail}}has-error has-feedback{{end}}"> |
<div class="text-center panel-desc">{{.i18n.Tr "install.email_title"}}</div> |
||||||
<label class="col-md-3 control-label">E-mail: </label> |
<div class="field"> |
||||||
<div class="col-md-8"> |
<label for="smtp_host">{{.i18n.Tr "install.smtp_host"}}</label> |
||||||
<input name="admin_email" type="text" class="form-control" placeholder="Type admin user e-mail" value="{{.admin_email}}" required="required"> |
<input class="ipt ipt-large ipt-radius {{if .Err_SmtpHost}}ipt-error{{end}}" id="smtp_host" name="smtp_host" value="{{.smtp_host}}" /> |
||||||
</div> |
</div> |
||||||
</div> |
<div class="field"> |
||||||
|
<label for="mailer_user">{{.i18n.Tr "install.mailer_user"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_SmtpEmail}}ipt-error{{end}}" id="mailer_user" name="mailer_user" value="{{.mailer_user}}" /> |
||||||
|
</div> |
||||||
|
<div class="field"> |
||||||
|
<label for="mailer_pwd">{{.i18n.Tr "install.mailer_password"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_SmtpPasswd}}ipt-error{{end}}" id="mailer_pwd" name="mailer_pwd" type="password" value="{{.mailer_pwd}}" /> |
||||||
|
</div> |
||||||
|
|
||||||
<hr/> |
<hr> |
||||||
|
|
||||||
|
<div class="text-center panel-desc">{{.i18n.Tr "install.notify_title"}}</div> |
||||||
|
<div class="field"> |
||||||
|
<label></label> |
||||||
|
<input name="register_confirm" type="checkbox" {{if .register_confirm}}checked{{end}}> |
||||||
|
<strong>{{.i18n.Tr "install.register_confirm"}}</strong> |
||||||
|
<br> |
||||||
|
<label></label> |
||||||
|
<input name="mail_notify" type="checkbox" {{if .mail_notify}}checked{{end}}> |
||||||
|
<strong>{{.i18n.Tr "install.mail_notify"}}</strong> |
||||||
|
</div> |
||||||
|
|
||||||
<div class="form-group text-center"> |
<hr> |
||||||
<button class="btn btn-danger btn-lg">Install Gogs</button> |
|
||||||
<button class="btn btn-default btn-sm" type="button" data-toggle="modal" data-target="#advance-options-modal"> |
|
||||||
Advanced Options |
|
||||||
</button> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="modal fade" id="advance-options-modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> |
<div class="text-center panel-desc">{{.i18n.Tr "install.admin_title"}}</div> |
||||||
<div class="modal-dialog"> |
<div class="field"> |
||||||
<div class="modal-content"> |
<label class="req" for="admin_name">{{.i18n.Tr "install.admin_name"}}</label> |
||||||
<div class="modal-header"><h4 class="modal-title">Advanced Options</h4></div> |
<input class="ipt ipt-large ipt-radius {{if .Err_AdminName}}ipt-error{{end}}" id="admin_name" name="admin_name" value="{{.admin_name}}" required /> |
||||||
<div class="modal-body"> |
|
||||||
<p class="help-block text-center">Email Service Settings</p> |
|
||||||
<div class="form-group"> |
|
||||||
<label class="col-md-3 control-label">SMTP Host: </label> |
|
||||||
<div class="col-md-8"> |
|
||||||
<input name="smtp_host" type="text" class="form-control" placeholder="Type SMTP host address and port" value="{{.smtp_host}}"> |
|
||||||
</div> |
|
||||||
</div> |
</div> |
||||||
|
<div class="field"> |
||||||
<div class="form-group"> |
<label class="req" for="admin_pwd">{{.i18n.Tr "install.admin_password"}}</label> |
||||||
<label class="col-md-3 control-label">Username: </label> |
<input class="ipt ipt-large ipt-radius {{if .Err_AdminPasswd}}ipt-error{{end}}" id="admin_pwd" name="admin_pwd" type="password" value="{{.admin_pwd}}" required /> |
||||||
<div class="col-md-8"> |
|
||||||
<input name="mailer_user" type="text" class="form-control" placeholder="Type SMTP user e-mail address" value="{{.mailer_user}}"> |
|
||||||
</div> |
|
||||||
</div> |
</div> |
||||||
|
<div class="field"> |
||||||
<div class="form-group"> |
<label class="req" for="confirm_passwd">{{.i18n.Tr "install.confirm_password"}}</label> |
||||||
<label class="col-md-3 control-label">Password: </label> |
<input class="ipt ipt-large ipt-radius {{if .Err_AdminPasswd}}ipt-error{{end}}" id="confirm_passwd" name="confirm_passwd" type="password" required /> |
||||||
<div class="col-md-8"> |
</div> |
||||||
<input name="mailer_pwd" type="password" class="form-control" placeholder="Type SMTP user password" value="{{.mailer_pwd}}"> |
<div class="field"> |
||||||
</div> |
<label class="req" for="admin_email">{{.i18n.Tr "install.admin_email"}}</label> |
||||||
|
<input class="ipt ipt-large ipt-radius {{if .Err_AdminEmail}}ipt-error{{end}}" id="admin_email" name="admin_email" value="{{.admin_email}}" required /> |
||||||
</div> |
</div> |
||||||
|
|
||||||
<hr/> |
<hr> |
||||||
|
|
||||||
<p class="text-center help-block">Notification Settings</p> |
|
||||||
<div class="form-group"> |
|
||||||
<div class="col-md-offset-3 col-md-7"> |
|
||||||
<div class="checkbox"> |
|
||||||
<label> |
|
||||||
<input name="register_confirm" type="checkbox" {{if .register_confirm}}checked{{end}}> |
|
||||||
<strong>Enable Register Confirmation</strong> |
|
||||||
</label> |
|
||||||
</div> |
|
||||||
|
|
||||||
<div class="checkbox"> |
<div class="field"> |
||||||
<label> |
<label></label> |
||||||
<input name="mail_notify" type="checkbox" {{if .mail_notify}}checked{{end}}> |
<button class="btn btn-blue btn-large btn-radius">{{.i18n.Tr "install.install_gogs"}}</button> |
||||||
<strong>Enable Mail Notification</strong> |
|
||||||
</label> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</div> |
</div> |
||||||
</div> |
</form> |
||||||
|
|
||||||
<div class="modal-footer"> |
|
||||||
<button type="button" class="btn btn-success" data-dismiss="modal">Confirm</button> |
|
||||||
</div> |
|
||||||
</div> |
</div> |
||||||
</div> |
</div> |
||||||
</div> |
</div> |
||||||
</form> |
</div> |
||||||
</div> |
</div> |
||||||
{{template "base/footer" .}} |
{{template "ng/base/footer" .}} |
||||||
|
Loading…
Reference in new issue