2017-11-30 09:00:26 +00:00
|
|
|
<% content_for :page_specific_css do %>
|
|
|
|
<%= stylesheet_link_tag "lib/main-forms" %>
|
|
|
|
<% end %>
|
|
|
|
<% content_for :page_specific_javascript do %>
|
|
|
|
<% end %>
|
|
|
|
<%#= f.error_messages %>
|
|
|
|
<fieldset>
|
|
|
|
<!-- Input Area -->
|
|
|
|
<div class="input-area">
|
|
|
|
|
|
|
|
<!-- Module Tabs -->
|
|
|
|
<div class="nav-name"><strong><%= t(:module) %></strong></div>
|
|
|
|
<ul class="nav nav-pills module-nav">
|
|
|
|
<li class="active">
|
|
|
|
<a href="#basic" data-toggle="tab"><%= t(:basic) %></a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
|
|
|
|
<!-- Module -->
|
|
|
|
<div class="tab-content module-area">
|
|
|
|
<!-- Basic Module -->
|
|
|
|
<div class="tab-pane fade in active" id="basic">
|
|
|
|
<div class="control-group">
|
|
|
|
<%= f.label :server_type ,"Server", :class => "control-label muted" %>
|
|
|
|
<div class="controls">
|
|
|
|
<%= f.select :server_type, SiteConstruct::SERVER_TYPES %>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="control-group">
|
|
|
|
<%= f.label :site_type ,"Site Type", :class => "control-label muted" %>
|
|
|
|
<div class="controls">
|
|
|
|
<%= f.select :site_type, SiteConstruct::SITE_TYPES, :id => "site_type" %>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="control-group">
|
|
|
|
<%= f.label :school_name ,"School Name", :class => "control-label muted" %>
|
|
|
|
<div class="controls">
|
|
|
|
<%= f.text_field :school_name, :id => "school_name", :placeholder => "XXXX" %>
|
|
|
|
<div class="hint">Eg: NCTU</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="control-group">
|
|
|
|
<%= f.label :site_name ,"Site Name", :class => "control-label muted" %>
|
|
|
|
<div class="controls">
|
|
|
|
<%= f.text_field :site_name, :id => "site_name", :placeholder => "xxx_xxx" %>
|
|
|
|
<div class="hint">schoolname_deptname eg: nctu_eed</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="control-group">
|
|
|
|
<%= f.label :domain_name ,"Domain Name", :class => "control-label muted" %>
|
|
|
|
<div class="controls">
|
|
|
|
<%= f.text_field :domain_name, :id => "domain_name" %>
|
|
|
|
<div class="hint">schoolname-deptname.pending.rulingcom.com eg: nctu-eed.pending.rulingcom.com</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="control-group">
|
|
|
|
<%= f.label :db_name ,"Database Name", :class => "control-label muted" %>
|
|
|
|
<div class="controls">
|
|
|
|
<%= f.text_field :db_name, :id => "db_name" %>
|
|
|
|
<div class="hint">schoolname_deptname eg: nctu_eed</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="control-group">
|
|
|
|
<%= f.label :port ,"Port Number", :class => "control-label muted" %>
|
|
|
|
<div class="controls">
|
|
|
|
<%= f.number_field :port, :min => 1, :id => "port", :value => 80 %>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div class="control-group">
|
|
|
|
<%= f.label :path ,"Path", :class => "control-label muted" %>
|
|
|
|
<div class="controls">
|
|
|
|
<%= f.text_field :path, :disabled => true, :id => "path" %>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="form-actions">
|
|
|
|
<%= f.submit t('submit'), class: 'btn btn-primary' %>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</fieldset>
|
|
|
|
<script type="text/javascript">
|
2020-04-24 14:38:28 +00:00
|
|
|
var domain_name_relations = {};
|
|
|
|
<% SiteServer.all.each do |server_server| %>
|
|
|
|
domain_name_relations['<%= server_server.server_name %>'] = '<%= server_server.domain_name %>';
|
|
|
|
<% end %>
|
|
|
|
console.log(domain_name_relations);
|
2017-11-30 09:00:26 +00:00
|
|
|
$("#school_name").on("blur",function(){
|
|
|
|
var school = $(this).val().toLowerCase();
|
|
|
|
if($("#site_name").val() == ""){
|
|
|
|
$("#site_name").val(school + "_");
|
|
|
|
}
|
|
|
|
})
|
|
|
|
$("#site_construct_site_type").on("change",function(){
|
|
|
|
var type = $(this).val();
|
|
|
|
if(type == "School"){
|
|
|
|
$("#school_name").parents(".control-group").show();
|
|
|
|
}else{
|
|
|
|
$("#school_name").parents(".control-group").hide();
|
|
|
|
$("#school_name").val("");
|
|
|
|
}
|
|
|
|
var school = $("#school_name").val();
|
|
|
|
type = (type == "School" ? "school_sites" : "orbit_sites" );
|
|
|
|
if(school != ""){
|
2017-11-30 10:15:22 +00:00
|
|
|
$("#path").val("/home/rulingcom/" + type + "/" + school);
|
2017-11-30 09:00:26 +00:00
|
|
|
}else{
|
2017-11-30 10:15:22 +00:00
|
|
|
$("#path").val("/home/rulingcom/" + type);
|
2017-11-30 09:00:26 +00:00
|
|
|
}
|
|
|
|
})
|
2020-04-24 14:38:28 +00:00
|
|
|
$('#site_construct_server_type').click(function(){
|
|
|
|
var domain_name = domain_name_relations[$(this).val()];
|
|
|
|
$('#domain_name').siblings('.hint').html('schoolname-deptname.'+domain_name+' eg: nctu-eed.'+domain_name);
|
|
|
|
})
|
2017-11-30 09:00:26 +00:00
|
|
|
$("#site_name").on("blur",function(){
|
|
|
|
var val = $(this).val(),
|
|
|
|
type = $("#site_construct_site_type").val(),
|
2020-04-24 14:38:28 +00:00
|
|
|
school = $("#school_name").val(),
|
|
|
|
domain_name = domain_name_relations[$('#site_construct_server_type').val()];
|
|
|
|
$('#domain_name').siblings('.hint').html('schoolname-deptname.'+domain_name+' eg: nctu-eed.'+domain_name);
|
|
|
|
$("#domain_name").val(val.replace("_","-") + "."+domain_name);
|
2017-11-30 09:00:26 +00:00
|
|
|
$("#db_name").val(val);
|
|
|
|
type = (type == "School" ? "school_sites" : "orbit_sites" );
|
|
|
|
if(school != ""){
|
2017-11-30 10:15:22 +00:00
|
|
|
$("#path").val("/home/rulingcom/" + type + "/" + school);
|
2017-11-30 09:00:26 +00:00
|
|
|
}else{
|
2017-11-30 10:15:22 +00:00
|
|
|
$("#path").val("/home/rulingcom/" + type);
|
2017-11-30 09:00:26 +00:00
|
|
|
}
|
|
|
|
})
|
|
|
|
$("#site_construct_site_type").val("School");
|
|
|
|
$("form#new_site_construct").on("submit",function(){
|
|
|
|
$("#path").removeAttr("disabled");
|
|
|
|
})
|
|
|
|
</script>
|