PageSourceSearch

https://www.superjagd.com/js/common.js?2.9.1

js superjagd.com collected 2026-10-01 23:48:49 UTC 7,567 bytes, 267 lines download raw bytes

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) ? '&nbsp;(Filter)' : '&nbsp;(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.