PHP Classes

File: views/js/cliq.js

Recommend this page to a friend!
  Classes of Mark Richards   CliqonV4   views/js/cliq.js   Download  
File: views/js/cliq.js
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: CliqonV4
Framework with modules to build Web applications
Author: By
Last change: Merge branch 'master' of https://github.com/webcliq/CliqonV4
Date: 6 years ago
Size: 7,112 bytes
 

Contents

Class file image Download
/** * Cliq.Js * */ /** Cliqon Functions - cliq() * cliq.x() - app and utility functions, including: * * notyMsg = msg(usroptions) * jsPanelWin = win(usroptions) * ******************************************************************************************************************/ var Cliq = (function($) { // initialise // var shared values var cfg = { useCaching: true, langcd: jlcd, sitepath: "http://"+document.location.hostname+"/", spinner: new Spinner(), subdir: 'tmp/', uploadurl: '/api/'+jlcd+'/fileupload/dbuser/', filescollection: 'file', opts: {}, data: {}, app: {} }; var _set = function(key, value) { cfg[key] = value; return cfg[key]; }; var _get = function(key) { return cfg[key]; }; var _config = function() { return cfg; }; /** Generic Help Button * **/ var helpButton = function() { var urlstr = "/api/"+jlcd+"/gethelp/"+cfg.table+"/"+cfg.tabletype+"/"; aja().method('GET').url(urlstr).cache(false).timeout(2500).type('json') .data({type:'help', table: 'dbitem'}) .on('40x', function(response) { error('Page not Found - '+urlstr+':'+response); }) .on('500', function(response) { error('Server Error - '+urlstr+':'+response); }) .on('timeout', function(response){ error('Timeout - '+urlstr+':'+response); }) .on('200', function(response) { if(typeof response == 'object') { // Test NotOK - value already exists var match = /NotOk/.test(response.flag); if(match !== true) { var opts = { content: response.html, contentSize: { width: 400, height: 400 }, headerTitle: '<span class="">'+lstr[4]+'</span>' }; var helpPopup = win(opts); } else { error( 'Ajax function returned error NotOk - '+urlstr+':'+JSON.stringify(response)); }; } else { error('Response was not JSON object - '+urlstr+':'+response.msg); }; }).go(); } /** General Display Utilities * * clqAjax() * msg() * - success() * - error() * win() * popup() *******************************************************************************************************/ /** Try and produce a generic Cliq AJA Ajax function * * @param - string - URL * @param - object - any data * @return - Response as JSON **/ var clqAjax = function(urlstr, dta) { aja().method('GET').url(urlstr).cache(false).timeout(2500).type('json').data(dta) .on('40x', function(response) { error('Page not Found - '+urlstr+':'+response)}) .on('500', function(response) { error('Server Error - '+urlstr+':'+response)}) .on('timeout', function(response){ error('Timeout - '+urlstr+':'+response)}) .on('200', function(response) { if(typeof response == 'object') { // Test NotOK - value already exists var match = /NotOk/.test(response.flag); if(!match == true) { cfg.result = response.data; } else { // Error error('Ajax function returned error NotOk - '+urlstr+':'+JSON.stringify(response)) }; } else { error('Response was not JSON object - '+urlstr+':'+response.msg); } }).go(); } var success = function(text) { return msg({type: 'success', buttons: false, text: text}); } var error = function(text) { return msg({type: 'warning', buttons: false, text: text}); } /** * Noty Alert box * @param - object - Usroptions that overwrite defaults **/ var msg = function(usroptions) { // usroptions = array var tpl = ` <div class="noty_message minh3"> <div class="pad center"> <h3 class="noty_text bluec"></h3> </div> <div class="noty_close"></div> </div> `; var options = { 'text': '', 'layout':'topCenter', 'timeout': 5000, // success (light green), error (pink), warning (orangey cream), information (lilac), notification (lilac) 'type':'success', 'buttons': [ {addClass: 'm10 mt0 btn btn-success btn-sm', text: 'Close', onClick: function($noty) { $noty.close(); }} ], 'template': tpl, callback: { onShow: function() {}, afterShow: function() {}, onClose: function() {}, afterClose: function() {}, onCloseClick: function() {} } }; options = array_replace(options, usroptions); var $noty = noty(options); return $noty; } // explicitly return public methods when this object is instantiated return { // outside: inside set: _set, get: _get, config: _config, clqAjax: clqAjax, error:error, success: success, msg: msg }; })(jQuery); function razr(code, data) { //escape "@@" into one "@" code = code.split("@@").join("\1"); var parts = code.split("@"); var buff = parts.map(function (a, b) { if (!b) { return JSON.stringify(a); } /* end if */ var l = a.split(/([<\n"])/), code = l[0]; return code + "+\n" + JSON.stringify(l.slice(1).join("")); }).join("+"); buff = buff.replace(/(for\(\s*)(\w+)(\s+in)(\s+)(\w+)(\s*\))(\+\r?\n)([^\n]+)\+\n/gm, "(function lamb(){var b=[]; $1$2$3$4 $5$6 { if( $5.hasOwnProperty($2)){ $2=$5[$2]; b.push($8);}}; return b.join(''); }())+ "); with(data) { return eval(buff).split("\1").join("@"); } }; /* end razr() */