1/** 2 * Remove and Add Regions by Changing Country 3 * 4 * @param {string} country_selector name 5 * @param {string} region_selector name 6 */ 7function changeRegionsByCountry(country_selector,region_selector) { 8 9 country_selector = (country_selector)?country_selector:'country_id'; 10 region_selector = (region_selector)?region_selector:'countries_region_id'; 11 12 var countries_regions = new Object(); 13 14 $('[name='+region_selector+'] option').each(function(){ 15 if($(this).val()) { 16 countries_regions[$(this).val()] = [$(this).text(),$(this).attr('selected')]; 17 $(this).remove(); 18 } 19 }); 20 21 $('[name='+country_selector+']').change(function(){ 22 var country_id = $(this).val(); 23 $('[name='+region_selector+'] option').not('[value=""]').remove(); 24 $.each(countries_regions,function(index,value){ 25 var countries_region_country_id = index.substr(0,index.indexOf('-')); 26 var countries_region_region_id = index.substr(index.indexOf('-')+1); 27 if(country_id===countries_region_country_id) { 28 $('[name='+region_selector+']').append('<option value="'+countries_region_region_id+'" '+(value[1]?value[1]:'')+'>'+value[0]+'</option>'); 29 } 30 }); 31 $('[name='+region_selector+']').change(); 32 }).change(); 33 34} 35 36/** 37 * Set Overlay and Prevent Secondaty Sending 38 */ 39function set_form_submit() { 40/* $('#loading_overlay').hide(); 41 $('form') 42 .data('submitted', false) 43 .on('submit',function(e){ 44 var $form = $(this); 45 if ($form.data('submitted') === true) { 46 e.preventDefault(); 47 } else { 48 $('#loading_overlay').show(); 49 $form.data('submitted', true); 50 } 51 });*/ 52} 53 54/** 55 * Helper Function for set_datepicker_interval 56 * 57 * @param {string} field name of set field 58 */ 59function set_datepicker_field_quarter(field) { 60 var val = $("[name="+field+"]").val(); 61 if (val.substr(8,1)=='q') { 62 var year = val.substr(0,4); 63 var month = val.substr(5,2); 64 var quarter = ''; 65 switch(month){ 66 case "01": 67 case "02": 68 case "03": 69 quarter = 1; 70 break; 71 case "04": 72 case "05": 73 case "06": 74 quarter = 2; 75 break; 76 case "07": 77 case "08": 78 case "09": 79 quarter = 3; 80 break; 81 case "10": 82 case "11": 83 case "12": 84 quarter = 4; 85 break; 86 } 87 var date = year+'-'+quarter; 88 $("[name="+field+"]").val(date); 89 } 90} 91 92/** 93 * Set Datepicker for Selecting Intervals 94 * 95 * @param {string} field name of set field 96 */ 97function set_datepicker_interval(field,noquarter) { 98 $('[name='+field+']') 99 .datepicker({ 100 showOn: 'none' 101 }) 102 .change(function(){ 103 set_datepicker_field_quarter(field); 104 }); 105 $('[name='+field+']').click(function(){ 106 $field = $(this); 107 // vars 108 var format; 109 var buttons = { 110 Tag: function() { 111 $(this).dialog( "close" ); 112 $('#block-message-flash div').remove(); 113 $field.datepicker('option','dateFormat','yy-mm-dd').datepicker('show'); 114 }, 115 Monat: function() { 116 format = 'yy-mm'; 117 $(this).dialog( "close" ); 118 $('#block-message-flash div').remove(); 119 $field.datepicker('option','dateFormat','yy-mm').datepicker('show'); 120 }, 121 Quartal: function() { 122 $(this).dialog( "close" ); 123 $('#block-message-flash div').remove(); 124 $field.datepicker('option','dateFormat','yy-mm-q').datepicker('show'); 125 }, 126 Jahr: function() { 127 $(this).dialog( "close" ); 128 $('#block-message-flash div').remove(); 129 $field.datepicker('option','dateFormat','yy').datepicker('show'); 130 }, 131 Löschen: function() { 132 $field.val("").datepicker("hide").change(); 133 eval(field+" = '';"); 134 $(this).dialog( "close" ); 135 $('#block-message-flash div').remove(); 136 } 137 } 138 var width = 513; 139 if(noquarter) { 140 delete buttons['Quartal']; 141 var width = 413; 142 } 143 // define 144 $container = $('#block-message-flash'); 145 $container.append('<div>Bitte wählen Sie die Art des Zeitraums und danach im Kalender einen Tag im gewünschten Zeitraum.</div>'); 146 $container.find('div').dialog({ 147 title: 'Zeitraum Filter', 148 resizable: false, 149 modal: true, 150 width: width, 151 buttons: buttons 152 });
153 }); 154} 155 156/** 157 * Open Dialog and Close With Delay 158 * 159 * @param {string} title 160 * @param {string} text 161 * @param {int} time delay time in ms (or empty for 2000) 162 */ 163function set_dialog_timeout(title,text,time) { 164 if(!time) time=4000; 165 $('#dialog').attr('title',title).html(text).dialog(); 166 setTimeout(function(){ 167 $('#dialog').dialog('close'); 168 },time); 169} 170 171/** 172 * Set Title Desc for Filter 173 * 174 * @param {object} filter 175 */ 176function set_title_desc (filter) { 177 var cont = ''; 178 var title = ''; 179 var desc = ''; 180 $.each(filter,function(index, value){ 181 if($('[name='+index+']').attr('type')==='hidden') return true; 182 cont += value; 183 if (value!='0'&&value!='') { 184 if(value.slice(-2)==='-q'||value.length===9) { 185 var month = value.slice(5,7); 186 var quarter = ''; 187 switch(month){ 188 case "01": 189 case "02": 190 case "03": 191 quarter = 1; 192 break; 193 case "04": 194 case "05": 195 case "06": 196 quarter = 2; 197 break; 198 case "07": 199 case "08": 200 case "09": 201 quarter = 3; 202 break; 203 case "10": 204 case "11": 205 case "12": 206 quarter = 4; 207 break; 208 } 209 value = value.slice(0,4)+'-'+quarter; 210 } 211 var $field = $('[name='+index+']'); 212 var name = $field.parent().children('label').text(); 213 var value = ($field.is('select')) ? $field.find('option:selected').text() : value; 214 desc += name + ' <b>' + value + '</b> + '; 215 } 216 }); 217 if(!desc) { 218 desc = 'keine Filter '; 219 } 220 // title 221 title = (cont) ? ' (Filter)' : ' (alle)'; 222 var $h1 = $('#pageTitle'); 223 $h1.children().remove(); 224 $('<span>'+title+'</span>').appendTo($h1); 225 // desc 226 desc = (desc) ? desc : 'keine Filter '; 227 $desc = $('#mainContF form').length ? $('#mainContF form') : $('#mainContF'); 228 $desc.children('span').remove(); 229 var descText = '<span>'+desc.slice(0,-2)+'</span>'; 230 if($('.filterMore').length) { 231 $desc.children().eq(0).after(descText); 232 } else { 233 $desc.prepend(descText); 234 } 235} 236 237/** 238 * Set Filter Variables 239 * 240 * @param {string} type return type 241 * @returns {String|Object} 242 */ 243function set_filter_vars (type) { 244 var type = (type) ? type : 'object'; 245 var filter = (type==='object') ? new Object() : ''; 246 var name; 247 $('#mainContF :input').each(function(){ 248 name = $(this).attr('name'); 249 if(type==='object') filter[name] = $('[name='+name+']').val(); 250 else filter += name+'='+$('[name='+name+']').val()+'&'; 251 }); 252 return filter; 253} 254 255/** 256 * Truncate Text 257 * 258 * @param {String} text 259 * @param {Int} characters count 260 * @param {String} delimiter string (e.g. ' ', '/') 261 * @returns {String} 262 */ 263function truncate_text(text,characters,delimiter) { 264 var delimiter = delimiter?delimiter:' '; 265 return text.length<=characters ? text : $.trim(text).substring(0, characters).split(delimiter).slice(0, -1).join(delimiter) + "..."; 266} 267
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.