Ver Fonte

js / index.html update set

Dima Malishev há 14 anos atrás
pai
commit
8155d2cd9c
5 ficheiros alterados com 55 adições e 27 exclusões
  1. 1 1
      web/index.html
  2. 27 10
      web/js/actions.js
  3. 11 0
      web/js/pages.js
  4. 12 12
      web/js/templates.js
  5. 4 4
      web/js/validators.js

+ 1 - 1
web/index.html

@@ -187,7 +187,7 @@
                 <div id="actions-toolbar" class="cc">
                     <a class="add-domain do_action_new_entry" href="javascript:void(0)">
                         <i class="icon do_action_new_entry">&nbsp;</i>
-                        add new entry
+                        add new <span id="new-entry-keyword">entry</span>
                     </a>
                 </div>
 

+ 27 - 10
web/js/actions.js

@@ -89,16 +89,20 @@ App.Actions.save_form = function(evt) {
 
 // do_action_edit
 App.Actions.edit = function(evt) {
-    var elm = $(evt.target);
-    elm = elm.hasClass('row') ? elm : elm.parents('.row');
-    
-    var options = elm.find('.source').val();    
-    var build_method = App.Env.getWorldName() + '_form';    
-    var tpl = App.HTML.Build[build_method](options);
-    elm.replaceWith(tpl);
-    
-    App.Helpers.disbleNotEditable();
-    //App.Helpers.updateScreen();
+    if ('undefined' != typeof App.Pages[App.Env.world].edit) {
+        App.Pages[App.Env.world].edit(evt);
+    } else {
+        var elm = $(evt.target);
+        elm = elm.hasClass('row') ? elm : elm.parents('.row');
+        
+        var options = elm.find('.source').val();    
+        var build_method = App.Env.getWorldName() + '_form';    
+        var tpl = App.HTML.Build[build_method](options);
+        elm.replaceWith(tpl);
+        
+        App.Helpers.disbleNotEditable();
+        //App.Helpers.updateScreen();
+    }
 }
 
 // do_cancel_form
@@ -334,3 +338,16 @@ App.Actions.view_full_ns_list = function(evt)
     var elm = $(evt.target);
     App.Helpers.openInnerPopup(elm, $(elm).parents('.prop-box').find('.ns-full-list:first').html());    
 }
+
+App.Actions.view_template_info = function(evt)
+{
+    var elm = $(evt.target);
+    ref = elm.hasClass('row') ? elm : elm.parents('.row');
+    
+    var options = ref.find('.source').val(); 
+    App.Ajax.request('DNS.getTemplateInfo', {spell: options}, function(reply) {
+        if (reply.result) {
+            App.Helpers.openInnerPopup(elm, reply.data);
+        }        
+    });
+}

+ 11 - 0
web/js/pages.js

@@ -22,6 +22,7 @@ App.Pages.prepareHTML = function()
     else {        
         App.Model[App.Env.world].loadList();
     }
+    $('#new-entry-keyword').text(App.Env.world.toLowerCase().replace('_', ' '));
 }
 
 App.Pages.DNS.showSubform = function(ref) 
@@ -49,3 +50,13 @@ App.Pages.DNS.edit = function(elm) {
     elm.replaceWith(tpl);
 }
 
+App.Pages.USER.new_entry = function(evt)
+{ 
+    var form_id = App.Constants[App.Env.world + '_FORM_ID'];
+    $('#'+form_id).remove();
+    var build_method = App.Env.getWorldName() + '_form';
+    var tpl = App.HTML.Build[build_method]({}, form_id);
+    App.Ref.CONTENT.prepend(tpl);
+    App.Helpers.updateScreen(); 
+    $('#'+form_id).find('.ns-entry, .additional-ns-add').addClass('hidden');
+}

+ 12 - 12
web/js/templates.js

@@ -110,7 +110,7 @@ App.Templates.html = {
                                                         <span class="ip-adr">~!:IP~!</span>\
                                                         <span class="prop-box template-box">\
                                                                 <span class="prop-title">template:</span>\
-                                                                <span class="prop-value">~!:TPL~!</span>\
+                                                                <span class="prop-value do_action_view_template_info">~!:TPL~!</span>\
                                                         </span>\
                                                 </div>\
                                         </div>\
@@ -126,7 +126,7 @@ App.Templates.html = {
                                         </div>\
                                 </div><!-- // .row-details -->\
                         </div>'],
-        SUBFORM: ['<div class="b-new-entry b-records-list subform">\
+        SUBFORM: ['<div class="b-new-entry b-records-list subform" style="margin-top: -20px;">\
                     <div class="entry-header">\
                             <div class="hide-records do_action_close_subform">Hide records</div>\
                     </div>\
@@ -153,8 +153,8 @@ App.Templates.html = {
                             </div>\
                             <div class="field-box dns-type-box">\
                                     <label for="#" class="field-label">type:</label>\
-                                    <span class="select RECORD_TYPE" id="selectRECORD_TYPE">~!:RECORD_TYPE_VALUE~!</span>\
-                                    <select name="RECORD_TYPE" class="styled">\
+                                    <!-- span class="select RECORD_TYPE" id="selectRECORD_TYPE">~!:RECORD_TYPE_VALUE~!</span -->\
+                                    <select name="RECORD_TYPE" class="not-styled" style="width:70px">\
                                         ~!:RECORD_TYPE~!\
                                     </select>\
                             </div>\
@@ -203,7 +203,7 @@ App.Templates.html = {
                 </div>\
                 <div class="form-row cc">\
                         <label for="#" class="field-label">netmask:</label>\
-                        <div class="autocomplete-box">\
+                        <div class="_autocomplete-box">\
                                 <input type="text" value="~!:NETMASK~!" name="NETMASK" class="text-field">\
                         </div>\
                 </div>\
@@ -297,7 +297,7 @@ App.Templates.html = {
 						</div>\
 						<div class="form-row cc">\
 							<label for="#" class="field-label">username:</label>\
-							<input type="text" class="text-field rule-abc rule-required" value="~!:LOGIN_NAME~!" name="LOGIN_NAME">\
+							<input type="text" class="text-field rule-required rule-username" value="~!:LOGIN_NAME~!" name="LOGIN_NAME">\
 						</div>\
 						<div class="form-row pwd-box cc">\
 							<label for="#" class="field-label">password:</label>\
@@ -419,7 +419,7 @@ App.Templates.html = {
 								<!-- bandwidth usage block -->\
 								<div style="margin-bottom:25px;" class="b-usage-box bandwidth-box cc">\
 									<span class="prop-title">bandwidth:</span>\
-									<div class="usage-box">\
+									<div class="usage-box" style="margin-left: -1px">\
 										<div class="value-box">\
 											<span class="value">~!:U_BANDWIDTH~!</span>\
 											<div class="graph low">\
@@ -435,10 +435,6 @@ App.Templates.html = {
 								 <!-- // bandwidth usage block -->\
                                  </div>\
 							<div class="props-additional">\
-								<span class="prop-box webdomains-box">\
-									<span class="prop-title">web domains:</span>\
-									<span class="prop-value">~!:U_DNS_DOMAINS~! (~!:WEB_DOMAINS~!)</span>\
-								</span>\
 								<span class="prop-box websl-box">\
 									<span class="prop-title">web ssl:</span>\
 									<span class="prop-value">~!:U_WEB_SSL~! (~!:WEB_SSL~!)</span>\
@@ -479,7 +475,11 @@ App.Templates.html = {
 									<span class="prop-title">mail domains:</span>\
 									<span class="prop-value">~!:U_MAIL_DOMAINS~! (~!:MAIL_DOMAINS~!)</span>\
 								</span>\
-								<span class="prop-box dnsdomains-box">\
+								<span class="prop-box webdomains-box">\
+									<span class="prop-title">web domains:</span>\
+									<span class="prop-value">~!:U_WEB_DOMAINS~! (~!:WEB_DOMAINS~!)</span>\
+								</span>\
+                                <span class="prop-box dnsdomains-box">\
 									<span class="prop-title">dns domains:</span>\
 									<span class="prop-value">~!:U_DNS_DOMAINS~! (~!:DNS_DOMAINS~!)</span>\
 								</span>\

+ 4 - 4
web/js/validators.js

@@ -30,7 +30,7 @@ App.Validate.Rule = {
             if ($(elm).val().trim() == '' || $(elm).val().search(/[^a-zA-Z_]+/) != -1) {
                 return {VALID: false, ERROR: App.Validate.getFieldName(elm) + ' is invalid'};
             }
-            if ($(elm).val().trim() == '' || $(elm).val().length > App.Settings.FIELD_MAX_LEN) {
+            if ($(elm).val().trim() != '' || $(elm).val().length > App.Settings.FIELD_MAX_LEN) {
                 return {VALID: false, ERROR: App.Validate.getFieldName(elm) + ' too long'};
             }
         }
@@ -41,7 +41,7 @@ App.Validate.Rule = {
             if ($(elm).val().trim() == '') {
                 return {VALID: false, ERROR: App.Validate.getFieldName(elm) + ' is required'};
             }
-            if ($(elm).val().trim() == '' || $(elm).val().length > App.Settings.FIELD_MAX_LEN) {
+            if ($(elm).val().trim() != '' || $(elm).val().length > App.Settings.FIELD_MAX_LEN) {
                 return {VALID: false, ERROR: App.Validate.getFieldName(elm) + ' too long'};
             }
         }
@@ -51,7 +51,7 @@ App.Validate.Rule = {
         if ($(elm).val().trim() != '' && $(elm).val().search(/[^a-zA-Z_]+/) != -1) {
             return {VALID: false, ERROR: App.Validate.getFieldName(elm) + ' is invalid'};
         }
-        if ($(elm).val().trim() == '' || $(elm).val().length > App.Settings.FIELD_MAX_LEN) {
+        if ($(elm).val().trim() != '' || $(elm).val().length > App.Settings.FIELD_MAX_LEN) {
             return {VALID: false, ERROR: App.Validate.getFieldName(elm) + ' too long'};
         }
         return {VALID: true};
@@ -78,7 +78,7 @@ App.Validate.Rule = {
         if ($(elm).val().trim() != '' && $(elm).val().search(/[^a-zA-Z]+/) != -1) {
             return {VALID: false, ERROR: App.Validate.getFieldName(elm) + ' must contain only letters without spaces or other symbols'};
         }
-        if ($(elm).val().trim() == '' || $(elm).val().length > App.Settings.FIELD_MAX_LEN) {
+        if ($(elm).val().trim() != '' || $(elm).val().length > App.Settings.FIELD_MAX_LEN) {
             return {VALID: false, ERROR: App.Validate.getFieldName(elm) + ' too long'};
         }
         return {VALID: true};