1(function($){ 2 if($.G2 == undefined){ 3 $.G2 = {}; 4 } 5 $.G2.boot = {}; 6 7 $.G2.boot.autocompleter = function(Container){ 8 Container.find('[data-autocomplete]').each(function(i, dropfield){ 9 $(dropfield).closest('.ui.search.dropdown').dropdown({ 10 apiSettings : { 11 url: $(dropfield).data('url') + '&' + $(dropfield).attr('name') + '={query}', 12 cache : false, 13 onResponse : function(Response){ 14 if(!Response.hasOwnProperty('results')){ 15 var results = []; 16 results['success'] = true; 17 results['results'] = []; 18 19 var count = 0; 20 $.each(Response, function(key, obj){ 21 results['results'][count] = {}; 22 results['results'][count]['value'] = key; 23 results['results'][count]['name'] = obj; 24 count = count + 1; 25 }); 26 27 return results; 28 } 29 } 30 }, 31 minCharacters: $(dropfield).data('mincharacters') ? $(dropfield).data('mincharacters') : 0, 32 message : {noResults : $(dropfield).data('noresults') ? $(dropfield).data('noresults') : 'No results found'}, 33 //saveRemoteData:false 34 }); 35 }); 36 }; 37 38 $.G2.boot.calendar = function(Container){ 39 //calendar 40 Container.find('[data-calendar]').each(function(i, calfield){ 41 if($(calfield).data('calendarready') === true){ 42 return true; 43 } 44 $(calfield).data('calendarready', true); 45 46 var dformat = $(calfield).data('dformat') ? $(calfield).data('dformat') : 'YYYY-MM-DD'; 47 var sformat = $(calfield).data('sformat') ? $(calfield).data('sformat') : 'YYYY-MM-DD'; 48 49 var mindate = null; 50 if($(calfield).data('mindate')){ 51 //var parts = $(calfield).data('mindate').split('-'); 52 //var mindate = new Date(parts[0], parts[1]-1, parts[2]); 53 var mindate = moment($(calfield).data('mindate'), sformat).toDate(); 54 } 55 var maxdate = null; 56 if($(calfield).data('maxdate')){ 57 //var parts = $(calfield).data('maxdate').split('-'); 58 //var maxdate = new Date(parts[0], parts[1]-1, parts[2]); 59 var maxdate = moment($(calfield).data('maxdate'), sformat).toDate(); 60 } 61 if(jQuery.fn.calendar != undefined){ 62 63 var $realDate = $('<input type="hidden" name="'+$(calfield).attr('name')+'">'); 64 if($('[type="hidden"][name="'+$(calfield).attr('name')+'"]').length == 0){ 65 $(calfield).closest('.field').after($realDate); 66 }else{ 67 $realDate = $('[type="hidden"][name="'+$(calfield).attr('name')+'"]').first(); 68 } 69 70 //var dformat = $(calfield).data('dformat') ? $(calfield).data('dformat') : 'YYYY-MM-DD'; 71 //var sformat = $(calfield).data('sformat') ? $(calfield).data('sformat') : 'YYYY-MM-DD'; 72 73 if($(calfield).val().length > 0){ 74 var calval = $(calfield).val(); 75 $realDate.val(calval); 76 $(calfield).val(moment(calval, sformat).format(dformat)); 77 } 78 79 var opendays = [1,2,3,4,5,6,7];//1 for monday 80 if($(calfield).data('opendays')){ 81 opendays = $(calfield).data('opendays').toString().split(',').map(Number); 82 } 83 84 var openhours = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24]; 85 if($(calfield).data('openhours')){ 86 openhours = $(calfield).data('openhours').toString().split(',').map(Number); 87 } 88 89 $(calfield).closest('.field').calendar({ 90 startMode : $(calfield).data('startmode'), 91 type : $(calfield).data('type'), 92 minDate : mindate, 93 maxDate : maxdate, 94 startCalendar: $(calfield).data('startcalendar') ? $($(calfield).data('startcalendar')).closest('.field') : null, 95 endCalendar: $(calfield).data('endcalendar') ? $($(calfield).data('endcalendar')).closest('.field') : null, 96 firstDayOfWeek: $(calfield).data('firstday') ? $(calfield).data('firstday') : 0, 97 ampm: ($(calfield).data('ampm') != undefined) ? $(calfield).data('ampm') : true, 98 monthFirst: $(calfield).data('monthfirst') ? $(calfield).data('monthfirst') : true, 99 disableMinute: $(calfield).data('disableminute') ? $(calfield).data('disableminute') : false, 100 101 formatter:{ 102 datetime: function (date, settings) { 103 if (!date) return ''; 104 return moment(date).format(dformat); 105 }, 106 cell: function(cell, date, cellOptions){ 107 if(cellOptions.mode == 'day' && (opendays.indexOf(parseInt(moment(date).format('E'))) == -1)){ 108 $(cell).addClass('disabled'); 109 } 110 111 if(cellOptions.mode == 'hour' && (openhours.indexOf(parseInt(moment(date).format('k'))) == -1)){ 112 $(cell).addClass('disabled'); 113 } 114 } 115 }, 116 parser:{ 117 date: function (text, settings) { 118 if (!text) return ''; 119 return moment(text, dformat).toDate(); 120 } 121 }, 122 onChange: function (date, text, mode){ 123 if(text){ 124 $realDate.val(moment(date).format(sformat)); 125 }else{ 126 $realDate.val(''); 127 } 128 $(calfield).trigger('input.events'); 129 }, 130 popupOptions:{ 131 position: $(calfield).data('popuppos') ? $(calfield).data('popuppos') : 'top center' 132 }, 133 className:{ 134 popup: $(calfield).data('size') ? 'ui popup ' + $(calfield).data('size') : 'ui popup' 135 }, 136 inline: ($(calfield).data('inline') === 1 || $(calfield).data('inline') === 2) ? true : false, 137 138 text:{ 139 days: $(calfield).data('days') ? $(calfield).data('days').split(',') : ['S', 'M', 'T', 'W', 'T', 'F', 'S'], 140 months: $(calfield).data('months') ? $(calfield).data('months').split(',') : ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], 141 monthsShort: $(calfield).data('monthsshort') ? $(calfield).data('monthsshort').split(',') : ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], 142 today: $(calfield).data('today') ? $(calfield).data('today').split(',') : 'Today', 143 now: $(calfield).data('now') ? $(calfield).data('now').split(',') : 'Now', 144 am: $(calfield).data('am') ? $(calfield).data('am').split(',') : 'AM', 145 pm: $(calfield).data('pm') ? $(calfield).data('pm').split(',') : 'PM' 146 } 147 }); 148 149 if($(calfield).data('inline') === 2){ 150 $(calfield).css('display', 'none'); 151 } 152 } 153 }); 154 }; 155 156 $.G2.boot.ready = function(){ 157 158 $('body').on('contentChange.basics', '*', function(e, settings){ 159 e.stopPropagation(); 160 161 if($(this).prop('tagName') != 'DIV' && $(this).prop('tagName') != 'FORM'){ 162 //return false;
163 } 164 165 if(jQuery.fn.tab != undefined){ 166 $(this).find('.ui.menu.G2-tabs .item, .ui.steps.G2-tabs .step').tab(); 167 } 168 if(jQuery.fn.dropdown != undefined){ 169 $(this).find('.ui.dropdown').dropdown({'forceSelection' : false, 'placeholder' : ''}); 170 171 //$.G2.boot.autocompleter($(this)); 172 $(this).find('select').each(function(i, dropfield){ 173 var dsettings = {};//{'forceSelection' : false, 'placeholder' : ''}; 174 175 if($(dropfield).is('[data-autocomplete]')){ 176 $.extend(dsettings, { 177 apiSettings : { 178 url: $(dropfield).data('url') + '&' + $(dropfield).attr('name') + '={query}', 179 cache : false, 180 onResponse : function(Response){ 181 if(!Response.hasOwnProperty('results')){ 182 var results = []; 183 results['success'] = true; 184 results['results'] = []; 185 186 var count = 0; 187 $.each(Response, function(key, obj){ 188 results['results'][count] = {}; 189 results['results'][count]['value'] = key; 190 results['results'][count]['name'] = obj; 191 count = count + 1; 192 }); 193 194 return results; 195 } 196 } 197 }, 198 minCharacters: $(dropfield).data('mincharacters') ? $(dropfield).data('mincharacters') : 0, 199 message : {noResults : $(dropfield).data('noresults') ? $(dropfield).data('noresults') : 'No results found'}, 200 //saveRemoteData:false 201 }); 202 } 203 204 if($(dropfield).attr('data-allowadditions')){ 205 $.extend(dsettings, {allowAdditions:true}); 206 } 207 208 if($(dropfield).attr('data-fulltextsearch')){ 209 $.extend(dsettings, {fullTextSearch: 'exact'}); 210 } 211 212 $(dropfield).closest('.ui.dropdown').dropdown(dsettings); 213 }); 214 } 215 if(jQuery.fn.checkbox != undefined){ 216 $(this).find('.ui.checkbox').checkbox('refresh'); 217 } 218 219 if(jQuery.fn.embed != undefined){ 220 $(this).find('.ui.embed').embed(); 221 } 222 223 if(jQuery.fn.sticky != undefined){ 224 $(this).find('.ui.sticky').sticky(); 225 } 226 227 if(jQuery.fn.rating != undefined){ 228 $(this).find('.ui.rating').each(function(r, rwidget){ 229 var id = $(rwidget).attr('data-id'); 230 $(rwidget).attr('data-rating', $(id).val()); 231 232 $(rwidget).rating({ 233 onRate:function(){ 234 $(id).val($(this).rating('get rating')); 235 }, 236 interactive: ($(rwidget).attr('data-interactive') == 1) ? true : false, 237 clearable: ($(rwidget).attr('data-clearable') == 1) ? true : false, 238 }); 239 }); 240 } 241 242 if(jQuery.fn.accordion != undefined){ 243 $(this).find('.ui.accordion').accordion(); 244 $(this).find('.ui.accordion').accordion('refresh'); 245 } 246 247 if(jQuery.fn.tooltipster != undefined){ 248 $(this).find('[data-hint]').addBack().each(function(i, element){ 249 $(element).tooltipster({ 250 content: $(element).data('hint'), 251 maxWidth: 300, 252 delay: 50, 253 debug: false, 254 contentAsHTML: true 255 }); 256 }); 257 } 258 259 //G2 actions 260 if($.G2.actions != undefined){ 261 $.G2.actions.ready(); 262 } 263 264 if($.G2.actions2 != undefined){ 265 $.G2.actions2.ready($(this)); 266 } 267 268 if($.G2.forms2 != undefined){ 269 $.G2.forms2.ready($(this)); 270 } 271 272 $.G2.boot.calendar($(this)); 273 274 //wysiwyg editor 275 if($.G2.tinymce != undefined){ 276 $.G2.tinymce.init(); 277 } 278 //textareas expand 279 $(this).on('keyup.resize', 'textarea[data-autoresize="1"]', function(e){ 280 $(this).css('overflow', 'hidden'); 281 if($(this).val().split("\n").length > $(this).attr('rows')){ 282 $(this).attr('rows', $(this).val().split("\n").length); 283 }else{ 284 if($(this).data('rows') == undefined){ 285 $(this).data('rows', $(this).attr('rows')); 286 } 287 if($(this).data('rows') <= $(this).val().split("\n").length){ 288 $(this).attr('rows', $(this).val().split("\n").length); 289 } 290 } 291 }); 292 $(this).find('textarea[data-autoresize="1"]').trigger('keyup.resize'); 293 294 //if(settings && settings.bodyChange){ 295 $('body').trigger('bodyChange'); 296 //} 297 }); 298 299 //new forms 300 //if($('form.ui.form.ce_form').length > 0){ 301 if($.G2.validation != undefined){ 302 $('body').on('contentChange.form', 'form', function(e){ 303 e.stopPropagation(); 304 $.G2.validation.ready($(this)); 305 }); 306 307 $('form.ui.form.ce_form').trigger('contentChange'); 308 } 309 310 //toolbar 311 $('.ui.toolbar-button').on('click', function(e){ 312 if($(this).attr('data-form')){ 313 var toolbar_form = $($(this).attr('data-form')); 314 }else{ 315 var toolbar_form = $(this).closest('form'); 316 } 317 318 if($(this).attr('data-url')){ 319 toolbar_form.attr('action', $(this).data('url')); 320 } 321 322 if($(this).attr('name') && $(this).attr('data-url')){ 323 //if the button has a url setting then use a hidden field 324 toolbar_form.append($('<input />').attr('type', 'hidden').attr('name', $(this).attr('name')).val(1)); 325 } 326 327 if($(this).data('selections') == '1' && toolbar_form.find('.ui.selector.checkbox.checked').length == 0){ 328 alert($(this).data('message')); 329 return false;
330 } 331 332 if($(this).attr('data-fn')){ 333 var fn = $(this).attr('data-fn'); 334 window[$(this).attr('data-fn')]($(this)); 335 }else{ 336 toolbar_form.submit(); 337 } 338 }); 339 340 //list selectors 341 if(jQuery.fn.checkbox != undefined){ 342 $('.ui.selector.checkbox').checkbox({ 343 onChecked: function(){ 344 $(this).closest('tr').addClass('warning'); 345 }, 346 onUnchecked: function(){ 347 $(this).closest('tr').removeClass('warning'); 348 } 349 }); 350 $('.ui.selector.checkbox').checkbox('attach events', '.ui.select_all.checkbox'); 351 } 352 353 //errors 354 $(':input[data-error]').closest('.field').addClass('error'); 355 356 }; 357 358}(jQuery));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.