From 2d0ebade46d8a5942adb3e2ce816840a6ae16c1e Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Tue, 13 Jan 2015 09:36:31 -0500
Subject: [PATCH] - Fixed column sorting - cleaned up some javascript
---
interface/web/js/scrigo.js.php | 879 ++++++++++++++++++++++++++++++----------------------------
1 files changed, 453 insertions(+), 426 deletions(-)
diff --git a/interface/web/js/scrigo.js.php b/interface/web/js/scrigo.js.php
index beb247c..f21fc9d 100644
--- a/interface/web/js/scrigo.js.php
+++ b/interface/web/js/scrigo.js.php
@@ -1,5 +1,4 @@
<?php
-session_start();
include '../../lib/config.inc.php';
header('Content-Type: text/javascript; charset=utf-8'); // the config file sets the content type header so we have to override it here!
require_once '../../lib/app.inc.php';
@@ -9,46 +8,48 @@
$app->uses('ini_parser,getconf');
$server_config_array = $app->getconf->get_global_config();
?>
-var pageFormChanged = false;
-var tabChangeWarningTxt = '';
-var tabChangeDiscardTxt = '';
-var tabChangeWarning = false;
-var tabChangeDiscard = false;
-var requestsRunning = 0;
-var indicatorPaddingH = -1;
-var indicatorPaddingW = -1;
-var indicatorCompleted = false;
-var registeredHooks = new Array();
-redirect = '';
-function reportError(request) {
- /* Error reporting is disabled by default as some browsers like safari
- sometimes throw errors when a ajax request is delayed even if the
- ajax request worked. */
+var ISPConfig = {
+ pageFormChanged: false,
+ tabChangeWarningTxt: '',
+ tabChangeDiscardTxt: '',
+ tabChangeWarning: false,
+ tabChangeDiscard: false,
+ requestsRunning: 0,
+ indicatorPaddingH: -1,
+ indicatorPaddingW: -1,
+ indicatorCompleted: false,
+ registeredHooks: new Array(),
+ redirect: '',
- /*alert(request);*/
-}
+ reportError: function(request) {
+ /* Error reporting is disabled by default as some browsers like safari
+ sometimes throw errors when a ajax request is delayed even if the
+ ajax request worked. */
-function registerHook(name, callback) {
- if(!registeredHooks[name]) registeredHooks[name] = new Array();
- var newindex = registeredHooks[name].length;
- registeredHooks[name][newindex] = callback;
-}
+ /*alert(request);*/
+ },
+
+ registerHook: function(name, callback) {
+ if(!registeredHooks[name]) registeredHooks[name] = new Array();
+ var newindex = registeredHooks[name].length;
+ registeredHooks[name][newindex] = callback;
+ },
+
+ callHook: function(name, params) {
+ if(!registeredHooks[name]) return;
+ for(var i = 0; i < registeredHooks[name].length; i++) {
+ var callback = registeredHooks[name][i];
+ callback(name, params);
+ }
+ },
+
+ resetFormChanged: function() {
+ pageFormChanged = false;
+ },
-function callHook(name, params) {
- if(!registeredHooks[name]) return;
- for(var i = 0; i < registeredHooks[name].length; i++) {
- var callback = registeredHooks[name][i];
- callback(name, params);
- }
-}
-
-function resetFormChanged() {
- pageFormChanged = false;
-}
-
-function showLoadIndicator() {
- document.body.style.cursor = 'wait';
+ showLoadIndicator: function() {
+ document.body.style.cursor = 'wait';
<?php
if($server_config_array['misc']['use_loadindicator'] == 'y'){
@@ -76,394 +77,391 @@
<?php
}
?>
+ },
+
+ hideLoadIndicator: function() {
+ document.body.style.cursor = '';
+
+ requestsRunning -= 1;
+ if(requestsRunning < 1) {
+ requestsRunning = 0; // just for the case...
+ if(indicatorCompleted == true) jQuery('#ajaxloader').fadeOut('fast', function() { jQuery('#ajaxloader').hide(); } );
+ }
+ }
+
+ onAfterSideNavLoaded: function() {
+ <?php
+if($server_config_array['misc']['use_combobox'] == 'y'){
+?>
+ $('#sidebar').find("select:not(.chosen-select)").select2({
+ placeholder: '',
+ width: 'element',
+ selectOnBlur: true,
+ allowClear: true,
+ });
+<?php
}
+?>
+ },
-function hideLoadIndicator() {
- document.body.style.cursor = '';
-
- requestsRunning -= 1;
- if(requestsRunning < 1) {
- requestsRunning = 0; // just for the case...
- if(indicatorCompleted == true) jQuery('#ajaxloader').fadeOut('fast', function() { jQuery('#ajaxloader').hide(); } );
- }
-}
-
-function onAfterContentLoad() {
+ onAfterContentLoad: function(url, data) {
+ if(!data) data = '';
+ else data = '&' + data;
<?php
if($server_config_array['misc']['use_combobox'] == 'y'){
?>
- $('#pageContent').find("select").combobox();
+
+
+ $('#pageContent').find("select:not(.chosen-select)").select2({
+ placeholder: '',
+ width: 'element',
+ selectOnBlur: true,
+ allowClear: true,
+ formatResult: function(o) {
+ if(o.id && $(o.element).parent().hasClass('flags')) return '<span class="flags flag-' + o.id.toLowerCase() + '">' + o.text + '</span>';
+ else return o.text;
+ },
+ formatSelection: function(o) {
+ if(o.id && $(o.element).parent().hasClass('flags')) return '<span class="flags flag-' + o.id.toLowerCase() + '">' + o.text + '</span>';
+ else return o.text;
+ }
+ }).on('change', function(e) {
+ if (jQuery("#pageForm .table #Filter").length > 0) {
+ jQuery("#pageForm .table #Filter").trigger('click');
+ }
+ });
+ /* TODO: find a better way! */
+ //$('.chosen-select').chosen({no_results_text: "<?php echo $wb['globalsearch_noresults_text_txt']; ?>", width: '300px'});
<?php
}
?>
- callHook('onAfterContentLoad');
-}
+ callHook('onAfterContentLoad', {'url': url, 'data': data });
+ },
-function loadContentRefresh(pagename) {
-
- if(document.getElementById('refreshinterval').value > 0) {
- var pageContentObject2 = jQuery.ajax({ type: "GET",
- url: pagename,
- data: "refresh="+document.getElementById('refreshinterval').value,
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- hideLoadIndicator();
- jQuery('#pageContent').html(jqXHR.responseText);
- onAfterContentLoad();
- pageFormChanged = false;
- },
- error: function() {
- hideLoadIndicator();
- reportError('Ajax Request was not successful.'+pagename);
- }
- });
- setTimeout( "loadContentRefresh('"+pagename+"&refresh="+document.getElementById('refreshinterval').value+"')", document.getElementById('refreshinterval').value*1000*60 );
- }
-}
-
-function capp(module, redirect) {
- var submitFormObj = jQuery.ajax({ type: "GET",
- url: "capp.php",
- data: "mod="+module+((redirect != undefined) ? '&redirect='+redirect : ''),
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- if(jqXHR.responseText != '') {
- if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
- var parts = jqXHR.responseText.split(':');
- loadContent(parts[1]);
- } else if (jqXHR.responseText.indexOf('URL_REDIRECT:') > -1) {
- var newUrl= jqXHR.responseText.substr(jqXHR.responseText.indexOf('URL_REDIRECT:') + "URL_REDIRECT:".length);
- document.location.href = newUrl;
- } else {
- //alert(jqXHR.responseText);
- }
- }
- loadMenus();
- hideLoadIndicator();
- },
- error: function() {
- hideLoadIndicator();
- reportError('Ajax Request was not successful.'+module);
- }
- });
-}
-
-function submitLoginForm(formname) {
- //* Validate form. TODO: username and password with strip();
- var frm = document.getElementById(formname);
- var userNameObj = frm.username;
- if(userNameObj.value == ''){
- userNameObj.focus();
- return;
- }
- var passwordObj = frm.passwort;
- if(passwordObj.value == ''){
- passwordObj.focus();
- return;
- }
-
- $('#dummy_username').val(userNameObj.value);
- $('#dummy_passwort').val(passwordObj.value);
- $('#dummy_login_form').submit();
-
- var submitFormObj = jQuery.ajax({ type: "POST",
- url: "content.php",
- data: jQuery('#'+formname).serialize(),
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
- var parts = jqXHR.responseText.split(':');
- //alert(parts[1]);
- loadContent(parts[1]);
- //redirect = parts[1];
- //window.setTimeout('loadContent(redirect)', 1000);
- } else if (jqXHR.responseText.indexOf('LOGIN_REDIRECT:') > -1) {
- // Go to the login page
- document.location.href = 'index.php';
- } else {
- jQuery('#pageContent').html(jqXHR.responseText);
- onAfterContentLoad();
- pageFormChanged = false;
- }
- loadMenus();
- hideLoadIndicator();
- },
- error: function() {
- hideLoadIndicator();
- reportError('Ajax Request was not successful.110');
- }
- });
- /*
- if(redirect != '') {
- loadContent(redirect);
- redirect = '';
- }
- document.getElementById('footer').innerHTML = 'Powered by <a href="http://www.ispconfig.org" target="_blank">ISPConfig</a>';
- */
-
-}
-
-function submitForm(formname,target) {
- var submitFormObj = jQuery.ajax({ type: "POST",
- url: target,
- data: jQuery('#'+formname).serialize(),
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
- var parts = jqXHR.responseText.split(':');
- //alert(parts[1]);
- loadContent(parts[1]);
- //redirect = parts[1];
- //window.setTimeout('loadContent(redirect)', 1000);
- } else {
- jQuery('#pageContent').html(jqXHR.responseText);
- onAfterContentLoad();
- pageFormChanged = false;
- }
- hideLoadIndicator();
- },
- error: function(jqXHR, textStatus, errorThrown) {
- hideLoadIndicator();
- var parts = jqXHR.responseText.split(':');
- reportError('Ajax Request was not successful. 111');
- }
- });
- /*
- if(redirect != '') {
- loadContent(redirect);
- redirect = '';
- }
- */
-}
-
-function submitFormConfirm(formname,target,confirmation) {
- var successMessage = arguments[3];
- if(window.confirm(confirmation)) {
- var submitFormObj = jQuery.ajax({ type: "POST",
- url: target,
- data: jQuery('#'+formname).serialize(),
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- if(successMessage) alert(successMessage);
- if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
- var parts = jqXHR.responseText.split(':');
- //alert(parts[1]);
- loadContent(parts[1]);
- //redirect = parts[1];
- //window.setTimeout('loadContent(redirect)', 1000);
- } else {
- jQuery('#pageContent').html(jqXHR.responseText);
- onAfterContentLoad();
- pageFormChanged = false;
- }
- hideLoadIndicator();
- },
- error: function(jqXHR, textStatus, errorThrown) {
- hideLoadIndicator();
- var parts = jqXHR.responseText.split(':');
- reportError('Ajax Request was not successful. 111');
- }
- });
- }
-}
-
-function submitUploadForm(formname,target) {
- var handleResponse = function(loadedFrame) {
- var response, responseStr = loadedFrame.contentWindow.document.body.innerHTML;
-
- try {
- response = JSON.parse(responseStr);
- } catch(e) {
- response = responseStr;
+ /* THIS ONE SHOULD BE REMOVED AFTER CREATING THE STATIC LOGIN PAGE!!! */
+ submitLoginForm: function(formname) {
+ //* Validate form. TODO: username and password with strip();
+ var frm = document.getElementById(formname);
+ var userNameObj = frm.username;
+ if(userNameObj.value == ''){
+ userNameObj.focus();
+ return;
}
- var msg = '';
- var okmsg = jQuery('#OKMsg',response).html();
- if(okmsg){
- msg = '<div id="OKMsg">'+okmsg+'</div>';
+ var passwordObj = frm.passwort;
+ if(passwordObj.value == ''){
+ passwordObj.focus();
+ return;
}
- var errormsg = jQuery('#errorMsg',response).html();
- if(errormsg){
- msg = msg+'<div id="errorMsg">'+errormsg+'</div>';
+
+ $('#dummy_username').val(userNameObj.value);
+ $('#dummy_passwort').val(passwordObj.value);
+ $('#dummy_login_form').submit();
+
+ var submitFormObj = jQuery.ajax({
+ type: "POST",
+ url: "content.php",
+ data: jQuery('#'+formname).serialize(),
+ dataType: "html",
+ beforeSend: function() {
+ showLoadIndicator();
+ },
+ success: function(data, textStatus, jqXHR) {
+ if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
+ var parts = jqXHR.responseText.split(':');
+ //alert(parts[1]);
+ loadContent(parts[1]);
+ //redirect = parts[1];
+ //window.setTimeout('loadContent(redirect)', 1000);
+ } else if (jqXHR.responseText.indexOf('LOGIN_REDIRECT:') > -1) {
+ // Go to the login page
+ document.location.href = 'index.php';
+ } else {
+ jQuery('#pageContent').html(jqXHR.responseText);
+ onAfterContentLoad('content.php', jQuery('#'+formname).serialize());
+ pageFormChanged = false;
+ }
+ loadMenus();
+ hideLoadIndicator();
+ },
+ error: function() {
+ hideLoadIndicator();
+ reportError('Ajax Request was not successful.110');
+ }
+ });
+ },
+
+ submitForm: function(formname, target, confirmation) {
+ var successMessage = arguments[3];
+ if(!confirmation) confirmation = false;
+
+ if(!confirmation || window.confirm(confirmation)) {
+ var submitFormObj = jQuery.ajax({
+ type: "POST",
+ url: target,
+ data: jQuery('#'+formname).serialize(),
+ dataType: "html",
+ beforeSend: function() {
+ showLoadIndicator();
+ },
+ success: function(data, textStatus, jqXHR) {
+ if(successMessage) alert(successMessage);
+ if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
+ var parts = jqXHR.responseText.split(':');
+ //alert(parts[1]);
+ loadContent(parts[1]);
+ //redirect = parts[1];
+ //window.setTimeout('loadContent(redirect)', 1000);
+ } else {
+ jQuery('#pageContent').html(jqXHR.responseText);
+ onAfterContentLoad(target, jQuery('#'+formname).serialize());
+ pageFormChanged = false;
+ }
+ hideLoadIndicator();
+ },
+ error: function(jqXHR, textStatus, errorThrown) {
+ hideLoadIndicator();
+ var parts = jqXHR.responseText.split(':');
+ reportError('Ajax Request was not successful. 111');
+ }
+ });
}
- return msg;
+ },
- };
+ submitUploadForm: function(formname, target) {
+ var handleResponse = function(loadedFrame) {
+ var response, responseStr = loadedFrame.contentWindow.document.body.innerHTML;
- var frame_id = 'ajaxUploader-iframe-' + Math.round(new Date().getTime() / 1000);
- jQuery('body').after('<iframe width="0" height="0" style="display:none;" name="'+frame_id+'" id="'+frame_id+'"/>');
- jQuery('input[type="file"]').closest("form").attr({target: frame_id, action: target}).submit();
- jQuery('#'+frame_id).load(function() {
- var msg = handleResponse(this);
- jQuery('#errorMsg').remove();
- jQuery('#OKMsg').remove();
- jQuery('input[name="id"]').before(msg);
- jQuery(this).remove();
- });
+ try {
+ response = JSON.parse(responseStr);
+ } catch(e) {
+ response = responseStr;
+ }
+ var msg = '';
+ var okmsg = jQuery('#OKMsg',response).html();
+ if(okmsg){
+ msg = '<div id="OKMsg">'+okmsg+'</div>';
+ }
+ var errormsg = jQuery('#errorMsg',response).html();
+ if(errormsg){
+ msg = msg+'<div id="errorMsg">'+errormsg+'</div>';
+ }
+ return msg;
- /*
- if(redirect != '') {
- loadContent(redirect);
- redirect = '';
- }
- */
-}
+ };
-function loadContent(pagename) {
- var params = arguments[1];
- var pageContentObject2 = jQuery.ajax({ type: "GET",
- url: pagename,
- data: (params ? params : null),
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
- var parts = jqXHR.responseText.split(':');
- loadContent(parts[1]);
- } else if (jqXHR.responseText.indexOf('URL_REDIRECT:') > -1) {
- var newUrl= jqXHR.responseText.substr(jqXHR.responseText.indexOf('URL_REDIRECT:') + "URL_REDIRECT:".length);
- document.location.href = newUrl;
- } else {
- //document.getElementById('pageContent').innerHTML = jqXHR.responseText;
- //var reponse = jQuery(jqXHR.responseText);
- //var reponseScript = reponse.filter("script");
- //jQuery.each(reponseScript, function(idx, val) { eval(val.text); } );
+ var frame_id = 'ajaxUploader-iframe-' + Math.round(new Date().getTime() / 1000);
+ jQuery('body').after('<iframe width="0" height="0" style="display:none;" name="'+frame_id+'" id="'+frame_id+'"/>');
+ jQuery('input[type="file"]').closest("form").attr({target: frame_id, action: target}).submit();
+ jQuery('#'+frame_id).load(function() {
+ var msg = handleResponse(this);
+ jQuery('#errorMsg').remove();
+ jQuery('#OKMsg').remove();
+ jQuery('input[name="id"]').before(msg);
+ jQuery(this).remove();
+ });
+ },
- jQuery('#pageContent').html(jqXHR.responseText);
- onAfterContentLoad();
- pageFormChanged = false;
- }
- hideLoadIndicator();
- },
- error: function() {
- hideLoadIndicator();
- reportError('Ajax Request was not successful. 113');
- }
- });
-}
+ function capp(module, redirect) {
+ var submitFormObj = jQuery.ajax({
+ type: "GET",
+ url: "capp.php",
+ data: "mod="+module+((redirect != undefined) ? '&redirect='+redirect : ''),
+ dataType: "html",
+ beforeSend: function() {
+ showLoadIndicator();
+ },
+ success: function(data, textStatus, jqXHR) {
+ if(jqXHR.responseText != '') {
+ if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
+ var parts = jqXHR.responseText.split(':');
+ loadContent(parts[1]);
+ } else if (jqXHR.responseText.indexOf('URL_REDIRECT:') > -1) {
+ var newUrl= jqXHR.responseText.substr(jqXHR.responseText.indexOf('URL_REDIRECT:') + "URL_REDIRECT:".length);
+ document.location.href = newUrl;
+ } else {
+ //alert(jqXHR.responseText);
+ }
+ }
+ loadMenus();
+ hideLoadIndicator();
+ },
+ error: function() {
+ hideLoadIndicator();
+ reportError('Ajax Request was not successful.'+module);
+ }
+ });
+ },
+
+ loadContent: function(pagename) {
+ var params = arguments[1];
+ var pageContentObject2 = jQuery.ajax({
+ type: "GET",
+ url: pagename,
+ data: (params ? params : null),
+ dataType: "html",
+ beforeSend: function() {
+ showLoadIndicator();
+ },
+ success: function(data, textStatus, jqXHR) {
+ if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
+ var parts = jqXHR.responseText.split(':');
+ loadContent(parts[1]);
+ } else if (jqXHR.responseText.indexOf('URL_REDIRECT:') > -1) {
+ var newUrl= jqXHR.responseText.substr(jqXHR.responseText.indexOf('URL_REDIRECT:') + "URL_REDIRECT:".length);
+ document.location.href = newUrl;
+ } else {
+ //document.getElementById('pageContent').innerHTML = jqXHR.responseText;
+ //var reponse = jQuery(jqXHR.responseText);
+ //var reponseScript = reponse.filter("script");
+ //jQuery.each(reponseScript, function(idx, val) { eval(val.text); } );
+
+ jQuery('#pageContent').html(jqXHR.responseText);
+ onAfterContentLoad(pagename, (params ? params : null));
+ pageFormChanged = false;
+ }
+ hideLoadIndicator();
+ },
+ error: function() {
+ hideLoadIndicator();
+ reportError('Ajax Request was not successful. 113');
+ }
+ });
+ },
+
+ loadContentRefresh: function(pagename) {
+ if($('#refreshinterval').val() > 0) {
+ var pageContentObject2 = jQuery.ajax({
+ type: "GET",
+ url: pagename,
+ data: "refresh="+document.getElementById('refreshinterval').value,
+ dataType: "html",
+ beforeSend: function() {
+ showLoadIndicator();
+ },
+ success: function(data, textStatus, jqXHR) {
+ hideLoadIndicator();
+ jQuery('#pageContent').html(jqXHR.responseText);
+ onAfterContentLoad(pagename, "refresh="+document.getElementById('refreshinterval').value);
+ pageFormChanged = false;
+ },
+ error: function() {
+ hideLoadIndicator();
+ reportError('Ajax Request was not successful.'+pagename);
+ }
+ });
+ setTimeout( "ISPConfig.loadContentRefresh('"+pagename+"&refresh="+document.getElementById('refreshinterval').value+"')", document.getElementById('refreshinterval').value*1000*60 );
+ }
+ },
-function loadInitContent() {
- var pageContentObject = jQuery.ajax({ type: "GET",
- url: "content.php",
- data: "s_mod=login&s_pg=index",
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
- var parts = jqXHR.responseText.split(":");
- loadContent(parts[1]);
- } else {
- jQuery('#pageContent').html(jqXHR.responseText);
- onAfterContentLoad();
- pageFormChanged = false;
- }
- hideLoadIndicator();
- },
- error: function() {
- hideLoadIndicator();
- reportError('Ajax Request was not successful. 114');
- }
- });
+ loadInitContent: function() {
+ var pageContentObject = jQuery.ajax({
+ type: "GET",
+ url: "content.php",
+ data: "s_mod=login&s_pg=index",
+ dataType: "html",
+ beforeSend: function() {
+ showLoadIndicator();
+ },
+ success: function(data, textStatus, jqXHR) {
+ if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
+ var parts = jqXHR.responseText.split(":");
+ loadContent(parts[1]);
+ } else {
+ jQuery('#pageContent').html(jqXHR.responseText);
+ onAfterContentLoad('content.php', "s_mod=login&s_pg=index");
+ pageFormChanged = false;
+ }
+ hideLoadIndicator();
+ },
+ error: function() {
+ hideLoadIndicator();
+ reportError('Ajax Request was not successful. 114');
+ }
+ });
+
+ loadMenus();
+ keepalive();
+ setTimeout(function() {
+ try {
+ jQuery('form#pageForm').find('input[name="username"]').focus();
+ } catch (e) {
+
+ }
+ }, 1000);
+ },
+
+ loadMenus: function() {
+ var sideNavObject = jQuery.ajax({
+ type: "GET",
+ url: "nav.php",
+ data: "nav=side",
+ dataType: "html",
+ beforeSend: function() {
+ showLoadIndicator();
+ },
+ success: function(data, textStatus, jqXHR) {
+ hideLoadIndicator();
+ jQuery('#sidebar').html(jqXHR.responseText);
+ onAfterSideNavLoaded();
+ loadPushyMenu();
+ },
+ error: function() {
+ hideLoadIndicator();
+ reportError('Ajax Request was not successful. 115');
+ }
+ });
- loadMenus();
- keepalive();
- setTimeout("setFocus()",1000);
+ var topNavObject = jQuery.ajax({
+ type: "GET",
+ url: "nav.php",
+ data: "nav=top",
+ dataType: "html",
+ beforeSend: function() {
+ showLoadIndicator();
+ },
+ success: function(data, textStatus, jqXHR) {
+ hideLoadIndicator();
+ jQuery('#topnav-container').html(jqXHR.responseText);
+ loadPushyMenu();
+ },
+ error: function(o) {
+ hideLoadIndicator();
+ reportError('Ajax Request was not successful. 116');
+ }
+ });
+ },
-}
+ changeTab: function(tab, target, force) {
+ if(requestsRunning > 0) return false;
+
+ document.pageForm.next_tab.value = tab;
-function setFocus() {
- try {
- jQuery('form#pageForm').find('input[name="username"]').focus();
- } catch (e) {
- }
-}
-
-
-function loadMenus() {
- var sideNavObject = jQuery.ajax({ type: "GET",
- url: "nav.php",
- data: "nav=side",
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- hideLoadIndicator();
- jQuery('#sideNav').html(jqXHR.responseText);
- },
- error: function() {
- hideLoadIndicator();
- reportError('Ajax Request was not successful. 115');
- }
- });
-
- var topNavObject = jQuery.ajax({ type: "GET",
- url: "nav.php",
- data: "nav=top",
- dataType: "html",
- beforeSend: function() {
- showLoadIndicator();
- },
- success: function(data, textStatus, jqXHR) {
- hideLoadIndicator();
- jQuery('#topNav').html(jqXHR.responseText);
- },
- error: function(o) {
- hideLoadIndicator();
- reportError('Ajax Request was not successful. 116');
- }
- });
-
-}
-
-function changeTab(tab,target,force) {
- //document.forms[0].next_tab.value = tab;
- document.pageForm.next_tab.value = tab;
-
- var idel = jQuery('form#pageForm').find('[name="id"]');
- var id = null;
- if(idel.length > 0) id = idel.val();
- if(tabChangeDiscard == 'y' && !force) {
- if((idel.length < 1 || id) && (pageFormChanged == false || window.confirm(tabChangeDiscardTxt))) {
- var next_tab = tab;
- if(id) loadContent(target, {'next_tab': next_tab, 'id': id});
- else loadContent(target, {'next_tab': next_tab});
- } else {
- return false;
- }
- } else {
- if(id && tabChangeWarning == 'y' && pageFormChanged == true) {
- if(window.confirm(tabChangeWarningTxt)) {
- submitForm('pageForm', target);
- } else {
- var next_tab = tab;
- if(id) loadContent(target, {'next_tab': next_tab, 'id': id});
- else loadContent(target, {'next_tab': next_tab});
- }
- } else {
- submitForm('pageForm',target);
- }
- }
-}
+ var idel = jQuery('form#pageForm').find('[name="id"]');
+ var id = null;
+ if(idel.length > 0) id = idel.val();
+ if(tabChangeDiscard == 'y' && !force) {
+ if((idel.length < 1 || id) && (pageFormChanged == false || window.confirm(tabChangeDiscardTxt))) {
+ var next_tab = tab;
+ if(id) loadContent(target, {'next_tab': next_tab, 'id': id});
+ else loadContent(target, {'next_tab': next_tab});
+ } else {
+ return false;
+ }
+ } else {
+ if(id && tabChangeWarning == 'y' && pageFormChanged == true) {
+ if(window.confirm(tabChangeWarningTxt)) {
+ submitForm('pageForm', target);
+ } else {
+ var next_tab = tab;
+ if(id) loadContent(target, {'next_tab': next_tab, 'id': id});
+ else loadContent(target, {'next_tab': next_tab});
+ }
+ } else {
+ submitForm('pageForm',target);
+ }
+ }
+ },
function del_record(link,confirmation) {
if(window.confirm(confirmation)) {
@@ -577,6 +575,8 @@
pass_message['color'] = "green";
pass_messages[5] = pass_message;
+var special_chars = "`~!@#$%^&*()_+|\=-[]}{';:/?.>,<\" ";
+
function pass_check(password) {
var length = password.length;
var points = 0;
@@ -589,20 +589,29 @@
pass_result(1);
return;
}
-
+
+ var different = 0;
+
+ if (pass_contains(password, "abcdefghijklnmopqrstuvwxyz")) {
+ different += 1;
+ }
+
if (pass_contains(password, "ABCDEFGHIJKLNMOPQRSTUVWXYZ")) {
points += 1;
+ different += 1;
}
if (pass_contains(password, "0123456789")) {
points += 1;
+ different += 1;
}
- if (pass_contains(password, "`~!@#$%^&*()_+|\=-[]}{';:/?.>,<\" ")) {
+ if (pass_contains(password, special_chars)) {
points += 1;
+ different += 1;
}
- if (points == 0) {
+ if (points == 0 || different < 3) {
if (length >= 5 && length <=6) {
pass_result(1);
} else if (length >= 7 && length <=8) {
@@ -740,27 +749,45 @@
return rv;
}
-function password(minLength, special){
- var iteration = 0;
- var password = "";
- var randomNumber;
+function password(minLength, special, num_special){
minLength = minLength || 10;
+ if(minLength < 8) minLength = 8;
var maxLength = minLength + 5;
var length = getRandomInt(minLength, maxLength);
- if(special == undefined){
- var special = false;
+
+ var alphachars = "abcdefghijklmnopqrstuvwxyz";
+ var upperchars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
+ var numchars = "1234567890";
+ var specialchars = "!@#_";
+
+ if(num_special == undefined) num_special = 0;
+ if(special != undefined && special == true) {
+ num_special = Math.floor(Math.random() * (length / 4)) + 1;
}
- while(iteration < length){
- randomNumber = (Math.floor((Math.random() * 100)) % 94) + 33;
- if(!special){
- if ((randomNumber >=33) && (randomNumber <=47)) { continue; }
- if ((randomNumber >=58) && (randomNumber <=64)) { continue; }
- if ((randomNumber >=91) && (randomNumber <=96)) { continue; }
- if ((randomNumber >=123) && (randomNumber <=126)) { continue; }
- }
- iteration++;
- password += String.fromCharCode(randomNumber);
+ var numericlen = getRandomInt(1, 2);
+ var alphalen = length - num_special - numericlen;
+ var upperlen = Math.floor(alphalen / 2);
+ alphalen = alphalen - upperlen;
+ var password = "";
+
+ for(i = 0; i < alphalen; i++) {
+ password += alphachars.charAt(Math.floor(Math.random() * alphachars.length));
}
+
+ for(i = 0; i < upperlen; i++) {
+ password += upperchars.charAt(Math.floor(Math.random() * upperchars.length));
+ }
+
+ for(i = 0; i < num_special; i++) {
+ password += specialchars.charAt(Math.floor(Math.random() * specialchars.length));
+ }
+
+ for(i = 0; i < numericlen; i++) {
+ password += numchars.charAt(Math.floor(Math.random() * numchars.length));
+ }
+
+ password = password.split('').sort(function() { return 0.5 - Math.random(); }).join('');
+
return password;
}
@@ -776,9 +803,9 @@
var newPWField = oldPWField.clone();
newPWField.attr('type', 'text').attr('id', 'tmp'+passwordFieldID).insertBefore(oldPWField);
oldPWField.remove();
- var pword = password(<?php echo $min_password_length ?>, false);
+ var pword = password(<?php echo $min_password_length; ?>, false, 1);
jQuery('#'+repeatPasswordFieldID).val(pword);
- newPWField.attr('id', passwordFieldID).val(pword).trigger('keyup');
+ newPWField.attr('id', passwordFieldID).val(pword).trigger('keyup').select();
}
var funcDisableClick = function(e) { e.preventDefault(); return false; };
@@ -813,13 +840,13 @@
return Math.floor(Math.random() * (max - min + 1)) + min;
}
-jQuery('.addPlaceholder').live("click", function(){
+jQuery(document).on("click", ".addPlaceholder", function(){
var placeholderText = jQuery(this).text();
var template = jQuery(this).siblings(':input');
template.insertAtCaret(placeholderText);
});
-jQuery('.addPlaceholderContent').live("click", function(){
+jQuery(document).on("click", ".addPlaceholderContent", function(){
var placeholderContentText = jQuery(this).find('.addPlaceholderContent').text();
var template2 = jQuery(this).siblings(':input');
template2.insertAtCaret(placeholderContentText);
--
Gitblit v1.9.1