WP Maintenance Mode - Version 1.6.5

Version Description

(09/16/2010) = * add new design "Chemistry" by elmastudio.de * changes for include methods od class for preview * changes the possibility for include of language specific flash files

Download this release

Release Info

Developer Bueltge
Plugin Icon 128x128 WP Maintenance Mode
Version 1.6.5
Comparing to
See all releases

Code changes from version 1.5.3 to 1.6.5

Files changed (142) hide show
  1. WP Maintenance Mode-da_DK.txt +28 -0
  2. css/jquery.countdown.css +47 -0
  3. css/overcast/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  4. css/overcast/images/ui-bg_flat_0_eeeeee_40x100.png +0 -0
  5. css/overcast/images/ui-bg_flat_55_c0402a_40x100.png +0 -0
  6. css/overcast/images/ui-bg_flat_55_eeeeee_40x100.png +0 -0
  7. css/overcast/images/ui-bg_glass_100_f8f8f8_1x400.png +0 -0
  8. css/overcast/images/ui-bg_glass_35_dddddd_1x400.png +0 -0
  9. css/overcast/images/ui-bg_glass_60_eeeeee_1x400.png +0 -0
  10. css/overcast/images/ui-bg_inset-hard_75_999999_1x100.png +0 -0
  11. css/overcast/images/ui-bg_inset-soft_50_c9c9c9_1x100.png +0 -0
  12. css/overcast/images/ui-icons_3383bb_256x240.png +0 -0
  13. css/overcast/images/ui-icons_454545_256x240.png +0 -0
  14. css/overcast/images/ui-icons_70b2e1_256x240.png +0 -0
  15. css/overcast/images/ui-icons_999999_256x240.png +0 -0
  16. css/overcast/images/ui-icons_fbc856_256x240.png +0 -0
  17. css/overcast/jquery-ui-1.7.2.custom.css +0 -0
  18. css/style.css +12 -1
  19. index.php +11 -0
  20. js/de_DE.datetimepicker.js +20 -0
  21. js/jquery-ui-1.7.2.custom.min.js +0 -13
  22. js/jquery.countdown-ar.js +11 -0
  23. js/jquery.countdown-cs.js +14 -0
  24. js/jquery.countdown-da.js +11 -0
  25. js/jquery.countdown-de.js +11 -0
  26. js/jquery.countdown-es.js +11 -0
  27. js/jquery.countdown-fa.js +11 -0
  28. js/jquery.countdown-fi.js +11 -0
  29. js/jquery.countdown-fr.js +11 -0
  30. js/jquery.countdown-gl.js +11 -0
  31. js/jquery.countdown-he.js +11 -0
  32. js/jquery.countdown-hu.js +11 -0
  33. js/jquery.countdown-id.js +11 -0
  34. js/jquery.countdown-it.js +11 -0
  35. js/jquery.countdown-ja.js +11 -0
  36. js/jquery.countdown-ko.js +12 -0
  37. js/jquery.countdown-lt.js +11 -0
  38. js/jquery.countdown-lv.js +11 -0
  39. js/jquery.countdown-my.js +11 -0
  40. js/jquery.countdown-nb.js +11 -0
  41. js/jquery.countdown-nl.js +11 -0
  42. js/jquery.countdown-pl.js +11 -0
  43. js/jquery.countdown-pt-BR.js +11 -0
  44. js/jquery.countdown-ro.js +11 -0
  45. js/jquery.countdown-ru.js +11 -0
  46. js/jquery.countdown-sk.js +14 -0
  47. js/jquery.countdown-sv.js +11 -0
  48. js/jquery.countdown-tr.js +11 -0
  49. js/jquery.countdown-uk.js +11 -0
  50. js/jquery.countdown-zh-CN.js +11 -0
  51. js/jquery.countdown-zh-TW.js +11 -0
  52. js/jquery.countdown.js +706 -0
  53. js/jquery.countdown.min.js +7 -0
  54. js/jquery.countdown.pack.js +7 -0
  55. js/script.php +0 -43
  56. js/ui.datetimepicker-de.js +21 -0
  57. js/ui.datetimepicker.js +1696 -0
  58. languages/wartungsmodus-de_DE.mo +0 -0
  59. languages/wartungsmodus-de_DE.po +0 -375
  60. languages/wartungsmodus-fr_FR.mo +0 -0
  61. languages/wartungsmodus-fr_FR.po +0 -333
  62. languages/wartungsmodus-it_IT.mo +0 -0
  63. languages/wartungsmodus-it_IT.po +0 -340
  64. languages/{wartungsmodus-be_BY.mo → wp-maintenance-mode-be_BY.mo} +0 -0
  65. languages/{wartungsmodus-be_BY.po → wp-maintenance-mode-be_BY.po} +0 -0
  66. languages/wp-maintenance-mode-da_DK.mo +0 -0
  67. languages/wp-maintenance-mode-da_DK.po +323 -0
  68. languages/wp-maintenance-mode-de_DE.mo +0 -0
  69. languages/wp-maintenance-mode-de_DE.po +428 -0
  70. languages/{wartungsmodus-es_ES.mo → wp-maintenance-mode-es_ES.mo} +0 -0
  71. languages/{wartungsmodus-es_ES.po → wp-maintenance-mode-es_ES.po} +0 -0
  72. languages/wp-maintenance-mode-fr_FR.mo +0 -0
  73. languages/wp-maintenance-mode-fr_FR.po +365 -0
  74. languages/{wartungsmodus-hr.mo → wp-maintenance-mode-hr.mo} +0 -0
  75. languages/{wartungsmodus-hr.po → wp-maintenance-mode-hr.po} +0 -0
  76. languages/wp-maintenance-mode-it_IT.mo +0 -0
  77. languages/wp-maintenance-mode-it_IT.po +413 -0
  78. languages/wp-maintenance-mode-nl_NL.mo +0 -0
  79. languages/wp-maintenance-mode-nl_NL.po +368 -0
  80. languages/wp-maintenance-mode-pl_PL.mo +0 -0
  81. languages/wp-maintenance-mode-pl_PL.po +365 -0
  82. languages/{wartungsmodus-ro_RO.mo → wp-maintenance-mode-ro_RO.mo} +0 -0
  83. languages/{wartungsmodus-ro_RO.po → wp-maintenance-mode-ro_RO.po} +0 -0
  84. languages/{wartungsmodus-sq_AL.mo → wp-maintenance-mode-sq_AL.mo} +0 -0
  85. languages/{wartungsmodus-sq_AL.po → wp-maintenance-mode-sq_AL.po} +2 -2
  86. languages/{wartungsmodus-tr_TR.mo → wp-maintenance-mode-tr_TR.mo} +0 -0
  87. languages/{wartungsmodus-tr_TR.po → wp-maintenance-mode-tr_TR.po} +0 -0
  88. languages/wp-maintenance-mode-xx_XX.pot +428 -0
  89. license.txt +0 -0
  90. readme.txt +227 -36
  91. screenshot-1.png +0 -0
  92. screenshot-10.png +0 -0
  93. screenshot-11.png +0 -0
  94. screenshot-12.png +0 -0
  95. screenshot-13.png +0 -0
  96. screenshot-2.png +0 -0
  97. screenshot-3.png +0 -0
  98. screenshot-4.png +0 -0
  99. screenshot-5.png +0 -0
  100. screenshot-6.png +0 -0
  101. screenshot-7.png +0 -0
  102. screenshot-8.png +0 -0
  103. screenshot-9.png +0 -0
  104. site.php +87 -66
  105. styles/af.css +7 -0
  106. styles/be.css +3 -0
  107. styles/cm.css +4 -0
  108. styles/dh.css +9 -0
  109. styles/es.css +92 -0
  110. styles/fl.css +4 -0
  111. styles/fv.css +6 -0
  112. styles/images/background.jpg +0 -0
  113. styles/images/bg.gif +0 -0
  114. styles/images/bg.jpg +0 -0
  115. styles/images/box-bg.jpg +0 -0
  116. styles/images/button.png +0 -0
  117. styles/images/do-not-enter.jpg +0 -0
  118. styles/images/es/bg-image.png +0 -0
  119. styles/images/es/bg.jpg +0 -0
  120. styles/images/es/button.png +0 -0
  121. styles/images/es/m-mode.png +0 -0
  122. styles/images/gnome-control_48px.png +0 -0
  123. styles/images/gnome_key_32px.png +0 -0
  124. styles/images/headline-af-de_DE.jpg +0 -0
  125. styles/images/headline-af-en_US.jpg +0 -0
  126. styles/images/headline-de_DE.jpg +0 -0
  127. styles/images/headline-en_US.jpg +0 -0
  128. styles/images/lego-bg.jpg +0 -0
  129. styles/images/lego-content.jpg +0 -0
  130. styles/images/leiste.jpg +0 -0
  131. styles/images/monster.jpg +0 -0
  132. styles/images/wartungsmodus.jpg +0 -0
  133. styles/ks.css +6 -0
  134. styles/ln.css +3 -0
  135. styles/monster.css +6 -0
  136. styles/nicki.css +4 -0
  137. styles/txt.css +4 -0
  138. styles/wartung-de_DE.swf +0 -0
  139. styles/wartung-es_ES.swf +0 -0
  140. styles/wartung.swf +0 -0
  141. uninstall.php +5 -0
  142. !wartungsmodus.php → wp-maintenance-mode.php +338 -197
WP Maintenance Mode-da_DK.txt ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ WP Maintenance Mode 1.6.5
2
+
3
+ Sprogfilerne skal ligge i wp-maintenance-mode/languages
4
+ Oplysning om stierne er pakket med.
5
+ Underst�tter dit udpakningsprogram anvendelse heraf,
6
+ kan du udpakke direkte til (formentlig) wp-content/plugins
7
+
8
+ En overs�ttelse til HTML-beskeden kunne v�re:
9
+
10
+ "<p>Beklager ulejligheden.<br />Der foreg�r i �jeblikket planlagt vedligeholdelse af siten.<br /><strong>Pr�v at komme tilbage om %1$s %2$s</strong><br />Mange tak for din forst�else.</p>"
11
+
12
+ Evt. opdateringer eller info herom kan hentes via http://wordpress.blogos.dk/wpdadkdownloads
13
+ eller direkte p� http://wordpress.blogos.dk/s%C3%B8g-efter-downloads/?did=250
14
+
15
+ Se evt. ogs� http://wordpress.blogos.dk/tag/wp-maintenance-mode
16
+
17
+
18
+
19
+ FOR THE DEVELOPER
20
+ You are very welcome to check for updated language files in one of the following ways:
21
+
22
+ 1. On my downloads page that list all files available for download:
23
+ http://wordpress.blogos.dk/wpdadkdownloads/
24
+
25
+ 2. Directly on my Download Monitor download page: http://wordpress.blogos.dk/s%C3%B8g-efter-downloads/?did=250
26
+
27
+ If I have blogged about your plugin, theme or other resource, you will be able to find it via this tag: http://wordpress.blogos.dk/tag/wp-maintenance-mode
28
+
css/jquery.countdown.css ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* jQuery Countdown styles 1.5.6. */
2
+ .countdown_rtl {
3
+ direction: rtl;
4
+ }
5
+ .countdown_holding span {
6
+ background-color: #ccc;
7
+ }
8
+ .countdown_row {
9
+ clear: both;
10
+ width: 100%;
11
+ padding: 0px 2px;
12
+ text-align: center;
13
+ }
14
+ .countdown_show1 .countdown_section {
15
+ width: 98%;
16
+ }
17
+ .countdown_show2 .countdown_section {
18
+ width: 48%;
19
+ }
20
+ .countdown_show3 .countdown_section {
21
+ width: 32.5%;
22
+ }
23
+ .countdown_show4 .countdown_section {
24
+ width: 24.5%;
25
+ }
26
+ .countdown_show5 .countdown_section {
27
+ width: 19.5%;
28
+ }
29
+ .countdown_show6 .countdown_section {
30
+ width: 16.25%;
31
+ }
32
+ .countdown_show7 .countdown_section {
33
+ width: 14%;
34
+ }
35
+ .countdown_section {
36
+ display: block;
37
+ float: left;
38
+ font-size: 75%;
39
+ text-align: center;
40
+ }
41
+ .countdown_amount {
42
+ font-size: 200%;
43
+ }
44
+ .countdown_descr {
45
+ display: block;
46
+ width: 100%;
47
+ }
css/overcast/images/ui-bg_flat_0_aaaaaa_40x100.png CHANGED
File without changes
css/overcast/images/ui-bg_flat_0_eeeeee_40x100.png CHANGED
File without changes
css/overcast/images/ui-bg_flat_55_c0402a_40x100.png CHANGED
File without changes
css/overcast/images/ui-bg_flat_55_eeeeee_40x100.png CHANGED
File without changes
css/overcast/images/ui-bg_glass_100_f8f8f8_1x400.png CHANGED
File without changes
css/overcast/images/ui-bg_glass_35_dddddd_1x400.png CHANGED
File without changes
css/overcast/images/ui-bg_glass_60_eeeeee_1x400.png CHANGED
File without changes
css/overcast/images/ui-bg_inset-hard_75_999999_1x100.png CHANGED
File without changes
css/overcast/images/ui-bg_inset-soft_50_c9c9c9_1x100.png CHANGED
File without changes
css/overcast/images/ui-icons_3383bb_256x240.png CHANGED
File without changes
css/overcast/images/ui-icons_454545_256x240.png CHANGED
File without changes
css/overcast/images/ui-icons_70b2e1_256x240.png CHANGED
File without changes
css/overcast/images/ui-icons_999999_256x240.png CHANGED
File without changes
css/overcast/images/ui-icons_fbc856_256x240.png CHANGED
File without changes
css/overcast/jquery-ui-1.7.2.custom.css CHANGED
File without changes
css/style.css CHANGED
@@ -10,6 +10,17 @@ margin: 10px;
10
  display: none;
11
  }
12
 
13
- #wm_message, #wm_message_update, #wm_message_active {
14
  display: none;
 
 
 
 
 
 
 
 
 
 
 
15
  }
10
  display: none;
11
  }
12
 
13
+ #wm_message, #wm_message_update, #wm_message_active, #wm_message_active2, #wm_message_update2 {
14
  display: none;
15
+ }
16
+
17
+ #wphead #mm_in_admin_header {
18
+ font: normal 11px Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
19
+ line-height: 17px;
20
+ padding: 17px 0 0 0;
21
+ float: left;
22
+ color: #464646;
23
+ }
24
+ #wphead a#mm_in_admin_header:hover {
25
+ text-decoration: underline;
26
  }
index.php ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ require_once('../../../wp-load.php');
3
+
4
+ if( !current_user_can('unfiltered_html') )
5
+ wp_die( __('Cheatin&#8217; uh?') );
6
+
7
+ $WPMaintenanceMode = new WPMaintenanceMode();
8
+ $WPMaintenanceMode->on_active();
9
+
10
+ include 'site.php';
11
+ ?>
js/de_DE.datetimepicker.js ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery( document ).ready( function( $ ) {
2
+ $.datepicker.regional['de'] = {clearText: 'l�schen', clearStatus: 'aktuelles Datum l�schen',
3
+ closeText: 'schlie�en', closeStatus: 'ohne �nderungen schlie�en',
4
+ prevText: '<zur�ck', prevStatus: 'letzten Monat zeigen',
5
+ nextText: 'Vor>', nextStatus: 'n�chsten Monat zeigen',
6
+ currentText: 'heute', currentStatus: '',
7
+ monthNames: ['Januar','Februar','M�rz','April','Mai','Juni',
8
+ 'Juli','August','September','Oktober','November','Dezember'],
9
+ monthNamesShort: ['Jan','Feb','M�r','Apr','Mai','Jun',
10
+ 'Jul','Aug','Sep','Okt','Nov','Dez'],
11
+ monthStatus: 'anderen Monat anzeigen', yearStatus: 'anderes Jahr anzeigen',
12
+ weekHeader: 'Wo', weekStatus: 'Woche des Monats',
13
+ dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
14
+ dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
15
+ dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
16
+ dayStatus: 'Setze DD als ersten Wochentag', dateStatus: 'W�hle D, M d',
17
+ dateFormat: 'dd.mm.yy', firstDay: 1,
18
+ initStatus: 'W�hle ein Datum', isRTL: false};
19
+ $.datepicker.setDefaults(jQuery.datepicker.regional['de']);
20
+ } );
js/jquery-ui-1.7.2.custom.min.js DELETED
@@ -1,13 +0,0 @@
1
- /*
2
- * jQuery UI Datepicker 1.7.2
3
- *
4
- * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
5
- * Dual licensed under the MIT (MIT-LICENSE.txt)
6
- * and GPL (GPL-LICENSE.txt) licenses.
7
- *
8
- * http://docs.jquery.com/UI/Datepicker
9
- *
10
- * Depends:
11
- * ui.core.js
12
- */
13
- (function($){$.extend($.ui,{datepicker:{version:"1.7.2"}});var PROP_NAME="datepicker";function Datepicker(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._datepickerShowing=false;this._inDialog=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass="ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],dateFormat:"mm/dd/yy",firstDay:0,isRTL:false};this._defaults={showOn:"focus",showAnim:"show",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,showMonthAfterYear:false,yearRange:"-10:+10",showOtherMonths:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"normal",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false};$.extend(this._defaults,this.regional[""]);this.dpDiv=$('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>')}$.extend(Datepicker.prototype,{markerClassName:"hasDatepicker",log:function(){if(this.debug){console.log.apply("",arguments)}},setDefaults:function(settings){extendRemove(this._defaults,settings||{});return this},_attachDatepicker:function(target,settings){var inlineSettings=null;for(var attrName in this._defaults){var attrValue=target.getAttribute("date:"+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue)}catch(err){inlineSettings[attrName]=attrValue}}}var nodeName=target.nodeName.toLowerCase();var inline=(nodeName=="div"||nodeName=="span");if(!target.id){target.id="dp"+(++this.uuid)}var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{});if(nodeName=="input"){this._connectDatepicker(target,inst)}else{if(inline){this._inlineDatepicker(target,inst)}}},_newInst:function(target,inline){var id=target[0].id.replace(/([:\[\]\.])/g,"\\\\$1");return{id:id,input:target,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:inline,dpDiv:(!inline?this.dpDiv:$('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}},_connectDatepicker:function(target,inst){var input=$(target);inst.append=$([]);inst.trigger=$([]);if(input.hasClass(this.markerClassName)){return}var appendText=this._get(inst,"appendText");var isRTL=this._get(inst,"isRTL");if(appendText){inst.append=$('<span class="'+this._appendClass+'">'+appendText+"</span>");input[isRTL?"before":"after"](inst.append)}var showOn=this._get(inst,"showOn");if(showOn=="focus"||showOn=="both"){input.focus(this._showDatepicker)}if(showOn=="button"||showOn=="both"){var buttonText=this._get(inst,"buttonText");var buttonImage=this._get(inst,"buttonImage");inst.trigger=$(this._get(inst,"buttonImageOnly")?$("<img/>").addClass(this._triggerClass).attr({src:buttonImage,alt:buttonText,title:buttonText}):$('<button type="button"></button>').addClass(this._triggerClass).html(buttonImage==""?buttonText:$("<img/>").attr({src:buttonImage,alt:buttonText,title:buttonText})));input[isRTL?"before":"after"](inst.trigger);inst.trigger.click(function(){if($.datepicker._datepickerShowing&&$.datepicker._lastInput==target){$.datepicker._hideDatepicker()}else{$.datepicker._showDatepicker(target)}return false})}input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst)},_inlineDatepicker:function(target,inst){var divSpan=$(target);if(divSpan.hasClass(this.markerClassName)){return}divSpan.addClass(this.markerClassName).append(inst.dpDiv).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value}).bind("getData.datepicker",function(event,key){return this._get(inst,key)});$.data(target,PROP_NAME,inst);this._setDate(inst,this._getDefaultDate(inst));this._updateDatepicker(inst);this._updateAlternate(inst)},_dialogDatepicker:function(input,dateText,onSelect,settings,pos){var inst=this._dialogInst;if(!inst){var id="dp"+(++this.uuid);this._dialogInput=$('<input type="text" id="'+id+'" size="1" style="position: absolute; top: -100px;"/>');this._dialogInput.keydown(this._doKeyDown);$("body").append(this._dialogInput);inst=this._dialogInst=this._newInst(this._dialogInput,false);inst.settings={};$.data(this._dialogInput[0],PROP_NAME,inst)}extendRemove(inst.settings,settings||{});this._dialogInput.val(dateText);this._pos=(pos?(pos.length?pos:[pos.pageX,pos.pageY]):null);if(!this._pos){var browserWidth=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;var browserHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight;var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;var scrollY=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[(browserWidth/2)-100+scrollX,(browserHeight/2)-150+scrollY]}this._dialogInput.css("left",this._pos[0]+"px").css("top",this._pos[1]+"px");inst.settings.onSelect=onSelect;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);if($.blockUI){$.blockUI(this.dpDiv)}$.data(this._dialogInput[0],PROP_NAME,inst);return this},_destroyDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();$.removeData(target,PROP_NAME);if(nodeName=="input"){inst.append.remove();inst.trigger.remove();$target.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress)}else{if(nodeName=="div"||nodeName=="span"){$target.removeClass(this.markerClassName).empty()}}},_enableDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=false;inst.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().removeClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)})},_disableDatepicker:function(target){var $target=$(target);var inst=$.data(target,PROP_NAME);if(!$target.hasClass(this.markerClassName)){return}var nodeName=target.nodeName.toLowerCase();if(nodeName=="input"){target.disabled=true;inst.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else{if(nodeName=="div"||nodeName=="span"){var inline=$target.children("."+this._inlineClass);inline.children().addClass("ui-state-disabled")}}this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value)});this._disabledInputs[this._disabledInputs.length]=target},_isDisabledDatepicker:function(target){if(!target){return false}for(var i=0;i<this._disabledInputs.length;i++){if(this._disabledInputs[i]==target){return true}}return false},_getInst:function(target){try{return $.data(target,PROP_NAME)}catch(err){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(target,name,value){var inst=this._getInst(target);if(arguments.length==2&&typeof name=="string"){return(name=="defaults"?$.extend({},$.datepicker._defaults):(inst?(name=="all"?$.extend({},inst.settings):this._get(inst,name)):null))}var settings=name||{};if(typeof name=="string"){settings={};settings[name]=value}if(inst){if(this._curInst==inst){this._hideDatepicker(null)}var date=this._getDateDatepicker(target);extendRemove(inst.settings,settings);this._setDateDatepicker(target,date);this._updateDatepicker(inst)}},_changeDatepicker:function(target,name,value){this._optionDatepicker(target,name,value)},_refreshDatepicker:function(target){var inst=this._getInst(target);if(inst){this._updateDatepicker(inst)}},_setDateDatepicker:function(target,date,endDate){var inst=this._getInst(target);if(inst){this._setDate(inst,date,endDate);this._updateDatepicker(inst);this._updateAlternate(inst)}},_getDateDatepicker:function(target){var inst=this._getInst(target);if(inst&&!inst.inline){this._setDateFromField(inst)}return(inst?this._getDate(inst):null)},_doKeyDown:function(event){var inst=$.datepicker._getInst(event.target);var handled=true;var isRTL=inst.dpDiv.is(".ui-datepicker-rtl");inst._keyEvent=true;if($.datepicker._datepickerShowing){switch(event.keyCode){case 9:$.datepicker._hideDatepicker(null,"");break;case 13:var sel=$("td."+$.datepicker._dayOverClass+", td."+$.datepicker._currentClass,inst.dpDiv);if(sel[0]){$.datepicker._selectDay(event.target,inst.selectedMonth,inst.selectedYear,sel[0])}else{$.datepicker._hideDatepicker(null,$.datepicker._get(inst,"duration"))}return false;break;case 27:$.datepicker._hideDatepicker(null,$.datepicker._get(inst,"duration"));break;case 33:$.datepicker._adjustDate(event.target,(event.ctrlKey?-$.datepicker._get(inst,"stepBigMonths"):-$.datepicker._get(inst,"stepMonths")),"M");break;case 34:$.datepicker._adjustDate(event.target,(event.ctrlKey?+$.datepicker._get(inst,"stepBigMonths"):+$.datepicker._get(inst,"stepMonths")),"M");break;case 35:if(event.ctrlKey||event.metaKey){$.datepicker._clearDate(event.target)}handled=event.ctrlKey||event.metaKey;break;case 36:if(event.ctrlKey||event.metaKey){$.datepicker._gotoToday(event.target)}handled=event.ctrlKey||event.metaKey;break;case 37:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,(isRTL?+1:-1),"D")}handled=event.ctrlKey||event.metaKey;if(event.originalEvent.altKey){$.datepicker._adjustDate(event.target,(event.ctrlKey?-$.datepicker._get(inst,"stepBigMonths"):-$.datepicker._get(inst,"stepMonths")),"M")}break;case 38:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,-7,"D")}handled=event.ctrlKey||event.metaKey;break;case 39:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,(isRTL?-1:+1),"D")}handled=event.ctrlKey||event.metaKey;if(event.originalEvent.altKey){$.datepicker._adjustDate(event.target,(event.ctrlKey?+$.datepicker._get(inst,"stepBigMonths"):+$.datepicker._get(inst,"stepMonths")),"M")}break;case 40:if(event.ctrlKey||event.metaKey){$.datepicker._adjustDate(event.target,+7,"D")}handled=event.ctrlKey||event.metaKey;break;default:handled=false}}else{if(event.keyCode==36&&event.ctrlKey){$.datepicker._showDatepicker(this)}else{handled=false}}if(handled){event.preventDefault();event.stopPropagation()}},_doKeyPress:function(event){var inst=$.datepicker._getInst(event.target);if($.datepicker._get(inst,"constrainInput")){var chars=$.datepicker._possibleChars($.datepicker._get(inst,"dateFormat"));var chr=String.fromCharCode(event.charCode==undefined?event.keyCode:event.charCode);return event.ctrlKey||(chr<" "||!chars||chars.indexOf(chr)>-1)}},_showDatepicker:function(input){input=input.target||input;if(input.nodeName.toLowerCase()!="input"){input=$("input",input.parentNode)[0]}if($.datepicker._isDisabledDatepicker(input)||$.datepicker._lastInput==input){return}var inst=$.datepicker._getInst(input);var beforeShow=$.datepicker._get(inst,"beforeShow");extendRemove(inst.settings,(beforeShow?beforeShow.apply(input,[input,inst]):{}));$.datepicker._hideDatepicker(null,"");$.datepicker._lastInput=input;$.datepicker._setDateFromField(inst);if($.datepicker._inDialog){input.value=""}if(!$.datepicker._pos){$.datepicker._pos=$.datepicker._findPos(input);$.datepicker._pos[1]+=input.offsetHeight}var isFixed=false;$(input).parents().each(function(){isFixed|=$(this).css("position")=="fixed";return !isFixed});if(isFixed&&$.browser.opera){$.datepicker._pos[0]-=document.documentElement.scrollLeft;$.datepicker._pos[1]-=document.documentElement.scrollTop}var offset={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null;inst.rangeStart=null;inst.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});$.datepicker._updateDatepicker(inst);offset=$.datepicker._checkOffset(inst,offset,isFixed);inst.dpDiv.css({position:($.datepicker._inDialog&&$.blockUI?"static":(isFixed?"fixed":"absolute")),display:"none",left:offset.left+"px",top:offset.top+"px"});if(!inst.inline){var showAnim=$.datepicker._get(inst,"showAnim")||"show";var duration=$.datepicker._get(inst,"duration");var postProcess=function(){$.datepicker._datepickerShowing=true;if($.browser.msie&&parseInt($.browser.version,10)<7){$("iframe.ui-datepicker-cover").css({width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4})}};if($.effects&&$.effects[showAnim]){inst.dpDiv.show(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[showAnim](duration,postProcess)}if(duration==""){postProcess()}if(inst.input[0].type!="hidden"){inst.input[0].focus()}$.datepicker._curInst=inst}},_updateDatepicker:function(inst){var dims={width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4};var self=this;inst.dpDiv.empty().append(this._generateHTML(inst)).find("iframe.ui-datepicker-cover").css({width:dims.width,height:dims.height}).end().find("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a").bind("mouseout",function(){$(this).removeClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).removeClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).removeClass("ui-datepicker-next-hover")}}).bind("mouseover",function(){if(!self._isDisabledDatepicker(inst.inline?inst.dpDiv.parent()[0]:inst.input[0])){$(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");$(this).addClass("ui-state-hover");if(this.className.indexOf("ui-datepicker-prev")!=-1){$(this).addClass("ui-datepicker-prev-hover")}if(this.className.indexOf("ui-datepicker-next")!=-1){$(this).addClass("ui-datepicker-next-hover")}}}).end().find("."+this._dayOverClass+" a").trigger("mouseover").end();var numMonths=this._getNumberOfMonths(inst);var cols=numMonths[1];var width=17;if(cols>1){inst.dpDiv.addClass("ui-datepicker-multi-"+cols).css("width",(width*cols)+"em")}else{inst.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("")}inst.dpDiv[(numMonths[0]!=1||numMonths[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");inst.dpDiv[(this._get(inst,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");if(inst.input&&inst.input[0].type!="hidden"&&inst==$.datepicker._curInst){$(inst.input[0]).focus()}},_checkOffset:function(inst,offset,isFixed){var dpWidth=inst.dpDiv.outerWidth();var dpHeight=inst.dpDiv.outerHeight();var inputWidth=inst.input?inst.input.outerWidth():0;var inputHeight=inst.input?inst.input.outerHeight():0;var viewWidth=(window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth)+$(document).scrollLeft();var viewHeight=(window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight)+$(document).scrollTop();offset.left-=(this._get(inst,"isRTL")?(dpWidth-inputWidth):0);offset.left-=(isFixed&&offset.left==inst.input.offset().left)?$(document).scrollLeft():0;offset.top-=(isFixed&&offset.top==(inst.input.offset().top+inputHeight))?$(document).scrollTop():0;offset.left-=(offset.left+dpWidth>viewWidth&&viewWidth>dpWidth)?Math.abs(offset.left+dpWidth-viewWidth):0;offset.top-=(offset.top+dpHeight>viewHeight&&viewHeight>dpHeight)?Math.abs(offset.top+dpHeight+inputHeight*2-viewHeight):0;return offset},_findPos:function(obj){while(obj&&(obj.type=="hidden"||obj.nodeType!=1)){obj=obj.nextSibling}var position=$(obj).offset();return[position.left,position.top]},_hideDatepicker:function(input,duration){var inst=this._curInst;if(!inst||(input&&inst!=$.data(input,PROP_NAME))){return}if(inst.stayOpen){this._selectDate("#"+inst.id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear))}inst.stayOpen=false;if(this._datepickerShowing){duration=(duration!=null?duration:this._get(inst,"duration"));var showAnim=this._get(inst,"showAnim");var postProcess=function(){$.datepicker._tidyDialog(inst)};if(duration!=""&&$.effects&&$.effects[showAnim]){inst.dpDiv.hide(showAnim,$.datepicker._get(inst,"showOptions"),duration,postProcess)}else{inst.dpDiv[(duration==""?"hide":(showAnim=="slideDown"?"slideUp":(showAnim=="fadeIn"?"fadeOut":"hide")))](duration,postProcess)}if(duration==""){this._tidyDialog(inst)}var onClose=this._get(inst,"onClose");if(onClose){onClose.apply((inst.input?inst.input[0]:null),[(inst.input?inst.input.val():""),inst])}this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if($.blockUI){$.unblockUI();$("body").append(this.dpDiv)}}this._inDialog=false}this._curInst=null},_tidyDialog:function(inst){inst.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(event){if(!$.datepicker._curInst){return}var $target=$(event.target);if(($target.parents("#"+$.datepicker._mainDivId).length==0)&&!$target.hasClass($.datepicker.markerClassName)&&!$target.hasClass($.datepicker._triggerClass)&&$.datepicker._datepickerShowing&&!($.datepicker._inDialog&&$.blockUI)){$.datepicker._hideDatepicker(null,"")}},_adjustDate:function(id,offset,period){var target=$(id);var inst=this._getInst(target[0]);if(this._isDisabledDatepicker(target[0])){return}this._adjustInstDate(inst,offset+(period=="M"?this._get(inst,"showCurrentAtPos"):0),period);this._updateDatepicker(inst)},_gotoToday:function(id){var target=$(id);var inst=this._getInst(target[0]);if(this._get(inst,"gotoCurrent")&&inst.currentDay){inst.selectedDay=inst.currentDay;inst.drawMonth=inst.selectedMonth=inst.currentMonth;inst.drawYear=inst.selectedYear=inst.currentYear}else{var date=new Date();inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear()}this._notifyChange(inst);this._adjustDate(target)},_selectMonthYear:function(id,select,period){var target=$(id);var inst=this._getInst(target[0]);inst._selectingMonthYear=false;inst["selected"+(period=="M"?"Month":"Year")]=inst["draw"+(period=="M"?"Month":"Year")]=parseInt(select.options[select.selectedIndex].value,10);this._notifyChange(inst);this._adjustDate(target)},_clickMonthYear:function(id){var target=$(id);var inst=this._getInst(target[0]);if(inst.input&&inst._selectingMonthYear&&!$.browser.msie){inst.input[0].focus()}inst._selectingMonthYear=!inst._selectingMonthYear},_selectDay:function(id,month,year,td){var target=$(id);if($(td).hasClass(this._unselectableClass)||this._isDisabledDatepicker(target[0])){return}var inst=this._getInst(target[0]);inst.selectedDay=inst.currentDay=$("a",td).html();inst.selectedMonth=inst.currentMonth=month;inst.selectedYear=inst.currentYear=year;if(inst.stayOpen){inst.endDay=inst.endMonth=inst.endYear=null}this._selectDate(id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear));if(inst.stayOpen){inst.rangeStart=this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay));this._updateDatepicker(inst)}},_clearDate:function(id){var target=$(id);var inst=this._getInst(target[0]);inst.stayOpen=false;inst.endDay=inst.endMonth=inst.endYear=inst.rangeStart=null;this._selectDate(target,"")},_selectDate:function(id,dateStr){var target=$(id);var inst=this._getInst(target[0]);dateStr=(dateStr!=null?dateStr:this._formatDate(inst));if(inst.input){inst.input.val(dateStr)}this._updateAlternate(inst);var onSelect=this._get(inst,"onSelect");if(onSelect){onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst])}else{if(inst.input){inst.input.trigger("change")}}if(inst.inline){this._updateDatepicker(inst)}else{if(!inst.stayOpen){this._hideDatepicker(null,this._get(inst,"duration"));this._lastInput=inst.input[0];if(typeof(inst.input[0])!="object"){inst.input[0].focus()}this._lastInput=null}}},_updateAlternate:function(inst){var altField=this._get(inst,"altField");if(altField){var altFormat=this._get(inst,"altFormat")||this._get(inst,"dateFormat");var date=this._getDate(inst);dateStr=this.formatDate(altFormat,date,this._getFormatConfig(inst));$(altField).each(function(){$(this).val(dateStr)})}},noWeekends:function(date){var day=date.getDay();return[(day>0&&day<6),""]},iso8601Week:function(date){var checkDate=new Date(date.getFullYear(),date.getMonth(),date.getDate());var firstMon=new Date(checkDate.getFullYear(),1-1,4);var firstDay=firstMon.getDay()||7;firstMon.setDate(firstMon.getDate()+1-firstDay);if(firstDay<4&&checkDate<firstMon){checkDate.setDate(checkDate.getDate()-3);return $.datepicker.iso8601Week(checkDate)}else{if(checkDate>new Date(checkDate.getFullYear(),12-1,28)){firstDay=new Date(checkDate.getFullYear()+1,1-1,4).getDay()||7;if(firstDay>4&&(checkDate.getDay()||7)<firstDay-3){return 1}}}return Math.floor(((checkDate-firstMon)/86400000)/7)+1},parseDate:function(format,value,settings){if(format==null||value==null){throw"Invalid arguments"}value=(typeof value=="object"?value.toString():value+"");if(value==""){return null}var shortYearCutoff=(settings?settings.shortYearCutoff:null)||this._defaults.shortYearCutoff;var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var year=-1;var month=-1;var day=-1;var doy=-1;var literal=false;var lookAhead=function(match){var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);if(matches){iFormat++}return matches};var getNumber=function(match){lookAhead(match);var origSize=(match=="@"?14:(match=="y"?4:(match=="o"?3:2)));var size=origSize;var num=0;while(size>0&&iValue<value.length&&value.charAt(iValue)>="0"&&value.charAt(iValue)<="9"){num=num*10+parseInt(value.charAt(iValue++),10);size--}if(size==origSize){throw"Missing number at position "+iValue}return num};var getName=function(match,shortNames,longNames){var names=(lookAhead(match)?longNames:shortNames);var size=0;for(var j=0;j<names.length;j++){size=Math.max(size,names[j].length)}var name="";var iInit=iValue;while(size>0&&iValue<value.length){name+=value.charAt(iValue++);for(var i=0;i<names.length;i++){if(name==names[i]){return i+1}}size--}throw"Unknown name at position "+iInit};var checkLiteral=function(){if(value.charAt(iValue)!=format.charAt(iFormat)){throw"Unexpected literal at position "+iValue}iValue++};var iValue=0;for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{checkLiteral()}}else{switch(format.charAt(iFormat)){case"d":day=getNumber("d");break;case"D":getName("D",dayNamesShort,dayNames);break;case"o":doy=getNumber("o");break;case"m":month=getNumber("m");break;case"M":month=getName("M",monthNamesShort,monthNames);break;case"y":year=getNumber("y");break;case"@":var date=new Date(getNumber("@"));year=date.getFullYear();month=date.getMonth()+1;day=date.getDate();break;case"'":if(lookAhead("'")){checkLiteral()}else{literal=true}break;default:checkLiteral()}}}if(year==-1){year=new Date().getFullYear()}else{if(year<100){year+=new Date().getFullYear()-new Date().getFullYear()%100+(year<=shortYearCutoff?0:-100)}}if(doy>-1){month=1;day=doy;do{var dim=this._getDaysInMonth(year,month-1);if(day<=dim){break}month++;day-=dim}while(true)}var date=this._daylightSavingAdjust(new Date(year,month-1,day));if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day){throw"Invalid date"}return date},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TIMESTAMP:"@",W3C:"yy-mm-dd",formatDate:function(format,date,settings){if(!date){return""}var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var lookAhead=function(match){var matches=(iFormat+1<format.length&&format.charAt(iFormat+1)==match);if(matches){iFormat++}return matches};var formatNumber=function(match,value,len){var num=""+value;if(lookAhead(match)){while(num.length<len){num="0"+num}}return num};var formatName=function(match,value,shortNames,longNames){return(lookAhead(match)?longNames[value]:shortNames[value])};var output="";var literal=false;if(date){for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{output+=format.charAt(iFormat)}}else{switch(format.charAt(iFormat)){case"d":output+=formatNumber("d",date.getDate(),2);break;case"D":output+=formatName("D",date.getDay(),dayNamesShort,dayNames);break;case"o":var doy=date.getDate();for(var m=date.getMonth()-1;m>=0;m--){doy+=this._getDaysInMonth(date.getFullYear(),m)}output+=formatNumber("o",doy,3);break;case"m":output+=formatNumber("m",date.getMonth()+1,2);break;case"M":output+=formatName("M",date.getMonth(),monthNamesShort,monthNames);break;case"y":output+=(lookAhead("y")?date.getFullYear():(date.getYear()%100<10?"0":"")+date.getYear()%100);break;case"@":output+=date.getTime();break;case"'":if(lookAhead("'")){output+="'"}else{literal=true}break;default:output+=format.charAt(iFormat)}}}}return output},_possibleChars:function(format){var chars="";var literal=false;for(var iFormat=0;iFormat<format.length;iFormat++){if(literal){if(format.charAt(iFormat)=="'"&&!lookAhead("'")){literal=false}else{chars+=format.charAt(iFormat)}}else{switch(format.charAt(iFormat)){case"d":case"m":case"y":case"@":chars+="0123456789";break;case"D":case"M":return null;case"'":if(lookAhead("'")){chars+="'"}else{literal=true}break;default:chars+=format.charAt(iFormat)}}}return chars},_get:function(inst,name){return inst.settings[name]!==undefined?inst.settings[name]:this._defaults[name]},_setDateFromField:function(inst){var dateFormat=this._get(inst,"dateFormat");var dates=inst.input?inst.input.val():null;inst.endDay=inst.endMonth=inst.endYear=null;var date=defaultDate=this._getDefaultDate(inst);var settings=this._getFormatConfig(inst);try{date=this.parseDate(dateFormat,dates,settings)||defaultDate}catch(event){this.log(event);date=defaultDate}inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();inst.currentDay=(dates?date.getDate():0);inst.currentMonth=(dates?date.getMonth():0);inst.currentYear=(dates?date.getFullYear():0);this._adjustInstDate(inst)},_getDefaultDate:function(inst){var date=this._determineDate(this._get(inst,"defaultDate"),new Date());var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&date<minDate?minDate:date);date=(maxDate&&date>maxDate?maxDate:date);return date},_determineDate:function(date,defaultDate){var offsetNumeric=function(offset){var date=new Date();date.setDate(date.getDate()+offset);return date};var offsetString=function(offset,getDaysInMonth){var date=new Date();var year=date.getFullYear();var month=date.getMonth();var day=date.getDate();var pattern=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;var matches=pattern.exec(offset);while(matches){switch(matches[2]||"d"){case"d":case"D":day+=parseInt(matches[1],10);break;case"w":case"W":day+=parseInt(matches[1],10)*7;break;case"m":case"M":month+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break;case"y":case"Y":year+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break}matches=pattern.exec(offset)}return new Date(year,month,day)};date=(date==null?defaultDate:(typeof date=="string"?offsetString(date,this._getDaysInMonth):(typeof date=="number"?(isNaN(date)?defaultDate:offsetNumeric(date)):date)));date=(date&&date.toString()=="Invalid Date"?defaultDate:date);if(date){date.setHours(0);date.setMinutes(0);date.setSeconds(0);date.setMilliseconds(0)}return this._daylightSavingAdjust(date)},_daylightSavingAdjust:function(date){if(!date){return null}date.setHours(date.getHours()>12?date.getHours()+2:0);return date},_setDate:function(inst,date,endDate){var clear=!(date);var origMonth=inst.selectedMonth;var origYear=inst.selectedYear;date=this._determineDate(date,new Date());inst.selectedDay=inst.currentDay=date.getDate();inst.drawMonth=inst.selectedMonth=inst.currentMonth=date.getMonth();inst.drawYear=inst.selectedYear=inst.currentYear=date.getFullYear();if(origMonth!=inst.selectedMonth||origYear!=inst.selectedYear){this._notifyChange(inst)}this._adjustInstDate(inst);if(inst.input){inst.input.val(clear?"":this._formatDate(inst))}},_getDate:function(inst){var startDate=(!inst.currentYear||(inst.input&&inst.input.val()=="")?null:this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return startDate},_generateHTML:function(inst){var today=new Date();today=this._daylightSavingAdjust(new Date(today.getFullYear(),today.getMonth(),today.getDate()));var isRTL=this._get(inst,"isRTL");var showButtonPanel=this._get(inst,"showButtonPanel");var hideIfNoPrevNext=this._get(inst,"hideIfNoPrevNext");var navigationAsDateFormat=this._get(inst,"navigationAsDateFormat");var numMonths=this._getNumberOfMonths(inst);var showCurrentAtPos=this._get(inst,"showCurrentAtPos");var stepMonths=this._get(inst,"stepMonths");var stepBigMonths=this._get(inst,"stepBigMonths");var isMultiMonth=(numMonths[0]!=1||numMonths[1]!=1);var currentDate=this._daylightSavingAdjust((!inst.currentDay?new Date(9999,9,9):new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");var drawMonth=inst.drawMonth-showCurrentAtPos;var drawYear=inst.drawYear;if(drawMonth<0){drawMonth+=12;drawYear--}if(maxDate){var maxDraw=this._daylightSavingAdjust(new Date(maxDate.getFullYear(),maxDate.getMonth()-numMonths[1]+1,maxDate.getDate()));maxDraw=(minDate&&maxDraw<minDate?minDate:maxDraw);while(this._daylightSavingAdjust(new Date(drawYear,drawMonth,1))>maxDraw){drawMonth--;if(drawMonth<0){drawMonth=11;drawYear--}}}inst.drawMonth=drawMonth;inst.drawYear=drawYear;var prevText=this._get(inst,"prevText");prevText=(!navigationAsDateFormat?prevText:this.formatDate(prevText,this._daylightSavingAdjust(new Date(drawYear,drawMonth-stepMonths,1)),this._getFormatConfig(inst)));var prev=(this._canAdjustMonth(inst,-1,drawYear,drawMonth)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#'+inst.id+"', -"+stepMonths+", 'M');\" title=\""+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"e":"w")+'">'+prevText+"</span></a>":(hideIfNoPrevNext?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+prevText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"e":"w")+'">'+prevText+"</span></a>"));var nextText=this._get(inst,"nextText");nextText=(!navigationAsDateFormat?nextText:this.formatDate(nextText,this._daylightSavingAdjust(new Date(drawYear,drawMonth+stepMonths,1)),this._getFormatConfig(inst)));var next=(this._canAdjustMonth(inst,+1,drawYear,drawMonth)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery.datepicker._adjustDate(\'#'+inst.id+"', +"+stepMonths+", 'M');\" title=\""+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"w":"e")+'">'+nextText+"</span></a>":(hideIfNoPrevNext?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+nextText+'"><span class="ui-icon ui-icon-circle-triangle-'+(isRTL?"w":"e")+'">'+nextText+"</span></a>"));var currentText=this._get(inst,"currentText");var gotoDate=(this._get(inst,"gotoCurrent")&&inst.currentDay?currentDate:today);currentText=(!navigationAsDateFormat?currentText:this.formatDate(currentText,gotoDate,this._getFormatConfig(inst)));var controls=(!inst.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery.datepicker._hideDatepicker();">'+this._get(inst,"closeText")+"</button>":"");var buttonPanel=(showButtonPanel)?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(isRTL?controls:"")+(this._isInRange(inst,gotoDate)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery.datepicker._gotoToday(\'#'+inst.id+"');\">"+currentText+"</button>":"")+(isRTL?"":controls)+"</div>":"";var firstDay=parseInt(this._get(inst,"firstDay"),10);firstDay=(isNaN(firstDay)?0:firstDay);var dayNames=this._get(inst,"dayNames");var dayNamesShort=this._get(inst,"dayNamesShort");var dayNamesMin=this._get(inst,"dayNamesMin");var monthNames=this._get(inst,"monthNames");var monthNamesShort=this._get(inst,"monthNamesShort");var beforeShowDay=this._get(inst,"beforeShowDay");var showOtherMonths=this._get(inst,"showOtherMonths");var calculateWeek=this._get(inst,"calculateWeek")||this.iso8601Week;var endDate=inst.endDay?this._daylightSavingAdjust(new Date(inst.endYear,inst.endMonth,inst.endDay)):currentDate;var defaultDate=this._getDefaultDate(inst);var html="";for(var row=0;row<numMonths[0];row++){var group="";for(var col=0;col<numMonths[1];col++){var selectedDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,inst.selectedDay));var cornerClass=" ui-corner-all";var calender="";if(isMultiMonth){calender+='<div class="ui-datepicker-group ui-datepicker-group-';switch(col){case 0:calender+="first";cornerClass=" ui-corner-"+(isRTL?"right":"left");break;case numMonths[1]-1:calender+="last";cornerClass=" ui-corner-"+(isRTL?"left":"right");break;default:calender+="middle";cornerClass="";break}calender+='">'}calender+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+cornerClass+'">'+(/all|left/.test(cornerClass)&&row==0?(isRTL?next:prev):"")+(/all|right/.test(cornerClass)&&row==0?(isRTL?prev:next):"")+this._generateMonthYearHeader(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,row>0||col>0,monthNames,monthNamesShort)+'</div><table class="ui-datepicker-calendar"><thead><tr>';var thead="";for(var dow=0;dow<7;dow++){var day=(dow+firstDay)%7;thead+="<th"+((dow+firstDay+6)%7>=5?' class="ui-datepicker-week-end"':"")+'><span title="'+dayNames[day]+'">'+dayNamesMin[day]+"</span></th>"}calender+=thead+"</tr></thead><tbody>";var daysInMonth=this._getDaysInMonth(drawYear,drawMonth);if(drawYear==inst.selectedYear&&drawMonth==inst.selectedMonth){inst.selectedDay=Math.min(inst.selectedDay,daysInMonth)}var leadDays=(this._getFirstDayOfMonth(drawYear,drawMonth)-firstDay+7)%7;var numRows=(isMultiMonth?6:Math.ceil((leadDays+daysInMonth)/7));var printDate=this._daylightSavingAdjust(new Date(drawYear,drawMonth,1-leadDays));for(var dRow=0;dRow<numRows;dRow++){calender+="<tr>";var tbody="";for(var dow=0;dow<7;dow++){var daySettings=(beforeShowDay?beforeShowDay.apply((inst.input?inst.input[0]:null),[printDate]):[true,""]);var otherMonth=(printDate.getMonth()!=drawMonth);var unselectable=otherMonth||!daySettings[0]||(minDate&&printDate<minDate)||(maxDate&&printDate>maxDate);tbody+='<td class="'+((dow+firstDay+6)%7>=5?" ui-datepicker-week-end":"")+(otherMonth?" ui-datepicker-other-month":"")+((printDate.getTime()==selectedDate.getTime()&&drawMonth==inst.selectedMonth&&inst._keyEvent)||(defaultDate.getTime()==printDate.getTime()&&defaultDate.getTime()==selectedDate.getTime())?" "+this._dayOverClass:"")+(unselectable?" "+this._unselectableClass+" ui-state-disabled":"")+(otherMonth&&!showOtherMonths?"":" "+daySettings[1]+(printDate.getTime()>=currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" "+this._currentClass:"")+(printDate.getTime()==today.getTime()?" ui-datepicker-today":""))+'"'+((!otherMonth||showOtherMonths)&&daySettings[2]?' title="'+daySettings[2]+'"':"")+(unselectable?"":" onclick=\"DP_jQuery.datepicker._selectDay('#"+inst.id+"',"+drawMonth+","+drawYear+', this);return false;"')+">"+(otherMonth?(showOtherMonths?printDate.getDate():"&#xa0;"):(unselectable?'<span class="ui-state-default">'+printDate.getDate()+"</span>":'<a class="ui-state-default'+(printDate.getTime()==today.getTime()?" ui-state-highlight":"")+(printDate.getTime()>=currentDate.getTime()&&printDate.getTime()<=endDate.getTime()?" ui-state-active":"")+'" href="#">'+printDate.getDate()+"</a>"))+"</td>";printDate.setDate(printDate.getDate()+1);printDate=this._daylightSavingAdjust(printDate)}calender+=tbody+"</tr>"}drawMonth++;if(drawMonth>11){drawMonth=0;drawYear++}calender+="</tbody></table>"+(isMultiMonth?"</div>"+((numMonths[0]>0&&col==numMonths[1]-1)?'<div class="ui-datepicker-row-break"></div>':""):"");group+=calender}html+=group}html+=buttonPanel+($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':"");inst._keyEvent=false;return html},_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,secondary,monthNames,monthNamesShort){minDate=(inst.rangeStart&&minDate&&selectedDate<minDate?selectedDate:minDate);var changeMonth=this._get(inst,"changeMonth");var changeYear=this._get(inst,"changeYear");var showMonthAfterYear=this._get(inst,"showMonthAfterYear");var html='<div class="ui-datepicker-title">';var monthHtml="";if(secondary||!changeMonth){monthHtml+='<span class="ui-datepicker-month">'+monthNames[drawMonth]+"</span> "}else{var inMinYear=(minDate&&minDate.getFullYear()==drawYear);var inMaxYear=(maxDate&&maxDate.getFullYear()==drawYear);monthHtml+='<select class="ui-datepicker-month" onchange="DP_jQuery.datepicker._selectMonthYear(\'#'+inst.id+"', this, 'M');\" onclick=\"DP_jQuery.datepicker._clickMonthYear('#"+inst.id+"');\">";for(var month=0;month<12;month++){if((!inMinYear||month>=minDate.getMonth())&&(!inMaxYear||month<=maxDate.getMonth())){monthHtml+='<option value="'+month+'"'+(month==drawMonth?' selected="selected"':"")+">"+monthNamesShort[month]+"</option>"}}monthHtml+="</select>"}if(!showMonthAfterYear){html+=monthHtml+((secondary||changeMonth||changeYear)&&(!(changeMonth&&changeYear))?"&#xa0;":"")}if(secondary||!changeYear){html+='<span class="ui-datepicker-year">'+drawYear+"</span>"}else{var years=this._get(inst,"yearRange").split(":");var year=0;var endYear=0;if(years.length!=2){year=drawYear-10;endYear=drawYear+10}else{if(years[0].charAt(0)=="+"||years[0].charAt(0)=="-"){year=drawYear+parseInt(years[0],10);endYear=drawYear+parseInt(years[1],10)}else{year=parseInt(years[0],10);endYear=parseInt(years[1],10)}}year=(minDate?Math.max(year,minDate.getFullYear()):year);endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);html+='<select class="ui-datepicker-year" onchange="DP_jQuery.datepicker._selectMonthYear(\'#'+inst.id+"', this, 'Y');\" onclick=\"DP_jQuery.datepicker._clickMonthYear('#"+inst.id+"');\">";for(;year<=endYear;year++){html+='<option value="'+year+'"'+(year==drawYear?' selected="selected"':"")+">"+year+"</option>"}html+="</select>"}if(showMonthAfterYear){html+=(secondary||changeMonth||changeYear?"&#xa0;":"")+monthHtml}html+="</div>";return html},_adjustInstDate:function(inst,offset,period){var year=inst.drawYear+(period=="Y"?offset:0);var month=inst.drawMonth+(period=="M"?offset:0);var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+(period=="D"?offset:0);var date=this._daylightSavingAdjust(new Date(year,month,day));var minDate=this._getMinMaxDate(inst,"min",true);var maxDate=this._getMinMaxDate(inst,"max");date=(minDate&&date<minDate?minDate:date);date=(maxDate&&date>maxDate?maxDate:date);inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();if(period=="M"||period=="Y"){this._notifyChange(inst)}},_notifyChange:function(inst){var onChange=this._get(inst,"onChangeMonthYear");if(onChange){onChange.apply((inst.input?inst.input[0]:null),[inst.selectedYear,inst.selectedMonth+1,inst])}},_getNumberOfMonths:function(inst){var numMonths=this._get(inst,"numberOfMonths");return(numMonths==null?[1,1]:(typeof numMonths=="number"?[1,numMonths]:numMonths))},_getMinMaxDate:function(inst,minMax,checkRange){var date=this._determineDate(this._get(inst,minMax+"Date"),null);return(!checkRange||!inst.rangeStart?date:(!date||inst.rangeStart>date?inst.rangeStart:date))},_getDaysInMonth:function(year,month){return 32-new Date(year,month,32).getDate()},_getFirstDayOfMonth:function(year,month){return new Date(year,month,1).getDay()},_canAdjustMonth:function(inst,offset,curYear,curMonth){var numMonths=this._getNumberOfMonths(inst);var date=this._daylightSavingAdjust(new Date(curYear,curMonth+(offset<0?offset:numMonths[1]),1));if(offset<0){date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()))}return this._isInRange(inst,date)},_isInRange:function(inst,date){var newMinDate=(!inst.rangeStart?null:this._daylightSavingAdjust(new Date(inst.selectedYear,inst.selectedMonth,inst.selectedDay)));newMinDate=(newMinDate&&inst.rangeStart<newMinDate?inst.rangeStart:newMinDate);var minDate=newMinDate||this._getMinMaxDate(inst,"min");var maxDate=this._getMinMaxDate(inst,"max");return((!minDate||date>=minDate)&&(!maxDate||date<=maxDate))},_getFormatConfig:function(inst){var shortYearCutoff=this._get(inst,"shortYearCutoff");shortYearCutoff=(typeof shortYearCutoff!="string"?shortYearCutoff:new Date().getFullYear()%100+parseInt(shortYearCutoff,10));return{shortYearCutoff:shortYearCutoff,dayNamesShort:this._get(inst,"dayNamesShort"),dayNames:this._get(inst,"dayNames"),monthNamesShort:this._get(inst,"monthNamesShort"),monthNames:this._get(inst,"monthNames")}},_formatDate:function(inst,day,month,year){if(!day){inst.currentDay=inst.selectedDay;inst.currentMonth=inst.selectedMonth;inst.currentYear=inst.selectedYear}var date=(day?(typeof day=="object"?day:this._daylightSavingAdjust(new Date(year,month,day))):this._daylightSavingAdjust(new Date(inst.currentYear,inst.currentMonth,inst.currentDay)));return this.formatDate(this._get(inst,"dateFormat"),date,this._getFormatConfig(inst))}});function extendRemove(target,props){$.extend(target,props);for(var name in props){if(props[name]==null||props[name]==undefined){target[name]=props[name]}}return target}function isArray(a){return(a&&(($.browser.safari&&typeof a=="object"&&a.length)||(a.constructor&&a.constructor.toString().match(/\Array\(\)/))))}$.fn.datepicker=function(options){if(!$.datepicker.initialized){$(document).mousedown($.datepicker._checkExternalClick).find("body").append($.datepicker.dpDiv);$.datepicker.initialized=true}var otherArgs=Array.prototype.slice.call(arguments,1);if(typeof options=="string"&&(options=="isDisabled"||options=="getDate")){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}if(options=="option"&&arguments.length==2&&typeof arguments[1]=="string"){return $.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this[0]].concat(otherArgs))}return this.each(function(){typeof options=="string"?$.datepicker["_"+options+"Datepicker"].apply($.datepicker,[this].concat(otherArgs)):$.datepicker._attachDatepicker(this,options)})};$.datepicker=new Datepicker();$.datepicker.initialized=false;$.datepicker.uuid=new Date().getTime();$.datepicker.version="1.7.2";window.DP_jQuery=$})(jQuery);;
 
 
 
 
 
 
 
 
 
 
 
 
 
js/jquery.countdown-ar.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Arabic (عربي) initialisation for the jQuery countdown extension
3
+ Translated by Talal Al Asmari (talal@psdgroups.com), April 2009. */
4
+ (function($) {
5
+ $.countdown.regional['ar'] = {
6
+ labels: ['سنوات','أشهر','أسابيع','أيام','ساعات','دقائق','ثواني'],
7
+ labels1: ['سنة','شهر','أسبوع','يوم','ساعة','دقيقة','ثانية'],
8
+ compactLabels: ['س', 'ش', 'أ', 'ي'],
9
+ timeSeparator: ':', isRTL: true};
10
+ $.countdown.setDefaults($.countdown.regional['ar']);
11
+ })(jQuery);
js/jquery.countdown-cs.js ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Czech initialisation for the jQuery countdown extension
3
+ * Written by Roman Chlebec (creamd@c64.sk) (2008) */
4
+ (function($) {
5
+ $.countdown.regional['cs'] = {
6
+ labels: ['Roků', 'Měsíců', 'Týdnů', 'Dní', 'Hodin', 'Minut', 'Sekund'],
7
+ labels1: ['Rok', 'Měsíc', 'Týden', 'Den', 'Hodina', 'Minuta', 'Sekunda'],
8
+ labels2: ['Roky', 'Měsíce', 'Týdny', 'Dny', 'Hodiny', 'Minuty', 'Sekundy'],
9
+ labels3: ['Roky', 'Měsíce', 'Týdny', 'Dny', 'Hodiny', 'Minuty', 'Sekundy'],
10
+ labels4: ['Roky', 'Měsíce', 'Týdny', 'Dny', 'Hodiny', 'Minuty', 'Sekundy'],
11
+ compactLabels: ['r', 'm', 't', 'd'],
12
+ timeSeparator: ':', isRTL: false};
13
+ $.countdown.setDefaults($.countdown.regional['cs']);
14
+ })(jQuery);
js/jquery.countdown-da.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Danish initialisation for the jQuery countdown extension
3
+ Written by Buch (admin@buch90.dk). */
4
+ (function($) {
5
+ $.countdown.regional['da'] = {
6
+ labels: ['År', 'Måneder', 'Uger', 'Dage', 'Timer', 'Minutter', 'Sekunder'],
7
+ labels1: ['År', 'Månad', 'Uge', 'Dag', 'Time', 'Minut', 'Sekund'],
8
+ compactLabels: ['Å', 'M', 'U', 'D'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['da']);
11
+ })(jQuery);
js/jquery.countdown-de.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ German initialisation for the jQuery countdown extension
3
+ Written by Keith Wood (kbwood@virginbroadband.com.au) Jan 2008. */
4
+ (function($) {
5
+ $.countdown.regional['de'] = {
6
+ labels: ['Jahren', 'Monate', 'Wochen', 'Tage', 'Stunden', 'Minuten', 'Sekunden'],
7
+ labels1: ['Jahre', 'Monat', 'Woche', 'Tag', 'Stunde', 'Minute', 'Sekunde'],
8
+ compactLabels: ['J', 'M', 'W', 'T'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['de']);
11
+ })(jQuery);
js/jquery.countdown-es.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Spanish initialisation for the jQuery countdown extension
3
+ * Written by Sergio Carracedo Martinez webmaster@neodisenoweb.com (2008) */
4
+ (function($) {
5
+ $.countdown.regional['es'] = {
6
+ labels: ['Años', 'Meses', 'Semanas', 'Dias', 'Horas', 'Minutos', 'Segundos'],
7
+ labels1: ['Años', 'Meses', 'Semanas', 'Dias', 'Horas', 'Minutos', 'Segundos'],
8
+ compactLabels: ['a', 'm', 's', 'g'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['es']);
11
+ })(jQuery);
js/jquery.countdown-fa.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Persian (فارسی) initialisation for the jQuery countdown extension
3
+ Written by Alireza Ziaie (ziai@magfa.com) Oct 2008. */
4
+ (function($) {
5
+ $.countdown.regional['fa'] = {
6
+ labels: ['‌سال', 'ماه', 'هفته', 'روز', 'ساعت', 'دقیقه', 'ثانیه'],
7
+ labels1: ['سال', 'ماه', 'هفته', 'روز', 'ساعت', 'دقیقه', 'ثانیه'],
8
+ compactLabels: ['س', 'م', 'ه', 'ر'],
9
+ timeSeparator: ':', isRTL: true};
10
+ $.countdown.setDefaults($.countdown.regional['fa']);
11
+ })(jQuery);
js/jquery.countdown-fi.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Finnish initialisation for the jQuery countdown extension
3
+ Written by Kalle Vänskä and Juha Suni (juhis.suni@gmail.com). */
4
+ (function($) {
5
+ $.countdown.regional['fi'] = {
6
+ labels: ['Vuotta', 'Kuukautta', 'Viikkoa', 'Päivää', 'Tuntia', 'Minuuttia', 'Sekuntia'],
7
+ labels1: ['Vuosi', 'Kuukausi', 'Viikko', 'Päivä', 'Tunti', 'Minuutti', 'Sekunti'],
8
+ compactLabels: ['v', 'kk', 'vk', 'pv'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['fi']);
11
+ })(jQuery);
js/jquery.countdown-fr.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ French initialisation for the jQuery countdown extension
3
+ Written by Keith Wood (kbwood{at}iinet.com.au) Jan 2008. */
4
+ (function($) {
5
+ $.countdown.regional['fr'] = {
6
+ labels: ['Années', 'Mois', 'Semaines', 'Jours', 'Heures', 'Minutes', 'Secondes'],
7
+ labels1: ['Année', 'Mois', 'Semaine', 'Jour', 'Heure', 'Minute', 'Seconde'],
8
+ compactLabels: ['a', 'm', 's', 'j'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['fr']);
11
+ })(jQuery);
js/jquery.countdown-gl.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Galician initialisation for the jQuery countdown extension
3
+ * Written by Moncho Pena ramon.pena.rodriguez@gmail.com (2009) */
4
+ (function($) {
5
+ $.countdown.regional['gl'] = {
6
+ labels: ['Anos', 'Meses', 'Semanas', 'Días', 'Horas', 'Minutos', 'Segundos'],
7
+ labels1: ['Anos', 'Meses', 'Semanas', 'Días', 'Horas', 'Minutos', 'Segundos'],
8
+ compactLabels: ['a', 'm', 's', 'g'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['gl']);
11
+ })(jQuery);
js/jquery.countdown-he.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Hebrew initialisation for the jQuery countdown extension
3
+ * Translated by Nir Livne, Dec 2008 */
4
+ (function($) {
5
+ $.countdown.regional['he'] = {
6
+ labels: ['שנים', 'חודשים', 'שבועות', 'ימים', 'שעות', 'דקות', 'שניות'],
7
+ labels1: ['שנה', 'חודש', 'שבוע', 'יום', 'שעה', 'דקה', 'שנייה'],
8
+ compactLabels: ['שנ', 'ח', 'שב', 'י'],
9
+ timeSeparator: ':', isRTL: true};
10
+ $.countdown.setDefaults($.countdown.regional['he']);
11
+ })(jQuery);
js/jquery.countdown-hu.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Hungarian initialisation for the jQuery countdown extension
3
+ * Written by Edmond L. (webmond@gmail.com). */
4
+ (function($) {
5
+ $.countdown.regional['hu'] = {
6
+ labels: ['Év', 'Hónap', 'Hét', 'Nap', 'Óra', 'Perc', 'Másodperc'],
7
+ labels1: ['Év', 'Hónap', 'Hét', 'Nap', 'Óra', 'Perc', 'Másodperc'],
8
+ compactLabels: ['É', 'H', 'Hé', 'N'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['hu']);
11
+ })(jQuery);
js/jquery.countdown-id.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Indonesian initialisation for the jQuery countdown extension
3
+ Written by Erwin Yonathan Jan 2009. */
4
+ (function($) {
5
+ $.countdown.regional['id'] = {
6
+ labels: ['tahun', 'bulan', 'minggu', 'hari', 'jam', 'menit', 'detik'],
7
+ labels1: ['tahun', 'bulan', 'minggu', 'hari', 'jam', 'menit', 'detik'],
8
+ compactLabels: ['t', 'b', 'm', 'h'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['id']);
11
+ })(jQuery);
js/jquery.countdown-it.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Italian initialisation for the jQuery countdown extension
3
+ * Written by Davide Bellettini (davide.bellettini@gmail.com) Feb 2008. */
4
+ (function($) {
5
+ $.countdown.regional['it'] = {
6
+ labels: ['Anni', 'Mesi', 'Settimane', 'Giorni', 'Ore', 'Minuti', 'Secondi'],
7
+ labels1: ['Anni', 'Mesi', 'Settimane', 'Giorni', 'Ore', 'Minuti', 'Secondi'],
8
+ compactLabels: ['a', 'm', 's', 'g'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['it']);
11
+ })(jQuery);
js/jquery.countdown-ja.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Japanese initialisation for the jQuery countdown extension
3
+ Written by Ken Ishimoto (ken@ksroom.com) Aug 2009. */
4
+ (function($) {
5
+ $.countdown.regional['ja'] = {
6
+ labels: ['年', '月', '週', '日', '時', '分', '秒'],
7
+ labels1: ['年', '月', '週', '日', '時', '分', '秒'],
8
+ compactLabels: ['年', '月', '週', '日'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['ja']);
11
+ })(jQuery);
js/jquery.countdown-ko.js ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Korean initialisation for the jQuery countdown extension
3
+ Written by Ryan Yu (ryanyu79@gmail.com). */
4
+ (function($) {
5
+ $.countdown.regional['ko'] = {
6
+ labels: ['년', '월', '주', '일', '시', '분', '초'],
7
+ labels1: ['년', '월', '주', '일', '시', '분', '초'],
8
+ compactLabels: ['년', '월', '주', '일'],
9
+ compactLabels1: ['년', '월', '주', '일'],
10
+ timeSeparator: ':', isRTL: false};
11
+ $.countdown.setDefaults($.countdown.regional['ko']);
12
+ })(jQuery);
js/jquery.countdown-lt.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Lithuanian localisation for the jQuery countdown extension
3
+ * Written by Moacir P. de Sá Pereira (moacir{at}gmail.com) (2009) */
4
+ (function($) {
5
+ $.countdown.regional['lt'] = {
6
+ labels: ['Metų', 'Mėnesių', 'Savaičių', 'Dienų', 'Valandų', 'Minučių', 'Sekundžių'],
7
+ labels1: ['Metai', 'Mėnuo', 'Savaitė', 'Diena', 'Valanda', 'Minutė', 'Sekundė'],
8
+ compactLabels: ['m', 'm', 's', 'd'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['lt']);
11
+ })(jQuery);
js/jquery.countdown-lv.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Latvian initialisation for the jQuery countdown extension
3
+ * Written by Jānis Peisenieks janis.peisenieks@gmail.com (2010) */
4
+ (function($) {
5
+ $.countdown.regional['lv'] = {
6
+ labels: ['Gadi', 'Mēneši', 'Nedēļas', 'Dienas', 'Stundas', 'Minūtes', 'Sekundes'],
7
+ labels1: ['Gads', 'Mēnesis', 'Nedēļa', 'Diena', 'Stunda', 'Minūte', 'Sekunde'],
8
+ compactLabels: ['l', 'm', 'n', 'd'], compactLabels1: ['g', 'm', 'n', 'd'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['lv']);
11
+ })(jQuery);
js/jquery.countdown-my.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Burmese initialisation for the jQuery countdown extension
3
+ Written by Win Lwin Moe (winnlwinmoe@gmail.com) Dec 2009. */
4
+ (function($) {
5
+ $.countdown.regional['my'] = {
6
+ labels: ['နွစ္', 'လ', 'ရက္သတဿတပတ္', 'ရက္', 'နာရီ', 'မိနစ္', 'စကဿကန့္'],
7
+ labels1: ['နွစ္', 'လ', 'ရက္သတဿတပတ္', 'ရက္', 'နာရီ', 'မိနစ္', 'စကဿကန့္'],
8
+ compactLabels: ['နွစ္', 'လ', 'ရက္သတဿတပတ္', 'ရက္'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['my']);
11
+ })(jQuery);
js/jquery.countdown-nb.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Norwegian Bokmål translation
3
+ Written by Kristian Ravnevand */
4
+ (function($) {
5
+ $.countdown.regional['nb'] = {
6
+ labels: ['År', 'Måneder', 'Uker', 'Dager', 'Timer', 'Minutter', 'Sekunder'],
7
+ labels1: ['År', 'Måned', 'Uke', 'Dag', 'Time', 'Minutt', 'Sekund'],
8
+ compactLabels: ['Å', 'M', 'U', 'D'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['nb']);
11
+ })(jQuery);
js/jquery.countdown-nl.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Dutch initialisation for the jQuery countdown extension
3
+ Written by Mathias Bynens <http://mathiasbynens.be/> Mar 2008. */
4
+ (function($) {
5
+ $.countdown.regional['nl'] = {
6
+ labels: ['Jaren', 'Maanden', 'Weken', 'Dagen', 'Uren', 'Minuten', 'Seconden'],
7
+ labels1: ['Jaar', 'Maand', 'Week', 'Dag', 'Uur', 'Minuut', 'Seconde'],
8
+ compactLabels: ['j', 'm', 'w', 'd'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['nl']);
11
+ })(jQuery);
js/jquery.countdown-pl.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Polish initialisation for the jQuery countdown extension
3
+ * Written by Pawel Lewtak lewtak@gmail.com (2008) */
4
+ (function($) {
5
+ $.countdown.regional['pl'] = {
6
+ labels: ['lat', 'miesięcy', 'tygodni', 'dni', 'godzin', 'minut', 'sekund'],
7
+ labels1: ['rok', 'miesiac', 'tydzien', 'dzien', 'godzina', 'minuta', 'sekunda'],
8
+ compactLabels: ['l', 'm', 't', 'd'], compactLabels1: ['r', 'm', 't', 'd'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['pl']);
11
+ })(jQuery);
js/jquery.countdown-pt-BR.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Brazilian initialisation for the jQuery countdown extension
3
+ Translated by Marcelo Pellicano de Oliveira (pellicano@gmail.com) Feb 2008. */
4
+ (function($) {
5
+ $.countdown.regional['pt-BR'] = {
6
+ labels: ['Anos', 'Meses', 'Semanas', 'Dias', 'Horas', 'Minutos', 'Segundos'],
7
+ labels1: ['Anos', 'Meses', 'Semanas', 'Dias', 'Horas', 'Minutos', 'Segundos'],
8
+ compactLabels: ['a', 'm', 's', 'd'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['pt-BR']);
11
+ })(jQuery);
js/jquery.countdown-ro.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Romanian initialisation for the jQuery countdown extension
3
+ * Written by Edmond L. (webmond@gmail.com). */
4
+ (function($) {
5
+ $.countdown.regional['ro'] = {
6
+ labels: ['Ani', 'Luni', 'Saptamani', 'Zile', 'Ore', 'Minute', 'Secunde'],
7
+ labels1: ['An', 'Luna', 'Saptamana', 'Ziua', 'Ora', 'Minutul', 'Secunda'],
8
+ compactLabels: ['A', 'L', 'S', 'Z'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['ro']);
11
+ })(jQuery);
js/jquery.countdown-ru.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Russian initialisation for the jQuery countdown extension
3
+ * Written by Dominus i3rixon@gmail.com (2008) */
4
+ (function($) {
5
+ $.countdown.regional['ru'] = {
6
+ labels: ['Лет', 'Месяцев', 'Недель', 'Дней', 'Часов', 'Минут', 'Секунд'],
7
+ labels1: ['Год', 'Месяц', 'Неделя', 'День', 'Час', 'Минута', 'Секунда'],
8
+ compactLabels: ['l', 'm', 'n', 'd'], compactLabels1: ['g', 'm', 'n', 'd'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['ru']);
11
+ })(jQuery);
js/jquery.countdown-sk.js ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Slovak initialisation for the jQuery countdown extension
3
+ * Written by Roman Chlebec (creamd@c64.sk) (2008) */
4
+ (function($) {
5
+ $.countdown.regional['sk'] = {
6
+ labels: ['Rokov', 'Mesiacov', 'Týždňov', 'Dní', 'Hodín', 'Minút', 'Sekúnd'],
7
+ labels1: ['Rok', 'Mesiac', 'Týždeň', 'Deň', 'Hodina', 'Minúta', 'Sekunda'],
8
+ labels2: ['Roky', 'Mesiace', 'Týždne', 'Dni', 'Hodiny', 'Minúty', 'Sekundy'],
9
+ labels3: ['Roky', 'Mesiace', 'Týždne', 'Dni', 'Hodiny', 'Minúty', 'Sekundy'],
10
+ labels4: ['Roky', 'Mesiace', 'Týždne', 'Dni', 'Hodiny', 'Minúty', 'Sekundy'],
11
+ compactLabels: ['r', 'm', 't', 'd'],
12
+ timeSeparator: ':', isRTL: false};
13
+ $.countdown.setDefaults($.countdown.regional['sk']);
14
+ })(jQuery);
js/jquery.countdown-sv.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Swedish initialisation for the jQuery countdown extension
3
+ Written by Carl (carl@nordenfelt.com). */
4
+ (function($) {
5
+ $.countdown.regional['sv'] = {
6
+ labels: ['År', 'Månader', 'Veckor', 'Dagar', 'Timmar', 'Minuter', 'Sekunder'],
7
+ labels1: ['År', 'Månad', 'Vecka', 'Dag', 'Timme', 'Minut', 'Sekund'],
8
+ compactLabels: ['Å', 'M', 'V', 'D'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['sv']);
11
+ })(jQuery);
js/jquery.countdown-tr.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Turkish initialisation for the jQuery countdown extension
3
+ * Written by Bekir Ahmetoğlu (bekir@cerek.com) Aug 2008. */
4
+ (function($) {
5
+ $.countdown.regional['tr'] = {
6
+ labels: ['Yıl', 'Ay', 'Hafta', 'Gün', 'Saat', 'Dakika', 'Saniye'],
7
+ labels1: ['Yıl', 'Ay', 'Hafta', 'Gün', 'Saat', 'Dakika', 'Saniye'],
8
+ compactLabels: ['y', 'a', 'h', 'g'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['tr']);
11
+ })(jQuery);
js/jquery.countdown-uk.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ * Ukrainian initialisation for the jQuery countdown extension
3
+ * Written by Goloborodko M misha.gm@gmail.com (2009) */
4
+ (function($) {
5
+ $.countdown.regional['uk'] = {
6
+ labels: ['Років', 'Місяців', 'Тижднів', 'Днів', 'Годин', 'Хвилин', 'Секунд'],
7
+ labels1: ['Рік', 'Місяць', 'Тиждень', 'День', 'Година', 'Хвилина', 'Секунда'],
8
+ compactLabels: ['r', 'm', 't', 'd'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['uk']);
11
+ })(jQuery);
js/jquery.countdown-zh-CN.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Simplified Chinese initialisation for the jQuery countdown extension
3
+ Written by Cloudream (cloudream@gmail.com). */
4
+ (function($) {
5
+ $.countdown.regional['zh-CN'] = {
6
+ labels: ['年', '月', '周', '天', '时', '分', '秒'],
7
+ labels1: ['年', '月', '周', '天', '时', '分', '秒'],
8
+ compactLabels: ['年', '月', '周', '天'], compactLabels1: ['年', '月', '周', '天'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['zh-CN']);
11
+ })(jQuery);
js/jquery.countdown-zh-TW.js ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Traditional Chinese initialisation for the jQuery countdown extension
3
+ Written by Cloudream (cloudream@gmail.com). */
4
+ (function($) {
5
+ $.countdown.regional['zh-TW'] = {
6
+ labels: ['年', '月', '周', '天', '時', '分', '秒'],
7
+ labels1: ['年', '月', '周', '天', '時', '分', '秒'],
8
+ compactLabels: ['年', '月', '周', '天'], compactLabels1: ['年', '月', '周', '天'],
9
+ timeSeparator: ':', isRTL: false};
10
+ $.countdown.setDefaults($.countdown.regional['zh-TW']);
11
+ })(jQuery);
js/jquery.countdown.js ADDED
@@ -0,0 +1,706 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Countdown for jQuery v1.5.6.
3
+ Written by Keith Wood (kbwood{at}iinet.com.au) January 2008.
4
+ Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and
5
+ MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses.
6
+ Please attribute the author if you use it. */
7
+
8
+ /* Display a countdown timer.
9
+ Attach it with options like:
10
+ $('div selector').countdown(
11
+ {until: new Date(2009, 1 - 1, 1, 0, 0, 0), onExpiry: happyNewYear}); */
12
+
13
+ (function($) { // Hide scope, no $ conflict
14
+
15
+ /* Countdown manager. */
16
+ function Countdown() {
17
+ this.regional = []; // Available regional settings, indexed by language code
18
+ this.regional[''] = { // Default regional settings
19
+ // The display texts for the counters
20
+ labels: ['Years', 'Months', 'Weeks', 'Days', 'Hours', 'Minutes', 'Seconds'],
21
+ // The display texts for the counters if only one
22
+ labels1: ['Year', 'Month', 'Week', 'Day', 'Hour', 'Minute', 'Second'],
23
+ compactLabels: ['y', 'm', 'w', 'd'], // The compact texts for the counters
24
+ timeSeparator: ':', // Separator for time periods
25
+ isRTL: false // True for right-to-left languages, false for left-to-right
26
+ };
27
+ this._defaults = {
28
+ until: null, // new Date(year, mth - 1, day, hr, min, sec) - date/time to count down to
29
+ // or numeric for seconds offset, or string for unit offset(s):
30
+ // 'Y' years, 'O' months, 'W' weeks, 'D' days, 'H' hours, 'M' minutes, 'S' seconds
31
+ since: null, // new Date(year, mth - 1, day, hr, min, sec) - date/time to count up from
32
+ // or numeric for seconds offset, or string for unit offset(s):
33
+ // 'Y' years, 'O' months, 'W' weeks, 'D' days, 'H' hours, 'M' minutes, 'S' seconds
34
+ timezone: null, // The timezone (hours or minutes from GMT) for the target times,
35
+ // or null for client local
36
+ serverSync: null, // A function to retrieve the current server time for synchronisation
37
+ format: 'dHMS', // Format for display - upper case for always, lower case only if non-zero,
38
+ // 'Y' years, 'O' months, 'W' weeks, 'D' days, 'H' hours, 'M' minutes, 'S' seconds
39
+ layout: '', // Build your own layout for the countdown
40
+ compact: false, // True to display in a compact format, false for an expanded one
41
+ description: '', // The description displayed for the countdown
42
+ expiryUrl: '', // A URL to load upon expiry, replacing the current page
43
+ expiryText: '', // Text to display upon expiry, replacing the countdown
44
+ alwaysExpire: false, // True to trigger onExpiry even if never counted down
45
+ onExpiry: null, // Callback when the countdown expires -
46
+ // receives no parameters and 'this' is the containing division
47
+ onTick: null // Callback when the countdown is updated -
48
+ // receives int[7] being the breakdown by period (based on format)
49
+ // and 'this' is the containing division
50
+ };
51
+ $.extend(this._defaults, this.regional['']);
52
+ }
53
+
54
+ var PROP_NAME = 'countdown';
55
+
56
+ var Y = 0; // Years
57
+ var O = 1; // Months
58
+ var W = 2; // Weeks
59
+ var D = 3; // Days
60
+ var H = 4; // Hours
61
+ var M = 5; // Minutes
62
+ var S = 6; // Seconds
63
+
64
+ $.extend(Countdown.prototype, {
65
+ /* Class name added to elements to indicate already configured with countdown. */
66
+ markerClassName: 'hasCountdown',
67
+
68
+ /* Shared timer for all countdowns. */
69
+ _timer: setInterval(function() { $.countdown._updateTargets(); }, 980),
70
+ /* List of currently active countdown targets. */
71
+ _timerTargets: [],
72
+
73
+ /* Override the default settings for all instances of the countdown widget.
74
+ @param options (object) the new settings to use as defaults */
75
+ setDefaults: function(options) {
76
+ this._resetExtraLabels(this._defaults, options);
77
+ extendRemove(this._defaults, options || {});
78
+ },
79
+
80
+ /* Convert a date/time to UTC.
81
+ @param tz (number) the hour or minute offset from GMT, e.g. +9, -360
82
+ @param year (Date) the date/time in that timezone or
83
+ (number) the year in that timezone
84
+ @param month (number, optional) the month (0 - 11) (omit if year is a Date)
85
+ @param day (number, optional) the day (omit if year is a Date)
86
+ @param hours (number, optional) the hour (omit if year is a Date)
87
+ @param mins (number, optional) the minute (omit if year is a Date)
88
+ @param secs (number, optional) the second (omit if year is a Date)
89
+ @param ms (number, optional) the millisecond (omit if year is a Date)
90
+ @return (Date) the equivalent UTC date/time */
91
+ UTCDate: function(tz, year, month, day, hours, mins, secs, ms) {
92
+ if (typeof year == 'object' && year.constructor == Date) {
93
+ ms = year.getMilliseconds();
94
+ secs = year.getSeconds();
95
+ mins = year.getMinutes();
96
+ hours = year.getHours();
97
+ day = year.getDate();
98
+ month = year.getMonth();
99
+ year = year.getFullYear();
100
+ }
101
+ var d = new Date();
102
+ d.setUTCFullYear(year);
103
+ d.setUTCDate(1);
104
+ d.setUTCMonth(month || 0);
105
+ d.setUTCDate(day || 1);
106
+ d.setUTCHours(hours || 0);
107
+ d.setUTCMinutes((mins || 0) - (Math.abs(tz) < 30 ? tz * 60 : tz));
108
+ d.setUTCSeconds(secs || 0);
109
+ d.setUTCMilliseconds(ms || 0);
110
+ return d;
111
+ },
112
+
113
+ /* Convert a set of periods into seconds.
114
+ Averaged for months and years.
115
+ @param periods (number[7]) the periods per year/month/week/day/hour/minute/second
116
+ @return (number) the corresponding number of seconds */
117
+ periodsToSeconds: function(periods) {
118
+ return periods[0] * 31557600 + periods[1] * 2629800 + periods[2] * 604800 +
119
+ periods[3] * 86400 + periods[4] * 3600 + periods[5] * 60 + periods[6];
120
+ },
121
+
122
+ /* Retrieve one or more settings values.
123
+ @param name (string, optional) the name of the setting to retrieve
124
+ or 'all' for all instance settings or omit for all default settings
125
+ @return (any) the requested setting(s) */
126
+ _settingsCountdown: function(target, name) {
127
+ if (!name) {
128
+ return $.countdown._defaults;
129
+ }
130
+ var inst = $.data(target, PROP_NAME);
131
+ return (name == 'all' ? inst.options : inst.options[name]);
132
+ },
133
+
134
+ /* Attach the countdown widget to a div.
135
+ @param target (element) the containing division
136
+ @param options (object) the initial settings for the countdown */
137
+ _attachCountdown: function(target, options) {
138
+ var $target = $(target);
139
+ if ($target.hasClass(this.markerClassName)) {
140
+ return;
141
+ }
142
+ $target.addClass(this.markerClassName);
143
+ var inst = {options: $.extend({}, options),
144
+ _periods: [0, 0, 0, 0, 0, 0, 0]};
145
+ $.data(target, PROP_NAME, inst);
146
+ this._changeCountdown(target);
147
+ },
148
+
149
+ /* Add a target to the list of active ones.
150
+ @param target (element) the countdown target */
151
+ _addTarget: function(target) {
152
+ if (!this._hasTarget(target)) {
153
+ this._timerTargets.push(target);
154
+ }
155
+ },
156
+
157
+ /* See if a target is in the list of active ones.
158
+ @param target (element) the countdown target
159
+ @return (boolean) true if present, false if not */
160
+ _hasTarget: function(target) {
161
+ return ($.inArray(target, this._timerTargets) > -1);
162
+ },
163
+
164
+ /* Remove a target from the list of active ones.
165
+ @param target (element) the countdown target */
166
+ _removeTarget: function(target) {
167
+ this._timerTargets = $.map(this._timerTargets,
168
+ function(value) { return (value == target ? null : value); }); // delete entry
169
+ },
170
+
171
+ /* Update each active timer target. */
172
+ _updateTargets: function() {
173
+ for (var i = 0; i < this._timerTargets.length; i++) {
174
+ this._updateCountdown(this._timerTargets[i]);
175
+ }
176
+ },
177
+
178
+ /* Redisplay the countdown with an updated display.
179
+ @param target (jQuery) the containing division
180
+ @param inst (object) the current settings for this instance */
181
+ _updateCountdown: function(target, inst) {
182
+ var $target = $(target);
183
+ inst = inst || $.data(target, PROP_NAME);
184
+ if (!inst) {
185
+ return;
186
+ }
187
+ $target.html(this._generateHTML(inst));
188
+ $target[(this._get(inst, 'isRTL') ? 'add' : 'remove') + 'Class']('countdown_rtl');
189
+ var onTick = this._get(inst, 'onTick');
190
+ if (onTick) {
191
+ var periods = inst._hold != 'lap' ? inst._periods :
192
+ this._calculatePeriods(inst, inst._show, new Date());
193
+ onTick.apply(target, [periods]);
194
+ }
195
+ var expired = inst._hold != 'pause' &&
196
+ (inst._since ? inst._now.getTime() < inst._since.getTime() :
197
+ inst._now.getTime() >= inst._until.getTime());
198
+ if (expired && !inst._expiring) {
199
+ inst._expiring = true;
200
+ if (this._hasTarget(target) || this._get(inst, 'alwaysExpire')) {
201
+ this._removeTarget(target);
202
+ var onExpiry = this._get(inst, 'onExpiry');
203
+ if (onExpiry) {
204
+ onExpiry.apply(target, []);
205
+ }
206
+ var expiryText = this._get(inst, 'expiryText');
207
+ if (expiryText) {
208
+ var layout = this._get(inst, 'layout');
209
+ inst.options.layout = expiryText;
210
+ this._updateCountdown(target, inst);
211
+ inst.options.layout = layout;
212
+ }
213
+ var expiryUrl = this._get(inst, 'expiryUrl');
214
+ if (expiryUrl) {
215
+ window.location = expiryUrl;
216
+ }
217
+ }
218
+ inst._expiring = false;
219
+ }
220
+ else if (inst._hold == 'pause') {
221
+ this._removeTarget(target);
222
+ }
223
+ $.data(target, PROP_NAME, inst);
224
+ },
225
+
226
+ /* Reconfigure the settings for a countdown div.
227
+ @param target (element) the containing division
228
+ @param options (object) the new settings for the countdown or
229
+ (string) an individual property name
230
+ @param value (any) the individual property value
231
+ (omit if options is an object) */
232
+ _changeCountdown: function(target, options, value) {
233
+ options = options || {};
234
+ if (typeof options == 'string') {
235
+ var name = options;
236
+ options = {};
237
+ options[name] = value;
238
+ }
239
+ var inst = $.data(target, PROP_NAME);
240
+ if (inst) {
241
+ this._resetExtraLabels(inst.options, options);
242
+ extendRemove(inst.options, options);
243
+ this._adjustSettings(target, inst);
244
+ $.data(target, PROP_NAME, inst);
245
+ var now = new Date();
246
+ if ((inst._since && inst._since < now) ||
247
+ (inst._until && inst._until > now)) {
248
+ this._addTarget(target);
249
+ }
250
+ this._updateCountdown(target, inst);
251
+ }
252
+ },
253
+
254
+ /* Reset any extra labelsn and compactLabelsn entries if changing labels.
255
+ @param base (object) the options to be updated
256
+ @param options (object) the new option values */
257
+ _resetExtraLabels: function(base, options) {
258
+ var changingLabels = false;
259
+ for (var n in options) {
260
+ if (n.match(/[Ll]abels/)) {
261
+ changingLabels = true;
262
+ break;
263
+ }
264
+ }
265
+ if (changingLabels) {
266
+ for (var n in base) { // Remove custom numbered labels
267
+ if (n.match(/[Ll]abels[0-9]/)) {
268
+ base[n] = null;
269
+ }
270
+ }
271
+ }
272
+ },
273
+
274
+ /* Calculate interal settings for an instance.
275
+ @param target (element) the containing division
276
+ @param inst (object) the current settings for this instance */
277
+ _adjustSettings: function(target, inst) {
278
+ var serverSync = this._get(inst, 'serverSync');
279
+ serverSync = (serverSync ? serverSync.apply(target, []) : null);
280
+ var now = new Date();
281
+ var timezone = this._get(inst, 'timezone');
282
+ timezone = (timezone == null ? -now.getTimezoneOffset() : timezone);
283
+ inst._since = this._get(inst, 'since');
284
+ if (inst._since != null) {
285
+ inst._since = this.UTCDate(timezone, this._determineTime(inst._since, null));
286
+ if (inst._since && serverSync) {
287
+ inst._since.setMilliseconds(inst._since.getMilliseconds() +
288
+ now.getTime() - serverSync.getTime());
289
+ }
290
+ }
291
+ inst._until = this.UTCDate(timezone, this._determineTime(this._get(inst, 'until'), now));
292
+ if (serverSync) {
293
+ inst._until.setMilliseconds(inst._until.getMilliseconds() +
294
+ now.getTime() - serverSync.getTime());
295
+ }
296
+ inst._show = this._determineShow(inst);
297
+ },
298
+
299
+ /* Remove the countdown widget from a div.
300
+ @param target (element) the containing division */
301
+ _destroyCountdown: function(target) {
302
+ var $target = $(target);
303
+ if (!$target.hasClass(this.markerClassName)) {
304
+ return;
305
+ }
306
+ this._removeTarget(target);
307
+ $target.removeClass(this.markerClassName).empty();
308
+ $.removeData(target, PROP_NAME);
309
+ },
310
+
311
+ /* Pause a countdown widget at the current time.
312
+ Stop it running but remember and display the current time.
313
+ @param target (element) the containing division */
314
+ _pauseCountdown: function(target) {
315
+ this._hold(target, 'pause');
316
+ },
317
+
318
+ /* Pause a countdown widget at the current time.
319
+ Stop the display but keep the countdown running.
320
+ @param target (element) the containing division */
321
+ _lapCountdown: function(target) {
322
+ this._hold(target, 'lap');
323
+ },
324
+
325
+ /* Resume a paused countdown widget.
326
+ @param target (element) the containing division */
327
+ _resumeCountdown: function(target) {
328
+ this._hold(target, null);
329
+ },
330
+
331
+ /* Pause or resume a countdown widget.
332
+ @param target (element) the containing division
333
+ @param hold (string) the new hold setting */
334
+ _hold: function(target, hold) {
335
+ var inst = $.data(target, PROP_NAME);
336
+ if (inst) {
337
+ if (inst._hold == 'pause' && !hold) {
338
+ inst._periods = inst._savePeriods;
339
+ var sign = (inst._since ? '-' : '+');
340
+ inst[inst._since ? '_since' : '_until'] =
341
+ this._determineTime(sign + inst._periods[0] + 'y' +
342
+ sign + inst._periods[1] + 'o' + sign + inst._periods[2] + 'w' +
343
+ sign + inst._periods[3] + 'd' + sign + inst._periods[4] + 'h' +
344
+ sign + inst._periods[5] + 'm' + sign + inst._periods[6] + 's');
345
+ this._addTarget(target);
346
+ }
347
+ inst._hold = hold;
348
+ inst._savePeriods = (hold == 'pause' ? inst._periods : null);
349
+ $.data(target, PROP_NAME, inst);
350
+ this._updateCountdown(target, inst);
351
+ }
352
+ },
353
+
354
+ /* Return the current time periods.
355
+ @param target (element) the containing division
356
+ @return (number[7]) the current periods for the countdown */
357
+ _getTimesCountdown: function(target) {
358
+ var inst = $.data(target, PROP_NAME);
359
+ return (!inst ? null : (!inst._hold ? inst._periods :
360
+ this._calculatePeriods(inst, inst._show, new Date())));
361
+ },
362
+
363
+ /* Get a setting value, defaulting if necessary.
364
+ @param inst (object) the current settings for this instance
365
+ @param name (string) the name of the required setting
366
+ @return (any) the setting's value or a default if not overridden */
367
+ _get: function(inst, name) {
368
+ return (inst.options[name] != null ?
369
+ inst.options[name] : $.countdown._defaults[name]);
370
+ },
371
+
372
+ /* A time may be specified as an exact value or a relative one.
373
+ @param setting (string or number or Date) - the date/time value
374
+ as a relative or absolute value
375
+ @param defaultTime (Date) the date/time to use if no other is supplied
376
+ @return (Date) the corresponding date/time */
377
+ _determineTime: function(setting, defaultTime) {
378
+ var offsetNumeric = function(offset) { // e.g. +300, -2
379
+ var time = new Date();
380
+ time.setTime(time.getTime() + offset * 1000);
381
+ return time;
382
+ };
383
+ var offsetString = function(offset) { // e.g. '+2d', '-4w', '+3h +30m'
384
+ offset = offset.toLowerCase();
385
+ var time = new Date();
386
+ var year = time.getFullYear();
387
+ var month = time.getMonth();
388
+ var day = time.getDate();
389
+ var hour = time.getHours();
390
+ var minute = time.getMinutes();
391
+ var second = time.getSeconds();
392
+ var pattern = /([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g;
393
+ var matches = pattern.exec(offset);
394
+ while (matches) {
395
+ switch (matches[2] || 's') {
396
+ case 's': second += parseInt(matches[1], 10); break;
397
+ case 'm': minute += parseInt(matches[1], 10); break;
398
+ case 'h': hour += parseInt(matches[1], 10); break;
399
+ case 'd': day += parseInt(matches[1], 10); break;
400
+ case 'w': day += parseInt(matches[1], 10) * 7; break;
401
+ case 'o':
402
+ month += parseInt(matches[1], 10);
403
+ day = Math.min(day, $.countdown._getDaysInMonth(year, month));
404
+ break;
405
+ case 'y':
406
+ year += parseInt(matches[1], 10);
407
+ day = Math.min(day, $.countdown._getDaysInMonth(year, month));
408
+ break;
409
+ }
410
+ matches = pattern.exec(offset);
411
+ }
412
+ return new Date(year, month, day, hour, minute, second, 0);
413
+ };
414
+ var time = (setting == null ? defaultTime :
415
+ (typeof setting == 'string' ? offsetString(setting) :
416
+ (typeof setting == 'number' ? offsetNumeric(setting) : setting)));
417
+ if (time) time.setMilliseconds(0);
418
+ return time;
419
+ },
420
+
421
+ /* Determine the number of days in a month.
422
+ @param year (number) the year
423
+ @param month (number) the month
424
+ @return (number) the days in that month */
425
+ _getDaysInMonth: function(year, month) {
426
+ return 32 - new Date(year, month, 32).getDate();
427
+ },
428
+
429
+ /* Generate the HTML to display the countdown widget.
430
+ @param inst (object) the current settings for this instance
431
+ @return (string) the new HTML for the countdown display */
432
+ _generateHTML: function(inst) {
433
+ // Determine what to show
434
+ inst._periods = periods = (inst._hold ? inst._periods :
435
+ this._calculatePeriods(inst, inst._show, new Date()));
436
+ // Show all 'asNeeded' after first non-zero value
437
+ var shownNonZero = false;
438
+ var showCount = 0;
439
+ var show = $.extend({}, inst._show);
440
+ for (var period = 0; period < inst._show.length; period++) {
441
+ shownNonZero |= (inst._show[period] == '?' && periods[period] > 0);
442
+ show[period] = (inst._show[period] == '?' && !shownNonZero ? null : inst._show[period]);
443
+ showCount += (show[period] ? 1 : 0);
444
+ }
445
+ var compact = this._get(inst, 'compact');
446
+ var layout = this._get(inst, 'layout');
447
+ var labels = (compact ? this._get(inst, 'compactLabels') : this._get(inst, 'labels'));
448
+ var timeSeparator = this._get(inst, 'timeSeparator');
449
+ var description = this._get(inst, 'description') || '';
450
+ var showCompact = function(period) {
451
+ var labelsNum = $.countdown._get(inst, 'compactLabels' + periods[period]);
452
+ return (show[period] ? periods[period] +
453
+ (labelsNum ? labelsNum[period] : labels[period]) + ' ' : '');
454
+ };
455
+ var showFull = function(period) {
456
+ var labelsNum = $.countdown._get(inst, 'labels' + periods[period]);
457
+ return (show[period] ?
458
+ '<span class="countdown_section"><span class="countdown_amount">' +
459
+ periods[period] + '</span><br/>' +
460
+ (labelsNum ? labelsNum[period] : labels[period]) + '</span>' : '');
461
+ };
462
+ return (layout ? this._buildLayout(inst, show, layout, compact) :
463
+ ((compact ? // Compact version
464
+ '<span class="countdown_row countdown_amount' +
465
+ (inst._hold ? ' countdown_holding' : '') + '">' +
466
+ showCompact(Y) + showCompact(O) + showCompact(W) + showCompact(D) +
467
+ (show[H] ? this._minDigits(periods[H], 2) : '') +
468
+ (show[M] ? (show[H] ? timeSeparator : '') +
469
+ this._minDigits(periods[M], 2) : '') +
470
+ (show[S] ? (show[H] || show[M] ? timeSeparator : '') +
471
+ this._minDigits(periods[S], 2) : '') :
472
+ // Full version
473
+ '<span class="countdown_row countdown_show' + showCount +
474
+ (inst._hold ? ' countdown_holding' : '') + '">' +
475
+ showFull(Y) + showFull(O) + showFull(W) + showFull(D) +
476
+ showFull(H) + showFull(M) + showFull(S)) + '</span>' +
477
+ (description ? '<span class="countdown_row countdown_descr">' + description + '</span>' : '')));
478
+ },
479
+
480
+ /* Construct a custom layout.
481
+ @param inst (object) the current settings for this instance
482
+ @param show (string[7]) flags indicating which periods are requested
483
+ @param layout (string) the customised layout
484
+ @param compact (boolean) true if using compact labels
485
+ @return (string) the custom HTML */
486
+ _buildLayout: function(inst, show, layout, compact) {
487
+ var labels = this._get(inst, (compact ? 'compactLabels' : 'labels'));
488
+ var labelFor = function(index) {
489
+ return ($.countdown._get(inst,
490
+ (compact ? 'compactLabels' : 'labels') + inst._periods[index]) ||
491
+ labels)[index];
492
+ };
493
+ var digit = function(value, position) {
494
+ return Math.floor(value / position) % 10;
495
+ };
496
+ var subs = {desc: this._get(inst, 'description'), sep: this._get(inst, 'timeSeparator'),
497
+ yl: labelFor(Y), yn: inst._periods[Y], ynn: this._minDigits(inst._periods[Y], 2),
498
+ ynnn: this._minDigits(inst._periods[Y], 3), y1: digit(inst._periods[Y], 1),
499
+ y10: digit(inst._periods[Y], 10), y100: digit(inst._periods[Y], 100),
500
+ y1000: digit(inst._periods[Y], 1000),
501
+ ol: labelFor(O), on: inst._periods[O], onn: this._minDigits(inst._periods[O], 2),
502
+ onnn: this._minDigits(inst._periods[O], 3), o1: digit(inst._periods[O], 1),
503
+ o10: digit(inst._periods[O], 10), o100: digit(inst._periods[O], 100),
504
+ o1000: digit(inst._periods[O], 1000),
505
+ wl: labelFor(W), wn: inst._periods[W], wnn: this._minDigits(inst._periods[W], 2),
506
+ wnnn: this._minDigits(inst._periods[W], 3), w1: digit(inst._periods[W], 1),
507
+ w10: digit(inst._periods[W], 10), w100: digit(inst._periods[W], 100),
508
+ w1000: digit(inst._periods[W], 1000),
509
+ dl: labelFor(D), dn: inst._periods[D], dnn: this._minDigits(inst._periods[D], 2),
510
+ dnnn: this._minDigits(inst._periods[D], 3), d1: digit(inst._periods[D], 1),
511
+ d10: digit(inst._periods[D], 10), d100: digit(inst._periods[D], 100),
512
+ d1000: digit(inst._periods[D], 1000),
513
+ hl: labelFor(H), hn: inst._periods[H], hnn: this._minDigits(inst._periods[H], 2),
514
+ hnnn: this._minDigits(inst._periods[H], 3), h1: digit(inst._periods[H], 1),
515
+ h10: digit(inst._periods[H], 10), h100: digit(inst._periods[H], 100),
516
+ h1000: digit(inst._periods[H], 1000),
517
+ ml: labelFor(M), mn: inst._periods[M], mnn: this._minDigits(inst._periods[M], 2),
518
+ mnnn: this._minDigits(inst._periods[M], 3), m1: digit(inst._periods[M], 1),
519
+ m10: digit(inst._periods[M], 10), m100: digit(inst._periods[M], 100),
520
+ m1000: digit(inst._periods[M], 1000),
521
+ sl: labelFor(S), sn: inst._periods[S], snn: this._minDigits(inst._periods[S], 2),
522
+ snnn: this._minDigits(inst._periods[S], 3), s1: digit(inst._periods[S], 1),
523
+ s10: digit(inst._periods[S], 10), s100: digit(inst._periods[S], 100),
524
+ s1000: digit(inst._periods[S], 1000)};
525
+ var html = layout;
526
+ // Replace period containers: {p<}...{p>}
527
+ for (var i = 0; i < 7; i++) {
528
+ var period = 'yowdhms'.charAt(i);
529
+ var re = new RegExp('\\{' + period + '<\\}(.*)\\{' + period + '>\\}', 'g');
530
+ html = html.replace(re, (show[i] ? '$1' : ''));
531
+ }
532
+ // Replace period values: {pn}
533
+ $.each(subs, function(n, v) {
534
+ var re = new RegExp('\\{' + n + '\\}', 'g');
535
+ html = html.replace(re, v);
536
+ });
537
+ return html;
538
+ },
539
+
540
+ /* Ensure a numeric value has at least n digits for display.
541
+ @param value (number) the value to display
542
+ @param len (number) the minimum length
543
+ @return (string) the display text */
544
+ _minDigits: function(value, len) {
545
+ value = '' + value;
546
+ if (value.length >= len) {
547
+ return value;
548
+ }
549
+ value = '0000000000' + value;
550
+ return value.substr(value.length - len);
551
+ },
552
+
553
+ /* Translate the format into flags for each period.
554
+ @param inst (object) the current settings for this instance
555
+ @return (string[7]) flags indicating which periods are requested (?) or
556
+ required (!) by year, month, week, day, hour, minute, second */
557
+ _determineShow: function(inst) {
558
+ var format = this._get(inst, 'format');
559
+ var show = [];
560
+ show[Y] = (format.match('y') ? '?' : (format.match('Y') ? '!' : null));
561
+ show[O] = (format.match('o') ? '?' : (format.match('O') ? '!' : null));
562
+ show[W] = (format.match('w') ? '?' : (format.match('W') ? '!' : null));
563
+ show[D] = (format.match('d') ? '?' : (format.match('D') ? '!' : null));
564
+ show[H] = (format.match('h') ? '?' : (format.match('H') ? '!' : null));
565
+ show[M] = (format.match('m') ? '?' : (format.match('M') ? '!' : null));
566
+ show[S] = (format.match('s') ? '?' : (format.match('S') ? '!' : null));
567
+ return show;
568
+ },
569
+
570
+ /* Calculate the requested periods between now and the target time.
571
+ @param inst (object) the current settings for this instance
572
+ @param show (string[7]) flags indicating which periods are requested/required
573
+ @param now (Date) the current date and time
574
+ @return (number[7]) the current time periods (always positive)
575
+ by year, month, week, day, hour, minute, second */
576
+ _calculatePeriods: function(inst, show, now) {
577
+ // Find endpoints
578
+ inst._now = now;
579
+ inst._now.setMilliseconds(0);
580
+ var until = new Date(inst._now.getTime());
581
+ if (inst._since) {
582
+ if (now.getTime() < inst._since.getTime()) {
583
+ inst._now = now = until;
584
+ }
585
+ else {
586
+ now = inst._since;
587
+ }
588
+ }
589
+ else {
590
+ until.setTime(inst._until.getTime());
591
+ if (now.getTime() > inst._until.getTime()) {
592
+ inst._now = now = until;
593
+ }
594
+ }
595
+ // Calculate differences by period
596
+ var periods = [0, 0, 0, 0, 0, 0, 0];
597
+ if (show[Y] || show[O]) {
598
+ // Treat end of months as the same
599
+ var lastNow = $.countdown._getDaysInMonth(now.getFullYear(), now.getMonth());
600
+ var lastUntil = $.countdown._getDaysInMonth(until.getFullYear(), until.getMonth());
601
+ var sameDay = (until.getDate() == now.getDate() ||
602
+ (until.getDate() >= Math.min(lastNow, lastUntil) &&
603
+ now.getDate() >= Math.min(lastNow, lastUntil)));
604
+ var getSecs = function(date) {
605
+ return (date.getHours() * 60 + date.getMinutes()) * 60 + date.getSeconds();
606
+ };
607
+ var months = Math.max(0,
608
+ (until.getFullYear() - now.getFullYear()) * 12 + until.getMonth() - now.getMonth() +
609
+ ((until.getDate() < now.getDate() && !sameDay) ||
610
+ (sameDay && getSecs(until) < getSecs(now)) ? -1 : 0));
611
+ periods[Y] = (show[Y] ? Math.floor(months / 12) : 0);
612
+ periods[O] = (show[O] ? months - periods[Y] * 12 : 0);
613
+ // Adjust for months difference and end of month if necessary
614
+ var adjustDate = function(date, offset, last) {
615
+ var wasLastDay = (date.getDate() == last);
616
+ var lastDay = $.countdown._getDaysInMonth(date.getFullYear() + offset * periods[Y],
617
+ date.getMonth() + offset * periods[O]);
618
+ if (date.getDate() > lastDay) {
619
+ date.setDate(lastDay);
620
+ }
621
+ date.setFullYear(date.getFullYear() + offset * periods[Y]);
622
+ date.setMonth(date.getMonth() + offset * periods[O]);
623
+ if (wasLastDay) {
624
+ date.setDate(lastDay);
625
+ }
626
+ return date;
627
+ };
628
+ if (inst._since) {
629
+ until = adjustDate(until, -1, lastUntil);
630
+ }
631
+ else {
632
+ now = adjustDate(new Date(now.getTime()), +1, lastNow);
633
+ }
634
+ }
635
+ var diff = Math.floor((until.getTime() - now.getTime()) / 1000);
636
+ var extractPeriod = function(period, numSecs) {
637
+ periods[period] = (show[period] ? Math.floor(diff / numSecs) : 0);
638
+ diff -= periods[period] * numSecs;
639
+ };
640
+ extractPeriod(W, 604800);
641
+ extractPeriod(D, 86400);
642
+ extractPeriod(H, 3600);
643
+ extractPeriod(M, 60);
644
+ extractPeriod(S, 1);
645
+ if (diff > 0 && !inst._since) { // Round up if left overs
646
+ var multiplier = [1, 12, 4.3482, 7, 24, 60, 60];
647
+ var lastShown = S;
648
+ var max = 1;
649
+ for (var period = S; period >= Y; period--) {
650
+ if (show[period]) {
651
+ if (periods[lastShown] >= max) {
652
+ periods[lastShown] = 0;
653
+ diff = 1;
654
+ }
655
+ if (diff > 0) {
656
+ periods[period]++;
657
+ diff = 0;
658
+ lastShown = period;
659
+ max = 1;
660
+ }
661
+ }
662
+ max *= multiplier[period];
663
+ }
664
+ }
665
+ return periods;
666
+ }
667
+ });
668
+
669
+ /* jQuery extend now ignores nulls!
670
+ @param target (object) the object to update
671
+ @param props (object) the new settings
672
+ @return (object) the updated object */
673
+ function extendRemove(target, props) {
674
+ $.extend(target, props);
675
+ for (var name in props) {
676
+ if (props[name] == null) {
677
+ target[name] = null;
678
+ }
679
+ }
680
+ return target;
681
+ }
682
+
683
+ /* Process the countdown functionality for a jQuery selection.
684
+ @param command (string) the command to run (optional, default 'attach')
685
+ @param options (object) the new settings to use for these countdown instances
686
+ @return (jQuery) for chaining further calls */
687
+ $.fn.countdown = function(options) {
688
+ var otherArgs = Array.prototype.slice.call(arguments, 1);
689
+ if (options == 'getTimes' || options == 'settings') {
690
+ return $.countdown['_' + options + 'Countdown'].
691
+ apply($.countdown, [this[0]].concat(otherArgs));
692
+ }
693
+ return this.each(function() {
694
+ if (typeof options == 'string') {
695
+ $.countdown['_' + options + 'Countdown'].apply($.countdown, [this].concat(otherArgs));
696
+ }
697
+ else {
698
+ $.countdown._attachCountdown(this, options);
699
+ }
700
+ });
701
+ };
702
+
703
+ /* Initialise the countdown functionality. */
704
+ $.countdown = new Countdown(); // singleton instance
705
+
706
+ })(jQuery);
js/jquery.countdown.min.js ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Countdown for jQuery v1.5.6.
3
+ Written by Keith Wood (kbwood{at}iinet.com.au) January 2008.
4
+ Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and
5
+ MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses.
6
+ Please attribute the author if you use it. */
7
+ (function($){function Countdown(){this.regional=[];this.regional['']={labels:['Years','Months','Weeks','Days','Hours','Minutes','Seconds'],labels1:['Year','Month','Week','Day','Hour','Minute','Second'],compactLabels:['y','m','w','d'],timeSeparator:':',isRTL:false};this._defaults={until:null,since:null,timezone:null,serverSync:null,format:'dHMS',layout:'',compact:false,description:'',expiryUrl:'',expiryText:'',alwaysExpire:false,onExpiry:null,onTick:null};$.extend(this._defaults,this.regional[''])}var w='countdown';var Y=0;var O=1;var W=2;var D=3;var H=4;var M=5;var S=6;$.extend(Countdown.prototype,{markerClassName:'hasCountdown',_timer:setInterval(function(){$.countdown._updateTargets()},980),_timerTargets:[],setDefaults:function(a){this._resetExtraLabels(this._defaults,a);extendRemove(this._defaults,a||{})},UTCDate:function(a,b,c,e,f,g,h,i){if(typeof b=='object'&&b.constructor==Date){i=b.getMilliseconds();h=b.getSeconds();g=b.getMinutes();f=b.getHours();e=b.getDate();c=b.getMonth();b=b.getFullYear()}var d=new Date();d.setUTCFullYear(b);d.setUTCDate(1);d.setUTCMonth(c||0);d.setUTCDate(e||1);d.setUTCHours(f||0);d.setUTCMinutes((g||0)-(Math.abs(a)<30?a*60:a));d.setUTCSeconds(h||0);d.setUTCMilliseconds(i||0);return d},periodsToSeconds:function(a){return a[0]*31557600+a[1]*2629800+a[2]*604800+a[3]*86400+a[4]*3600+a[5]*60+a[6]},_settingsCountdown:function(a,b){if(!b){return $.countdown._defaults}var c=$.data(a,w);return(b=='all'?c.options:c.options[b])},_attachCountdown:function(a,b){var c=$(a);if(c.hasClass(this.markerClassName)){return}c.addClass(this.markerClassName);var d={options:$.extend({},b),_periods:[0,0,0,0,0,0,0]};$.data(a,w,d);this._changeCountdown(a)},_addTarget:function(a){if(!this._hasTarget(a)){this._timerTargets.push(a)}},_hasTarget:function(a){return($.inArray(a,this._timerTargets)>-1)},_removeTarget:function(b){this._timerTargets=$.map(this._timerTargets,function(a){return(a==b?null:a)})},_updateTargets:function(){for(var i=0;i<this._timerTargets.length;i++){this._updateCountdown(this._timerTargets[i])}},_updateCountdown:function(a,b){var c=$(a);b=b||$.data(a,w);if(!b){return}c.html(this._generateHTML(b));c[(this._get(b,'isRTL')?'add':'remove')+'Class']('countdown_rtl');var d=this._get(b,'onTick');if(d){var e=b._hold!='lap'?b._periods:this._calculatePeriods(b,b._show,new Date());d.apply(a,[e])}var f=b._hold!='pause'&&(b._since?b._now.getTime()<b._since.getTime():b._now.getTime()>=b._until.getTime());if(f&&!b._expiring){b._expiring=true;if(this._hasTarget(a)||this._get(b,'alwaysExpire')){this._removeTarget(a);var g=this._get(b,'onExpiry');if(g){g.apply(a,[])}var h=this._get(b,'expiryText');if(h){var i=this._get(b,'layout');b.options.layout=h;this._updateCountdown(a,b);b.options.layout=i}var j=this._get(b,'expiryUrl');if(j){window.location=j}}b._expiring=false}else if(b._hold=='pause'){this._removeTarget(a)}$.data(a,w,b)},_changeCountdown:function(a,b,c){b=b||{};if(typeof b=='string'){var d=b;b={};b[d]=c}var e=$.data(a,w);if(e){this._resetExtraLabels(e.options,b);extendRemove(e.options,b);this._adjustSettings(a,e);$.data(a,w,e);var f=new Date();if((e._since&&e._since<f)||(e._until&&e._until>f)){this._addTarget(a)}this._updateCountdown(a,e)}},_resetExtraLabels:function(a,b){var c=false;for(var n in b){if(n.match(/[Ll]abels/)){c=true;break}}if(c){for(var n in a){if(n.match(/[Ll]abels[0-9]/)){a[n]=null}}}},_adjustSettings:function(a,b){var c=this._get(b,'serverSync');c=(c?c.apply(a,[]):null);var d=new Date();var e=this._get(b,'timezone');e=(e==null?-d.getTimezoneOffset():e);b._since=this._get(b,'since');if(b._since!=null){b._since=this.UTCDate(e,this._determineTime(b._since,null));if(b._since&&c){b._since.setMilliseconds(b._since.getMilliseconds()+d.getTime()-c.getTime())}}b._until=this.UTCDate(e,this._determineTime(this._get(b,'until'),d));if(c){b._until.setMilliseconds(b._until.getMilliseconds()+d.getTime()-c.getTime())}b._show=this._determineShow(b)},_destroyCountdown:function(a){var b=$(a);if(!b.hasClass(this.markerClassName)){return}this._removeTarget(a);b.removeClass(this.markerClassName).empty();$.removeData(a,w)},_pauseCountdown:function(a){this._hold(a,'pause')},_lapCountdown:function(a){this._hold(a,'lap')},_resumeCountdown:function(a){this._hold(a,null)},_hold:function(a,b){var c=$.data(a,w);if(c){if(c._hold=='pause'&&!b){c._periods=c._savePeriods;var d=(c._since?'-':'+');c[c._since?'_since':'_until']=this._determineTime(d+c._periods[0]+'y'+d+c._periods[1]+'o'+d+c._periods[2]+'w'+d+c._periods[3]+'d'+d+c._periods[4]+'h'+d+c._periods[5]+'m'+d+c._periods[6]+'s');this._addTarget(a)}c._hold=b;c._savePeriods=(b=='pause'?c._periods:null);$.data(a,w,c);this._updateCountdown(a,c)}},_getTimesCountdown:function(a){var b=$.data(a,w);return(!b?null:(!b._hold?b._periods:this._calculatePeriods(b,b._show,new Date())))},_get:function(a,b){return(a.options[b]!=null?a.options[b]:$.countdown._defaults[b])},_determineTime:function(k,l){var m=function(a){var b=new Date();b.setTime(b.getTime()+a*1000);return b};var n=function(a){a=a.toLowerCase();var b=new Date();var c=b.getFullYear();var d=b.getMonth();var e=b.getDate();var f=b.getHours();var g=b.getMinutes();var h=b.getSeconds();var i=/([+-]?[0-9]+)\s*(s|m|h|d|w|o|y)?/g;var j=i.exec(a);while(j){switch(j[2]||'s'){case's':h+=parseInt(j[1],10);break;case'm':g+=parseInt(j[1],10);break;case'h':f+=parseInt(j[1],10);break;case'd':e+=parseInt(j[1],10);break;case'w':e+=parseInt(j[1],10)*7;break;case'o':d+=parseInt(j[1],10);e=Math.min(e,$.countdown._getDaysInMonth(c,d));break;case'y':c+=parseInt(j[1],10);e=Math.min(e,$.countdown._getDaysInMonth(c,d));break}j=i.exec(a)}return new Date(c,d,e,f,g,h,0)};var o=(k==null?l:(typeof k=='string'?n(k):(typeof k=='number'?m(k):k)));if(o)o.setMilliseconds(0);return o},_getDaysInMonth:function(a,b){return 32-new Date(a,b,32).getDate()},_generateHTML:function(c){c._periods=periods=(c._hold?c._periods:this._calculatePeriods(c,c._show,new Date()));var d=false;var e=0;var f=$.extend({},c._show);for(var g=0;g<c._show.length;g++){d|=(c._show[g]=='?'&&periods[g]>0);f[g]=(c._show[g]=='?'&&!d?null:c._show[g]);e+=(f[g]?1:0)}var h=this._get(c,'compact');var i=this._get(c,'layout');var j=(h?this._get(c,'compactLabels'):this._get(c,'labels'));var k=this._get(c,'timeSeparator');var l=this._get(c,'description')||'';var m=function(a){var b=$.countdown._get(c,'compactLabels'+periods[a]);return(f[a]?periods[a]+(b?b[a]:j[a])+' ':'')};var n=function(a){var b=$.countdown._get(c,'labels'+periods[a]);return(f[a]?'<span class="countdown_section"><span class="countdown_amount">'+periods[a]+'</span><br/>'+(b?b[a]:j[a])+'</span>':'')};return(i?this._buildLayout(c,f,i,h):((h?'<span class="countdown_row countdown_amount'+(c._hold?' countdown_holding':'')+'">'+m(Y)+m(O)+m(W)+m(D)+(f[H]?this._minDigits(periods[H],2):'')+(f[M]?(f[H]?k:'')+this._minDigits(periods[M],2):'')+(f[S]?(f[H]||f[M]?k:'')+this._minDigits(periods[S],2):''):'<span class="countdown_row countdown_show'+e+(c._hold?' countdown_holding':'')+'">'+n(Y)+n(O)+n(W)+n(D)+n(H)+n(M)+n(S))+'</span>'+(l?'<span class="countdown_row countdown_descr">'+l+'</span>':'')))},_buildLayout:function(c,d,e,f){var g=this._get(c,(f?'compactLabels':'labels'));var h=function(a){return($.countdown._get(c,(f?'compactLabels':'labels')+c._periods[a])||g)[a]};var j=function(a,b){return Math.floor(a/b)%10};var k={desc:this._get(c,'description'),sep:this._get(c,'timeSeparator'),yl:h(Y),yn:c._periods[Y],ynn:this._minDigits(c._periods[Y],2),ynnn:this._minDigits(c._periods[Y],3),y1:j(c._periods[Y],1),y10:j(c._periods[Y],10),y100:j(c._periods[Y],100),y1000:j(c._periods[Y],1000),ol:h(O),on:c._periods[O],onn:this._minDigits(c._periods[O],2),onnn:this._minDigits(c._periods[O],3),o1:j(c._periods[O],1),o10:j(c._periods[O],10),o100:j(c._periods[O],100),o1000:j(c._periods[O],1000),wl:h(W),wn:c._periods[W],wnn:this._minDigits(c._periods[W],2),wnnn:this._minDigits(c._periods[W],3),w1:j(c._periods[W],1),w10:j(c._periods[W],10),w100:j(c._periods[W],100),w1000:j(c._periods[W],1000),dl:h(D),dn:c._periods[D],dnn:this._minDigits(c._periods[D],2),dnnn:this._minDigits(c._periods[D],3),d1:j(c._periods[D],1),d10:j(c._periods[D],10),d100:j(c._periods[D],100),d1000:j(c._periods[D],1000),hl:h(H),hn:c._periods[H],hnn:this._minDigits(c._periods[H],2),hnnn:this._minDigits(c._periods[H],3),h1:j(c._periods[H],1),h10:j(c._periods[H],10),h100:j(c._periods[H],100),h1000:j(c._periods[H],1000),ml:h(M),mn:c._periods[M],mnn:this._minDigits(c._periods[M],2),mnnn:this._minDigits(c._periods[M],3),m1:j(c._periods[M],1),m10:j(c._periods[M],10),m100:j(c._periods[M],100),m1000:j(c._periods[M],1000),sl:h(S),sn:c._periods[S],snn:this._minDigits(c._periods[S],2),snnn:this._minDigits(c._periods[S],3),s1:j(c._periods[S],1),s10:j(c._periods[S],10),s100:j(c._periods[S],100),s1000:j(c._periods[S],1000)};var l=e;for(var i=0;i<7;i++){var m='yowdhms'.charAt(i);var o=new RegExp('\\{'+m+'<\\}(.*)\\{'+m+'>\\}','g');l=l.replace(o,(d[i]?'$1':''))}$.each(k,function(n,v){var a=new RegExp('\\{'+n+'\\}','g');l=l.replace(a,v)});return l},_minDigits:function(a,b){a=''+a;if(a.length>=b){return a}a='0000000000'+a;return a.substr(a.length-b)},_determineShow:function(a){var b=this._get(a,'format');var c=[];c[Y]=(b.match('y')?'?':(b.match('Y')?'!':null));c[O]=(b.match('o')?'?':(b.match('O')?'!':null));c[W]=(b.match('w')?'?':(b.match('W')?'!':null));c[D]=(b.match('d')?'?':(b.match('D')?'!':null));c[H]=(b.match('h')?'?':(b.match('H')?'!':null));c[M]=(b.match('m')?'?':(b.match('M')?'!':null));c[S]=(b.match('s')?'?':(b.match('S')?'!':null));return c},_calculatePeriods:function(f,g,h){f._now=h;f._now.setMilliseconds(0);var i=new Date(f._now.getTime());if(f._since){if(h.getTime()<f._since.getTime()){f._now=h=i}else{h=f._since}}else{i.setTime(f._until.getTime());if(h.getTime()>f._until.getTime()){f._now=h=i}}var j=[0,0,0,0,0,0,0];if(g[Y]||g[O]){var k=$.countdown._getDaysInMonth(h.getFullYear(),h.getMonth());var l=$.countdown._getDaysInMonth(i.getFullYear(),i.getMonth());var m=(i.getDate()==h.getDate()||(i.getDate()>=Math.min(k,l)&&h.getDate()>=Math.min(k,l)));var n=function(a){return(a.getHours()*60+a.getMinutes())*60+a.getSeconds()};var o=Math.max(0,(i.getFullYear()-h.getFullYear())*12+i.getMonth()-h.getMonth()+((i.getDate()<h.getDate()&&!m)||(m&&n(i)<n(h))?-1:0));j[Y]=(g[Y]?Math.floor(o/12):0);j[O]=(g[O]?o-j[Y]*12:0);var p=function(a,b,c){var d=(a.getDate()==c);var e=$.countdown._getDaysInMonth(a.getFullYear()+b*j[Y],a.getMonth()+b*j[O]);if(a.getDate()>e){a.setDate(e)}a.setFullYear(a.getFullYear()+b*j[Y]);a.setMonth(a.getMonth()+b*j[O]);if(d){a.setDate(e)}return a};if(f._since){i=p(i,-1,l)}else{h=p(new Date(h.getTime()),+1,k)}}var q=Math.floor((i.getTime()-h.getTime())/1000);var r=function(a,b){j[a]=(g[a]?Math.floor(q/b):0);q-=j[a]*b};r(W,604800);r(D,86400);r(H,3600);r(M,60);r(S,1);if(q>0&&!f._since){var s=[1,12,4.3482,7,24,60,60];var t=S;var u=1;for(var v=S;v>=Y;v--){if(g[v]){if(j[t]>=u){j[t]=0;q=1}if(q>0){j[v]++;q=0;t=v;u=1}}u*=s[v]}}return j}});function extendRemove(a,b){$.extend(a,b);for(var c in b){if(b[c]==null){a[c]=null}}return a}$.fn.countdown=function(a){var b=Array.prototype.slice.call(arguments,1);if(a=='getTimes'||a=='settings'){return $.countdown['_'+a+'Countdown'].apply($.countdown,[this[0]].concat(b))}return this.each(function(){if(typeof a=='string'){$.countdown['_'+a+'Countdown'].apply($.countdown,[this].concat(b))}else{$.countdown._attachCountdown(this,a)}})};$.countdown=new Countdown()})(jQuery);
js/jquery.countdown.pack.js ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
1
+ /* http://keith-wood.name/countdown.html
2
+ Countdown for jQuery v1.5.6.
3
+ Written by Keith Wood (kbwood{at}iinet.com.au) January 2008.
4
+ Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and
5
+ MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses.
6
+ Please attribute the author if you use it. */
7
+ eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(A($){A 1i(){x.1B=[];x.1B[\'\']={1j:[\'2w\',\'2x\',\'2y\',\'2z\',\'2A\',\'2B\',\'2C\'],2D:[\'2E\',\'2F\',\'2G\',\'2H\',\'2I\',\'2J\',\'2K\'],1k:[\'y\',\'m\',\'w\',\'d\'],1C:\':\',1R:1f};x.1g={1S:E,1T:E,1U:E,1V:E,1W:\'2L\',1l:\'\',1X:1f,1D:\'\',1Y:\'\',1Z:\'\',20:1f,21:E,22:E};$.1m(x.1g,x.1B[\'\'])}8 w=\'G\';8 Y=0;8 O=1;8 W=2;8 D=3;8 H=4;8 M=5;8 S=6;$.1m(1i.23,{1n:\'2M\',2N:2O(A(){$.G.25()},2P),18:[],2Q:A(a){x.1E(x.1g,a);1F(x.1g,a||{})},1G:A(a,b,c,e,f,g,h,i){B(1o b==\'2R\'&&b.2S==P){i=b.1H();h=b.1I();g=b.1J();f=b.1K();e=b.R();c=b.15();b=b.16()}8 d=N P();d.2T(b);d.26(1);d.2U(c||0);d.26(e||1);d.2V(f||0);d.2W((g||0)-(T.2X(a)<30?a*19:a));d.2Y(h||0);d.2Z(i||0);C d},31:A(a){C a[0]*33+a[1]*34+a[2]*27+a[3]*28+a[4]*29+a[5]*19+a[6]},35:A(a,b){B(!b){C $.G.1g}8 c=$.U(a,w);C(b==\'36\'?c.V:c.V[b])},2a:A(a,b){8 c=$(a);B(c.2b(x.1n)){C}c.37(x.1n);8 d={V:$.1m({},b),z:[0,0,0,0,0,0,0]};$.U(a,w,d);x.2c(a)},1L:A(a){B(!x.1M(a)){x.18.38(a)}},1M:A(a){C($.39(a,x.18)>-1)},1u:A(b){x.18=$.3a(x.18,A(a){C(a==b?E:a)})},25:A(){1a(8 i=0;i<x.18.1v;i++){x.1p(x.18[i])}},1p:A(a,b){8 c=$(a);b=b||$.U(a,w);B(!b){C}c.3b(x.2d(b));c[(x.F(b,\'1R\')?\'3c\':\'3d\')+\'3e\'](\'3f\');8 d=x.F(b,\'22\');B(d){8 e=b.Q!=\'2e\'?b.z:x.1w(b,b.X,N P());d.1q(a,[e])}8 f=b.Q!=\'1r\'&&(b.I?b.1b.J()<b.I.J():b.1b.J()>=b.Z.J());B(f&&!b.1N){b.1N=2f;B(x.1M(a)||x.F(b,\'20\')){x.1u(a);8 g=x.F(b,\'21\');B(g){g.1q(a,[])}8 h=x.F(b,\'1Z\');B(h){8 i=x.F(b,\'1l\');b.V.1l=h;x.1p(a,b);b.V.1l=i}8 j=x.F(b,\'1Y\');B(j){3g.3h=j}}b.1N=1f}1s B(b.Q==\'1r\'){x.1u(a)}$.U(a,w,b)},2c:A(a,b,c){b=b||{};B(1o b==\'1O\'){8 d=b;b={};b[d]=c}8 e=$.U(a,w);B(e){x.1E(e.V,b);1F(e.V,b);x.2g(a,e);$.U(a,w,e);8 f=N P();B((e.I&&e.I<f)||(e.Z&&e.Z>f)){x.1L(a)}x.1p(a,e)}},1E:A(a,b){8 c=1f;1a(8 n 1P b){B(n.L(/[2h]2i/)){c=2f;17}}B(c){1a(8 n 1P a){B(n.L(/[2h]2i[0-9]/)){a[n]=E}}}},2g:A(a,b){8 c=x.F(b,\'1V\');c=(c?c.1q(a,[]):E);8 d=N P();8 e=x.F(b,\'1U\');e=(e==E?-d.3i():e);b.I=x.F(b,\'1T\');B(b.I!=E){b.I=x.1G(e,x.1x(b.I,E));B(b.I&&c){b.I.1y(b.I.1H()+d.J()-c.J())}}b.Z=x.1G(e,x.1x(x.F(b,\'1S\'),d));B(c){b.Z.1y(b.Z.1H()+d.J()-c.J())}b.X=x.2j(b)},3j:A(a){8 b=$(a);B(!b.2b(x.1n)){C}x.1u(a);b.3k(x.1n).3l();$.3m(a,w)},3n:A(a){x.Q(a,\'1r\')},3o:A(a){x.Q(a,\'2e\')},3p:A(a){x.Q(a,E)},Q:A(a,b){8 c=$.U(a,w);B(c){B(c.Q==\'1r\'&&!b){c.z=c.2k;8 d=(c.I?\'-\':\'+\');c[c.I?\'I\':\'Z\']=x.1x(d+c.z[0]+\'y\'+d+c.z[1]+\'o\'+d+c.z[2]+\'w\'+d+c.z[3]+\'d\'+d+c.z[4]+\'h\'+d+c.z[5]+\'m\'+d+c.z[6]+\'s\');x.1L(a)}c.Q=b;c.2k=(b==\'1r\'?c.z:E);$.U(a,w,c);x.1p(a,c)}},3q:A(a){8 b=$.U(a,w);C(!b?E:(!b.Q?b.z:x.1w(b,b.X,N P())))},F:A(a,b){C(a.V[b]!=E?a.V[b]:$.G.1g[b])},1x:A(k,l){8 m=A(a){8 b=N P();b.2l(b.J()+a*11);C b};8 n=A(a){a=a.3r();8 b=N P();8 c=b.16();8 d=b.15();8 e=b.R();8 f=b.1K();8 g=b.1J();8 h=b.1I();8 i=/([+-]?[0-9]+)\\s*(s|m|h|d|w|o|y)?/g;8 j=i.2m(a);3s(j){3t(j[2]||\'s\'){1c\'s\':h+=1d(j[1],10);17;1c\'m\':g+=1d(j[1],10);17;1c\'h\':f+=1d(j[1],10);17;1c\'d\':e+=1d(j[1],10);17;1c\'w\':e+=1d(j[1],10)*7;17;1c\'o\':d+=1d(j[1],10);e=T.1z(e,$.G.1h(c,d));17;1c\'y\':c+=1d(j[1],10);e=T.1z(e,$.G.1h(c,d));17}j=i.2m(a)}C N P(c,d,e,f,g,h,0)};8 o=(k==E?l:(1o k==\'1O\'?n(k):(1o k==\'3u\'?m(k):k)));B(o)o.1y(0);C o},1h:A(a,b){C 32-N P(a,b,32).R()},2d:A(c){c.z=13=(c.Q?c.z:x.1w(c,c.X,N P()));8 d=1f;8 e=0;8 f=$.1m({},c.X);1a(8 g=0;g<c.X.1v;g++){d|=(c.X[g]==\'?\'&&13[g]>0);f[g]=(c.X[g]==\'?\'&&!d?E:c.X[g]);e+=(f[g]?1:0)}8 h=x.F(c,\'1X\');8 i=x.F(c,\'1l\');8 j=(h?x.F(c,\'1k\'):x.F(c,\'1j\'));8 k=x.F(c,\'1C\');8 l=x.F(c,\'1D\')||\'\';8 m=A(a){8 b=$.G.F(c,\'1k\'+13[a]);C(f[a]?13[a]+(b?b[a]:j[a])+\' \':\'\')};8 n=A(a){8 b=$.G.F(c,\'1j\'+13[a]);C(f[a]?\'<14 1t="3v"><14 1t="2n">\'+13[a]+\'</14><3w/>\'+(b?b[a]:j[a])+\'</14>\':\'\')};C(i?x.2o(c,f,i,h):((h?\'<14 1t="1Q 2n\'+(c.Q?\' 2p\':\'\')+\'">\'+m(Y)+m(O)+m(W)+m(D)+(f[H]?x.K(13[H],2):\'\')+(f[M]?(f[H]?k:\'\')+x.K(13[M],2):\'\')+(f[S]?(f[H]||f[M]?k:\'\')+x.K(13[S],2):\'\'):\'<14 1t="1Q 3x\'+e+(c.Q?\' 2p\':\'\')+\'">\'+n(Y)+n(O)+n(W)+n(D)+n(H)+n(M)+n(S))+\'</14>\'+(l?\'<14 1t="1Q 3y">\'+l+\'</14>\':\'\')))},2o:A(c,d,e,f){8 g=x.F(c,(f?\'1k\':\'1j\'));8 h=A(a){C($.G.F(c,(f?\'1k\':\'1j\')+c.z[a])||g)[a]};8 j=A(a,b){C T.1A(a/b)%10};8 k={3z:x.F(c,\'1D\'),3A:x.F(c,\'1C\'),3B:h(Y),3C:c.z[Y],3D:x.K(c.z[Y],2),3E:x.K(c.z[Y],3),3F:j(c.z[Y],1),3G:j(c.z[Y],10),3H:j(c.z[Y],1e),3I:j(c.z[Y],11),3J:h(O),3K:c.z[O],3L:x.K(c.z[O],2),3M:x.K(c.z[O],3),3N:j(c.z[O],1),3O:j(c.z[O],10),3P:j(c.z[O],1e),3Q:j(c.z[O],11),3R:h(W),3S:c.z[W],3T:x.K(c.z[W],2),3U:x.K(c.z[W],3),3V:j(c.z[W],1),3W:j(c.z[W],10),3X:j(c.z[W],1e),3Y:j(c.z[W],11),3Z:h(D),40:c.z[D],41:x.K(c.z[D],2),42:x.K(c.z[D],3),43:j(c.z[D],1),44:j(c.z[D],10),45:j(c.z[D],1e),46:j(c.z[D],11),47:h(H),48:c.z[H],49:x.K(c.z[H],2),4a:x.K(c.z[H],3),4b:j(c.z[H],1),4c:j(c.z[H],10),4d:j(c.z[H],1e),4e:j(c.z[H],11),4f:h(M),4g:c.z[M],4h:x.K(c.z[M],2),4i:x.K(c.z[M],3),4j:j(c.z[M],1),4k:j(c.z[M],10),4l:j(c.z[M],1e),4m:j(c.z[M],11),4n:h(S),4o:c.z[S],4p:x.K(c.z[S],2),4q:x.K(c.z[S],3),4r:j(c.z[S],1),4s:j(c.z[S],10),4t:j(c.z[S],1e),4u:j(c.z[S],11)};8 l=e;1a(8 i=0;i<7;i++){8 m=\'4v\'.4w(i);8 o=N 2q(\'\\\\{\'+m+\'<\\\\}(.*)\\\\{\'+m+\'>\\\\}\',\'g\');l=l.2r(o,(d[i]?\'$1\':\'\'))}$.2s(k,A(n,v){8 a=N 2q(\'\\\\{\'+n+\'\\\\}\',\'g\');l=l.2r(a,v)});C l},K:A(a,b){a=\'\'+a;B(a.1v>=b){C a}a=\'4x\'+a;C a.4y(a.1v-b)},2j:A(a){8 b=x.F(a,\'1W\');8 c=[];c[Y]=(b.L(\'y\')?\'?\':(b.L(\'Y\')?\'!\':E));c[O]=(b.L(\'o\')?\'?\':(b.L(\'O\')?\'!\':E));c[W]=(b.L(\'w\')?\'?\':(b.L(\'W\')?\'!\':E));c[D]=(b.L(\'d\')?\'?\':(b.L(\'D\')?\'!\':E));c[H]=(b.L(\'h\')?\'?\':(b.L(\'H\')?\'!\':E));c[M]=(b.L(\'m\')?\'?\':(b.L(\'M\')?\'!\':E));c[S]=(b.L(\'s\')?\'?\':(b.L(\'S\')?\'!\':E));C c},1w:A(f,g,h){f.1b=h;f.1b.1y(0);8 i=N P(f.1b.J());B(f.I){B(h.J()<f.I.J()){f.1b=h=i}1s{h=f.I}}1s{i.2l(f.Z.J());B(h.J()>f.Z.J()){f.1b=h=i}}8 j=[0,0,0,0,0,0,0];B(g[Y]||g[O]){8 k=$.G.1h(h.16(),h.15());8 l=$.G.1h(i.16(),i.15());8 m=(i.R()==h.R()||(i.R()>=T.1z(k,l)&&h.R()>=T.1z(k,l)));8 n=A(a){C(a.1K()*19+a.1J())*19+a.1I()};8 o=T.4z(0,(i.16()-h.16())*12+i.15()-h.15()+((i.R()<h.R()&&!m)||(m&&n(i)<n(h))?-1:0));j[Y]=(g[Y]?T.1A(o/12):0);j[O]=(g[O]?o-j[Y]*12:0);8 p=A(a,b,c){8 d=(a.R()==c);8 e=$.G.1h(a.16()+b*j[Y],a.15()+b*j[O]);B(a.R()>e){a.2t(e)}a.4A(a.16()+b*j[Y]);a.4B(a.15()+b*j[O]);B(d){a.2t(e)}C a};B(f.I){i=p(i,-1,l)}1s{h=p(N P(h.J()),+1,k)}}8 q=T.1A((i.J()-h.J())/11);8 r=A(a,b){j[a]=(g[a]?T.1A(q/b):0);q-=j[a]*b};r(W,27);r(D,28);r(H,29);r(M,19);r(S,1);B(q>0&&!f.I){8 s=[1,12,4.4C,7,24,19,19];8 t=S;8 u=1;1a(8 v=S;v>=Y;v--){B(g[v]){B(j[t]>=u){j[t]=0;q=1}B(q>0){j[v]++;q=0;t=v;u=1}}u*=s[v]}}C j}});A 1F(a,b){$.1m(a,b);1a(8 c 1P b){B(b[c]==E){a[c]=E}}C a}$.4D.G=A(a){8 b=4E.23.4F.4G(4H,1);B(a==\'4I\'||a==\'4J\'){C $.G[\'2u\'+a+\'1i\'].1q($.G,[x[0]].2v(b))}C x.2s(A(){B(1o a==\'1O\'){$.G[\'2u\'+a+\'1i\'].1q($.G,[x].2v(b))}1s{$.G.2a(x,a)}})};$.G=N 1i()})(4K);',62,295,'||||||||var|||||||||||||||||||||||||this||_periods|function|if|return||null|_get|countdown||_since|getTime|_minDigits|match||new||Date|_hold|getDate||Math|data|options||_show||_until||1000||periods|span|getMonth|getFullYear|break|_timerTargets|60|for|_now|case|parseInt|100|false|_defaults|_getDaysInMonth|Countdown|labels|compactLabels|layout|extend|markerClassName|typeof|_updateCountdown|apply|pause|else|class|_removeTarget|length|_calculatePeriods|_determineTime|setMilliseconds|min|floor|regional|timeSeparator|description|_resetExtraLabels|extendRemove|UTCDate|getMilliseconds|getSeconds|getMinutes|getHours|_addTarget|_hasTarget|_expiring|string|in|countdown_row|isRTL|until|since|timezone|serverSync|format|compact|expiryUrl|expiryText|alwaysExpire|onExpiry|onTick|prototype||_updateTargets|setUTCDate|604800|86400|3600|_attachCountdown|hasClass|_changeCountdown|_generateHTML|lap|true|_adjustSettings|Ll|abels|_determineShow|_savePeriods|setTime|exec|countdown_amount|_buildLayout|countdown_holding|RegExp|replace|each|setDate|_|concat|Years|Months|Weeks|Days|Hours|Minutes|Seconds|labels1|Year|Month|Week|Day|Hour|Minute|Second|dHMS|hasCountdown|_timer|setInterval|980|setDefaults|object|constructor|setUTCFullYear|setUTCMonth|setUTCHours|setUTCMinutes|abs|setUTCSeconds|setUTCMilliseconds||periodsToSeconds||31557600|2629800|_settingsCountdown|all|addClass|push|inArray|map|html|add|remove|Class|countdown_rtl|window|location|getTimezoneOffset|_destroyCountdown|removeClass|empty|removeData|_pauseCountdown|_lapCountdown|_resumeCountdown|_getTimesCountdown|toLowerCase|while|switch|number|countdown_section|br|countdown_show|countdown_descr|desc|sep|yl|yn|ynn|ynnn|y1|y10|y100|y1000|ol|on|onn|onnn|o1|o10|o100|o1000|wl|wn|wnn|wnnn|w1|w10|w100|w1000|dl|dn|dnn|dnnn|d1|d10|d100|d1000|hl|hn|hnn|hnnn|h1|h10|h100|h1000|ml|mn|mnn|mnnn|m1|m10|m100|m1000|sl|sn|snn|snnn|s1|s10|s100|s1000|yowdhms|charAt|0000000000|substr|max|setFullYear|setMonth|3482|fn|Array|slice|call|arguments|getTimes|settings|jQuery'.split('|'),0,{}))
js/script.php DELETED
@@ -1,43 +0,0 @@
1
- <?php
2
- require_once('../../../../wp-load.php');
3
- header('Content-Type: text/Javascript');
4
- ?>
5
-
6
- // JavaScript Document
7
- jQuery(document).ready( function($){
8
-
9
- $('#wm-pluginconflink').click(function(s){jQuery('#wm_config_row').slideToggle('fast');});
10
- $('#wm_config_active').click(function(){ wm_config_active()});
11
- $('#wm_config_submit').click(function(){ wm_config_update()});
12
- $("#wm_config-date").datepicker({ dateFormat: 'dd-mm-yy' });
13
-
14
- function wm_config_active(){
15
- //get the important value
16
- active_Val = $('#wm_config-active').val();
17
- url = '<?php echo get_bloginfo('wpurl') ?>/wp-admin/admin-ajax.php';
18
- $.post(url , { "action" : "wm_config-active", "wm_config-active" : active_Val }, function(data) {
19
- $('#wm_message_active').show('fast').animate({opacity: 1.0}, 3000).hide('slow');
20
- });
21
- }
22
-
23
- function wm_config_update(){
24
- //get the important value
25
- time_Val = $('#wm_config-time').val();
26
- link_Val = $('#wm_config-link').val();
27
- unit_Val = $('#wm_config-unit').val();
28
- theme_Val = $('#wm_config-theme').val();
29
- styleurl_Val = $('#wm_config-styleurl').val();
30
- text_Val = $('#wm_config-text').val();
31
- exclude_Val = $('#wm_config-exclude').val();
32
- role_Val = $('#wm_config-role').val();
33
- radio_Val = $('#wm_config-radio').val();
34
- date_Val = $('#wm_config-date').val();
35
- cd_day_Val = $('#wm_config-cd-day').val();
36
- cd_month_Val = $('#wm_config-cd-month').val();
37
- cd_year_Val = $('#wm_config-cd-year').val();
38
- url = '<?php echo get_bloginfo('wpurl') ?>/wp-admin/admin-ajax.php';
39
- $.post(url , { "action" : "wm_config-update", "wm_config-time" : time_Val, "wm_config-unit" : unit_Val, "wm_config-link" : link_Val, "wm_config-theme" : theme_Val, "wm_config-styleurl" : styleurl_Val, "wm_config-text" : text_Val, "wm_config-exclude" : exclude_Val, "wm_config-role" : role_Val, "wm_config-radio" : radio_Val, "wm_config-date" : date_Val, "wm_config-cd-day" : cd_day_Val, "wm_config-cd-month" : cd_month_Val, "wm_config-cd-year" : cd_year_Val }, function(data) {
40
- $('#wm_message_update').show('fast').animate({opacity: 1.0}, 3000).hide('slow');
41
- });
42
- }
43
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
js/ui.datetimepicker-de.js ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery( document ).ready( function( $ ) {
2
+ $.datepicker.regional['de'] = {
3
+ clearText: 'löschen', clearStatus: 'aktuelles Datum löschen',
4
+ closeText: 'schließen', closeStatus: 'ohne Änderungen schließen',
5
+ prevText: '&#x3c;zurück', prevStatus: 'letzten Monat zeigen',
6
+ nextText: 'Vor&#x3e;', nextStatus: 'nächsten Monat zeigen',
7
+ currentText: 'heute', currentStatus: '',
8
+ monthNames: ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'],
9
+ monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez'],
10
+ monthStatus: 'anderen Monat anzeigen', yearStatus: 'anderes Jahr anzeigen',
11
+ weekHeader: 'Wo', weekStatus: 'Woche des Monats',
12
+ dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
13
+ dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
14
+ dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
15
+ dayStatus: 'Setze DD als ersten Wochentag', dateStatus: 'Wähle D, M d',
16
+ dateFormat: 'dd.mm.yy', firstDay: 1,
17
+ initStatus: 'Wähle ein Datum', isRTL: false
18
+ };
19
+ $.datepicker.setDefaults($.datepicker.regional['de']);
20
+ $.datetimepicker.setDefaults($.datepicker.regional['de']);
21
+ });
js/ui.datetimepicker.js ADDED
@@ -0,0 +1,1696 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ * jQuery UI datetimepicker 1.7.2
3
+ *
4
+ * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about)
5
+ * Dual licensed under the MIT (MIT-LICENSE.txt)
6
+ * and GPL (GPL-LICENSE.txt) licenses.
7
+ *
8
+ * http://docs.jquery.com/UI/datetimepicker
9
+ *
10
+ * Depends:
11
+ * ui.core.js
12
+ */
13
+
14
+
15
+
16
+ (function($) { // hide the namespace
17
+
18
+ $.extend($.ui, { datetimepicker: { version: "1.7.2" } });
19
+
20
+ var PROP_NAME = 'datetimepicker';
21
+
22
+ /* Date picker manager.
23
+ Use the singleton instance of this class, $.datetimepicker, to interact with the date picker.
24
+ Settings for (groups of) date pickers are maintained in an instance object,
25
+ allowing multiple different settings on the same page. */
26
+
27
+ function datetimepicker() {
28
+ this.seldatestr='';
29
+ this.seldateid='';
30
+ this.debug = false; // Change this to true to start debugging
31
+ this._curInst = null; // The current instance in use
32
+ this._keyEvent = false; // If the last event was a key event
33
+ this._disabledInputs = []; // List of date picker inputs that have been disabled
34
+ this._datetimepickerShowing = false; // True if the popup picker is showing , false if not
35
+ this._inDialog = false; // True if showing within a "dialog", false if not
36
+ this._mainDivId = 'ui-datepicker-div'; // The ID of the main datetimepicker division
37
+ this._inlineClass = 'ui-datepicker-inline'; // The name of the inline marker class
38
+ this._appendClass = 'ui-datepicker-append'; // The name of the append marker class
39
+ this._triggerClass = 'ui-datepicker-trigger'; // The name of the trigger marker class
40
+ this._dialogClass = 'ui-datepicker-dialog'; // The name of the dialog marker class
41
+ this._disableClass = 'ui-datepicker-disabled'; // The name of the disabled covering marker class
42
+ this._unselectableClass = 'ui-datepicker-unselectable'; // The name of the unselectable cell marker class
43
+ this._currentClass = 'ui-datepicker-current-day'; // The name of the current day marker class
44
+ this._dayOverClass = 'ui-datepicker-days-cell-over'; // The name of the day hover marker class
45
+ this.regional = []; // Available regional settings, indexed by language code
46
+ this.regional[''] = { // Default regional settings
47
+ closeText: 'Done', // Display text for close link
48
+ prevText: 'Prev', // Display text for previous month link
49
+ nextText: 'Next', // Display text for next month link
50
+ currentText: 'Today', // Display text for current month link
51
+ monthNames: ['January','February','March','April','May','June',
52
+ 'July','August','September','October','November','December'], // Names of months for drop-down and formatting
53
+ monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'], // For formatting
54
+ dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'], // For formatting
55
+ dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'], // For formatting
56
+ dayNamesMin: ['Su','Mo','Tu','We','Th','Fr','Sa'], // Column headings for days starting at Sunday
57
+ dateFormat: 'mm/dd/yy', // See format options on parseDate
58
+ timeFormat: 'hh:ii:ss', // See format options on parseDate
59
+ firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ...
60
+ isRTL: false // True if right-to-left language, false if left-to-right
61
+ };
62
+ this._defaults = { // Global defaults for all the date picker instances
63
+ showOn: 'focus', // 'focus' for popup on focus,
64
+ // 'button' for trigger button, or 'both' for either
65
+ showAnim: 'show', // Name of jQuery animation for popup
66
+ showOptions: {}, // Options for enhanced animations
67
+ defaultDate: null, // Used when field is blank: actual date,
68
+ // +/-number for offset from today, null for today
69
+ appendText: '', // Display text following the input box, e.g. showing the format
70
+ buttonText: '...', // Text for trigger button
71
+ buttonImage: '', // URL for trigger button image
72
+ buttonImageOnly: false, // True if the image appears alone, false if it appears on a button
73
+ hideIfNoPrevNext: false, // True to hide next/previous month links
74
+ // if not applicable, false to just disable them
75
+ navigationAsDateFormat: false, // True if date formatting applied to prev/today/next links
76
+ gotoCurrent: false, // True if today link goes back to current selection instead
77
+ changeMonth: false, // True if month can be selected directly, false if only prev/next
78
+ changeYear: false, // True if year can be selected directly, false if only prev/next
79
+ showMonthAfterYear: false, // True if the year select precedes month, false for month then year
80
+ yearRange: '-10:+10', // Range of years to display in drop-down,
81
+ // either relative to current year (-nn:+nn) or absolute (nnnn:nnnn)
82
+ showOtherMonths: false, // True to show dates in other months, false to leave blank
83
+ calculateWeek: this.iso8601Week, // How to calculate the week of the year,
84
+ // takes a Date and returns the number of the week for it
85
+ shortYearCutoff: '+10', // Short year values < this are in the current century,
86
+ // > this are in the previous century,
87
+ // string value starting with '+' for current year + value
88
+ minDate: null, // The earliest selectable date, or null for no limit
89
+ maxDate: null, // The latest selectable date, or null for no limit
90
+ duration: 'normal', // Duration of display/closure
91
+ beforeShowDay: null, // Function that takes a date and returns an array with
92
+ // [0] = true if selectable, false if not, [1] = custom CSS class name(s) or '',
93
+ // [2] = cell title (optional), e.g. $.datetimepicker.noWeekends
94
+ beforeShow: null, // Function that takes an input field and
95
+ // returns a set of custom settings for the date picker
96
+ onSelect: null, // Define a callback function when a date is selected
97
+ onChangeMonthYear: null, // Define a callback function when the month or year is changed
98
+ onClose: null, // Define a callback function when the datetimepicker is closed
99
+ numberOfMonths: 1, // Number of months to show at a time
100
+ showCurrentAtPos: 0, // The position in multipe months at which to show the current month (starting at 0)
101
+ stepMonths: 1, // Number of months to step back/forward
102
+ stepBigMonths: 12, // Number of months to step back/forward for the big links
103
+ altField: '', // Selector for an alternate field to store selected dates into
104
+ altFormat: '', // The date format to use for the alternate field
105
+ constrainInput: true, // The input is constrained by the current date format
106
+ showButtonPanel: false // True to show button panel, false to not show it
107
+ };
108
+ $.extend(this._defaults, this.regional['']);
109
+ this.dpDiv = $('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>');
110
+ }
111
+
112
+ $.extend(datetimepicker.prototype, {
113
+ /* Class name added to elements to indicate already configured with a date picker. */
114
+ markerClassName: 'hasdatetimepicker',
115
+
116
+ /* Debug logging (if enabled). */
117
+ log: function () {
118
+ if (this.debug)
119
+ console.log.apply('', arguments);
120
+ },
121
+
122
+ /* Override the default settings for all instances of the date picker.
123
+ @param settings object - the new settings to use as defaults (anonymous object)
124
+ @return the manager object */
125
+ setDefaults: function(settings) {
126
+ extendRemove(this._defaults, settings || {});
127
+ return this;
128
+ },
129
+
130
+ /* Attach the date picker to a jQuery selection.
131
+ @param target element - the target input field or division or span
132
+ @param settings object - the new settings to use for this date picker instance (anonymous) */
133
+ _attachdatetimepicker: function(target, settings) {
134
+ // check for settings on the control itself - in namespace 'date:'
135
+ var inlineSettings = null;
136
+ for (var attrName in this._defaults) {
137
+ var attrValue = target.getAttribute('date:' + attrName);
138
+ if (attrValue) {
139
+ inlineSettings = inlineSettings || {};
140
+ try {
141
+ inlineSettings[attrName] = eval(attrValue);
142
+ } catch (err) {
143
+ inlineSettings[attrName] = attrValue;
144
+ }
145
+ }
146
+ }
147
+ var nodeName = target.nodeName.toLowerCase();
148
+ var inline = (nodeName == 'div' || nodeName == 'span');
149
+ if (!target.id)
150
+ target.id = 'dp' + (++this.uuid);
151
+ var inst = this._newInst($(target), inline);
152
+ inst.settings = $.extend({}, settings || {}, inlineSettings || {});
153
+ if (nodeName == 'input') {
154
+ this._connectdatetimepicker(target, inst);
155
+ } else if (inline) {
156
+ this._inlinedatetimepicker(target, inst);
157
+ }
158
+ },
159
+
160
+ /* Create a new instance object. */
161
+ _newInst: function(target, inline) {
162
+ var id = target[0].id.replace(/([:\[\]\.])/g, '\\\\$1'); // escape jQuery meta chars
163
+ return {id: id, input: target, // associated target
164
+ selectedDay: 0, selectedMonth: 0, selectedYear: 0, // current selection
165
+ drawMonth: 0, drawYear: 0, // month being drawn
166
+ inline: inline, // is datetimepicker inline or not
167
+ dpDiv: (!inline ? this.dpDiv : // presentation div
168
+ $('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))};
169
+ },
170
+
171
+ /* Attach the date picker to an input field. */
172
+ _connectdatetimepicker: function(target, inst) {
173
+ var input = $(target);
174
+ inst.append = $([]);
175
+ inst.trigger = $([]);
176
+ if (input.hasClass(this.markerClassName))
177
+ return;
178
+ var appendText = this._get(inst, 'appendText');
179
+ var isRTL = this._get(inst, 'isRTL');
180
+ if (appendText) {
181
+ inst.append = $('<span class="' + this._appendClass + '">' + appendText + '</span>');
182
+ input[isRTL ? 'before' : 'after'](inst.append);
183
+ }
184
+ var showOn = this._get(inst, 'showOn');
185
+ if (showOn == 'focus' || showOn == 'both') // pop-up date picker when in the marked field
186
+ input.focus(this._showdatetimepicker);
187
+ if (showOn == 'button' || showOn == 'both') { // pop-up date picker when button clicked
188
+ var buttonText = this._get(inst, 'buttonText');
189
+ var buttonImage = this._get(inst, 'buttonImage');
190
+ inst.trigger = $(this._get(inst, 'buttonImageOnly') ?
191
+ $('<img/>').addClass(this._triggerClass).
192
+ attr({ src: buttonImage, alt: buttonText, title: buttonText }) :
193
+ $('<button type="button"></button>').addClass(this._triggerClass).
194
+ html(buttonImage == '' ? buttonText : $('<img/>').attr(
195
+ { src:buttonImage, alt:buttonText, title:buttonText })));
196
+ input[isRTL ? 'before' : 'after'](inst.trigger);
197
+ inst.trigger.click(function() {
198
+ if ($.datetimepicker._datetimepickerShowing && $.datetimepicker._lastInput == target)
199
+ $.datetimepicker._hidedatetimepicker();
200
+ else
201
+ $.datetimepicker._showdatetimepicker(target);
202
+ return false;
203
+ });
204
+ }
205
+ input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).
206
+ bind("setData.datetimepicker", function(event, key, value) {
207
+ inst.settings[key] = value;
208
+ }).bind("getData.datetimepicker", function(event, key) {
209
+ return this._get(inst, key);
210
+ });
211
+ $.data(target, PROP_NAME, inst);
212
+ },
213
+
214
+ /* Attach an inline date picker to a div. */
215
+ _inlinedatetimepicker: function(target, inst) {
216
+ var divSpan = $(target);
217
+ if (divSpan.hasClass(this.markerClassName))
218
+ return;
219
+ divSpan.addClass(this.markerClassName).append(inst.dpDiv).
220
+ bind("setData.datetimepicker", function(event, key, value){
221
+ inst.settings[key] = value;
222
+ }).bind("getData.datetimepicker", function(event, key){
223
+ return this._get(inst, key);
224
+ });
225
+ $.data(target, PROP_NAME, inst);
226
+ this._setDate(inst, this._getDefaultDate(inst));
227
+ this._updatedatetimepicker(inst);
228
+ this._updateAlternate(inst);
229
+ },
230
+
231
+ /* Pop-up the date picker in a "dialog" box.
232
+ @param input element - ignored
233
+ @param dateText string - the initial date to display (in the current format)
234
+ @param onSelect function - the function(dateText) to call when a date is selected
235
+ @param settings object - update the dialog date picker instance's settings (anonymous object)
236
+ @param pos int[2] - coordinates for the dialog's position within the screen or
237
+ event - with x/y coordinates or
238
+ leave empty for default (screen centre)
239
+ @return the manager object */
240
+ _dialogdatetimepicker: function(input, dateText, onSelect, settings, pos) {
241
+ var inst = this._dialogInst; // internal instance
242
+ if (!inst) {
243
+ var id = 'dp' + (++this.uuid);
244
+ this._dialogInput = $('<input type="text" id="' + id +
245
+ '" size="1" style="position: absolute; top: -100px;"/>');
246
+ this._dialogInput.keydown(this._doKeyDown);
247
+ $('body').append(this._dialogInput);
248
+ inst = this._dialogInst = this._newInst(this._dialogInput, false);
249
+ inst.settings = {};
250
+ $.data(this._dialogInput[0], PROP_NAME, inst);
251
+ }
252
+ extendRemove(inst.settings, settings || {});
253
+ this._dialogInput.val(dateText);
254
+
255
+ this._pos = (pos ? (pos.length ? pos : [pos.pageX, pos.pageY]) : null);
256
+ if (!this._pos) {
257
+ var browserWidth = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
258
+ var browserHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;
259
+ var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft;
260
+ var scrollY = document.documentElement.scrollTop || document.body.scrollTop;
261
+ this._pos = // should use actual width/height below
262
+ [(browserWidth / 2) - 100 + scrollX, (browserHeight / 2) - 150 + scrollY];
263
+ }
264
+
265
+ // move input on screen for focus, but hidden behind dialog
266
+ this._dialogInput.css('left', this._pos[0] + 'px').css('top', this._pos[1] + 'px');
267
+ inst.settings.onSelect = onSelect;
268
+ this._inDialog = true;
269
+ this.dpDiv.addClass(this._dialogClass);
270
+ this._showdatetimepicker(this._dialogInput[0]);
271
+ if ($.blockUI)
272
+ $.blockUI(this.dpDiv);
273
+ $.data(this._dialogInput[0], PROP_NAME, inst);
274
+ return this;
275
+ },
276
+
277
+ /* Detach a datetimepicker from its control.
278
+ @param target element - the target input field or division or span */
279
+ _destroydatetimepicker: function(target) {
280
+ var $target = $(target);
281
+ var inst = $.data(target, PROP_NAME);
282
+ if (!$target.hasClass(this.markerClassName)) {
283
+ return;
284
+ }
285
+ var nodeName = target.nodeName.toLowerCase();
286
+ $.removeData(target, PROP_NAME);
287
+ if (nodeName == 'input') {
288
+ inst.append.remove();
289
+ inst.trigger.remove();
290
+ $target.removeClass(this.markerClassName).
291
+ unbind('focus', this._showdatetimepicker).
292
+ unbind('keydown', this._doKeyDown).
293
+ unbind('keypress', this._doKeyPress);
294
+ } else if (nodeName == 'div' || nodeName == 'span')
295
+ $target.removeClass(this.markerClassName).empty();
296
+ },
297
+
298
+ /* Enable the date picker to a jQuery selection.
299
+ @param target element - the target input field or division or span */
300
+ _enabledatetimepicker: function(target) {
301
+ var $target = $(target);
302
+ var inst = $.data(target, PROP_NAME);
303
+ if (!$target.hasClass(this.markerClassName)) {
304
+ return;
305
+ }
306
+ var nodeName = target.nodeName.toLowerCase();
307
+ if (nodeName == 'input') {
308
+ target.disabled = false;
309
+ inst.trigger.filter('button').
310
+ each(function() { this.disabled = false; }).end().
311
+ filter('img').css({opacity: '1.0', cursor: ''});
312
+ }
313
+ else if (nodeName == 'div' || nodeName == 'span') {
314
+ var inline = $target.children('.' + this._inlineClass);
315
+ inline.children().removeClass('ui-state-disabled');
316
+ }
317
+ this._disabledInputs = $.map(this._disabledInputs,
318
+ function(value) { return (value == target ? null : value); }); // delete entry
319
+ },
320
+
321
+ /* Disable the date picker to a jQuery selection.
322
+ @param target element - the target input field or division or span */
323
+ _disabledatetimepicker: function(target) {
324
+ var $target = $(target);
325
+ var inst = $.data(target, PROP_NAME);
326
+ if (!$target.hasClass(this.markerClassName)) {
327
+ return;
328
+ }
329
+ var nodeName = target.nodeName.toLowerCase();
330
+ if (nodeName == 'input') {
331
+ target.disabled = true;
332
+ inst.trigger.filter('button').
333
+ each(function() { this.disabled = true; }).end().
334
+ filter('img').css({opacity: '0.5', cursor: 'default'});
335
+ }
336
+ else if (nodeName == 'div' || nodeName == 'span') {
337
+ var inline = $target.children('.' + this._inlineClass);
338
+ inline.children().addClass('ui-state-disabled');
339
+ }
340
+ this._disabledInputs = $.map(this._disabledInputs,
341
+ function(value) { return (value == target ? null : value); }); // delete entry
342
+ this._disabledInputs[this._disabledInputs.length] = target;
343
+ },
344
+
345
+ /* Is the first field in a jQuery collection disabled as a datetimepicker?
346
+ @param target element - the target input field or division or span
347
+ @return boolean - true if disabled, false if enabled */
348
+ _isDisableddatetimepicker: function(target) {
349
+ if (!target) {
350
+ return false;
351
+ }
352
+ for (var i = 0; i < this._disabledInputs.length; i++) {
353
+ if (this._disabledInputs[i] == target)
354
+ return true;
355
+ }
356
+ return false;
357
+ },
358
+
359
+ /* Retrieve the instance data for the target control.
360
+ @param target element - the target input field or division or span
361
+ @return object - the associated instance data
362
+ @throws error if a jQuery problem getting data */
363
+ _getInst: function(target) {
364
+ try {
365
+ return $.data(target, PROP_NAME);
366
+ }
367
+ catch (err) {
368
+ throw 'Missing instance data for this datetimepicker';
369
+ }
370
+ },
371
+
372
+ /* Update or retrieve the settings for a date picker attached to an input field or division.
373
+ @param target element - the target input field or division or span
374
+ @param name object - the new settings to update or
375
+ string - the name of the setting to change or retrieve,
376
+ when retrieving also 'all' for all instance settings or
377
+ 'defaults' for all global defaults
378
+ @param value any - the new value for the setting
379
+ (omit if above is an object or to retrieve a value) */
380
+ _optiondatetimepicker: function(target, name, value) {
381
+ var inst = this._getInst(target);
382
+ if (arguments.length == 2 && typeof name == 'string') {
383
+ return (name == 'defaults' ? $.extend({}, $.datetimepicker._defaults) :
384
+ (inst ? (name == 'all' ? $.extend({}, inst.settings) :
385
+ this._get(inst, name)) : null));
386
+ }
387
+ var settings = name || {};
388
+ if (typeof name == 'string') {
389
+ settings = {};
390
+ settings[name] = value;
391
+ }
392
+ if (inst) {
393
+ if (this._curInst == inst) {
394
+ this._hidedatetimepicker(null);
395
+ }
396
+ var date = this._getDatedatetimepicker(target);
397
+ extendRemove(inst.settings, settings);
398
+ this._setDatedatetimepicker(target, date);
399
+ this._updatedatetimepicker(inst);
400
+ }
401
+ },
402
+
403
+ // change method deprecated
404
+ _changedatetimepicker: function(target, name, value) {
405
+ this._optiondatetimepicker(target, name, value);
406
+ },
407
+
408
+ /* Redraw the date picker attached to an input field or division.
409
+ @param target element - the target input field or division or span */
410
+ _refreshdatetimepicker: function(target) {
411
+ var inst = this._getInst(target);
412
+ if (inst) {
413
+ this._updatedatetimepicker(inst);
414
+ }
415
+ },
416
+
417
+ /* Set the dates for a jQuery selection.
418
+ @param target element - the target input field or division or span
419
+ @param date Date - the new date
420
+ @param endDate Date - the new end date for a range (optional) */
421
+ _setDatedatetimepicker: function(target, date, endDate) {
422
+ var inst = this._getInst(target);
423
+ if (inst) {
424
+ this._setDate(inst, date, endDate);
425
+ this._updatedatetimepicker(inst);
426
+ this._updateAlternate(inst);
427
+ }
428
+ },
429
+
430
+ /* Get the date(s) for the first entry in a jQuery selection.
431
+ @param target element - the target input field or division or span
432
+ @return Date - the current date or
433
+ Date[2] - the current dates for a range */
434
+ _getDatedatetimepicker: function(target) {
435
+ var inst = this._getInst(target);
436
+ if (inst && !inst.inline)
437
+ this._setDateFromField(inst);
438
+ return (inst ? this._getDate(inst) : null);
439
+ },
440
+
441
+ /* Handle keystrokes. */
442
+ _doKeyDown: function(event) {
443
+ var inst = $.datetimepicker._getInst(event.target);
444
+ var handled = true;
445
+ var isRTL = inst.dpDiv.is('.ui-datepicker-rtl');
446
+ inst._keyEvent = true;
447
+ if ($.datetimepicker._datetimepickerShowing)
448
+ switch (event.keyCode) {
449
+ case 9: $.datetimepicker._hidedatetimepicker(null, '');
450
+ break; // hide on tab out
451
+ case 13: var sel = $('td.' + $.datetimepicker._dayOverClass +
452
+ ', td.' + $.datetimepicker._currentClass, inst.dpDiv);
453
+ if (sel[0])
454
+ $.datetimepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]);
455
+ else
456
+ $.datetimepicker._hidedatetimepicker(null, $.datetimepicker._get(inst, 'duration'));
457
+ return false; // don't submit the form
458
+ break; // select the value on enter
459
+ case 27: $.datetimepicker._hidedatetimepicker(null, $.datetimepicker._get(inst, 'duration'));
460
+ break; // hide on escape
461
+ case 33: $.datetimepicker._adjustDate(event.target, (event.ctrlKey ?
462
+ -$.datetimepicker._get(inst, 'stepBigMonths') :
463
+ -$.datetimepicker._get(inst, 'stepMonths')), 'M');
464
+ break; // previous month/year on page up/+ ctrl
465
+ case 34: $.datetimepicker._adjustDate(event.target, (event.ctrlKey ?
466
+ +$.datetimepicker._get(inst, 'stepBigMonths') :
467
+ +$.datetimepicker._get(inst, 'stepMonths')), 'M');
468
+ break; // next month/year on page down/+ ctrl
469
+ case 35: if (event.ctrlKey || event.metaKey) $.datetimepicker._clearDate(event.target);
470
+ handled = event.ctrlKey || event.metaKey;
471
+ break; // clear on ctrl or command +end
472
+ case 36: if (event.ctrlKey || event.metaKey) $.datetimepicker._gotoToday(event.target);
473
+ handled = event.ctrlKey || event.metaKey;
474
+ break; // current on ctrl or command +home
475
+ case 37: if (event.ctrlKey || event.metaKey) $.datetimepicker._adjustDate(event.target, (isRTL ? +1 : -1), 'D');
476
+ handled = event.ctrlKey || event.metaKey;
477
+ // -1 day on ctrl or command +left
478
+ if (event.originalEvent.altKey) $.datetimepicker._adjustDate(event.target, (event.ctrlKey ?
479
+ -$.datetimepicker._get(inst, 'stepBigMonths') :
480
+ -$.datetimepicker._get(inst, 'stepMonths')), 'M');
481
+ // next month/year on alt +left on Mac
482
+ break;
483
+ case 38: if (event.ctrlKey || event.metaKey) $.datetimepicker._adjustDate(event.target, -7, 'D');
484
+ handled = event.ctrlKey || event.metaKey;
485
+ break; // -1 week on ctrl or command +up
486
+ case 39: if (event.ctrlKey || event.metaKey) $.datetimepicker._adjustDate(event.target, (isRTL ? -1 : +1), 'D');
487
+ handled = event.ctrlKey || event.metaKey;
488
+ // +1 day on ctrl or command +right
489
+ if (event.originalEvent.altKey) $.datetimepicker._adjustDate(event.target, (event.ctrlKey ?
490
+ +$.datetimepicker._get(inst, 'stepBigMonths') :
491
+ +$.datetimepicker._get(inst, 'stepMonths')), 'M');
492
+ // next month/year on alt +right
493
+ break;
494
+ case 40: if (event.ctrlKey || event.metaKey) $.datetimepicker._adjustDate(event.target, +7, 'D');
495
+ handled = event.ctrlKey || event.metaKey;
496
+ break; // +1 week on ctrl or command +down
497
+ default: handled = false;
498
+ }
499
+ else if (event.keyCode == 36 && event.ctrlKey) // display the date picker on ctrl+home
500
+ $.datetimepicker._showdatetimepicker(this);
501
+ else {
502
+ handled = false;
503
+ }
504
+ if (handled) {
505
+ event.preventDefault();
506
+ event.stopPropagation();
507
+ }
508
+ },
509
+
510
+ /* Filter entered characters - based on date format. */
511
+ _doKeyPress: function(event) {
512
+ var inst = $.datetimepicker._getInst(event.target);
513
+ if ($.datetimepicker._get(inst, 'constrainInput')) {
514
+ var chars = $.datetimepicker._possibleChars($.datetimepicker._get(inst, 'dateFormat'));
515
+ var chr = String.fromCharCode(event.charCode == undefined ? event.keyCode : event.charCode);
516
+ return event.ctrlKey || (chr < ' ' || !chars || chars.indexOf(chr) > -1);
517
+ }
518
+ },
519
+
520
+ /* Pop-up the date picker for a given input field.
521
+ @param input element - the input field attached to the date picker or
522
+ event - if triggered by focus */
523
+ _showdatetimepicker: function(input) {
524
+ input = input.target || input;
525
+ if (input.nodeName.toLowerCase() != 'input') // find from button/image trigger
526
+ input = $('input', input.parentNode)[0];
527
+ if ($.datetimepicker._isDisableddatetimepicker(input) || $.datetimepicker._lastInput == input) // already here
528
+ return;
529
+ var inst = $.datetimepicker._getInst(input);
530
+ var beforeShow = $.datetimepicker._get(inst, 'beforeShow');
531
+ extendRemove(inst.settings, (beforeShow ? beforeShow.apply(input, [input, inst]) : {}));
532
+ $.datetimepicker._hidedatetimepicker(null, '');
533
+ $.datetimepicker._lastInput = input;
534
+ $.datetimepicker._setDateFromField(inst);
535
+ if ($.datetimepicker._inDialog) // hide cursor
536
+ input.value = '';
537
+ if (!$.datetimepicker._pos) { // position below input
538
+ $.datetimepicker._pos = $.datetimepicker._findPos(input);
539
+ $.datetimepicker._pos[1] += input.offsetHeight; // add the height
540
+ }
541
+ var isFixed = false;
542
+ $(input).parents().each(function() {
543
+ isFixed |= $(this).css('position') == 'fixed';
544
+ return !isFixed;
545
+ });
546
+ if (isFixed && $.browser.opera) { // correction for Opera when fixed and scrolled
547
+ $.datetimepicker._pos[0] -= document.documentElement.scrollLeft;
548
+ $.datetimepicker._pos[1] -= document.documentElement.scrollTop;
549
+ }
550
+ var offset = {left: $.datetimepicker._pos[0], top: $.datetimepicker._pos[1]};
551
+ $.datetimepicker._pos = null;
552
+ inst.rangeStart = null;
553
+ // determine sizing offscreen
554
+ inst.dpDiv.css({position: 'absolute', display: 'block', top: '-1000px'});
555
+ $.datetimepicker._updatedatetimepicker(inst);
556
+ // fix width for dynamic number of date pickers
557
+ // and adjust position before showing
558
+ offset = $.datetimepicker._checkOffset(inst, offset, isFixed);
559
+ inst.dpDiv.css({position: ($.datetimepicker._inDialog && $.blockUI ?
560
+ 'static' : (isFixed ? 'fixed' : 'absolute')), display: 'none',
561
+ left: offset.left + 'px', top: offset.top + 'px'});
562
+ if (!inst.inline) {
563
+ var showAnim = $.datetimepicker._get(inst, 'showAnim') || 'show';
564
+ var duration = $.datetimepicker._get(inst, 'duration');
565
+ var postProcess = function() {
566
+ $.datetimepicker._datetimepickerShowing = true;
567
+ if ($.browser.msie && parseInt($.browser.version,10) < 7) // fix IE < 7 select problems
568
+ $('iframe.ui-datepicker-cover').css({width: inst.dpDiv.width() + 4,
569
+ height: inst.dpDiv.height() + 4});
570
+ };
571
+ if ($.effects && $.effects[showAnim])
572
+ inst.dpDiv.show(showAnim, $.datetimepicker._get(inst, 'showOptions'), duration, postProcess);
573
+ else
574
+ inst.dpDiv[showAnim](duration, postProcess);
575
+ if (duration == '')
576
+ postProcess();
577
+ if (inst.input[0].type != 'hidden')
578
+ inst.input[0].focus();
579
+ $.datetimepicker._curInst = inst;
580
+ }
581
+ },
582
+
583
+ /* Generate the date picker content. */
584
+ _updatedatetimepicker: function(inst) {
585
+ var dims = {width: inst.dpDiv.width() + 4,
586
+ height: inst.dpDiv.height() + 4};
587
+ var self = this;
588
+ inst.dpDiv.empty().append(this._generateHTML(inst))
589
+ .find('iframe.ui-datepicker-cover').
590
+ css({width: dims.width, height: dims.height})
591
+ .end()
592
+ .find('button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a')
593
+ .bind('mouseout', function(){
594
+ $(this).removeClass('ui-state-hover');
595
+ if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).removeClass('ui-datepicker-prev-hover');
596
+ if(this.className.indexOf('ui-datepicker-next') != -1) $(this).removeClass('ui-datepicker-next-hover');
597
+ })
598
+ .bind('mouseover', function(){
599
+ if (!self._isDisableddatetimepicker( inst.inline ? inst.dpDiv.parent()[0] : inst.input[0])) {
600
+ $(this).parents('.ui-datepicker-calendar').find('a').removeClass('ui-state-hover');
601
+ $(this).addClass('ui-state-hover');
602
+ if(this.className.indexOf('ui-datepicker-prev') != -1) $(this).addClass('ui-datepicker-prev-hover');
603
+ if(this.className.indexOf('ui-datepicker-next') != -1) $(this).addClass('ui-datepicker-next-hover');
604
+ }
605
+ })
606
+ .end()
607
+ .find('.' + this._dayOverClass + ' a')
608
+ .trigger('mouseover')
609
+ .end();
610
+ var numMonths = this._getNumberOfMonths(inst);
611
+ var cols = numMonths[1];
612
+ var width = 17;
613
+ if (cols > 1) {
614
+ inst.dpDiv.addClass('ui-datepicker-multi-' + cols).css('width', (width * cols) + 'em');
615
+ } else {
616
+ inst.dpDiv.removeClass('ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4').width('');
617
+ }
618
+ inst.dpDiv[(numMonths[0] != 1 || numMonths[1] != 1 ? 'add' : 'remove') +
619
+ 'Class']('ui-datepicker-multi');
620
+ inst.dpDiv[(this._get(inst, 'isRTL') ? 'add' : 'remove') +
621
+ 'Class']('ui-datepicker-rtl');
622
+ if (inst.input && inst.input[0].type != 'hidden' && inst == $.datetimepicker._curInst)
623
+ $(inst.input[0]).focus();
624
+ },
625
+
626
+ /* Check positioning to remain on screen. */
627
+ _checkOffset: function(inst, offset, isFixed) {
628
+ var dpWidth = inst.dpDiv.outerWidth();
629
+ var dpHeight = inst.dpDiv.outerHeight();
630
+ var inputWidth = inst.input ? inst.input.outerWidth() : 0;
631
+ var inputHeight = inst.input ? inst.input.outerHeight() : 0;
632
+ var viewWidth = (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) + $(document).scrollLeft();
633
+ var viewHeight = (window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight) + $(document).scrollTop();
634
+
635
+ offset.left -= (this._get(inst, 'isRTL') ? (dpWidth - inputWidth) : 0);
636
+ offset.left -= (isFixed && offset.left == inst.input.offset().left) ? $(document).scrollLeft() : 0;
637
+ offset.top -= (isFixed && offset.top == (inst.input.offset().top + inputHeight)) ? $(document).scrollTop() : 0;
638
+
639
+ // now check if datetimepicker is showing outside window viewport - move to a better place if so.
640
+ offset.left -= (offset.left + dpWidth > viewWidth && viewWidth > dpWidth) ? Math.abs(offset.left + dpWidth - viewWidth) : 0;
641
+ offset.top -= (offset.top + dpHeight > viewHeight && viewHeight > dpHeight) ? Math.abs(offset.top + dpHeight + inputHeight*2 - viewHeight) : 0;
642
+
643
+ return offset;
644
+ },
645
+
646
+ /* Find an object's position on the screen. */
647
+ _findPos: function(obj) {
648
+ while (obj && (obj.type == 'hidden' || obj.nodeType != 1)) {
649
+ obj = obj.nextSibling;
650
+ }
651
+ var position = $(obj).offset();
652
+ return [position.left, position.top];
653
+ },
654
+
655
+ /* Hide the date picker from view.
656
+ @param input element - the input field attached to the date picker
657
+ @param duration string - the duration over which to close the date picker */
658
+ _hidedatetimepicker: function(input, duration) {
659
+ var inst = this._curInst;
660
+ if (!inst || (input && inst != $.data(input, PROP_NAME)))
661
+ return;
662
+ if (inst.stayOpen)
663
+ this._selectDate('#' + inst.id, this._formatDate(inst,
664
+ inst.currentDay, inst.currentMonth, inst.currentYear));
665
+ inst.stayOpen = false;
666
+ if (this._datetimepickerShowing) {
667
+ duration = (duration != null ? duration : this._get(inst, 'duration'));
668
+ var showAnim = this._get(inst, 'showAnim');
669
+ var postProcess = function() {
670
+ $.datetimepicker._tidyDialog(inst);
671
+ };
672
+ if (duration != '' && $.effects && $.effects[showAnim])
673
+ inst.dpDiv.hide(showAnim, $.datetimepicker._get(inst, 'showOptions'),
674
+ duration, postProcess);
675
+ else
676
+ inst.dpDiv[(duration == '' ? 'hide' : (showAnim == 'slideDown' ? 'slideUp' :
677
+ (showAnim == 'fadeIn' ? 'fadeOut' : 'hide')))](duration, postProcess);
678
+ if (duration == '')
679
+ this._tidyDialog(inst);
680
+ var onClose = this._get(inst, 'onClose');
681
+ if (onClose)
682
+ onClose.apply((inst.input ? inst.input[0] : null),
683
+ [(inst.input ? inst.input.val() : ''), inst]); // trigger custom callback
684
+ this._datetimepickerShowing = false;
685
+ this._lastInput = null;
686
+ if (this._inDialog) {
687
+ this._dialogInput.css({ position: 'absolute', left: '0', top: '-100px' });
688
+ if ($.blockUI) {
689
+ $.unblockUI();
690
+ $('body').append(this.dpDiv);
691
+ }
692
+ }
693
+ this._inDialog = false;
694
+ }
695
+ this._curInst = null;
696
+ },
697
+
698
+ /* Tidy up after a dialog display. */
699
+ _tidyDialog: function(inst) {
700
+ inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker-calendar');
701
+ },
702
+
703
+ /* Close date picker if clicked elsewhere. */
704
+ _checkExternalClick: function(event) {
705
+ if (!$.datetimepicker._curInst)
706
+ return;
707
+ var $target = $(event.target);
708
+ if (($target.parents('#' + $.datetimepicker._mainDivId).length == 0) &&
709
+ !$target.hasClass($.datetimepicker.markerClassName) &&
710
+ !$target.hasClass($.datetimepicker._triggerClass) &&
711
+ $.datetimepicker._datetimepickerShowing && !($.datetimepicker._inDialog && $.blockUI))
712
+ $.datetimepicker._hidedatetimepicker(null, '');
713
+ },
714
+
715
+ /* Adjust one of the date sub-fields. */
716
+ _adjustDate: function(id, offset, period) {
717
+ var target = $(id);
718
+ var inst = this._getInst(target[0]);
719
+ if (this._isDisableddatetimepicker(target[0])) {
720
+ return;
721
+ }
722
+ this._adjustInstDate(inst, offset +
723
+ (period == 'M' ? this._get(inst, 'showCurrentAtPos') : 0), // undo positioning
724
+ period);
725
+ this._updatedatetimepicker(inst);
726
+ },
727
+
728
+ /* Action for current link. */
729
+ _gotoToday: function(id) {
730
+ var target = $(id);
731
+ var inst = this._getInst(target[0]);
732
+ if (this._get(inst, 'gotoCurrent') && inst.currentDay) {
733
+ inst.selectedDay = inst.currentDay;
734
+ inst.drawMonth = inst.selectedMonth = inst.currentMonth;
735
+ inst.drawYear = inst.selectedYear = inst.currentYear;
736
+ }
737
+ else {
738
+ var date = new Date();
739
+ inst.selectedDay = date.getDate();
740
+ inst.drawMonth = inst.selectedMonth = date.getMonth();
741
+ inst.drawYear = inst.selectedYear = date.getFullYear();
742
+ }
743
+ this._notifyChange(inst);
744
+ this._adjustDate(target);
745
+ },
746
+
747
+ /* Action for selecting a new month/year. */
748
+ _selectMonthYear: function(id, select, period) {
749
+ var target = $(id);
750
+ var inst = this._getInst(target[0]);
751
+ inst._selectingMonthYear = false;
752
+ inst['selected' + (period == 'M' ? 'Month' : 'Year')] =
753
+ inst['draw' + (period == 'M' ? 'Month' : 'Year')] =
754
+ parseInt(select.options[select.selectedIndex].value,10);
755
+ this._notifyChange(inst);
756
+ this._adjustDate(target);
757
+ },
758
+
759
+ /* Restore input focus after not changing month/year. */
760
+ _clickMonthYear: function(id) {
761
+ var target = $(id);
762
+ var inst = this._getInst(target[0]);
763
+ if (inst.input && inst._selectingMonthYear && !$.browser.msie)
764
+ inst.input[0].focus();
765
+ inst._selectingMonthYear = !inst._selectingMonthYear;
766
+ },
767
+
768
+ /* Action for selecting a day. */
769
+ _selectDay: function(id, month, year, td) {
770
+ var target = $(id);
771
+ if ($(td).hasClass(this._unselectableClass) || this._isDisableddatetimepicker(target[0])) {
772
+ return;
773
+ }
774
+ var inst = this._getInst(target[0]);
775
+ inst.selectedDay = inst.currentDay = $('a', td).html();
776
+ inst.selectedMonth = inst.currentMonth = month;
777
+ inst.selectedYear = inst.currentYear = year;
778
+ if (inst.stayOpen) {
779
+ inst.endDay = inst.endMonth = inst.endYear = null;
780
+ }
781
+ this._selectDate(id, this._formatDate(inst,
782
+ inst.currentDay, inst.currentMonth, inst.currentYear));
783
+
784
+ if (inst.stayOpen) {
785
+ inst.rangeStart = this._daylightSavingAdjust(
786
+ new Date(inst.currentYear, inst.currentMonth, inst.currentDay));
787
+ this._updatedatetimepicker(inst);
788
+ }
789
+ },
790
+
791
+ /* Erase the input field and hide the date picker. */
792
+ _clearDate: function(id) {
793
+ var target = $(id);
794
+ var inst = this._getInst(target[0]);
795
+ inst.stayOpen = false;
796
+ inst.endDay = inst.endMonth = inst.endYear = inst.rangeStart = null;
797
+ this._selectDate(target, '');
798
+ },
799
+
800
+ /* Update the input field with the selected date. */
801
+ _selectDate: function(id, dateStr) {
802
+ if ($('.ui-datepicker-hs').css('display')=='none'){
803
+ $('.ui-datepicker-hs').show('slide');
804
+ }
805
+ var target = $(id);
806
+ var inst = this._getInst(target[0]);
807
+ dateStr = (dateStr != null ? dateStr : this._formatDate(inst));
808
+ this.seldatestr = dateStr;
809
+ this.seldateid = id;
810
+
811
+
812
+ //var tm = ' '+$(".ui-datepicker-H").text()+':'+$(".ui-datepicker-I").text()+':'+$(".ui-datepicker-S").text();
813
+
814
+ if (inst.input)
815
+ inst.input.val(dateStr+this._formatTime(inst,$(".ui-datepicker-H").text(),$(".ui-datepicker-I").text(),$(".ui-datepicker-S").text()));
816
+ this._updateAlternate(inst);
817
+ var onSelect = this._get(inst, 'onSelect');
818
+ if (onSelect)
819
+ onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]); // trigger custom callback
820
+ else if (inst.input)
821
+ inst.input.trigger('change'); // fire the change event
822
+ if (inst.inline)
823
+ this._updatedatetimepicker(inst);
824
+ else if (!inst.stayOpen) { //alert (dateStr); return false;
825
+ //this._hidedatetimepicker(null, this._get(inst, 'duration'));
826
+ this._lastInput = inst.input[0];
827
+ if (typeof(inst.input[0]) != 'object')
828
+ inst.input[0].focus(); // restore focus
829
+ this._lastInput = null;
830
+ }
831
+ },
832
+
833
+ _selectI:function(id){
834
+
835
+ var s = parseInt($(id).text()); if (s==59){ s=-1; } s++; /*if (s<10){ s='0'+s; }*/ $(id).text(s); this._selectDate(this.seldateid, this.seldatestr);
836
+ },
837
+ _selectH:function(id){
838
+
839
+ var s = parseInt($(id).text()); if (s==23){ s=-1; } s++; /*if (s<10){ s='0'+s; }*/ $(id).text(s); this._selectDate(this.seldateid, this.seldatestr);
840
+ },
841
+ _selectSec:function(id){
842
+
843
+ var s = parseInt($(id).text()); if (s==59){ s=-1; } s++; /*if (s<10){ s='0'+s; }*/ $(id).text(s); this._selectDate(this.seldateid, this.seldatestr);
844
+ },
845
+
846
+ /* Update any alternate field to synchronise with the main field. */
847
+ _updateAlternate: function(inst) {
848
+ var altField = this._get(inst, 'altField');
849
+ if (altField) { // update alternate field too
850
+ var altFormat = this._get(inst, 'altFormat') || this._get(inst, 'dateFormat');
851
+ var date = this._getDate(inst);
852
+ dateStr = this.formatDate(altFormat, date, this._getFormatConfig(inst));
853
+ $(altField).each(function() { $(this).val(dateStr); });
854
+ }
855
+ },
856
+
857
+ /* Set as beforeShowDay function to prevent selection of weekends.
858
+ @param date Date - the date to customise
859
+ @return [boolean, string] - is this date selectable?, what is its CSS class? */
860
+ noWeekends: function(date) {
861
+ var day = date.getDay();
862
+ return [(day > 0 && day < 6), ''];
863
+ },
864
+
865
+ /* Set as calculateWeek to determine the week of the year based on the ISO 8601 definition.
866
+ @param date Date - the date to get the week for
867
+ @return number - the number of the week within the year that contains this date */
868
+ iso8601Week: function(date) {
869
+ var checkDate = new Date(date.getFullYear(), date.getMonth(), date.getDate());
870
+ var firstMon = new Date(checkDate.getFullYear(), 1 - 1, 4); // First week always contains 4 Jan
871
+ var firstDay = firstMon.getDay() || 7; // Day of week: Mon = 1, ..., Sun = 7
872
+ firstMon.setDate(firstMon.getDate() + 1 - firstDay); // Preceding Monday
873
+ if (firstDay < 4 && checkDate < firstMon) { // Adjust first three days in year if necessary
874
+ checkDate.setDate(checkDate.getDate() - 3); // Generate for previous year
875
+ return $.datetimepicker.iso8601Week(checkDate);
876
+ } else if (checkDate > new Date(checkDate.getFullYear(), 12 - 1, 28)) { // Check last three days in year
877
+ firstDay = new Date(checkDate.getFullYear() + 1, 1 - 1, 4).getDay() || 7;
878
+ if (firstDay > 4 && (checkDate.getDay() || 7) < firstDay - 3) { // Adjust if necessary
879
+ return 1;
880
+ }
881
+ }
882
+ return Math.floor(((checkDate - firstMon) / 86400000) / 7) + 1; // Weeks to given date
883
+ },
884
+
885
+ /* Parse a string value into a date object.
886
+ See formatDate below for the possible formats.
887
+
888
+ @param format string - the expected format of the date
889
+ @param value string - the date in the above format
890
+ @param settings Object - attributes include:
891
+ shortYearCutoff number - the cutoff year for determining the century (optional)
892
+ dayNamesShort string[7] - abbreviated names of the days from Sunday (optional)
893
+ dayNames string[7] - names of the days from Sunday (optional)
894
+ monthNamesShort string[12] - abbreviated names of the months (optional)
895
+ monthNames string[12] - names of the months (optional)
896
+ @return Date - the extracted date value or null if value is blank */
897
+ parseDate: function (format, value, settings) {
898
+ if (format == null || value == null)
899
+ throw 'Invalid arguments';
900
+ value = (typeof value == 'object' ? value.toString() : value + '');
901
+ if (value == '')
902
+ return null;
903
+ var shortYearCutoff = (settings ? settings.shortYearCutoff : null) || this._defaults.shortYearCutoff;
904
+ var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort;
905
+ var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames;
906
+ var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort;
907
+ var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames;
908
+ var year = -1;
909
+ var month = -1;
910
+ var day = -1;
911
+ var doy = -1;
912
+ var literal = false;
913
+ // Check whether a format character is doubled
914
+ var lookAhead = function(match) {
915
+ var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match);
916
+ if (matches)
917
+ iFormat++;
918
+ return matches;
919
+ };
920
+ // Extract a number from the string value
921
+ var getNumber = function(match) {
922
+ lookAhead(match);
923
+ var origSize = (match == '@' ? 14 : (match == 'y' ? 4 : (match == 'o' ? 3 : 2)));
924
+ var size = origSize;
925
+ var num = 0;
926
+ while (size > 0 && iValue < value.length &&
927
+ value.charAt(iValue) >= '0' && value.charAt(iValue) <= '9') {
928
+ num = num * 10 + parseInt(value.charAt(iValue++),10);
929
+ size--;
930
+ }
931
+ if (size == origSize)
932
+ throw 'Missing number at position ' + iValue;
933
+ return num;
934
+ };
935
+ // Extract a name from the string value and convert to an index
936
+ var getName = function(match, shortNames, longNames) {
937
+ var names = (lookAhead(match) ? longNames : shortNames);
938
+ var size = 0;
939
+ for (var j = 0; j < names.length; j++)
940
+ size = Math.max(size, names[j].length);
941
+ var name = '';
942
+ var iInit = iValue;
943
+ while (size > 0 && iValue < value.length) {
944
+ name += value.charAt(iValue++);
945
+ for (var i = 0; i < names.length; i++)
946
+ if (name == names[i])
947
+ return i + 1;
948
+ size--;
949
+ }
950
+ throw 'Unknown name at position ' + iInit;
951
+ };
952
+ // Confirm that a literal character matches the string value
953
+ var checkLiteral = function() {
954
+ if (value.charAt(iValue) != format.charAt(iFormat))
955
+ throw 'Unexpected literal at position ' + iValue;
956
+ iValue++;
957
+ };
958
+ var iValue = 0;
959
+ for (var iFormat = 0; iFormat < format.length; iFormat++) {
960
+ if (literal)
961
+ if (format.charAt(iFormat) == "'" && !lookAhead("'"))
962
+ literal = false;
963
+ else
964
+ checkLiteral();
965
+ else
966
+ switch (format.charAt(iFormat)) {
967
+ case 'd':
968
+ day = getNumber('d');
969
+ break;
970
+ case 'D':
971
+ getName('D', dayNamesShort, dayNames);
972
+ break;
973
+ case 'o':
974
+ doy = getNumber('o');
975
+ break;
976
+ case 'm':
977
+ month = getNumber('m');
978
+ break;
979
+ case 'M':
980
+ month = getName('M', monthNamesShort, monthNames);
981
+ break;
982
+ case 'y':
983
+ year = getNumber('y');
984
+ break;
985
+ case '@':
986
+ var date = new Date(getNumber('@'));
987
+ year = date.getFullYear();
988
+ month = date.getMonth() + 1;
989
+ day = date.getDate();
990
+ break;
991
+ case "'":
992
+ if (lookAhead("'"))
993
+ checkLiteral();
994
+ else
995
+ literal = true;
996
+ break;
997
+ default:
998
+ checkLiteral();
999
+ }
1000
+ }
1001
+ if (year == -1)
1002
+ year = new Date().getFullYear();
1003
+ else if (year < 100)
1004
+ year += new Date().getFullYear() - new Date().getFullYear() % 100 +
1005
+ (year <= shortYearCutoff ? 0 : -100);
1006
+ if (doy > -1) {
1007
+ month = 1;
1008
+ day = doy;
1009
+ do {
1010
+ var dim = this._getDaysInMonth(year, month - 1);
1011
+ if (day <= dim)
1012
+ break;
1013
+ month++;
1014
+ day -= dim;
1015
+ } while (true);
1016
+ }
1017
+ var date = this._daylightSavingAdjust(new Date(year, month - 1, day));
1018
+ if (date.getFullYear() != year || date.getMonth() + 1 != month || date.getDate() != day)
1019
+ throw 'Invalid date'; // E.g. 31/02/*
1020
+ return date;
1021
+ },
1022
+
1023
+ /* Standard date formats. */
1024
+ ATOM: 'yy-mm-dd hh:ii:ss', // RFC 3339 (ISO 8601)
1025
+ COOKIE: 'D, dd M yy',
1026
+ ISO_8601: 'yy-mm-dd',
1027
+ RFC_822: 'D, d M y',
1028
+ RFC_850: 'DD, dd-M-y',
1029
+ RFC_1036: 'D, d M y',
1030
+ RFC_1123: 'D, d M yy',
1031
+ RFC_2822: 'D, d M yy',
1032
+ RSS: 'D, d M y', // RFC 822
1033
+ TIMESTAMP: '@',
1034
+ W3C: 'yy-mm-dd', // ISO 8601
1035
+
1036
+ /* Format a date object into a string value.
1037
+ The format can be combinations of the following:
1038
+ d - day of month (no leading zero)
1039
+ dd - day of month (two digit)
1040
+ o - day of year (no leading zeros)
1041
+ oo - day of year (three digit)
1042
+ D - day name short
1043
+ DD - day name long
1044
+ m - month of year (no leading zero)
1045
+ mm - month of year (two digit)
1046
+ M - month name short
1047
+ MM - month name long
1048
+ y - year (two digit)
1049
+ yy - year (four digit)
1050
+ @ - Unix timestamp (ms since 01/01/1970)
1051
+ '...' - literal text
1052
+ '' - single quote
1053
+
1054
+ @param format string - the desired format of the date
1055
+ @param date Date - the date value to format
1056
+ @param settings Object - attributes include:
1057
+ dayNamesShort string[7] - abbreviated names of the days from Sunday (optional)
1058
+ dayNames string[7] - names of the days from Sunday (optional)
1059
+ monthNamesShort string[12] - abbreviated names of the months (optional)
1060
+ monthNames string[12] - names of the months (optional)
1061
+ @return string - the date in the above format */
1062
+ formatDate: function (format, date, settings) {
1063
+ if (!date)
1064
+ return '';
1065
+ var dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort;
1066
+ var dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames;
1067
+ var monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort;
1068
+ var monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames;
1069
+ // Check whether a format character is doubled
1070
+ var lookAhead = function(match) {
1071
+ var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) == match);
1072
+ if (matches)
1073
+ iFormat++;
1074
+ return matches;
1075
+ };
1076
+ // Format a number, with leading zero if necessary
1077
+ var formatNumber = function(match, value, len) {
1078
+ var num = '' + value;
1079
+ if (lookAhead(match))
1080
+ while (num.length < len)
1081
+ num = '0' + num;
1082
+ return num;
1083
+ };
1084
+ // Format a name, short or long as requested
1085
+ var formatName = function(match, value, shortNames, longNames) {
1086
+ return (lookAhead(match) ? longNames[value] : shortNames[value]);
1087
+ };
1088
+ var output = '';
1089
+ var literal = false;
1090
+ if (date)
1091
+ for (var iFormat = 0; iFormat < format.length; iFormat++) {
1092
+ if (literal)
1093
+ if (format.charAt(iFormat) == "'" && !lookAhead("'"))
1094
+ literal = false;
1095
+ else
1096
+ output += format.charAt(iFormat);
1097
+ else
1098
+ switch (format.charAt(iFormat)) {
1099
+ case 'd':
1100
+ output += formatNumber('d', date.getDate(), 2);
1101
+ break;
1102
+ case 'D':
1103
+ output += formatName('D', date.getDay(), dayNamesShort, dayNames);
1104
+ break;
1105
+ case 'o':
1106
+ var doy = date.getDate();
1107
+ for (var m = date.getMonth() - 1; m >= 0; m--)
1108
+ doy += this._getDaysInMonth(date.getFullYear(), m);
1109
+ output += formatNumber('o', doy, 3);
1110
+ break;
1111
+ case 'm':
1112
+ output += formatNumber('m', date.getMonth() + 1, 2);
1113
+ break;
1114
+ case 'M':
1115
+ output += formatName('M', date.getMonth(), monthNamesShort, monthNames);
1116
+ break;
1117
+ case 'y':
1118
+ output += (lookAhead('y') ? date.getFullYear() :
1119
+ (date.getYear() % 100 < 10 ? '0' : '') + date.getYear() % 100);
1120
+ break;
1121
+ case '@':
1122
+ output += date.getTime();
1123
+ break;
1124
+ case "'":
1125
+ if (lookAhead("'"))
1126
+ output += "'";
1127
+ else
1128
+ literal = true;
1129
+ break;
1130
+ default:
1131
+ output += format.charAt(iFormat);
1132
+ }
1133
+ }
1134
+ return output;
1135
+ },
1136
+
1137
+ /* Extract all possible characters from the date format. */
1138
+ _possibleChars: function (format) {
1139
+ var chars = '';
1140
+ var literal = false;
1141
+ for (var iFormat = 0; iFormat < format.length; iFormat++)
1142
+ if (literal)
1143
+ if (format.charAt(iFormat) == "'" && !lookAhead("'"))
1144
+ literal = false;
1145
+ else
1146
+ chars += format.charAt(iFormat);
1147
+ else
1148
+ switch (format.charAt(iFormat)) {
1149
+ case 'd': case 'm': case 'y': case '@':
1150
+ chars += '0123456789';
1151
+ break;
1152
+ case 'D': case 'M':
1153
+ return null; // Accept anything
1154
+ case "'":
1155
+ if (lookAhead("'"))
1156
+ chars += "'";
1157
+ else
1158
+ literal = true;
1159
+ break;
1160
+ default:
1161
+ chars += format.charAt(iFormat);
1162
+ }
1163
+ return chars;
1164
+ },
1165
+
1166
+ /* Get a setting value, defaulting if necessary. */
1167
+ _get: function(inst, name) {
1168
+ return inst.settings[name] !== undefined ?
1169
+ inst.settings[name] : this._defaults[name];
1170
+ },
1171
+
1172
+ /* Parse existing date and initialise date picker. */
1173
+ _setDateFromField: function(inst) {
1174
+ var dateFormat = this._get(inst, 'dateFormat');
1175
+ var dates = inst.input ? inst.input.val() : null;
1176
+ inst.endDay = inst.endMonth = inst.endYear = null;
1177
+ var date = defaultDate = this._getDefaultDate(inst);
1178
+ var settings = this._getFormatConfig(inst);
1179
+ try {
1180
+ date = this.parseDate(dateFormat, dates, settings) || defaultDate;
1181
+ } catch (event) {
1182
+ this.log(event);
1183
+ date = defaultDate;
1184
+ }
1185
+ inst.selectedDay = date.getDate();
1186
+ inst.drawMonth = inst.selectedMonth = date.getMonth();
1187
+ inst.drawYear = inst.selectedYear = date.getFullYear();
1188
+ inst.currentDay = (dates ? date.getDate() : 0);
1189
+ inst.currentMonth = (dates ? date.getMonth() : 0);
1190
+ inst.currentYear = (dates ? date.getFullYear() : 0);
1191
+ this._adjustInstDate(inst);
1192
+ },
1193
+
1194
+ /* Retrieve the default date shown on opening. */
1195
+ _getDefaultDate: function(inst) {
1196
+ var date = this._determineDate(this._get(inst, 'defaultDate'), new Date());
1197
+ var minDate = this._getMinMaxDate(inst, 'min', true);
1198
+ var maxDate = this._getMinMaxDate(inst, 'max');
1199
+ date = (minDate && date < minDate ? minDate : date);
1200
+ date = (maxDate && date > maxDate ? maxDate : date);
1201
+ return date;
1202
+ },
1203
+
1204
+ /* A date may be specified as an exact value or a relative one. */
1205
+ _determineDate: function(date, defaultDate) {
1206
+ var offsetNumeric = function(offset) {
1207
+ var date = new Date();
1208
+ date.setDate(date.getDate() + offset);
1209
+ return date;
1210
+ };
1211
+ var offsetString = function(offset, getDaysInMonth) {
1212
+ var date = new Date();
1213
+ var year = date.getFullYear();
1214
+ var month = date.getMonth();
1215
+ var day = date.getDate();
1216
+ var pattern = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;
1217
+ var matches = pattern.exec(offset);
1218
+ while (matches) {
1219
+ switch (matches[2] || 'd') {
1220
+ case 'd' : case 'D' :
1221
+ day += parseInt(matches[1],10); break;
1222
+ case 'w' : case 'W' :
1223
+ day += parseInt(matches[1],10) * 7; break;
1224
+ case 'm' : case 'M' :
1225
+ month += parseInt(matches[1],10);
1226
+ day = Math.min(day, getDaysInMonth(year, month));
1227
+ break;
1228
+ case 'y': case 'Y' :
1229
+ year += parseInt(matches[1],10);
1230
+ day = Math.min(day, getDaysInMonth(year, month));
1231
+ break;
1232
+ }
1233
+ matches = pattern.exec(offset);
1234
+ }
1235
+ return new Date(year, month, day);
1236
+ };
1237
+ date = (date == null ? defaultDate :
1238
+ (typeof date == 'string' ? offsetString(date, this._getDaysInMonth) :
1239
+ (typeof date == 'number' ? (isNaN(date) ? defaultDate : offsetNumeric(date)) : date)));
1240
+ date = (date && date.toString() == 'Invalid Date' ? defaultDate : date);
1241
+ if (date) {
1242
+ date.setHours(0);
1243
+ date.setMinutes(0);
1244
+ date.setSeconds(0);
1245
+ date.setMilliseconds(0);
1246
+ }
1247
+ return this._daylightSavingAdjust(date);
1248
+ },
1249
+
1250
+ /* Handle switch to/from daylight saving.
1251
+ Hours may be non-zero on daylight saving cut-over:
1252
+ > 12 when midnight changeover, but then cannot generate
1253
+ midnight datetime, so jump to 1AM, otherwise reset.
1254
+ @param date (Date) the date to check
1255
+ @return (Date) the corrected date */
1256
+ _daylightSavingAdjust: function(date) {
1257
+ if (!date) return null;
1258
+ date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0);
1259
+ return date;
1260
+ },
1261
+
1262
+ /* Set the date(s) directly. */
1263
+ _setDate: function(inst, date, endDate) {
1264
+ var clear = !(date);
1265
+ var origMonth = inst.selectedMonth;
1266
+ var origYear = inst.selectedYear;
1267
+ date = this._determineDate(date, new Date());
1268
+ inst.selectedDay = inst.currentDay = date.getDate();
1269
+ inst.drawMonth = inst.selectedMonth = inst.currentMonth = date.getMonth();
1270
+ inst.drawYear = inst.selectedYear = inst.currentYear = date.getFullYear();
1271
+ if (origMonth != inst.selectedMonth || origYear != inst.selectedYear)
1272
+ this._notifyChange(inst);
1273
+ this._adjustInstDate(inst);
1274
+ if (inst.input) {
1275
+ inst.input.val(clear ? '' : this._formatDate(inst));
1276
+ }
1277
+ },
1278
+
1279
+ /* Retrieve the date(s) directly. */
1280
+ _getDate: function(inst) {
1281
+ var startDate = (!inst.currentYear || (inst.input && inst.input.val() == '') ? null :
1282
+ this._daylightSavingAdjust(new Date(
1283
+ inst.currentYear, inst.currentMonth, inst.currentDay)));
1284
+ return startDate;
1285
+ },
1286
+
1287
+ /* Generate the HTML for the current state of the date picker. */
1288
+ _generateHTML: function(inst) {
1289
+ var today = new Date();
1290
+ today = this._daylightSavingAdjust(
1291
+ new Date(today.getFullYear(), today.getMonth(), today.getDate())); // clear time
1292
+ var isRTL = this._get(inst, 'isRTL');
1293
+ var showButtonPanel = this._get(inst, 'showButtonPanel');
1294
+ var hideIfNoPrevNext = this._get(inst, 'hideIfNoPrevNext');
1295
+ var navigationAsDateFormat = this._get(inst, 'navigationAsDateFormat');
1296
+ var numMonths = this._getNumberOfMonths(inst);
1297
+ var showCurrentAtPos = this._get(inst, 'showCurrentAtPos');
1298
+ var stepMonths = this._get(inst, 'stepMonths');
1299
+ var stepBigMonths = this._get(inst, 'stepBigMonths');
1300
+ var isMultiMonth = (numMonths[0] != 1 || numMonths[1] != 1);
1301
+ var currentDate = this._daylightSavingAdjust((!inst.currentDay ? new Date(9999, 9, 9) :
1302
+ new Date(inst.currentYear, inst.currentMonth, inst.currentDay)));
1303
+ var minDate = this._getMinMaxDate(inst, 'min', true);
1304
+ var maxDate = this._getMinMaxDate(inst, 'max');
1305
+ var drawMonth = inst.drawMonth - showCurrentAtPos;
1306
+ var drawYear = inst.drawYear;
1307
+ if (drawMonth < 0) {
1308
+ drawMonth += 12;
1309
+ drawYear--;
1310
+ }
1311
+ if (maxDate) {
1312
+ var maxDraw = this._daylightSavingAdjust(new Date(maxDate.getFullYear(),
1313
+ maxDate.getMonth() - numMonths[1] + 1, maxDate.getDate()));
1314
+ maxDraw = (minDate && maxDraw < minDate ? minDate : maxDraw);
1315
+ while (this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1)) > maxDraw) {
1316
+ drawMonth--;
1317
+ if (drawMonth < 0) {
1318
+ drawMonth = 11;
1319
+ drawYear--;
1320
+ }
1321
+ }
1322
+ }
1323
+ inst.drawMonth = drawMonth;
1324
+ inst.drawYear = drawYear;
1325
+ var prevText = this._get(inst, 'prevText');
1326
+ prevText = (!navigationAsDateFormat ? prevText : this.formatDate(prevText,
1327
+ this._daylightSavingAdjust(new Date(drawYear, drawMonth - stepMonths, 1)),
1328
+ this._getFormatConfig(inst)));
1329
+ var prev = (this._canAdjustMonth(inst, -1, drawYear, drawMonth) ?
1330
+ '<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery.datetimepicker._adjustDate(\'#' + inst.id + '\', -' + stepMonths + ', \'M\');"' +
1331
+ ' title="' + prevText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>' :
1332
+ (hideIfNoPrevNext ? '' : '<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+ prevText +'"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'e' : 'w') + '">' + prevText + '</span></a>'));
1333
+ var nextText = this._get(inst, 'nextText');
1334
+ nextText = (!navigationAsDateFormat ? nextText : this.formatDate(nextText,
1335
+ this._daylightSavingAdjust(new Date(drawYear, drawMonth + stepMonths, 1)),
1336
+ this._getFormatConfig(inst)));
1337
+ var next = (this._canAdjustMonth(inst, +1, drawYear, drawMonth) ?
1338
+ '<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery.datetimepicker._adjustDate(\'#' + inst.id + '\', +' + stepMonths + ', \'M\');"' +
1339
+ ' title="' + nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>' :
1340
+ (hideIfNoPrevNext ? '' : '<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+ nextText + '"><span class="ui-icon ui-icon-circle-triangle-' + ( isRTL ? 'w' : 'e') + '">' + nextText + '</span></a>'));
1341
+ var currentText = this._get(inst, 'currentText');
1342
+ var gotoDate = (this._get(inst, 'gotoCurrent') && inst.currentDay ? currentDate : today);
1343
+ currentText = (!navigationAsDateFormat ? currentText :
1344
+ this.formatDate(currentText, gotoDate, this._getFormatConfig(inst)));
1345
+ var controls = (!inst.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery.datetimepicker._hidedatetimepicker();">' + this._get(inst, 'closeText') + '</button>' : '');
1346
+ var buttonPanel = (showButtonPanel) ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (isRTL ? controls : '') +
1347
+ (this._isInRange(inst, gotoDate) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery.datetimepicker._gotoToday(\'#' + inst.id + '\');"' +
1348
+ '>' + currentText + '</button>' : '') + (isRTL ? '' : controls) + '</div>' : '';
1349
+ var firstDay = parseInt(this._get(inst, 'firstDay'),10);
1350
+ firstDay = (isNaN(firstDay) ? 0 : firstDay);
1351
+ var dayNames = this._get(inst, 'dayNames');
1352
+ var dayNamesShort = this._get(inst, 'dayNamesShort');
1353
+ var dayNamesMin = this._get(inst, 'dayNamesMin');
1354
+ var monthNames = this._get(inst, 'monthNames');
1355
+ var monthNamesShort = this._get(inst, 'monthNamesShort');
1356
+ var beforeShowDay = this._get(inst, 'beforeShowDay');
1357
+ var showOtherMonths = this._get(inst, 'showOtherMonths');
1358
+ var calculateWeek = this._get(inst, 'calculateWeek') || this.iso8601Week;
1359
+ var endDate = inst.endDay ? this._daylightSavingAdjust(
1360
+ new Date(inst.endYear, inst.endMonth, inst.endDay)) : currentDate;
1361
+ var defaultDate = this._getDefaultDate(inst);
1362
+ var html = '';
1363
+ for (var row = 0; row < numMonths[0]; row++) {
1364
+ var group = '';
1365
+ for (var col = 0; col < numMonths[1]; col++) {
1366
+ var selectedDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, inst.selectedDay));
1367
+ var cornerClass = ' ui-corner-all';
1368
+ var calender = '';
1369
+ if (isMultiMonth) {
1370
+ calender += '<div class="ui-datepicker-group ui-datepicker-group-';
1371
+ switch (col) {
1372
+ case 0: calender += 'first'; cornerClass = ' ui-corner-' + (isRTL ? 'right' : 'left'); break;
1373
+ case numMonths[1]-1: calender += 'last'; cornerClass = ' ui-corner-' + (isRTL ? 'left' : 'right'); break;
1374
+ default: calender += 'middle'; cornerClass = ''; break;
1375
+ }
1376
+ calender += '">';
1377
+ }
1378
+ calender += '<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix' + cornerClass + '">' +
1379
+ (/all|left/.test(cornerClass) && row == 0 ? (isRTL ? next : prev) : '') +
1380
+ (/all|right/.test(cornerClass) && row == 0 ? (isRTL ? prev : next) : '') +
1381
+ this._generateMonthYearHeader(inst, drawMonth, drawYear, minDate, maxDate,
1382
+ selectedDate, row > 0 || col > 0, monthNames, monthNamesShort) + // draw month headers
1383
+ '</div><table class="ui-datepicker-calendar"><thead>' +
1384
+ '<tr>';
1385
+ var thead = '';
1386
+ for (var dow = 0; dow < 7; dow++) { // days of the week
1387
+ var day = (dow + firstDay) % 7;
1388
+ thead += '<th' + ((dow + firstDay + 6) % 7 >= 5 ? ' class="ui-datepicker-week-end"' : '') + '>' +
1389
+ '<span title="' + dayNames[day] + '">' + dayNamesMin[day] + '</span></th>';
1390
+ }
1391
+ calender += thead + '</tr></thead><tbody>';
1392
+ var daysInMonth = this._getDaysInMonth(drawYear, drawMonth);
1393
+ if (drawYear == inst.selectedYear && drawMonth == inst.selectedMonth)
1394
+ inst.selectedDay = Math.min(inst.selectedDay, daysInMonth);
1395
+ var leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7;
1396
+ var numRows = (isMultiMonth ? 6 : Math.ceil((leadDays + daysInMonth) / 7)); // calculate the number of rows to generate
1397
+ var printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays));
1398
+ for (var dRow = 0; dRow < numRows; dRow++) { // create date picker rows
1399
+ calender += '<tr>';
1400
+ var tbody = '';
1401
+ for (var dow = 0; dow < 7; dow++) { // create date picker days
1402
+ var daySettings = (beforeShowDay ?
1403
+ beforeShowDay.apply((inst.input ? inst.input[0] : null), [printDate]) : [true, '']);
1404
+ var otherMonth = (printDate.getMonth() != drawMonth);
1405
+ var unselectable = otherMonth || !daySettings[0] ||
1406
+ (minDate && printDate < minDate) || (maxDate && printDate > maxDate);
1407
+ tbody += '<td class="' +
1408
+ ((dow + firstDay + 6) % 7 >= 5 ? ' ui-datepicker-week-end' : '') + // highlight weekends
1409
+ (otherMonth ? ' ui-datepicker-other-month' : '') + // highlight days from other months
1410
+ ((printDate.getTime() == selectedDate.getTime() && drawMonth == inst.selectedMonth && inst._keyEvent) || // user pressed key
1411
+ (defaultDate.getTime() == printDate.getTime() && defaultDate.getTime() == selectedDate.getTime()) ?
1412
+ // or defaultDate is current printedDate and defaultDate is selectedDate
1413
+ ' ' + this._dayOverClass : '') + // highlight selected day
1414
+ (unselectable ? ' ' + this._unselectableClass + ' ui-state-disabled': '') + // highlight unselectable days
1415
+ (otherMonth && !showOtherMonths ? '' : ' ' + daySettings[1] + // highlight custom dates
1416
+ (printDate.getTime() >= currentDate.getTime() && printDate.getTime() <= endDate.getTime() ? // in current range
1417
+ ' ' + this._currentClass : '') + // highlight selected day
1418
+ (printDate.getTime() == today.getTime() ? ' ui-datepicker-today' : '')) + '"' + // highlight today (if different)
1419
+ ((!otherMonth || showOtherMonths) && daySettings[2] ? ' title="' + daySettings[2] + '"' : '') + // cell title
1420
+ (unselectable ? '' : ' onclick="DP_jQuery.datetimepicker._selectDay(\'#' +
1421
+ inst.id + '\',' + drawMonth + ',' + drawYear + ', this);return false;"') + '>' + // actions
1422
+ (otherMonth ? (showOtherMonths ? printDate.getDate() : '&#xa0;') : // display for other months
1423
+ (unselectable ? '<span class="ui-state-default">' + printDate.getDate() + '</span>' : '<a class="ui-state-default' +
1424
+ (printDate.getTime() == today.getTime() ? ' ui-state-highlight' : '') +
1425
+ (printDate.getTime() >= currentDate.getTime() && printDate.getTime() <= endDate.getTime() ? // in current range
1426
+ ' ui-state-active' : '') + // highlight selected day
1427
+ '" href="#">' + printDate.getDate() + '</a>')) + '</td>'; // display for this month
1428
+ printDate.setDate(printDate.getDate() + 1);
1429
+ printDate = this._daylightSavingAdjust(printDate);
1430
+ }
1431
+ calender += tbody + '</tr>';
1432
+ }
1433
+ drawMonth++;
1434
+ if (drawMonth > 11) {
1435
+ drawMonth = 0;
1436
+ drawYear++;
1437
+ }
1438
+
1439
+
1440
+ /*add time*/
1441
+
1442
+ time=new Date();
1443
+
1444
+ time_sec=time.getSeconds(); if (time_sec<10){ time_sec='0'+time_sec }
1445
+ time_min=time.getMinutes(); if (time_min<10){ time_min='0'+time_min}
1446
+ time_hours=time.getHours(); if (time_hours<10){ time_hours='0'+time_hours }
1447
+
1448
+ var time_element = '<div style="text-align:center; display:none; user-select: none;-moz-user-select: none;-khtml-user-select: none;-webkit-user-select: none;" class="ui-datepicker-hs ui-datepicker-header ui-widget-header ui-helper-clearfix' + cornerClass + '"><span class="ui-datepicker-H" onClick="DP_jQuery.datetimepicker._selectH(this)" style="cursor:pointer">'+time_hours+'</span>:<span class="ui-datepicker-I" onClick="DP_jQuery.datetimepicker._selectI(this)" style="cursor:pointer">'+time_min+'</span>:<span class="ui-datepicker-S" onClick="DP_jQuery.datetimepicker._selectSec(this)" style="cursor:pointer">'+time_sec+'</span></div>';
1449
+
1450
+ calender += '</tbody></table>' + time_element + (isMultiMonth ? '</div>' +
1451
+ ((numMonths[0] > 0 && col == numMonths[1]-1) ? '<div class="ui-datepicker-row-break"></div>' : '') : '');
1452
+ group += calender;
1453
+ }
1454
+ html += group;
1455
+ }
1456
+ html += buttonPanel + ($.browser.msie && parseInt($.browser.version,10) < 7 && !inst.inline ?
1457
+ '<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>' : '');
1458
+ inst._keyEvent = false;
1459
+
1460
+ $(".ui-datepicker-h").click(function(){
1461
+ alert (12);
1462
+ })
1463
+ return html;
1464
+ },
1465
+
1466
+ /* Generate the month and year header. */
1467
+ _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate,
1468
+ selectedDate, secondary, monthNames, monthNamesShort) {
1469
+ minDate = (inst.rangeStart && minDate && selectedDate < minDate ? selectedDate : minDate);
1470
+ var changeMonth = this._get(inst, 'changeMonth');
1471
+ var changeYear = this._get(inst, 'changeYear');
1472
+ var showMonthAfterYear = this._get(inst, 'showMonthAfterYear');
1473
+ var html = '<div class="ui-datepicker-title">';
1474
+ var monthHtml = '';
1475
+ // month selection
1476
+ if (secondary || !changeMonth)
1477
+ monthHtml += '<span class="ui-datepicker-month">' + monthNames[drawMonth] + '</span> ';
1478
+ else {
1479
+ var inMinYear = (minDate && minDate.getFullYear() == drawYear);
1480
+ var inMaxYear = (maxDate && maxDate.getFullYear() == drawYear);
1481
+ monthHtml += '<select class="ui-datepicker-month" ' +
1482
+ 'onchange="DP_jQuery.datetimepicker._selectMonthYear(\'#' + inst.id + '\', this, \'M\');" ' +
1483
+ 'onclick="DP_jQuery.datetimepicker._clickMonthYear(\'#' + inst.id + '\');"' +
1484
+ '>';
1485
+ for (var month = 0; month < 12; month++) {
1486
+ if ((!inMinYear || month >= minDate.getMonth()) &&
1487
+ (!inMaxYear || month <= maxDate.getMonth()))
1488
+ monthHtml += '<option value="' + month + '"' +
1489
+ (month == drawMonth ? ' selected="selected"' : '') +
1490
+ '>' + monthNamesShort[month] + '</option>';
1491
+ }
1492
+ monthHtml += '</select>';
1493
+ }
1494
+ if (!showMonthAfterYear)
1495
+ html += monthHtml + ((secondary || changeMonth || changeYear) && (!(changeMonth && changeYear)) ? '&#xa0;' : '');
1496
+ // year selection
1497
+ if (secondary || !changeYear)
1498
+ html += '<span class="ui-datepicker-year">' + drawYear + '</span>';
1499
+ else {
1500
+ // determine range of years to display
1501
+ var years = this._get(inst, 'yearRange').split(':');
1502
+ var year = 0;
1503
+ var endYear = 0;
1504
+ if (years.length != 2) {
1505
+ year = drawYear - 10;
1506
+ endYear = drawYear + 10;
1507
+ } else if (years[0].charAt(0) == '+' || years[0].charAt(0) == '-') {
1508
+ year = drawYear + parseInt(years[0], 10);
1509
+ endYear = drawYear + parseInt(years[1], 10);
1510
+ } else {
1511
+ year = parseInt(years[0], 10);
1512
+ endYear = parseInt(years[1], 10);
1513
+ }
1514
+ year = (minDate ? Math.max(year, minDate.getFullYear()) : year);
1515
+ endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear);
1516
+ html += '<select class="ui-datepicker-year" ' +
1517
+ 'onchange="DP_jQuery.datetimepicker._selectMonthYear(\'#' + inst.id + '\', this, \'Y\');" ' +
1518
+ 'onclick="DP_jQuery.datetimepicker._clickMonthYear(\'#' + inst.id + '\');"' +
1519
+ '>';
1520
+ for (; year <= endYear; year++) {
1521
+ html += '<option value="' + year + '"' +
1522
+ (year == drawYear ? ' selected="selected"' : '') +
1523
+ '>' + year + '</option>';
1524
+ }
1525
+ html += '</select>';
1526
+ }
1527
+ if (showMonthAfterYear)
1528
+ html += (secondary || changeMonth || changeYear ? '&#xa0;' : '') + monthHtml;
1529
+ html += '</div>'; // Close datetimepicker_header
1530
+ return html;
1531
+ },
1532
+
1533
+ /* Adjust one of the date sub-fields. */
1534
+ _adjustInstDate: function(inst, offset, period) {
1535
+ var year = inst.drawYear + (period == 'Y' ? offset : 0);
1536
+ var month = inst.drawMonth + (period == 'M' ? offset : 0);
1537
+ var day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) +
1538
+ (period == 'D' ? offset : 0);
1539
+ var date = this._daylightSavingAdjust(new Date(year, month, day));
1540
+ // ensure it is within the bounds set
1541
+ var minDate = this._getMinMaxDate(inst, 'min', true);
1542
+ var maxDate = this._getMinMaxDate(inst, 'max');
1543
+ date = (minDate && date < minDate ? minDate : date);
1544
+ date = (maxDate && date > maxDate ? maxDate : date);
1545
+ inst.selectedDay = date.getDate();
1546
+ inst.drawMonth = inst.selectedMonth = date.getMonth();
1547
+ inst.drawYear = inst.selectedYear = date.getFullYear();
1548
+ if (period == 'M' || period == 'Y')
1549
+ this._notifyChange(inst);
1550
+ },
1551
+
1552
+ /* Notify change of month/year. */
1553
+ _notifyChange: function(inst) {
1554
+ var onChange = this._get(inst, 'onChangeMonthYear');
1555
+ if (onChange)
1556
+ onChange.apply((inst.input ? inst.input[0] : null),
1557
+ [inst.selectedYear, inst.selectedMonth + 1, inst]);
1558
+ },
1559
+
1560
+ /* Determine the number of months to show. */
1561
+ _getNumberOfMonths: function(inst) {
1562
+ var numMonths = this._get(inst, 'numberOfMonths');
1563
+ return (numMonths == null ? [1, 1] : (typeof numMonths == 'number' ? [1, numMonths] : numMonths));
1564
+ },
1565
+
1566
+ /* Determine the current maximum date - ensure no time components are set - may be overridden for a range. */
1567
+ _getMinMaxDate: function(inst, minMax, checkRange) {
1568
+ var date = this._determineDate(this._get(inst, minMax + 'Date'), null);
1569
+ return (!checkRange || !inst.rangeStart ? date :
1570
+ (!date || inst.rangeStart > date ? inst.rangeStart : date));
1571
+ },
1572
+
1573
+ /* Find the number of days in a given month. */
1574
+ _getDaysInMonth: function(year, month) {
1575
+ return 32 - new Date(year, month, 32).getDate();
1576
+ },
1577
+
1578
+ /* Find the day of the week of the first of a month. */
1579
+ _getFirstDayOfMonth: function(year, month) {
1580
+ return new Date(year, month, 1).getDay();
1581
+ },
1582
+
1583
+ /* Determines if we should allow a "next/prev" month display change. */
1584
+ _canAdjustMonth: function(inst, offset, curYear, curMonth) {
1585
+ var numMonths = this._getNumberOfMonths(inst);
1586
+ var date = this._daylightSavingAdjust(new Date(
1587
+ curYear, curMonth + (offset < 0 ? offset : numMonths[1]), 1));
1588
+ if (offset < 0)
1589
+ date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth()));
1590
+ return this._isInRange(inst, date);
1591
+ },
1592
+
1593
+ /* Is the given date in the accepted range? */
1594
+ _isInRange: function(inst, date) {
1595
+ // during range selection, use minimum of selected date and range start
1596
+ var newMinDate = (!inst.rangeStart ? null : this._daylightSavingAdjust(
1597
+ new Date(inst.selectedYear, inst.selectedMonth, inst.selectedDay)));
1598
+ newMinDate = (newMinDate && inst.rangeStart < newMinDate ? inst.rangeStart : newMinDate);
1599
+ var minDate = newMinDate || this._getMinMaxDate(inst, 'min');
1600
+ var maxDate = this._getMinMaxDate(inst, 'max');
1601
+ return ((!minDate || date >= minDate) && (!maxDate || date <= maxDate));
1602
+ },
1603
+
1604
+ /* Provide the configuration settings for formatting/parsing. */
1605
+ _getFormatConfig: function(inst) {
1606
+ var shortYearCutoff = this._get(inst, 'shortYearCutoff');
1607
+ shortYearCutoff = (typeof shortYearCutoff != 'string' ? shortYearCutoff :
1608
+ new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10));
1609
+ return {shortYearCutoff: shortYearCutoff,
1610
+ dayNamesShort: this._get(inst, 'dayNamesShort'), dayNames: this._get(inst, 'dayNames'),
1611
+ monthNamesShort: this._get(inst, 'monthNamesShort'), monthNames: this._get(inst, 'monthNames')};
1612
+ },
1613
+
1614
+ /* Format the given date for display. */
1615
+ _formatDate: function(inst, day, month, year) {
1616
+ if (!day) {
1617
+ inst.currentDay = inst.selectedDay;
1618
+ inst.currentMonth = inst.selectedMonth;
1619
+ inst.currentYear = inst.selectedYear;
1620
+ }
1621
+ var date = (day ? (typeof day == 'object' ? day :
1622
+ this._daylightSavingAdjust(new Date(year, month, day))) :
1623
+ this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay)));
1624
+ return this.formatDate(this._get(inst, 'dateFormat'), date, this._getFormatConfig(inst));
1625
+ },
1626
+ _formatTime: function(inst,dhh,dii,dss) { if ( (dhh=='') || (dii=='') || (dss=='') ){ return false }
1627
+ var str = this._get(inst, 'timeFormat');
1628
+
1629
+ str =str.split('hh').join(dhh);
1630
+ str =str.split('ii').join(dii);
1631
+ str =str.split('ss').join(dss);
1632
+ return str;
1633
+
1634
+ // return 11;
1635
+
1636
+ }
1637
+ });
1638
+
1639
+ /* jQuery extend now ignores nulls! */
1640
+ function extendRemove(target, props) {
1641
+ $.extend(target, props);
1642
+ for (var name in props)
1643
+ if (props[name] == null || props[name] == undefined)
1644
+ target[name] = props[name];
1645
+ return target;
1646
+ };
1647
+
1648
+ /* Determine whether an object is an array. */
1649
+ function isArray(a) {
1650
+ return (a && (($.browser.safari && typeof a == 'object' && a.length) ||
1651
+ (a.constructor && a.constructor.toString().match(/\Array\(\)/))));
1652
+ };
1653
+
1654
+ /* Invoke the datetimepicker functionality.
1655
+ @param options string - a command, optionally followed by additional parameters or
1656
+ Object - settings for attaching new datetimepicker functionality
1657
+ @return jQuery object */
1658
+ $.fn.datetimepicker = function(options){
1659
+
1660
+ /* Initialise the date picker. */
1661
+ if (!$.datetimepicker.initialized) {
1662
+ $(document).mousedown($.datetimepicker._checkExternalClick).
1663
+ find('body').append($.datetimepicker.dpDiv);
1664
+ $.datetimepicker.initialized = true;
1665
+ }
1666
+
1667
+ var otherArgs = Array.prototype.slice.call(arguments, 1);
1668
+ if (typeof options == 'string' && (options == 'isDisabled' || options == 'getDate'))
1669
+ return $.datetimepicker['_' + options + 'datetimepicker'].
1670
+ apply($.datetimepicker, [this[0]].concat(otherArgs));
1671
+ if (options == 'option' && arguments.length == 2 && typeof arguments[1] == 'string')
1672
+ return $.datetimepicker['_' + options + 'datetimepicker'].
1673
+ apply($.datetimepicker, [this[0]].concat(otherArgs));
1674
+ return this.each(function() {
1675
+ typeof options == 'string' ?
1676
+ $.datetimepicker['_' + options + 'datetimepicker'].
1677
+ apply($.datetimepicker, [this].concat(otherArgs)) :
1678
+ $.datetimepicker._attachdatetimepicker(this, options);
1679
+ });
1680
+ };
1681
+
1682
+
1683
+
1684
+
1685
+ $.datetimepicker = new datetimepicker(); // singleton instance
1686
+ $.datetimepicker.initialized = false;
1687
+ $.datetimepicker.uuid = new Date().getTime();
1688
+ $.datetimepicker.version = "1.7.2";
1689
+
1690
+ // Workaround for #4055
1691
+ // Add another global to avoid noConflict issues with inline event handlers
1692
+ window.DP_jQuery = $;
1693
+
1694
+
1695
+
1696
+ })(jQuery);
languages/wartungsmodus-de_DE.mo DELETED
Binary file
languages/wartungsmodus-de_DE.po DELETED
@@ -1,375 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: \n"
4
- "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2010-01-04 12:57+0100\n"
6
- "PO-Revision-Date: \n"
7
- "Last-Translator: Frank Bueltge <frank@bueltge.de>\n"
8
- "Language-Team: \n"
9
- "MIME-Version: 1.0\n"
10
- "Content-Type: text/plain; charset=UTF-8\n"
11
- "Content-Transfer-Encoding: 8bit\n"
12
- "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
- "X-Poedit-Language: \n"
14
- "X-Poedit-Country: \n"
15
- "X-Poedit-SourceCharset: utf-8\n"
16
- "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;\n"
17
- "X-Poedit-Basepath: d:/xampp/htdocs/wpbeta/wp-content/plugins/wartungsmodus/\n"
18
- "X-Poedit-Bookmarks: \n"
19
- "X-Poedit-SearchPath-0: .\n"
20
- "X-Textdomain-Support: yes"
21
-
22
- #: !wartungsmodus.php:120
23
- msgid "Settings"
24
- msgstr "Einstellungen"
25
-
26
- #: !wartungsmodus.php:191
27
- #, php-format
28
- #@ wartungsmodus
29
- msgid "Plugin %s settings <strong>updated</strong>."
30
- msgstr "Plugin %s Einstellungen <strong>gespeichert</strong>."
31
-
32
- #: !wartungsmodus.php:192
33
- #, php-format
34
- #@ wartungsmodus
35
- msgid "Plugin %s active status <strong>updated</strong>."
36
- msgstr "Plugin %s aktiv-status <strong>aktualisiert</strong>."
37
-
38
- #: !wartungsmodus.php:194
39
- #@ wartungsmodus
40
- msgid "Plugin Activate"
41
- msgstr "Plugin aktivieren"
42
-
43
- #: !wartungsmodus.php:198
44
- #: !wartungsmodus.php:214
45
- #: !wartungsmodus.php:258
46
- #@ wartungsmodus
47
- msgid "False"
48
- msgstr "Nein"
49
-
50
- #: !wartungsmodus.php:199
51
- #: !wartungsmodus.php:215
52
- #: !wartungsmodus.php:259
53
- #@ wartungsmodus
54
- msgid "True"
55
- msgstr "Ja"
56
-
57
- #: !wartungsmodus.php:201
58
- #@ wartungsmodus
59
- msgid "Update"
60
- msgstr "Aktualisieren"
61
-
62
- #: !wartungsmodus.php:204
63
- #@ wartungsmodus
64
- msgid "Plugin Settings"
65
- msgstr "Plugin Einstellungen"
66
-
67
- #: !wartungsmodus.php:210
68
- #@ wartungsmodus
69
- msgid "Countdown:"
70
- msgstr "Countdown:"
71
-
72
- #: !wartungsmodus.php:221
73
- #: !wartungsmodus.php:224
74
- #@ wartungsmodus
75
- msgid "Click for datepicker"
76
- msgstr "Klick für den Datums-Picker"
77
-
78
- #: !wartungsmodus.php:221
79
- #@ wartungsmodus
80
- msgid "Date:"
81
- msgstr "Datum:"
82
-
83
- #: !wartungsmodus.php:225
84
- #@ wartungsmodus
85
- msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
86
- msgstr "Aktiviere den Countdown um ihn zu nutzen. Vergebe Wert und Einheit oder wähle ein Datum für den Countdown."
87
-
88
- #: !wartungsmodus.php:230
89
- #@ wartungsmodus
90
- msgid "Value:"
91
- msgstr "Wert:"
92
-
93
- #: !wartungsmodus.php:238
94
- #@ wartungsmodus
95
- msgid "Unit:"
96
- msgstr "Einheit:"
97
-
98
- #: !wartungsmodus.php:242
99
- #@ wartungsmodus
100
- msgid "second"
101
- msgstr "sekunde"
102
-
103
- #: !wartungsmodus.php:243
104
- #@ wartungsmodus
105
- msgid "minute"
106
- msgstr "minute"
107
-
108
- #: !wartungsmodus.php:244
109
- #@ wartungsmodus
110
- msgid "hour"
111
- msgstr "stunde"
112
-
113
- #: !wartungsmodus.php:245
114
- #@ wartungsmodus
115
- msgid "day"
116
- msgstr "tag"
117
-
118
- #: !wartungsmodus.php:246
119
- #@ wartungsmodus
120
- msgid "week"
121
- msgstr "woche"
122
-
123
- #: !wartungsmodus.php:247
124
- #@ wartungsmodus
125
- msgid "month"
126
- msgstr "monat"
127
-
128
- #: !wartungsmodus.php:248
129
- #@ wartungsmodus
130
- msgid "year"
131
- msgstr "jahr"
132
-
133
- #: !wartungsmodus.php:254
134
- #@ wartungsmodus
135
- msgid "Link:"
136
- msgstr "Link:"
137
-
138
- #: !wartungsmodus.php:267
139
- #@ wartungsmodus
140
- msgid "Theme:"
141
- msgstr "Theme:"
142
-
143
- #: !wartungsmodus.php:271
144
- #@ wartungsmodus
145
- msgid "Own Style"
146
- msgstr "Eigenes Design"
147
-
148
- #: !wartungsmodus.php:272
149
- #@ wartungsmodus
150
- msgid "Simple Text"
151
- msgstr "Einfach Text"
152
-
153
- #: !wartungsmodus.php:273
154
- #@ wartungsmodus
155
- msgid "The Truck"
156
- msgstr "Der Truck"
157
-
158
- #: !wartungsmodus.php:274
159
- #@ wartungsmodus
160
- msgid "The Sun"
161
- msgstr "The Sun"
162
-
163
- #: !wartungsmodus.php:275
164
- #@ wartungsmodus
165
- msgid "The FF Error"
166
- msgstr "The FF Error"
167
-
168
- #: !wartungsmodus.php:276
169
- #@ wartungsmodus
170
- msgid "Monster"
171
- msgstr "Monster"
172
-
173
- #: !wartungsmodus.php:277
174
- #@ wartungsmodus
175
- msgid "Chastely"
176
- msgstr "Chastely"
177
-
178
- #: !wartungsmodus.php:278
179
- #@ wartungsmodus
180
- msgid "Only Typo"
181
- msgstr "Only Typo"
182
-
183
- #: !wartungsmodus.php:279
184
- #@ wartungsmodus
185
- msgid "Paint"
186
- msgstr "Paint"
187
-
188
- #: !wartungsmodus.php:280
189
- #@ wartungsmodus
190
- msgid "Animate (Flash, only german)"
191
- msgstr "Animate (Flash, nur in deutsch)"
192
-
193
- #: !wartungsmodus.php:281
194
- #@ wartungsmodus
195
- msgid "Damask"
196
- msgstr "Damask"
197
-
198
- #: !wartungsmodus.php:282
199
- #@ wartungsmodus
200
- msgid "Lego"
201
- msgstr "Lego"
202
-
203
- #: !wartungsmodus.php:288
204
- #@ wartungsmodus
205
- msgid "Own Style URL (incl. http://):"
206
- msgstr "Eigene Design URL (inkl. http://)"
207
-
208
- #: !wartungsmodus.php:320
209
- #@ wartungsmodus
210
- msgid "Text:"
211
- msgstr "Text:"
212
-
213
- #: !wartungsmodus.php:330
214
- #@ wartungsmodus
215
- msgid "Excludes:"
216
- msgstr "Ausnahmen:"
217
-
218
- #: !wartungsmodus.php:335
219
- #@ wartungsmodus
220
- msgid "Exlude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example: "
221
- msgstr "Die Ausnahme des Wartungsmodus ist möglich für Inhalte aller Art. Füge den Titelform (Slug) hinzu, als Komma-Separierte Liste.<br />Beispiel: "
222
-
223
- #: !wartungsmodus.php:340
224
- #@ wartungsmodus
225
- msgid "Role:"
226
- msgstr "Rolle:"
227
-
228
- #: !wartungsmodus.php:361
229
- #@ wartungsmodus
230
- msgid "Allowed userrole for see the frontend of this blog."
231
- msgstr "Erlaubte Userrolle für das Sehen des Frontend dieses Blog."
232
-
233
- #: !wartungsmodus.php:367
234
- #@ wartungsmodus
235
- msgid "Save"
236
- msgstr "Speichern"
237
-
238
- #: !wartungsmodus.php:395
239
- #: !wartungsmodus.php:438
240
- #@ wartungsmodus
241
- msgid "Updated"
242
- msgstr "Gespeichert"
243
-
244
- #: !wartungsmodus.php:508
245
- #@ wartungsmodus
246
- msgid "Coution: Maintenance mode is <strong>active</strong>!"
247
- msgstr "Achtung: Wartungsmodus ist <strong>aktiv</strong>!"
248
-
249
- #: !wartungsmodus.php:508
250
- #@ wartungsmodus
251
- msgid "Deactivate or change Settings"
252
- msgstr "Deaktivieren oder Einstellungen ändern "
253
-
254
- #: !wartungsmodus.php:524
255
- #: site.php:46
256
- #: site.php:51
257
- #@ wartungsmodus
258
- msgid "seconds"
259
- msgstr "Sekunden"
260
-
261
- #: !wartungsmodus.php:528
262
- #: site.php:46
263
- #: site.php:51
264
- #@ wartungsmodus
265
- msgid "minutes"
266
- msgstr "Minuten"
267
-
268
- #: !wartungsmodus.php:532
269
- #: site.php:46
270
- #: site.php:51
271
- #@ wartungsmodus
272
- msgid "hours"
273
- msgstr "Stunden"
274
-
275
- #: !wartungsmodus.php:536
276
- #: site.php:46
277
- #: site.php:51
278
- #@ wartungsmodus
279
- msgid "days"
280
- msgstr "Tagen"
281
-
282
- #: !wartungsmodus.php:540
283
- #@ wartungsmodus
284
- msgid "weeks"
285
- msgstr "Wochen"
286
-
287
- #: !wartungsmodus.php:548
288
- #@ wartungsmodus
289
- msgid "years"
290
- msgstr "Jahren"
291
-
292
- #: !wartungsmodus.php:579
293
- #@ wartungsmodus
294
- msgid "Plugin by:"
295
- msgstr "Plugin von:"
296
-
297
- #: !wartungsmodus.php:581
298
- #: !wartungsmodus.php:584
299
- #: !wartungsmodus.php:587
300
- #: !wartungsmodus.php:590
301
- #: !wartungsmodus.php:593
302
- #: !wartungsmodus.php:596
303
- #: !wartungsmodus.php:599
304
- #: !wartungsmodus.php:602
305
- #: !wartungsmodus.php:605
306
- #: !wartungsmodus.php:608
307
- #@ wartungsmodus
308
- msgid "Design by:"
309
- msgstr "Design von:"
310
-
311
- #: site.php:6
312
- #: site.php:84
313
- #@ wartungsmodus
314
- msgid "Maintenance Mode"
315
- msgstr "Wartungsmodus"
316
-
317
- #: site.php:44
318
- #@ wartungsmodus
319
- msgid "The due date was before"
320
- msgstr "Der Termin war vor"
321
-
322
- #: site.php:46
323
- #: site.php:51
324
- #@ wartungsmodus
325
- msgid "and"
326
- msgstr "und"
327
-
328
- #: site.php:90
329
- #@ wartungsmodus
330
- msgid "Admin-Login"
331
- msgstr "Admin-Login"
332
-
333
- #: !wartungsmodus.php:296
334
- #@ wartungsmodus
335
- msgid "Title:"
336
- msgstr "Titel:"
337
-
338
- #: !wartungsmodus.php:291
339
- #@ wartungsmodus
340
- msgid "URL to the css-file"
341
- msgstr "URL zur css-Datei"
342
-
343
- #: !wartungsmodus.php:299
344
- #: !wartungsmodus.php:307
345
- #: !wartungsmodus.php:315
346
- #@ wartungsmodus
347
- msgid "Leave empty for default."
348
- msgstr "Leer lassen für den Standardtext."
349
-
350
- #: !wartungsmodus.php:304
351
- #@ wartungsmodus
352
- msgid "Header:"
353
- msgstr "Header:"
354
-
355
- #: !wartungsmodus.php:312
356
- #@ wartungsmodus
357
- msgid "Heading:"
358
- msgstr "Überschrift:"
359
-
360
- #: !wartungsmodus.php:325
361
- #, php-format
362
- #@ wartungsmodus
363
- msgid "Use the first %s for the time value or countdown and second %s for the unit of the time; HTML is possible"
364
- msgstr "Nutze das erste %s für den Zeitwert oder den Countdown und das zweite %s für die Einheit der Zeit, HTML ist möglich"
365
-
366
- #: !wartungsmodus.php:262
367
- #@ wartungsmodus
368
- msgid "Please leave a link to the plugin- and design-author on your maintenance mode site."
369
- msgstr "Bitte hinterlasse einen Link zum Plugin- und Design-Autor auf deiner Wartungsmodus-Seite."
370
-
371
- #: !wartungsmodus.php:544
372
- #@ wartungsmodus
373
- msgid "months"
374
- msgstr "Monate"
375
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/wartungsmodus-fr_FR.mo DELETED
Binary file
languages/wartungsmodus-fr_FR.po DELETED
@@ -1,333 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: !wartungsmodus\n"
4
- "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: \n"
6
- "PO-Revision-Date: \n"
7
- "Last-Translator: Gilles <gilles.wlt@gmail.com>\n"
8
- "Language-Team: Gilles <gilles.wlt@gmail.com>\n"
9
- "MIME-Version: 1.0\n"
10
- "Content-Type: text/plain; charset=UTF-8\n"
11
- "Content-Transfer-Encoding: 8bit\n"
12
- "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
- "X-Poedit-Language: French\n"
14
- "X-Poedit-Country: FRANCE\n"
15
- "X-Poedit-SourceCharset: utf-8\n"
16
- "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;\n"
17
- "X-Poedit-Basepath: .\n"
18
- "X-Poedit-Bookmarks: \n"
19
- "X-Poedit-SearchPath-0: .\n"
20
- "X-Textdomain-Support: yes"
21
-
22
- #: !wartungsmodus.php:119
23
- msgid "Settings"
24
- msgstr "Réglages"
25
-
26
- #: !wartungsmodus.php:212
27
- #@ wartungsmodus
28
- msgid "Save"
29
- msgstr "Sauvegarder"
30
-
31
- #: !wartungsmodus.php:238
32
- #: !wartungsmodus.php:273
33
- #@ wartungsmodus
34
- msgid "Updated"
35
- msgstr "Mis a jour"
36
-
37
- #: site.php:83
38
- #@ wartungsmodus
39
- msgid "Admin-Login"
40
- msgstr "Admin-Login"
41
-
42
- #: !wartungsmodus.php:382
43
- #@ wartungsmodus
44
- msgid "Plugin by:"
45
- msgstr "Plugin par:"
46
-
47
- #: !wartungsmodus.php:384
48
- #: !wartungsmodus.php:387
49
- #: !wartungsmodus.php:390
50
- #: !wartungsmodus.php:393
51
- #: !wartungsmodus.php:396
52
- #: !wartungsmodus.php:399
53
- #: !wartungsmodus.php:402
54
- #: !wartungsmodus.php:405
55
- #: !wartungsmodus.php:408
56
- #: !wartungsmodus.php:411
57
- #@ wartungsmodus
58
- msgid "Design by:"
59
- msgstr "Design par:"
60
-
61
- #: !wartungsmodus.php:153
62
- #@ wartungsmodus
63
- msgid "Plugin Settings"
64
- msgstr "Réglages plugin"
65
-
66
- #: !wartungsmodus.php:140
67
- #, php-format
68
- #@ wartungsmodus
69
- msgid "Plugin %s settings <strong>updated</strong>."
70
- msgstr "Parametres plugin %s <strong>mis a jour</strong>."
71
-
72
- #: site.php:7
73
- #: site.php:77
74
- #@ wartungsmodus
75
- msgid "Maintenance Mode"
76
- msgstr "Mode Maintenance"
77
-
78
- #: !wartungsmodus.php:178
79
- #@ wartungsmodus
80
- msgid "Link:"
81
- msgstr "Lien:"
82
-
83
- #: !wartungsmodus.php:183
84
- #@ wartungsmodus
85
- msgid "Theme:"
86
- msgstr "Tema:"
87
-
88
- #: !wartungsmodus.php:186
89
- #@ wartungsmodus
90
- msgid "Simple Text"
91
- msgstr "Texte simple"
92
-
93
- #: !wartungsmodus.php:187
94
- #@ wartungsmodus
95
- msgid "The Truck"
96
- msgstr "Camion"
97
-
98
- #: !wartungsmodus.php:164
99
- #@ wartungsmodus
100
- msgid "Value:"
101
- msgstr "Valeur:"
102
-
103
- #: !wartungsmodus.php:166
104
- #@ wartungsmodus
105
- msgid "Unit:"
106
- msgstr "Unite:"
107
-
108
- #: !wartungsmodus.php:168
109
- #@ wartungsmodus
110
- msgid "second"
111
- msgstr "seconde"
112
-
113
- #: !wartungsmodus.php:169
114
- #@ wartungsmodus
115
- msgid "minute"
116
- msgstr "dakika"
117
-
118
- #: !wartungsmodus.php:170
119
- #@ wartungsmodus
120
- msgid "hour"
121
- msgstr "Heure"
122
-
123
- #: !wartungsmodus.php:171
124
- #@ wartungsmodus
125
- msgid "day"
126
- msgstr "Jour"
127
-
128
- #: !wartungsmodus.php:172
129
- #@ wartungsmodus
130
- msgid "week"
131
- msgstr "semaine"
132
-
133
- #: !wartungsmodus.php:173
134
- #@ wartungsmodus
135
- msgid "month"
136
- msgstr "mois"
137
-
138
- #: !wartungsmodus.php:174
139
- #@ wartungsmodus
140
- msgid "year"
141
- msgstr "annee"
142
-
143
- #: !wartungsmodus.php:147
144
- #: !wartungsmodus.php:158
145
- #: !wartungsmodus.php:180
146
- #@ wartungsmodus
147
- msgid "False"
148
- msgstr "Faux"
149
-
150
- #: !wartungsmodus.php:148
151
- #: !wartungsmodus.php:159
152
- #: !wartungsmodus.php:181
153
- #@ wartungsmodus
154
- msgid "True"
155
- msgstr "Vrai"
156
-
157
- #: !wartungsmodus.php:327
158
- #: site.php:39
159
- #: site.php:44
160
- #@ wartungsmodus
161
- msgid "seconds"
162
- msgstr "secondes"
163
-
164
- #: !wartungsmodus.php:331
165
- #: site.php:39
166
- #: site.php:44
167
- #@ wartungsmodus
168
- msgid "minutes"
169
- msgstr "dakika"
170
-
171
- #: !wartungsmodus.php:335
172
- #: site.php:39
173
- #: site.php:44
174
- #@ wartungsmodus
175
- msgid "hours"
176
- msgstr "heures"
177
-
178
- #: !wartungsmodus.php:339
179
- #: site.php:39
180
- #: site.php:44
181
- #@ wartungsmodus
182
- msgid "days"
183
- msgstr "jours"
184
-
185
- #: !wartungsmodus.php:343
186
- #@ wartungsmodus
187
- msgid "weeks"
188
- msgstr "semaines"
189
-
190
- #: !wartungsmodus.php:347
191
- #@ wartungsmodus
192
- msgid "moths"
193
- msgstr "mois"
194
-
195
- #: !wartungsmodus.php:351
196
- #@ wartungsmodus
197
- msgid "years"
198
- msgstr "annees"
199
-
200
- #: !wartungsmodus.php:141
201
- #, php-format
202
- #@ wartungsmodus
203
- msgid "Plugin %s active status <strong>updated</strong>."
204
- msgstr "Plugin %s status actif <strong>mis a jour</strong>."
205
-
206
- #: !wartungsmodus.php:143
207
- #@ wartungsmodus
208
- msgid "Plugin Activate"
209
- msgstr "Activation plugin"
210
-
211
- #: !wartungsmodus.php:185
212
- #@ wartungsmodus
213
- msgid "Own Style"
214
- msgstr "Propre style"
215
-
216
- #: !wartungsmodus.php:188
217
- #@ wartungsmodus
218
- msgid "The Sun"
219
- msgstr "Soleil"
220
-
221
- #: !wartungsmodus.php:189
222
- #@ wartungsmodus
223
- msgid "The FF Error"
224
- msgstr "Erreur FF"
225
-
226
- #: !wartungsmodus.php:190
227
- #@ wartungsmodus
228
- msgid "Monster"
229
- msgstr "Monstre"
230
-
231
- #: !wartungsmodus.php:198
232
- #@ wartungsmodus
233
- msgid "Own Style URL (incl. http://):"
234
- msgstr "URL propre style (inclure http://):"
235
-
236
- #: !wartungsmodus.php:202
237
- #@ wartungsmodus
238
- msgid "Text:"
239
- msgstr "Texte"
240
-
241
- #: !wartungsmodus.php:311
242
- #@ wartungsmodus
243
- msgid "Coution: Maintenance mode is <strong>active</strong>!"
244
- msgstr "Attention: Le Mode Maintenance est <strong>actif</strong>!"
245
-
246
- #: !wartungsmodus.php:150
247
- #@ wartungsmodus
248
- msgid "Update"
249
- msgstr "Mise a jour"
250
-
251
- #: !wartungsmodus.php:191
252
- #@ wartungsmodus
253
- msgid "Chastely"
254
- msgstr "Chastely"
255
-
256
- #: !wartungsmodus.php:192
257
- #@ wartungsmodus
258
- msgid "Only Typo"
259
- msgstr "Only Typo"
260
-
261
- #: !wartungsmodus.php:193
262
- #@ wartungsmodus
263
- msgid "Paint"
264
- msgstr "Paint"
265
-
266
- #: !wartungsmodus.php:194
267
- #@ wartungsmodus
268
- msgid "Animate (Flash, only german)"
269
- msgstr "Animate (Flash, seulement en allemand)"
270
-
271
- #: !wartungsmodus.php:311
272
- #@ wartungsmodus
273
- msgid "Deactivate or change Settings"
274
- msgstr "Désactiver ou modifier les paramètres"
275
-
276
- #: !wartungsmodus.php:156
277
- #@ wartungsmodus
278
- msgid "Countdown:"
279
- msgstr ""
280
-
281
- #: !wartungsmodus.php:161
282
- #: !wartungsmodus.php:162
283
- #@ wartungsmodus
284
- msgid "Click for datepicker"
285
- msgstr ""
286
-
287
- #: !wartungsmodus.php:161
288
- #@ wartungsmodus
289
- msgid "Date:"
290
- msgstr ""
291
-
292
- #: !wartungsmodus.php:163
293
- #@ wartungsmodus
294
- msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
295
- msgstr ""
296
-
297
- #: !wartungsmodus.php:195
298
- #@ wartungsmodus
299
- msgid "Damask"
300
- msgstr ""
301
-
302
- #: !wartungsmodus.php:196
303
- #@ wartungsmodus
304
- msgid "Lego"
305
- msgstr ""
306
-
307
- #: !wartungsmodus.php:206
308
- #@ wartungsmodus
309
- msgid "Excludes:"
310
- msgstr ""
311
-
312
- #: !wartungsmodus.php:209
313
- #@ wartungsmodus
314
- msgid "Exlude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example: "
315
- msgstr ""
316
-
317
- #: site.php:37
318
- #@ wartungsmodus
319
- msgid "The due date was before"
320
- msgstr ""
321
-
322
- #: site.php:39
323
- #: site.php:44
324
- #@ wartungsmodus
325
- msgid "and"
326
- msgstr ""
327
-
328
- #: !wartungsmodus.php:202
329
- #, php-format
330
- #@ wartungsmodus
331
- msgid "(Use the first %s for the time value or countdown and second %s for the unit of the time, HTML is possible)"
332
- msgstr ""
333
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/wartungsmodus-it_IT.mo DELETED
Binary file
languages/wartungsmodus-it_IT.po DELETED
@@ -1,340 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: !Wartungsmodus in italiano\n"
4
- "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2010-01-04 12:57+0100\n"
6
- "PO-Revision-Date: \n"
7
- "Last-Translator: Gianni Diurno (aka gidibao) <gidibao@gmail.com>\n"
8
- "Language-Team: Gianni Diurno | http://gidibao.net/ <gidibao@gmail.com>\n"
9
- "MIME-Version: 1.0\n"
10
- "Content-Type: text/plain; charset=UTF-8\n"
11
- "Content-Transfer-Encoding: 8bit\n"
12
- "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
- "X-Poedit-Language: Italian\n"
14
- "X-Poedit-Country: ITALY\n"
15
- "X-Poedit-SourceCharset: utf-8\n"
16
- "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
17
- "X-Poedit-Basepath: .\n"
18
- "X-Textdomain-Support: yes\n"
19
- "X-Poedit-SearchPath-0: .\n"
20
-
21
- #: !wartungsmodus.php:119
22
- msgid "Settings"
23
- msgstr "Impostazioni"
24
-
25
- # @ wartungsmodus
26
- #: !wartungsmodus.php:141
27
- #, php-format
28
- msgid "Plugin %s settings <strong>updated</strong>."
29
- msgstr "Le impostazioni del plugin %s sono state <strong>aggiornate</strong>."
30
-
31
- # @ wartungsmodus
32
- #: !wartungsmodus.php:142
33
- #, php-format
34
- msgid "Plugin %s active status <strong>updated</strong>."
35
- msgstr "Lo status per il plugin %s é stato <strong>aggiornato</strong>."
36
-
37
- # @ wartungsmodus
38
- #: !wartungsmodus.php:144
39
- msgid "Plugin Activate"
40
- msgstr "Il plugin é attivo"
41
-
42
- # @ wartungsmodus
43
- #: !wartungsmodus.php:148
44
- #: !wartungsmodus.php:159
45
- #: !wartungsmodus.php:181
46
- msgid "False"
47
- msgstr "No"
48
-
49
- # @ wartungsmodus
50
- #: !wartungsmodus.php:149
51
- #: !wartungsmodus.php:160
52
- #: !wartungsmodus.php:182
53
- msgid "True"
54
- msgstr "Sì"
55
-
56
- # @ wartungsmodus
57
- #: !wartungsmodus.php:151
58
- msgid "Update"
59
- msgstr "Aggiorna"
60
-
61
- # @ wartungsmodus
62
- #: !wartungsmodus.php:154
63
- msgid "Plugin Settings"
64
- msgstr "Impostazioni per il plugin"
65
-
66
- # @ wartungsmodus
67
- #: !wartungsmodus.php:157
68
- msgid "Countdown:"
69
- msgstr "Conto alla rovescia:"
70
-
71
- # @ wartungsmodus
72
- #: !wartungsmodus.php:162
73
- #: !wartungsmodus.php:163
74
- msgid "Click for datepicker"
75
- msgstr "Calendario"
76
-
77
- # @ wartungsmodus
78
- #: !wartungsmodus.php:162
79
- msgid "Date:"
80
- msgstr "Data:"
81
-
82
- # @ wartungsmodus
83
- #: !wartungsmodus.php:164
84
- msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
85
- msgstr "Sarà necessario attivare il conto alla rovescia. Inserire il valore e l'unità temporale oppure utilizzare il countdown ed impostare la data."
86
-
87
- # @ wartungsmodus
88
- #: !wartungsmodus.php:165
89
- msgid "Value:"
90
- msgstr "Valore:"
91
-
92
- # @ wartungsmodus
93
- #: !wartungsmodus.php:167
94
- msgid "Unit:"
95
- msgstr "Unità:"
96
-
97
- # @ wartungsmodus
98
- #: !wartungsmodus.php:169
99
- msgid "second"
100
- msgstr "secondo"
101
-
102
- # @ wartungsmodus
103
- #: !wartungsmodus.php:170
104
- msgid "minute"
105
- msgstr "minuto"
106
-
107
- # @ wartungsmodus
108
- #: !wartungsmodus.php:171
109
- msgid "hour"
110
- msgstr "ora"
111
-
112
- # @ wartungsmodus
113
- #: !wartungsmodus.php:172
114
- msgid "day"
115
- msgstr "giorno"
116
-
117
- # @ wartungsmodus
118
- #: !wartungsmodus.php:173
119
- msgid "week"
120
- msgstr "settimana"
121
-
122
- # @ wartungsmodus
123
- #: !wartungsmodus.php:174
124
- msgid "month"
125
- msgstr "mese"
126
-
127
- # @ wartungsmodus
128
- #: !wartungsmodus.php:175
129
- msgid "year"
130
- msgstr "anno"
131
-
132
- # @ wartungsmodus
133
- #: !wartungsmodus.php:179
134
- msgid "Link:"
135
- msgstr "Link:"
136
-
137
- # @ wartungsmodus
138
- #: !wartungsmodus.php:184
139
- msgid "Theme:"
140
- msgstr "Tema:"
141
-
142
- # @ wartungsmodus
143
- #: !wartungsmodus.php:186
144
- msgid "Own Style"
145
- msgstr "Stile personale"
146
-
147
- # @ wartungsmodus
148
- #: !wartungsmodus.php:187
149
- msgid "Simple Text"
150
- msgstr "Solo testo"
151
-
152
- # @ wartungsmodus
153
- #: !wartungsmodus.php:188
154
- msgid "The Truck"
155
- msgstr "The Truck"
156
-
157
- # @ wartungsmodus
158
- #: !wartungsmodus.php:189
159
- msgid "The Sun"
160
- msgstr "The Sun"
161
-
162
- # @ wartungsmodus
163
- #: !wartungsmodus.php:190
164
- msgid "The FF Error"
165
- msgstr "The FF Error"
166
-
167
- # @ wartungsmodus
168
- #: !wartungsmodus.php:191
169
- msgid "Monster"
170
- msgstr "Monster"
171
-
172
- # @ wartungsmodus
173
- #: !wartungsmodus.php:192
174
- msgid "Chastely"
175
- msgstr "Chastely"
176
-
177
- # @ wartungsmodus
178
- #: !wartungsmodus.php:193
179
- msgid "Only Typo"
180
- msgstr "Only Typo"
181
-
182
- # @ wartungsmodus
183
- #: !wartungsmodus.php:194
184
- msgid "Paint"
185
- msgstr "Paint"
186
-
187
- # @ wartungsmodus
188
- #: !wartungsmodus.php:195
189
- msgid "Animate (Flash, only german)"
190
- msgstr "Animazione (Flash, solo in tedesco)"
191
-
192
- # @ wartungsmodus
193
- #: !wartungsmodus.php:196
194
- msgid "Damask"
195
- msgstr "Damask"
196
-
197
- # @ wartungsmodus
198
- #: !wartungsmodus.php:197
199
- msgid "Lego"
200
- msgstr "Lego"
201
-
202
- # @ wartungsmodus
203
- #: !wartungsmodus.php:199
204
- msgid "Own Style URL (incl. http://):"
205
- msgstr "URL stile personale (incl. http://):"
206
-
207
- # @ wartungsmodus
208
- #: !wartungsmodus.php:203
209
- msgid "Text:"
210
- msgstr "Testo:"
211
-
212
- # @ wartungsmodus
213
- #: !wartungsmodus.php:203
214
- #, php-format
215
- msgid "(Use the first %s for the time value or countdown and second %s for the unit of the time, HTML is possible)"
216
- msgstr "(Usa il primo %s per il valore del tempo o per il countdown ed il secondo %s per la unità temporale, HTML disponibile)"
217
-
218
- # @ wartungsmodus
219
- #: !wartungsmodus.php:207
220
- msgid "Excludes:"
221
- msgstr "Escludere:"
222
-
223
- # @ wartungsmodus
224
- #: !wartungsmodus.php:210
225
- msgid "Exlude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example: "
226
- msgstr "Escludi dalla modalità di manutenzione: pagine, articoli o archivi. Aggiungi lo slug di una pagina o articolo separando con una virgola.<br />Esempio: "
227
-
228
- #: !wartungsmodus.php:213
229
- msgid "Role:"
230
- msgstr "Ruolo:"
231
-
232
- #: !wartungsmodus.php:231
233
- msgid "Allowed userrole for see the frontend of this blog."
234
- msgstr "Permessi ruolo utente per la visualizzazione frontend di questo blog."
235
-
236
- # @ wartungsmodus
237
- #: !wartungsmodus.php:234
238
- msgid "Save"
239
- msgstr "Salva"
240
-
241
- # @ wartungsmodus
242
- #: !wartungsmodus.php:260
243
- #: !wartungsmodus.php:297
244
- msgid "Updated"
245
- msgstr "Aggiornato"
246
-
247
- # @ wartungsmodus
248
- #: !wartungsmodus.php:336
249
- msgid "Coution: Maintenance mode is <strong>active</strong>!"
250
- msgstr "Attenzione: la modalità di manutenzione é stata <strong>attivata</strong>!"
251
-
252
- # @ wartungsmodus
253
- #: !wartungsmodus.php:336
254
- msgid "Deactivate or change Settings"
255
- msgstr "Disattiva o modifica le impostazioni"
256
-
257
- # @ wartungsmodus
258
- #: !wartungsmodus.php:352
259
- #: site.php:39
260
- #: site.php:44
261
- msgid "seconds"
262
- msgstr "secondi"
263
-
264
- # @ wartungsmodus
265
- #: !wartungsmodus.php:356
266
- #: site.php:39
267
- #: site.php:44
268
- msgid "minutes"
269
- msgstr "minuti"
270
-
271
- # @ wartungsmodus
272
- #: !wartungsmodus.php:360
273
- #: site.php:39
274
- #: site.php:44
275
- msgid "hours"
276
- msgstr "ore"
277
-
278
- # @ wartungsmodus
279
- #: !wartungsmodus.php:364
280
- #: site.php:39
281
- #: site.php:44
282
- msgid "days"
283
- msgstr "giorni"
284
-
285
- # @ wartungsmodus
286
- #: !wartungsmodus.php:368
287
- msgid "weeks"
288
- msgstr "settimane"
289
-
290
- # @ wartungsmodus
291
- #: !wartungsmodus.php:372
292
- msgid "moths"
293
- msgstr "mesi"
294
-
295
- # @ wartungsmodus
296
- #: !wartungsmodus.php:376
297
- msgid "years"
298
- msgstr "anni"
299
-
300
- # @ wartungsmodus
301
- #: !wartungsmodus.php:406
302
- msgid "Plugin by:"
303
- msgstr "Plugin:"
304
-
305
- # @ wartungsmodus
306
- #: !wartungsmodus.php:408
307
- #: !wartungsmodus.php:411
308
- #: !wartungsmodus.php:414
309
- #: !wartungsmodus.php:417
310
- #: !wartungsmodus.php:420
311
- #: !wartungsmodus.php:423
312
- #: !wartungsmodus.php:426
313
- #: !wartungsmodus.php:429
314
- #: !wartungsmodus.php:432
315
- #: !wartungsmodus.php:435
316
- msgid "Design by:"
317
- msgstr "Design:"
318
-
319
- # @ wartungsmodus
320
- #: site.php:7
321
- #: site.php:77
322
- msgid "Maintenance Mode"
323
- msgstr "Modalità manutenzione"
324
-
325
- # @ wartungsmodus
326
- #: site.php:37
327
- msgid "The due date was before"
328
- msgstr "La data inserita é scaduta"
329
-
330
- # @ wartungsmodus
331
- #: site.php:39
332
- #: site.php:44
333
- msgid "and"
334
- msgstr "e"
335
-
336
- # @ wartungsmodus
337
- #: site.php:83
338
- msgid "Admin-Login"
339
- msgstr "Login amministrazione"
340
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/{wartungsmodus-be_BY.mo → wp-maintenance-mode-be_BY.mo} RENAMED
File without changes
languages/{wartungsmodus-be_BY.po → wp-maintenance-mode-be_BY.po} RENAMED
File without changes
languages/wp-maintenance-mode-da_DK.mo ADDED
Binary file
languages/wp-maintenance-mode-da_DK.po ADDED
@@ -0,0 +1,323 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: WP Maintenance Mode 1.6.5\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2010-09-18 09:55+0100\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Team Blogos <wordpress@blogos.dk>\n"
8
+ "Language-Team: Team Blogos <wordpress@blogos.dk>\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "Plural-Forms: nplurals=2;plural=n != 1;\n"
13
+ "X-Poedit-Language: Danish\n"
14
+ "X-Poedit-Country: DENMARK\n"
15
+ "X-Poedit-SourceCharset: utf-8\n"
16
+ "X-Poedit-KeywordsList: __;_e;_n:1,2;__ngettext:1,2;__ngettext_noop:1,2;_nc:1,2;_nx:1,2;_n_noop:1,2;_nx_noop;_x;_c;esc_html__;esc_html_e;esc_html_x;esc_attr__;esc_attr_e;esc_attr_x\n"
17
+ "X-Poedit-Basepath: d:\\wordpress\\plugins\\wp-maintenance-mode\n"
18
+ "X-Poedit-SearchPath-0: d:\\wordpress\\plugins\\wp-maintenance-mode\n"
19
+
20
+ #: d:\wordpress\plugins\wp-maintenance-mode/index.php:5
21
+ msgid "Cheatin&#8217; uh?"
22
+ msgstr "Snyder du, hva&#39;?"
23
+
24
+ #: d:\wordpress\plugins\wp-maintenance-mode/site.php:12
25
+ #: d:\wordpress\plugins\wp-maintenance-mode/site.php:88
26
+ msgid "Maintenance Mode"
27
+ msgstr "Vedligeholdelsestilstand"
28
+
29
+ #: d:\wordpress\plugins\wp-maintenance-mode/site.php:78
30
+ msgid "Access to the admin area blocked"
31
+ msgstr "Adgang til kontrolpanet er spærret"
32
+
33
+ #: d:\wordpress\plugins\wp-maintenance-mode/site.php:81
34
+ msgid "Admin-Logout"
35
+ msgstr "Admin-logout"
36
+
37
+ #: d:\wordpress\plugins\wp-maintenance-mode/site.php:85
38
+ msgid "Admin-Login"
39
+ msgstr "Admin-login"
40
+
41
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:154
42
+ msgid "Settings"
43
+ msgstr "Indstillinger"
44
+
45
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:227
46
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:414
47
+ #, php-format
48
+ msgid "Plugin %s settings <strong>updated</strong>."
49
+ msgstr "Indstillinger for pluginnet %s <strong>opdateret</strong>."
50
+
51
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:228
52
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:239
53
+ #, php-format
54
+ msgid "Plugin %s active status <strong>updated</strong>."
55
+ msgstr "Aktiveringsstatus for pluginnet %s <strong>opdateret</strong>."
56
+
57
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:230
58
+ msgid "Plugin Activate"
59
+ msgstr "Aktivering af plugin"
60
+
61
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:234
62
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:251
63
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:295
64
+ msgid "False"
65
+ msgstr "Fra"
66
+
67
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:235
68
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:252
69
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:296
70
+ msgid "True"
71
+ msgstr "Til"
72
+
73
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:237
74
+ msgid "Update"
75
+ msgstr "Opdatér"
76
+
77
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:241
78
+ msgid "Plugin Settings"
79
+ msgstr "Plugin-indstillinger"
80
+
81
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:247
82
+ msgid "Countdown:"
83
+ msgstr "Nedtælling:"
84
+
85
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:258
86
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:261
87
+ msgid "Click for datepicker"
88
+ msgstr "Klik for datovælger"
89
+
90
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:258
91
+ msgid "Date:"
92
+ msgstr "Dato:"
93
+
94
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:262
95
+ msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
96
+ msgstr "Aktivér timer, hvis du vil bruge denne. Brug værdi og enhed eller brug nedtælling og sæt datoen."
97
+
98
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:267
99
+ msgid "Value:"
100
+ msgstr "Værdi"
101
+
102
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:275
103
+ msgid "Unit:"
104
+ msgstr "Enhed:"
105
+
106
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:279
107
+ msgid "second"
108
+ msgstr "sekund"
109
+
110
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:280
111
+ msgid "minute"
112
+ msgstr "minut"
113
+
114
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:281
115
+ msgid "hour"
116
+ msgstr "time"
117
+
118
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:282
119
+ msgid "day"
120
+ msgstr "dag"
121
+
122
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:283
123
+ msgid "week"
124
+ msgstr "uge"
125
+
126
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:284
127
+ msgid "month"
128
+ msgstr "måned"
129
+
130
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:285
131
+ msgid "year"
132
+ msgstr "år"
133
+
134
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:291
135
+ msgid "Link:"
136
+ msgstr "Link:"
137
+
138
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:299
139
+ msgid "Please leave a link to the plugin- and design-author on your maintenance mode site."
140
+ msgstr "Vis venligst linket til plugin- og designforfatterne på siten, hvor du bruger vedligeholdelsestilstand"
141
+
142
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:304
143
+ msgid "Theme:"
144
+ msgstr "Tema:"
145
+
146
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:308
147
+ msgid "Own Style"
148
+ msgstr "Eget design"
149
+
150
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:309
151
+ msgid "Simple Text"
152
+ msgstr "Simpel tekst"
153
+
154
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:310
155
+ msgid "The Truck"
156
+ msgstr "The Truck"
157
+
158
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:311
159
+ msgid "The Sun"
160
+ msgstr "The Sun"
161
+
162
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:312
163
+ msgid "The FF Error"
164
+ msgstr "The FF Error"
165
+
166
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:313
167
+ msgid "Monster"
168
+ msgstr "Monster"
169
+
170
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:314
171
+ msgid "Chastely"
172
+ msgstr "Chastely"
173
+
174
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:315
175
+ msgid "Only Typo"
176
+ msgstr "Only Typo"
177
+
178
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:316
179
+ msgid "Paint"
180
+ msgstr "Paint"
181
+
182
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:317
183
+ msgid "Animate (Flash)"
184
+ msgstr "Animate (Flash)"
185
+
186
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:318
187
+ msgid "Damask"
188
+ msgstr "Damask"
189
+
190
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:319
191
+ msgid "Lego"
192
+ msgstr "Lego"
193
+
194
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:320
195
+ msgid "Chemistry"
196
+ msgstr "Chemistry"
197
+
198
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:326
199
+ msgid "Own Style URL (incl. http://):"
200
+ msgstr "URL til eget design (inkl. http://):"
201
+
202
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:329
203
+ msgid "URL to the css-file"
204
+ msgstr "URL til CSS-filen"
205
+
206
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:331
207
+ msgid "<strong>Coution:</strong> Please don&acute;t copy the stylesheet in your plugin folder, it will be deleted on the next automatical update of the plugin!"
208
+ msgstr "<strong>Advarsel:</strong> Du bør ikke kopiere stylesheetet i din plugin-mappe. Det vil blive slettet næste gang, pluginnet opdateres automatisk!"
209
+
210
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:336
211
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:339
212
+ msgid "Preview"
213
+ msgstr "Forhåndsvisning"
214
+
215
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:344
216
+ msgid "Title:"
217
+ msgstr "Titel:"
218
+
219
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:347
220
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:355
221
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:363
222
+ msgid "Leave empty for default."
223
+ msgstr "For at bruge standardværdi skal du ikke udfylde feltet."
224
+
225
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:352
226
+ msgid "Header:"
227
+ msgstr "Header:"
228
+
229
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:360
230
+ msgid "Heading:"
231
+ msgstr "Overskrift:"
232
+
233
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:368
234
+ msgid "Text:"
235
+ msgstr "Tekst:"
236
+
237
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:373
238
+ #, php-format
239
+ msgid "Use the first <em>%1$s</em> for the time value or countdown and second <em>%2$s</em> for the unit of the time or countdown-value; HTML is possible"
240
+ msgstr "Brug den første <em>%1$s</em> for tidsværdien eller nedtælling og den anden <em>%2$s</em> for tidsenhed eller nedtællingsværdi; HTML kan anvendes"
241
+
242
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:378
243
+ msgid "Excludes:"
244
+ msgstr "Udeladelser:"
245
+
246
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:383
247
+ msgid "Exclude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example:"
248
+ msgstr "Udelad sider, indlæg eller arkiver fra vedligeholdelsestilstand. Tilføj <span title=\"slug\">korttitler</span> på sider eller indlæg som en kommasepareret liste<br />Eksempel: "
249
+
250
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:388
251
+ msgid "Role:"
252
+ msgstr "Rolle:"
253
+
254
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:409
255
+ msgid "Allowed userrole to see the frontend of this blog."
256
+ msgstr "Brugerrolle, som tillades adgang til at se selve bloggen."
257
+
258
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:416
259
+ msgid "Save"
260
+ msgstr "Gem"
261
+
262
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:451
263
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:494
264
+ msgid "Updated"
265
+ msgstr "Opdateret"
266
+
267
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:571
268
+ msgid "seconds"
269
+ msgstr "sekunder"
270
+
271
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:575
272
+ msgid "minutes"
273
+ msgstr "minutter"
274
+
275
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:579
276
+ msgid "hours"
277
+ msgstr "timer"
278
+
279
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:583
280
+ msgid "days"
281
+ msgstr "dage"
282
+
283
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:587
284
+ msgid "weeks"
285
+ msgstr "uger"
286
+
287
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:591
288
+ msgid "months"
289
+ msgstr "måneder"
290
+
291
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:595
292
+ msgid "years"
293
+ msgstr "år"
294
+
295
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:609
296
+ msgid "Caution: Maintenance mode is <strong>active</strong>!"
297
+ msgstr "Bemærk: Vedligeholdelsestilstand er <strong>aktiv</strong>!"
298
+
299
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:611
300
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:613
301
+ msgid "Deactivate or change Settings"
302
+ msgstr "Deaktivér eller ændr Indstillinger"
303
+
304
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:677
305
+ msgid "Plugin by:"
306
+ msgstr "Plugin af:"
307
+
308
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:679
309
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:681
310
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:683
311
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:685
312
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:687
313
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:689
314
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:691
315
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:693
316
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:695
317
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:697
318
+ #: d:\wordpress\plugins\wp-maintenance-mode/wp-maintenance-mode.php:699
319
+ msgid "Design by:"
320
+ msgstr "Design af:"
321
+
322
+ #~ msgid "HTML is possible"
323
+ #~ msgstr "HTML kan bruges"
languages/wp-maintenance-mode-de_DE.mo ADDED
Binary file
languages/wp-maintenance-mode-de_DE.po ADDED
@@ -0,0 +1,428 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: \n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2010-01-04 12:57+0100\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Frank Bueltge <frank@bueltge.de>\n"
8
+ "Language-Team: \n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
+ "X-Poedit-Language: \n"
14
+ "X-Poedit-Country: \n"
15
+ "X-Poedit-SourceCharset: utf-8\n"
16
+ "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;\n"
17
+ "X-Poedit-Basepath: d:/xampp/htdocs/wpbeta/wp-content/plugins/wartungsmodus/\n"
18
+ "X-Poedit-Bookmarks: \n"
19
+ "X-Poedit-SearchPath-0: .\n"
20
+ "X-Textdomain-Support: yes"
21
+
22
+ #. translators: plugin header field 'Description'
23
+ #: wp-maintenance-mode.php:0
24
+ #@ wp-maintenance-mode
25
+ msgid "The plugin adds a splash page to your blog that lets visitors know your blog is down for maintenance. Logged in users get full access to the blog including the front-end, depends of the settings."
26
+ msgstr "Das Plugin fügt eine statische Seite in deinem Blog ein und lässt Besucher wissen, dass Wartungsarbeiten durchgeführt werden. Eingeloggte Nutzer können das Frontend je nach Einstellungen der Rechte uneingeschränkt nutzen."
27
+
28
+ #: wp-maintenance-mode.php:154
29
+ #@ default
30
+ msgid "Settings"
31
+ msgstr "Einstellungen"
32
+
33
+ #: wp-maintenance-mode.php:227
34
+ #: wp-maintenance-mode.php:414
35
+ #, php-format
36
+ #@ wp-maintenance-mode
37
+ msgid "Plugin %s settings <strong>updated</strong>."
38
+ msgstr "Plugin %s Einstellungen <strong>gespeichert</strong>."
39
+
40
+ #: wp-maintenance-mode.php:228
41
+ #: wp-maintenance-mode.php:239
42
+ #, php-format
43
+ #@ wp-maintenance-mode
44
+ msgid "Plugin %s active status <strong>updated</strong>."
45
+ msgstr "Plugin %s aktiv-status <strong>aktualisiert</strong>."
46
+
47
+ #: wp-maintenance-mode.php:230
48
+ #@ wp-maintenance-mode
49
+ msgid "Plugin Activate"
50
+ msgstr "Plugin aktivieren"
51
+
52
+ #: wp-maintenance-mode.php:234
53
+ #: wp-maintenance-mode.php:251
54
+ #: wp-maintenance-mode.php:295
55
+ #@ wp-maintenance-mode
56
+ msgid "False"
57
+ msgstr "Nein"
58
+
59
+ #: wp-maintenance-mode.php:235
60
+ #: wp-maintenance-mode.php:252
61
+ #: wp-maintenance-mode.php:296
62
+ #@ wp-maintenance-mode
63
+ msgid "True"
64
+ msgstr "Ja"
65
+
66
+ #: wp-maintenance-mode.php:237
67
+ #@ wp-maintenance-mode
68
+ msgid "Update"
69
+ msgstr "Aktualisieren"
70
+
71
+ #: wp-maintenance-mode.php:241
72
+ #@ wp-maintenance-mode
73
+ msgid "Plugin Settings"
74
+ msgstr "Plugin Einstellungen"
75
+
76
+ #: wp-maintenance-mode.php:247
77
+ #@ wp-maintenance-mode
78
+ msgid "Countdown:"
79
+ msgstr "Countdown:"
80
+
81
+ #: wp-maintenance-mode.php:258
82
+ #: wp-maintenance-mode.php:261
83
+ #@ wp-maintenance-mode
84
+ msgid "Click for datepicker"
85
+ msgstr "Klick für den Datums-Picker"
86
+
87
+ #: wp-maintenance-mode.php:258
88
+ #@ wp-maintenance-mode
89
+ msgid "Date:"
90
+ msgstr "Datum:"
91
+
92
+ #: wp-maintenance-mode.php:262
93
+ #@ wp-maintenance-mode
94
+ msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
95
+ msgstr "Aktiviere den Countdown um ihn zu nutzen. Vergebe Wert und Einheit oder wähle ein Datum für den Countdown."
96
+
97
+ #: wp-maintenance-mode.php:267
98
+ #@ wp-maintenance-mode
99
+ msgid "Value:"
100
+ msgstr "Wert:"
101
+
102
+ #: wp-maintenance-mode.php:275
103
+ #@ wp-maintenance-mode
104
+ msgid "Unit:"
105
+ msgstr "Einheit:"
106
+
107
+ #: wp-maintenance-mode.php:279
108
+ #@ wp-maintenance-mode
109
+ msgid "second"
110
+ msgstr "sekunde"
111
+
112
+ #: wp-maintenance-mode.php:280
113
+ #@ wp-maintenance-mode
114
+ msgid "minute"
115
+ msgstr "minute"
116
+
117
+ #: wp-maintenance-mode.php:281
118
+ #@ wp-maintenance-mode
119
+ msgid "hour"
120
+ msgstr "stunde"
121
+
122
+ #: wp-maintenance-mode.php:282
123
+ #@ wp-maintenance-mode
124
+ msgid "day"
125
+ msgstr "tag"
126
+
127
+ #: wp-maintenance-mode.php:283
128
+ #@ wp-maintenance-mode
129
+ msgid "week"
130
+ msgstr "woche"
131
+
132
+ #: wp-maintenance-mode.php:284
133
+ #@ wp-maintenance-mode
134
+ msgid "month"
135
+ msgstr "monat"
136
+
137
+ #: wp-maintenance-mode.php:285
138
+ #@ wp-maintenance-mode
139
+ msgid "year"
140
+ msgstr "jahr"
141
+
142
+ #: wp-maintenance-mode.php:291
143
+ #@ wp-maintenance-mode
144
+ msgid "Link:"
145
+ msgstr "Link:"
146
+
147
+ #: wp-maintenance-mode.php:304
148
+ #@ wp-maintenance-mode
149
+ msgid "Theme:"
150
+ msgstr "Theme:"
151
+
152
+ #: wp-maintenance-mode.php:308
153
+ #@ wp-maintenance-mode
154
+ msgid "Own Style"
155
+ msgstr "Eigenes Design"
156
+
157
+ #: wp-maintenance-mode.php:309
158
+ #@ wp-maintenance-mode
159
+ msgid "Simple Text"
160
+ msgstr "Einfach Text"
161
+
162
+ #: wp-maintenance-mode.php:310
163
+ #@ wp-maintenance-mode
164
+ msgid "The Truck"
165
+ msgstr "Der Truck"
166
+
167
+ #: wp-maintenance-mode.php:311
168
+ #@ wp-maintenance-mode
169
+ msgid "The Sun"
170
+ msgstr "The Sun"
171
+
172
+ #: wp-maintenance-mode.php:312
173
+ #@ wp-maintenance-mode
174
+ msgid "The FF Error"
175
+ msgstr "The FF Error"
176
+
177
+ #: wp-maintenance-mode.php:313
178
+ #@ wp-maintenance-mode
179
+ msgid "Monster"
180
+ msgstr "Monster"
181
+
182
+ #: wp-maintenance-mode.php:314
183
+ #@ wp-maintenance-mode
184
+ msgid "Chastely"
185
+ msgstr "Chastely"
186
+
187
+ #: wp-maintenance-mode.php:315
188
+ #@ wp-maintenance-mode
189
+ msgid "Only Typo"
190
+ msgstr "Only Typo"
191
+
192
+ #: wp-maintenance-mode.php:316
193
+ #@ wp-maintenance-mode
194
+ msgid "Paint"
195
+ msgstr "Paint"
196
+
197
+ #: wp-maintenance-mode.php:318
198
+ #@ wp-maintenance-mode
199
+ msgid "Damask"
200
+ msgstr "Damask"
201
+
202
+ #: wp-maintenance-mode.php:319
203
+ #@ wp-maintenance-mode
204
+ msgid "Lego"
205
+ msgstr "Lego"
206
+
207
+ #: wp-maintenance-mode.php:326
208
+ #@ wp-maintenance-mode
209
+ msgid "Own Style URL (incl. http://):"
210
+ msgstr "Eigene Design URL (inkl. http://)"
211
+
212
+ #: wp-maintenance-mode.php:368
213
+ #@ wp-maintenance-mode
214
+ msgid "Text:"
215
+ msgstr "Text:"
216
+
217
+ #: wp-maintenance-mode.php:378
218
+ #@ wp-maintenance-mode
219
+ msgid "Excludes:"
220
+ msgstr "Ausnahmen:"
221
+
222
+ #: wp-maintenance-mode.php:388
223
+ #@ wp-maintenance-mode
224
+ msgid "Role:"
225
+ msgstr "Rolle:"
226
+
227
+ #: wp-maintenance-mode.php:416
228
+ #@ wp-maintenance-mode
229
+ msgid "Save"
230
+ msgstr "Speichern"
231
+
232
+ #: wp-maintenance-mode.php:451
233
+ #: wp-maintenance-mode.php:494
234
+ #@ wp-maintenance-mode
235
+ msgid "Updated"
236
+ msgstr "Gespeichert"
237
+
238
+ #: wp-maintenance-mode.php:571
239
+ #: wp-maintenance-mode.php:573
240
+ #@ wp-maintenance-mode
241
+ msgid "Deactivate or change Settings"
242
+ msgstr "Deaktivieren oder Einstellungen ändern "
243
+
244
+ #: wp-maintenance-mode.php:594
245
+ #@ wp-maintenance-mode
246
+ msgid "seconds"
247
+ msgstr "Sekunden"
248
+
249
+ #: wp-maintenance-mode.php:598
250
+ #@ wp-maintenance-mode
251
+ msgid "minutes"
252
+ msgstr "Minuten"
253
+
254
+ #: wp-maintenance-mode.php:602
255
+ #@ wp-maintenance-mode
256
+ msgid "hours"
257
+ msgstr "Stunden"
258
+
259
+ #: wp-maintenance-mode.php:606
260
+ #@ wp-maintenance-mode
261
+ msgid "days"
262
+ msgstr "Tagen"
263
+
264
+ #: wp-maintenance-mode.php:610
265
+ #@ wp-maintenance-mode
266
+ msgid "weeks"
267
+ msgstr "Wochen"
268
+
269
+ #: wp-maintenance-mode.php:618
270
+ #@ wp-maintenance-mode
271
+ msgid "years"
272
+ msgstr "Jahren"
273
+
274
+ #: wp-maintenance-mode.php:666
275
+ #@ wp-maintenance-mode
276
+ msgid "Plugin by:"
277
+ msgstr "Plugin von:"
278
+
279
+ #: wp-maintenance-mode.php:668
280
+ #: wp-maintenance-mode.php:670
281
+ #: wp-maintenance-mode.php:672
282
+ #: wp-maintenance-mode.php:674
283
+ #: wp-maintenance-mode.php:676
284
+ #: wp-maintenance-mode.php:678
285
+ #: wp-maintenance-mode.php:680
286
+ #: wp-maintenance-mode.php:682
287
+ #: wp-maintenance-mode.php:684
288
+ #: wp-maintenance-mode.php:686
289
+ #: wp-maintenance-mode.php:688
290
+ #@ wp-maintenance-mode
291
+ msgid "Design by:"
292
+ msgstr "Design von:"
293
+
294
+ #: site.php:6
295
+ #: site.php:82
296
+ #@ wp-maintenance-mode
297
+ msgid "Maintenance Mode"
298
+ msgstr "Wartungsmodus"
299
+
300
+ #: site.php:79
301
+ #@ wp-maintenance-mode
302
+ msgid "Admin-Login"
303
+ msgstr "Admin-Login"
304
+
305
+ #: wp-maintenance-mode.php:344
306
+ #@ wp-maintenance-mode
307
+ msgid "Title:"
308
+ msgstr "Titel:"
309
+
310
+ #: wp-maintenance-mode.php:329
311
+ #@ wp-maintenance-mode
312
+ msgid "URL to the css-file"
313
+ msgstr "URL zur css-Datei"
314
+
315
+ #: wp-maintenance-mode.php:347
316
+ #: wp-maintenance-mode.php:355
317
+ #: wp-maintenance-mode.php:363
318
+ #@ wp-maintenance-mode
319
+ msgid "Leave empty for default."
320
+ msgstr "Leer lassen für den Standardtext."
321
+
322
+ #: wp-maintenance-mode.php:352
323
+ #@ wp-maintenance-mode
324
+ msgid "Header:"
325
+ msgstr "Header:"
326
+
327
+ #: wp-maintenance-mode.php:360
328
+ #@ wp-maintenance-mode
329
+ msgid "Heading:"
330
+ msgstr "Überschrift:"
331
+
332
+ #: wp-maintenance-mode.php:299
333
+ #@ wp-maintenance-mode
334
+ msgid "Please leave a link to the plugin- and design-author on your maintenance mode site."
335
+ msgstr "Bitte hinterlasse einen Link zum Plugin- und Design-Autor auf deiner Wartungsmodus-Seite."
336
+
337
+ #: wp-maintenance-mode.php:614
338
+ #@ wp-maintenance-mode
339
+ msgid "months"
340
+ msgstr "Monate"
341
+
342
+ #: wp-maintenance-mode.php:373
343
+ #, php-format
344
+ #@ wp-maintenance-mode
345
+ msgid "Use the first <em>%1$s</em> for the time value or countdown and second <em>%2$s</em> for the unit of the time or countdown-value; HTML is possible"
346
+ msgstr "Nutze das erste <em>%1$s</em> für den Zeitwert oder den Countdown und das zweite <em>%2$s</em> für die Einheit der Zeit oder die Ausgabe des Zeitwert, HTML ist möglich"
347
+
348
+ #: site.php:72
349
+ #@ wp-maintenance-mode
350
+ msgid "Access to the admin area blocked"
351
+ msgstr "Zugang zum Admin-Bereich wurde blockiert"
352
+
353
+ #: site.php:75
354
+ #@ wp-maintenance-mode
355
+ msgid "Admin-Logout"
356
+ msgstr "Admin-Logout"
357
+
358
+ #: wp-maintenance-mode.php:409
359
+ #@ wp-maintenance-mode
360
+ msgid "Allowed userrole to see the frontend of this blog."
361
+ msgstr "Erlaubte User-Rolle für das Sehen des Frontend von diesem Blog."
362
+
363
+ #: wp-maintenance-mode.php:569
364
+ #@ wp-maintenance-mode
365
+ msgid "Caution: Maintenance mode is <strong>active</strong>!"
366
+ msgstr "Achtung: Wartungsmodus ist <strong>aktiv</strong>!"
367
+
368
+ #: index.php:5
369
+ #@ default
370
+ msgid "Cheatin&#8217; uh?"
371
+ msgstr ""
372
+
373
+ #: wp-maintenance-mode.php:331
374
+ #@ wp-maintenance-mode
375
+ msgid "<strong>Coution:</strong> Please don&acute;t copy the stylesheet in your plugin folder, it will be deleted on the next automatical update of the plugin!"
376
+ msgstr "<strong>Hinweis:</strong> Bitte speichere das Sytelsheet nicht im Plugin-Ordner, der Ordner wird beim automatischen Update ersetzt!"
377
+
378
+ #: wp-maintenance-mode.php:336
379
+ #: wp-maintenance-mode.php:339
380
+ #@ wp-maintenance-mode
381
+ msgid "Preview"
382
+ msgstr "Vorschau"
383
+
384
+ #. translators: plugin header field 'Name'
385
+ #: wp-maintenance-mode.php:0
386
+ #@ wp-maintenance-mode
387
+ msgid "WP Maintenance Mode"
388
+ msgstr ""
389
+
390
+ #. translators: plugin header field 'PluginURI'
391
+ #: wp-maintenance-mode.php:0
392
+ #@ wp-maintenance-mode
393
+ msgid "http://bueltge.de/wp-wartungsmodus-plugin/101/"
394
+ msgstr ""
395
+
396
+ #. translators: plugin header field 'Author'
397
+ #: wp-maintenance-mode.php:0
398
+ #@ wp-maintenance-mode
399
+ msgid "Frank B&uuml;ltge"
400
+ msgstr ""
401
+
402
+ #. translators: plugin header field 'AuthorURI'
403
+ #: wp-maintenance-mode.php:0
404
+ #@ wp-maintenance-mode
405
+ msgid "http://bueltge.de/"
406
+ msgstr ""
407
+
408
+ #. translators: plugin header field 'Version'
409
+ #: wp-maintenance-mode.php:0
410
+ #@ wp-maintenance-mode
411
+ msgid "1.6.5"
412
+ msgstr ""
413
+
414
+ #: wp-maintenance-mode.php:317
415
+ #@ wp-maintenance-mode
416
+ msgid "Animate (Flash)"
417
+ msgstr "Animate (Flash)"
418
+
419
+ #: wp-maintenance-mode.php:320
420
+ #@ wp-maintenance-mode
421
+ msgid "Chemistry"
422
+ msgstr "Chemielabor"
423
+
424
+ #: wp-maintenance-mode.php:383
425
+ #@ wp-maintenance-mode
426
+ msgid "Exclude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example:"
427
+ msgstr "Die Ausnahme des Wartungsmodus ist möglich für Inhalte aller Art. Füge den Titelform (Slug) hinzu, als Komma-Separierte Liste.<br />Beispiel:"
428
+
languages/{wartungsmodus-es_ES.mo → wp-maintenance-mode-es_ES.mo} RENAMED
File without changes
languages/{wartungsmodus-es_ES.po → wp-maintenance-mode-es_ES.po} RENAMED
File without changes
languages/wp-maintenance-mode-fr_FR.mo ADDED
Binary file
languages/wp-maintenance-mode-fr_FR.po ADDED
@@ -0,0 +1,365 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: \n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2010-01-04 12:57+0100\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Frank Bueltge <frank@bueltge.de>\n"
8
+ "Language-Team: \n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
+ "X-Poedit-SourceCharset: utf-8\n"
14
+ "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
15
+ "X-Poedit-Basepath: d:/xampp/htdocs/wpbeta/wp-content/plugins/wartungsmodus/\n"
16
+ "X-Textdomain-Support: yes\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+
19
+ #: wp-maintenance-mode.php:134
20
+ msgid "Settings"
21
+ msgstr "Réglages"
22
+
23
+ #@ wp-maintenance-mode
24
+ #: wp-maintenance-mode.php:205
25
+ #: wp-maintenance-mode.php:381
26
+ #, php-format
27
+ msgid "Plugin %s settings <strong>updated</strong>."
28
+ msgstr "Paramètres plugin %s <strong>mis a jour</strong>."
29
+
30
+ #@ wp-maintenance-mode
31
+ #: wp-maintenance-mode.php:206
32
+ #: wp-maintenance-mode.php:217
33
+ #, php-format
34
+ msgid "Plugin %s active status <strong>updated</strong>."
35
+ msgstr "Plugin %s status actif <strong>mis a jour</strong>."
36
+
37
+ #@ wp-maintenance-mode
38
+ #: wp-maintenance-mode.php:208
39
+ msgid "Plugin Activate"
40
+ msgstr "Activation plugin"
41
+
42
+ #@ wp-maintenance-mode
43
+ #: wp-maintenance-mode.php:212
44
+ #: wp-maintenance-mode.php:229
45
+ #: wp-maintenance-mode.php:273
46
+ msgid "False"
47
+ msgstr "Faux"
48
+
49
+ #@ wp-maintenance-mode
50
+ #: wp-maintenance-mode.php:213
51
+ #: wp-maintenance-mode.php:230
52
+ #: wp-maintenance-mode.php:274
53
+ msgid "True"
54
+ msgstr "Vrai"
55
+
56
+ #@ wp-maintenance-mode
57
+ #: wp-maintenance-mode.php:215
58
+ msgid "Update"
59
+ msgstr "Mis à jour"
60
+
61
+ #@ wp-maintenance-mode
62
+ #: wp-maintenance-mode.php:219
63
+ msgid "Plugin Settings"
64
+ msgstr "Réglages plugin"
65
+
66
+ #@ wp-maintenance-mode
67
+ #: wp-maintenance-mode.php:225
68
+ msgid "Countdown:"
69
+ msgstr "Compte à rebours:"
70
+
71
+ #@ wp-maintenance-mode
72
+ #: wp-maintenance-mode.php:236
73
+ #: wp-maintenance-mode.php:239
74
+ msgid "Click for datepicker"
75
+ msgstr "Cliquez pour récupérer la date"
76
+
77
+ #@ wp-maintenance-mode
78
+ #: wp-maintenance-mode.php:236
79
+ msgid "Date:"
80
+ msgstr "Date:"
81
+
82
+ #@ wp-maintenance-mode
83
+ #: wp-maintenance-mode.php:240
84
+ msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
85
+ msgstr "Activez le compte à rebours pour utiliser celui ci et paramètrez la date et l'heure d'échéance. Sinon saisissez une durée et une unité de temps."
86
+
87
+ #@ wp-maintenance-mode
88
+ #: wp-maintenance-mode.php:245
89
+ msgid "Value:"
90
+ msgstr "Durée:"
91
+
92
+ #@ wp-maintenance-mode
93
+ #: wp-maintenance-mode.php:253
94
+ msgid "Unit:"
95
+ msgstr "Unité:"
96
+
97
+ #@ wp-maintenance-mode
98
+ #: wp-maintenance-mode.php:257
99
+ msgid "second"
100
+ msgstr "seconde"
101
+
102
+ #@ wp-maintenance-mode
103
+ #: wp-maintenance-mode.php:258
104
+ msgid "minute"
105
+ msgstr "minute"
106
+
107
+ #@ wp-maintenance-mode
108
+ #: wp-maintenance-mode.php:259
109
+ msgid "hour"
110
+ msgstr "heure"
111
+
112
+ #@ wp-maintenance-mode
113
+ #: wp-maintenance-mode.php:260
114
+ msgid "day"
115
+ msgstr "jour"
116
+
117
+ #@ wp-maintenance-mode
118
+ #: wp-maintenance-mode.php:261
119
+ msgid "week"
120
+ msgstr "semaine"
121
+
122
+ #@ wp-maintenance-mode
123
+ #: wp-maintenance-mode.php:262
124
+ msgid "month"
125
+ msgstr "mois"
126
+
127
+ #@ wp-maintenance-mode
128
+ #: wp-maintenance-mode.php:263
129
+ msgid "year"
130
+ msgstr "année"
131
+
132
+ #@ wp-maintenance-mode
133
+ #: wp-maintenance-mode.php:269
134
+ msgid "Link:"
135
+ msgstr "Lien:"
136
+
137
+ #@ wp-maintenance-mode
138
+ #: wp-maintenance-mode.php:282
139
+ msgid "Theme:"
140
+ msgstr "Thème:"
141
+
142
+ #@ wp-maintenance-mode
143
+ #: wp-maintenance-mode.php:286
144
+ msgid "Own Style"
145
+ msgstr "Style personnel"
146
+
147
+ #@ wp-maintenance-mode
148
+ #: wp-maintenance-mode.php:287
149
+ msgid "Simple Text"
150
+ msgstr "Texte simple"
151
+
152
+ #@ wp-maintenance-mode
153
+ #: wp-maintenance-mode.php:288
154
+ msgid "The Truck"
155
+ msgstr "Camion"
156
+
157
+ #@ wp-maintenance-mode
158
+ #: wp-maintenance-mode.php:289
159
+ msgid "The Sun"
160
+ msgstr "Soleil"
161
+
162
+ #@ wp-maintenance-mode
163
+ #: wp-maintenance-mode.php:290
164
+ msgid "The FF Error"
165
+ msgstr "Erreur FF"
166
+
167
+ #@ wp-maintenance-mode
168
+ #: wp-maintenance-mode.php:291
169
+ msgid "Monster"
170
+ msgstr "Monstre"
171
+
172
+ #@ wp-maintenance-mode
173
+ #: wp-maintenance-mode.php:292
174
+ msgid "Chastely"
175
+ msgstr "Chastely"
176
+
177
+ #@ wp-maintenance-mode
178
+ #: wp-maintenance-mode.php:293
179
+ msgid "Only Typo"
180
+ msgstr "Typo seulement"
181
+
182
+ #@ wp-maintenance-mode
183
+ #: wp-maintenance-mode.php:294
184
+ msgid "Paint"
185
+ msgstr "Peinture"
186
+
187
+ #@ wp-maintenance-mode
188
+ #: wp-maintenance-mode.php:295
189
+ msgid "Animate (Flash, only german)"
190
+ msgstr "Animation (Flash, seulement en allemand)"
191
+
192
+ #@ wp-maintenance-mode
193
+ #: wp-maintenance-mode.php:296
194
+ msgid "Damask"
195
+ msgstr "Tapisserie"
196
+
197
+ #@ wp-maintenance-mode
198
+ #: wp-maintenance-mode.php:297
199
+ msgid "Lego"
200
+ msgstr "Lego"
201
+
202
+ #@ wp-maintenance-mode
203
+ #: wp-maintenance-mode.php:303
204
+ msgid "Own Style URL (incl. http://):"
205
+ msgstr "URL Style Personnel (inclure http://):"
206
+
207
+ #@ wp-maintenance-mode
208
+ #: wp-maintenance-mode.php:335
209
+ msgid "Text:"
210
+ msgstr "Texte:"
211
+
212
+ #@ wp-maintenance-mode
213
+ #: wp-maintenance-mode.php:345
214
+ msgid "Excludes:"
215
+ msgstr "Exclus:"
216
+
217
+ #@ wp-maintenance-mode
218
+ #: wp-maintenance-mode.php:350
219
+ msgid "Exlude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example: "
220
+ msgstr "Pages, articles ou archives exclus du mode maintenance. Ajouter le permalien de la page ou de l'article sous forme de liste séparés par des virgules. <br /> Exemple:"
221
+
222
+ #@ wp-maintenance-mode
223
+ #: wp-maintenance-mode.php:355
224
+ msgid "Role:"
225
+ msgstr "Rôle:"
226
+
227
+ #@ wp-maintenance-mode
228
+ #: wp-maintenance-mode.php:383
229
+ msgid "Save"
230
+ msgstr "Sauvegarder"
231
+
232
+ #@ wp-maintenance-mode
233
+ #: wp-maintenance-mode.php:418
234
+ #: wp-maintenance-mode.php:461
235
+ msgid "Updated"
236
+ msgstr "Mis à jour"
237
+
238
+ #@ wp-maintenance-mode
239
+ #: wp-maintenance-mode.php:538
240
+ msgid "Deactivate or change Settings"
241
+ msgstr "Désactiver ou changer les paramètres"
242
+
243
+ #@ wp-maintenance-mode
244
+ #: wp-maintenance-mode.php:553
245
+ msgid "seconds"
246
+ msgstr "secondes"
247
+
248
+ #@ wp-maintenance-mode
249
+ #: wp-maintenance-mode.php:557
250
+ msgid "minutes"
251
+ msgstr "minutes"
252
+
253
+ #@ wp-maintenance-mode
254
+ #: wp-maintenance-mode.php:561
255
+ msgid "hours"
256
+ msgstr "heures"
257
+
258
+ #@ wp-maintenance-mode
259
+ #: wp-maintenance-mode.php:565
260
+ msgid "days"
261
+ msgstr "jours"
262
+
263
+ #@ wp-maintenance-mode
264
+ #: wp-maintenance-mode.php:569
265
+ msgid "weeks"
266
+ msgstr "semaines"
267
+
268
+ #@ wp-maintenance-mode
269
+ #: wp-maintenance-mode.php:577
270
+ msgid "years"
271
+ msgstr "années"
272
+
273
+ #@ wp-maintenance-mode
274
+ #: wp-maintenance-mode.php:624
275
+ msgid "Plugin by:"
276
+ msgstr "Plugin de:"
277
+
278
+ #@ wp-maintenance-mode
279
+ #: wp-maintenance-mode.php:626
280
+ #: wp-maintenance-mode.php:629
281
+ #: wp-maintenance-mode.php:632
282
+ #: wp-maintenance-mode.php:635
283
+ #: wp-maintenance-mode.php:638
284
+ #: wp-maintenance-mode.php:641
285
+ #: wp-maintenance-mode.php:644
286
+ #: wp-maintenance-mode.php:647
287
+ #: wp-maintenance-mode.php:650
288
+ #: wp-maintenance-mode.php:653
289
+ msgid "Design by:"
290
+ msgstr "Design par:"
291
+
292
+ #@ wp-maintenance-mode
293
+ #: site.php:6
294
+ #: site.php:82
295
+ msgid "Maintenance Mode"
296
+ msgstr "Mode Maintenance"
297
+
298
+ #@ wp-maintenance-mode
299
+ #: site.php:79
300
+ msgid "Admin-Login"
301
+ msgstr "Admin-Login"
302
+
303
+ #@ wp-maintenance-mode
304
+ #: wp-maintenance-mode.php:311
305
+ msgid "Title:"
306
+ msgstr "Titre:"
307
+
308
+ #@ wp-maintenance-mode
309
+ #: wp-maintenance-mode.php:306
310
+ msgid "URL to the css-file"
311
+ msgstr "URL du fichier CSS"
312
+
313
+ #@ wp-maintenance-mode
314
+ #: wp-maintenance-mode.php:314
315
+ #: wp-maintenance-mode.php:322
316
+ #: wp-maintenance-mode.php:330
317
+ msgid "Leave empty for default."
318
+ msgstr "Laissez vide par défaut."
319
+
320
+ #@ wp-maintenance-mode
321
+ #: wp-maintenance-mode.php:319
322
+ msgid "Header:"
323
+ msgstr "Entête:"
324
+
325
+ #@ wp-maintenance-mode
326
+ #: wp-maintenance-mode.php:327
327
+ msgid "Heading:"
328
+ msgstr "Titre:"
329
+
330
+ #@ wp-maintenance-mode
331
+ #: wp-maintenance-mode.php:277
332
+ msgid "Please leave a link to the plugin- and design-author on your maintenance mode site."
333
+ msgstr "Merci de laissez un lien vers le plugin et le designer sur votre site en mode maintenance."
334
+
335
+ #@ wp-maintenance-mode
336
+ #: wp-maintenance-mode.php:573
337
+ msgid "months"
338
+ msgstr "mois"
339
+
340
+ #@ wp-maintenance-mode
341
+ #: wp-maintenance-mode.php:340
342
+ #, php-format
343
+ msgid "Use the first <em>%1$s</em> for the time value or countdown and second <em>%2$s</em> for the unit of the time or countdown-value; HTML is possible"
344
+ msgstr "Utilisez le premier<em> %1$s</em> pour la durée ou le compte à rebours et le second<em> %2$s</em> pour l'unité de temps ou la fin du compte à rebours; HTML possible"
345
+
346
+ #@ wp-maintenance-mode
347
+ #: site.php:72
348
+ msgid "Access to the admin area blocked"
349
+ msgstr "Accès à la zone d'administration bloquée"
350
+
351
+ #@ wp-maintenance-mode
352
+ #: site.php:75
353
+ msgid "Admin-Logout"
354
+ msgstr "Admin-Logout"
355
+
356
+ #@ wp-maintenance-mode
357
+ #: wp-maintenance-mode.php:376
358
+ msgid "Allowed userrole for see the frontend of this blog."
359
+ msgstr "Niveau autorisé pour voir ce blog"
360
+
361
+ #@ wp-maintenance-mode
362
+ #: wp-maintenance-mode.php:536
363
+ msgid "Caution: Maintenance mode is <strong>active</strong>!"
364
+ msgstr ""
365
+
languages/{wartungsmodus-hr.mo → wp-maintenance-mode-hr.mo} RENAMED
File without changes
languages/{wartungsmodus-hr.po → wp-maintenance-mode-hr.po} RENAMED
File without changes
languages/wp-maintenance-mode-it_IT.mo ADDED
Binary file
languages/wp-maintenance-mode-it_IT.po ADDED
@@ -0,0 +1,413 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: WP Maintenance Mode in italiano\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2010-01-04 12:57+0100\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Gianni Diurno (aka gidibao) <gidibao[at]gmail[dot]com>\n"
8
+ "Language-Team: Gianni Diurno | gidibao.net <gidibao[at]gmail[dot]com>\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
+ "X-Poedit-Language: Italian\n"
14
+ "X-Poedit-Country: ITALY\n"
15
+ "X-Poedit-SourceCharset: utf-8\n"
16
+ "X-Poedit-KeywordsList: __;_e\n"
17
+ "X-Poedit-Basepath: ..\n"
18
+ "X-Textdomain-Support: yes\n"
19
+ "X-Poedit-SearchPath-0: .\n"
20
+
21
+ #. translators: plugin header field 'Description'
22
+ #: wp-maintenance-mode.php:0
23
+ msgid "The plugin adds a splash page to your blog that lets visitors know your blog is down for maintenance. Logged in users get full access to the blog including the front-end, depends of the settings."
24
+ msgstr "Questo plugin aggiunge al tuo blog una pagina splash in modo tale che gli utenti sappiano che il sito é in manutenzione. Gli utenti collegati potranno avere il completo accesso al blog (front-end compreso) in relazione alle impostazioni."
25
+
26
+ #: wp-maintenance-mode.php:154
27
+ msgid "Settings"
28
+ msgstr "Impostazioni"
29
+
30
+ #: wp-maintenance-mode.php:227
31
+ #: wp-maintenance-mode.php:414
32
+ #, php-format
33
+ msgid "Plugin %s settings <strong>updated</strong>."
34
+ msgstr "Le impostazioni del plugin %s sono state <strong>aggiornate</strong>."
35
+
36
+ #: wp-maintenance-mode.php:228
37
+ #: wp-maintenance-mode.php:239
38
+ #, php-format
39
+ msgid "Plugin %s active status <strong>updated</strong>."
40
+ msgstr "Lo status per il plugin %s é stato <strong>aggiornato</strong>."
41
+
42
+ #: wp-maintenance-mode.php:230
43
+ msgid "Plugin Activate"
44
+ msgstr "Il plugin é attivo"
45
+
46
+ #: wp-maintenance-mode.php:234
47
+ #: wp-maintenance-mode.php:251
48
+ #: wp-maintenance-mode.php:295
49
+ msgid "False"
50
+ msgstr "No"
51
+
52
+ #: wp-maintenance-mode.php:235
53
+ #: wp-maintenance-mode.php:252
54
+ #: wp-maintenance-mode.php:296
55
+ msgid "True"
56
+ msgstr "Sì"
57
+
58
+ #: wp-maintenance-mode.php:237
59
+ msgid "Update"
60
+ msgstr "Aggiorna"
61
+
62
+ #: wp-maintenance-mode.php:241
63
+ msgid "Plugin Settings"
64
+ msgstr "Impostazioni per il plugin"
65
+
66
+ #: wp-maintenance-mode.php:247
67
+ msgid "Countdown:"
68
+ msgstr "Conto alla rovescia:"
69
+
70
+ #: wp-maintenance-mode.php:258
71
+ #: wp-maintenance-mode.php:261
72
+ msgid "Click for datepicker"
73
+ msgstr "Calendario"
74
+
75
+ #: wp-maintenance-mode.php:258
76
+ msgid "Date:"
77
+ msgstr "Data:"
78
+
79
+ # @ wartungsmodus
80
+ #: wp-maintenance-mode.php:262
81
+ msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
82
+ msgstr "Sarà necessario attivare il conto alla rovescia. Inserire il valore e l'unità temporale oppure utilizzare il countdown ed impostare la data."
83
+
84
+ # @ wartungsmodus
85
+ #: wp-maintenance-mode.php:267
86
+ msgid "Value:"
87
+ msgstr "Valore:"
88
+
89
+ # @ wartungsmodus
90
+ #: wp-maintenance-mode.php:275
91
+ msgid "Unit:"
92
+ msgstr "Unità:"
93
+
94
+ # @ wartungsmodus
95
+ #: wp-maintenance-mode.php:279
96
+ msgid "second"
97
+ msgstr "secondo"
98
+
99
+ # @ wartungsmodus
100
+ #: wp-maintenance-mode.php:280
101
+ msgid "minute"
102
+ msgstr "minuto"
103
+
104
+ # @ wartungsmodus
105
+ #: wp-maintenance-mode.php:281
106
+ msgid "hour"
107
+ msgstr "ora"
108
+
109
+ # @ wartungsmodus
110
+ #: wp-maintenance-mode.php:282
111
+ msgid "day"
112
+ msgstr "giorno"
113
+
114
+ # @ wartungsmodus
115
+ #: wp-maintenance-mode.php:283
116
+ msgid "week"
117
+ msgstr "settimana"
118
+
119
+ # @ wartungsmodus
120
+ #: wp-maintenance-mode.php:284
121
+ msgid "month"
122
+ msgstr "mese"
123
+
124
+ # @ wartungsmodus
125
+ #: wp-maintenance-mode.php:285
126
+ msgid "year"
127
+ msgstr "anno"
128
+
129
+ # @ wartungsmodus
130
+ #: wp-maintenance-mode.php:291
131
+ msgid "Link:"
132
+ msgstr "Link:"
133
+
134
+ # @ wartungsmodus
135
+ #: wp-maintenance-mode.php:304
136
+ msgid "Theme:"
137
+ msgstr "Tema:"
138
+
139
+ # @ wartungsmodus
140
+ #: wp-maintenance-mode.php:308
141
+ msgid "Own Style"
142
+ msgstr "Stile personale"
143
+
144
+ # @ wartungsmodus
145
+ #: wp-maintenance-mode.php:309
146
+ msgid "Simple Text"
147
+ msgstr "Solo testo"
148
+
149
+ # @ wartungsmodus
150
+ #: wp-maintenance-mode.php:310
151
+ msgid "The Truck"
152
+ msgstr "The Truck"
153
+
154
+ # @ wartungsmodus
155
+ #: wp-maintenance-mode.php:311
156
+ msgid "The Sun"
157
+ msgstr "The Sun"
158
+
159
+ # @ wartungsmodus
160
+ #: wp-maintenance-mode.php:312
161
+ msgid "The FF Error"
162
+ msgstr "The FF Error"
163
+
164
+ # @ wartungsmodus
165
+ #: wp-maintenance-mode.php:313
166
+ msgid "Monster"
167
+ msgstr "Monster"
168
+
169
+ # @ wartungsmodus
170
+ #: wp-maintenance-mode.php:314
171
+ msgid "Chastely"
172
+ msgstr "Chastely"
173
+
174
+ # @ wartungsmodus
175
+ #: wp-maintenance-mode.php:315
176
+ msgid "Only Typo"
177
+ msgstr "Only Typo"
178
+
179
+ # @ wartungsmodus
180
+ #: wp-maintenance-mode.php:316
181
+ msgid "Paint"
182
+ msgstr "Paint"
183
+
184
+ # @ wartungsmodus
185
+ #: wp-maintenance-mode.php:318
186
+ msgid "Damask"
187
+ msgstr "Damask"
188
+
189
+ # @ wartungsmodus
190
+ #: wp-maintenance-mode.php:319
191
+ msgid "Lego"
192
+ msgstr "Lego"
193
+
194
+ # @ wartungsmodus
195
+ #: wp-maintenance-mode.php:326
196
+ msgid "Own Style URL (incl. http://):"
197
+ msgstr "URL stile personale (incl. http://):"
198
+
199
+ # @ wartungsmodus
200
+ #: wp-maintenance-mode.php:368
201
+ msgid "Text:"
202
+ msgstr "Testo:"
203
+
204
+ # @ wartungsmodus
205
+ #: wp-maintenance-mode.php:378
206
+ msgid "Excludes:"
207
+ msgstr "Escludere:"
208
+
209
+ #: wp-maintenance-mode.php:388
210
+ msgid "Role:"
211
+ msgstr "Ruolo:"
212
+
213
+ # @ wartungsmodus
214
+ #: wp-maintenance-mode.php:416
215
+ msgid "Save"
216
+ msgstr "Salva"
217
+
218
+ # @ wartungsmodus
219
+ #: wp-maintenance-mode.php:451
220
+ #: wp-maintenance-mode.php:494
221
+ msgid "Updated"
222
+ msgstr "Aggiornato"
223
+
224
+ # @ wartungsmodus
225
+ #: wp-maintenance-mode.php:571
226
+ #: wp-maintenance-mode.php:573
227
+ msgid "Deactivate or change Settings"
228
+ msgstr "Disattiva o modifica le impostazioni"
229
+
230
+ # @ wartungsmodus
231
+ #: wp-maintenance-mode.php:594
232
+ msgid "seconds"
233
+ msgstr "secondi"
234
+
235
+ # @ wartungsmodus
236
+ #: wp-maintenance-mode.php:598
237
+ msgid "minutes"
238
+ msgstr "minuti"
239
+
240
+ # @ wartungsmodus
241
+ #: wp-maintenance-mode.php:602
242
+ msgid "hours"
243
+ msgstr "ore"
244
+
245
+ # @ wartungsmodus
246
+ #: wp-maintenance-mode.php:606
247
+ msgid "days"
248
+ msgstr "giorni"
249
+
250
+ # @ wartungsmodus
251
+ #: wp-maintenance-mode.php:610
252
+ msgid "weeks"
253
+ msgstr "settimane"
254
+
255
+ # @ wartungsmodus
256
+ #: wp-maintenance-mode.php:618
257
+ msgid "years"
258
+ msgstr "anni"
259
+
260
+ # @ wartungsmodus
261
+ #: wp-maintenance-mode.php:666
262
+ msgid "Plugin by:"
263
+ msgstr "Plugin:"
264
+
265
+ # @ wartungsmodus
266
+ #: wp-maintenance-mode.php:668
267
+ #: wp-maintenance-mode.php:670
268
+ #: wp-maintenance-mode.php:672
269
+ #: wp-maintenance-mode.php:674
270
+ #: wp-maintenance-mode.php:676
271
+ #: wp-maintenance-mode.php:678
272
+ #: wp-maintenance-mode.php:680
273
+ #: wp-maintenance-mode.php:682
274
+ #: wp-maintenance-mode.php:684
275
+ #: wp-maintenance-mode.php:686
276
+ #: wp-maintenance-mode.php:688
277
+ msgid "Design by:"
278
+ msgstr "Design:"
279
+
280
+ # @ wartungsmodus
281
+ #: site.php:6
282
+ #: site.php:82
283
+ msgid "Maintenance Mode"
284
+ msgstr "Modalità manutenzione"
285
+
286
+ # @ wartungsmodus
287
+ #: site.php:79
288
+ msgid "Admin-Login"
289
+ msgstr "Login amministrazione"
290
+
291
+ # @ wp-maintenance-mode
292
+ #: wp-maintenance-mode.php:344
293
+ msgid "Title:"
294
+ msgstr "Titolo:"
295
+
296
+ # @ wp-maintenance-mode
297
+ #: wp-maintenance-mode.php:329
298
+ msgid "URL to the css-file"
299
+ msgstr "URL al file css"
300
+
301
+ # @ wp-maintenance-mode
302
+ #: wp-maintenance-mode.php:347
303
+ #: wp-maintenance-mode.php:355
304
+ #: wp-maintenance-mode.php:363
305
+ msgid "Leave empty for default."
306
+ msgstr "Lascia in bianco per il predefinito."
307
+
308
+ # @ wp-maintenance-mode
309
+ #: wp-maintenance-mode.php:352
310
+ msgid "Header:"
311
+ msgstr "Header:"
312
+
313
+ # @ wp-maintenance-mode
314
+ #: wp-maintenance-mode.php:360
315
+ msgid "Heading:"
316
+ msgstr "Intestazione:"
317
+
318
+ # @ wp-maintenance-mode
319
+ #: wp-maintenance-mode.php:299
320
+ msgid "Please leave a link to the plugin- and design-author on your maintenance mode site."
321
+ msgstr "Lascia il link allo sviluppatore del plugin. Grazie."
322
+
323
+ # @ wartungsmodus
324
+ #: wp-maintenance-mode.php:614
325
+ msgid "months"
326
+ msgstr "mesi"
327
+
328
+ # @ wartungsmodus
329
+ #: wp-maintenance-mode.php:373
330
+ #, php-format
331
+ msgid "Use the first <em>%1$s</em> for the time value or countdown and second <em>%2$s</em> for the unit of the time or countdown-value; HTML is possible"
332
+ msgstr "Usa il primo <em>%1$s</em> per il valore del tempo o per il countdown ed il secondo <em>%2$s</em> per la unità temporale o per il valore-countdown; HTML disponibile"
333
+
334
+ # @ wp-maintenance-mode
335
+ #: site.php:72
336
+ msgid "Access to the admin area blocked"
337
+ msgstr "L'accesso all'area di amministrazione é stato bloccato"
338
+
339
+ # @ wartungsmodus
340
+ #: site.php:75
341
+ msgid "Admin-Logout"
342
+ msgstr "Logout amministrazione"
343
+
344
+ #: wp-maintenance-mode.php:409
345
+ msgid "Allowed userrole to see the frontend of this blog."
346
+ msgstr "Ruoli utente accreditati per la visualizzazione del lato frontend del blog."
347
+
348
+ # @ wartungsmodus
349
+ #: wp-maintenance-mode.php:569
350
+ msgid "Caution: Maintenance mode is <strong>active</strong>!"
351
+ msgstr "Attenzione: la modalità di manutenzione é <strong>attiva</strong>!"
352
+
353
+ # @ default
354
+ #: index.php:5
355
+ msgid "Cheatin&#8217; uh?"
356
+ msgstr "Paura eh?"
357
+
358
+ # @ wp-maintenance-mode
359
+ #: wp-maintenance-mode.php:331
360
+ msgid "<strong>Coution:</strong> Please don&acute;t copy the stylesheet in your plugin folder, it will be deleted on the next automatical update of the plugin!"
361
+ msgstr "<strong>Attenzione:</strong> non copiare il foglio di stile nella cartella del plugin poiché esso verrà cancellato durante l'aggiornamento in automatico del plugin!"
362
+
363
+ # @ wp-maintenance-mode
364
+ #: wp-maintenance-mode.php:336
365
+ #: wp-maintenance-mode.php:339
366
+ msgid "Preview"
367
+ msgstr "Anteprima"
368
+
369
+ # @ wartungsmodus
370
+ #. translators: plugin header field 'Name'
371
+ #: wp-maintenance-mode.php:0
372
+ msgid "WP Maintenance Mode"
373
+ msgstr "WP Maintenance Mode"
374
+
375
+ # @ wp-maintenance-mode
376
+ #. translators: plugin header field 'PluginURI'
377
+ #: wp-maintenance-mode.php:0
378
+ msgid "http://bueltge.de/wp-wartungsmodus-plugin/101/"
379
+ msgstr "http://bueltge.de/wp-wartungsmodus-plugin/101/"
380
+
381
+ # @ wp-maintenance-mode
382
+ #. translators: plugin header field 'Author'
383
+ #: wp-maintenance-mode.php:0
384
+ msgid "Frank B&uuml;ltge"
385
+ msgstr "Frank B&uuml;ltge"
386
+
387
+ # @ wp-maintenance-mode
388
+ #. translators: plugin header field 'AuthorURI'
389
+ #: wp-maintenance-mode.php:0
390
+ msgid "http://bueltge.de/"
391
+ msgstr "http://bueltge.de/"
392
+
393
+ # @ wp-maintenance-mode
394
+ #. translators: plugin header field 'Version'
395
+ #: wp-maintenance-mode.php:0
396
+ msgid "1.6.5"
397
+ msgstr "1.6.5"
398
+
399
+ # @ wartungsmodus
400
+ #: wp-maintenance-mode.php:317
401
+ msgid "Animate (Flash)"
402
+ msgstr "Animazione (Flash)"
403
+
404
+ # @ wp-maintenance-mode
405
+ #: wp-maintenance-mode.php:320
406
+ msgid "Chemistry"
407
+ msgstr "Chemistry"
408
+
409
+ # @ wartungsmodus
410
+ #: wp-maintenance-mode.php:383
411
+ msgid "Exclude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example:"
412
+ msgstr "Escludi dalla modalità di manutenzione: pagine, articoli o archivi. Aggiungi lo slug di una pagina o articolo separando con una virgola.<br />Esempio: "
413
+
languages/wp-maintenance-mode-nl_NL.mo ADDED
Binary file
languages/wp-maintenance-mode-nl_NL.po ADDED
@@ -0,0 +1,368 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: wp-maintenance-mode v1.6.1 - Dutch Translation\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2010-01-04 12:57+0100\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Frank Bueltge <frank@bueltge.de>\n"
8
+ "Language-Team: http://WPwebshop.com <info@wppg.me>\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
+ "X-Poedit-SourceCharset: utf-8\n"
14
+ "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
15
+ "X-Poedit-Basepath: d:/xampp/htdocs/wpbeta/wp-content/plugins/wartungsmodus/\n"
16
+ "X-Textdomain-Support: yes\n"
17
+ "X-Poedit-Language: Dutch\n"
18
+ "X-Poedit-Country: NETHERLANDS\n"
19
+ "X-Poedit-SearchPath-0: .\n"
20
+
21
+ #: wp-maintenance-mode.php:134
22
+ msgid "Settings"
23
+ msgstr "Instellingen"
24
+
25
+ # @ wp-maintenance-mode
26
+ #: wp-maintenance-mode.php:205
27
+ #: wp-maintenance-mode.php:381
28
+ #, php-format
29
+ msgid "Plugin %s settings <strong>updated</strong>."
30
+ msgstr "Plugin %s Instellingen <strong>bijgewerkt</strong>."
31
+
32
+ # @ wp-maintenance-mode
33
+ #: wp-maintenance-mode.php:206
34
+ #: wp-maintenance-mode.php:217
35
+ #, php-format
36
+ msgid "Plugin %s active status <strong>updated</strong>."
37
+ msgstr "Plugin %s actieve status <strong>bijgewerkt</strong>."
38
+
39
+ # @ wp-maintenance-mode
40
+ #: wp-maintenance-mode.php:208
41
+ msgid "Plugin Activate"
42
+ msgstr "Plugin activeren"
43
+
44
+ # @ wp-maintenance-mode
45
+ #: wp-maintenance-mode.php:212
46
+ #: wp-maintenance-mode.php:229
47
+ #: wp-maintenance-mode.php:273
48
+ msgid "False"
49
+ msgstr "Nee"
50
+
51
+ # @ wp-maintenance-mode
52
+ #: wp-maintenance-mode.php:213
53
+ #: wp-maintenance-mode.php:230
54
+ #: wp-maintenance-mode.php:274
55
+ msgid "True"
56
+ msgstr "Ja"
57
+
58
+ # @ wp-maintenance-mode
59
+ #: wp-maintenance-mode.php:215
60
+ msgid "Update"
61
+ msgstr "Bijwerken"
62
+
63
+ # @ wp-maintenance-mode
64
+ #: wp-maintenance-mode.php:219
65
+ msgid "Plugin Settings"
66
+ msgstr "Plugin Instellingen"
67
+
68
+ # @ wp-maintenance-mode
69
+ #: wp-maintenance-mode.php:225
70
+ msgid "Countdown:"
71
+ msgstr "Aftellen:"
72
+
73
+ # @ wp-maintenance-mode
74
+ #: wp-maintenance-mode.php:236
75
+ #: wp-maintenance-mode.php:239
76
+ msgid "Click for datepicker"
77
+ msgstr "Klik voor datumprikker"
78
+
79
+ # @ wp-maintenance-mode
80
+ #: wp-maintenance-mode.php:236
81
+ msgid "Date:"
82
+ msgstr "Datum:"
83
+
84
+ # @ wp-maintenance-mode
85
+ #: wp-maintenance-mode.php:240
86
+ msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
87
+ msgstr "Activeer aftellen om dit te gebruiken. Gebruik waarde en eenheid of gebruik het aftellen en stel de datum in."
88
+
89
+ # @ wp-maintenance-mode
90
+ #: wp-maintenance-mode.php:245
91
+ msgid "Value:"
92
+ msgstr "Waarde:"
93
+
94
+ # @ wp-maintenance-mode
95
+ #: wp-maintenance-mode.php:253
96
+ msgid "Unit:"
97
+ msgstr "Eenheid:"
98
+
99
+ # @ wp-maintenance-mode
100
+ #: wp-maintenance-mode.php:257
101
+ msgid "second"
102
+ msgstr "seconde"
103
+
104
+ # @ wp-maintenance-mode
105
+ #: wp-maintenance-mode.php:258
106
+ msgid "minute"
107
+ msgstr "minuut"
108
+
109
+ # @ wp-maintenance-mode
110
+ #: wp-maintenance-mode.php:259
111
+ msgid "hour"
112
+ msgstr "uur"
113
+
114
+ # @ wp-maintenance-mode
115
+ #: wp-maintenance-mode.php:260
116
+ msgid "day"
117
+ msgstr "dag"
118
+
119
+ # @ wp-maintenance-mode
120
+ #: wp-maintenance-mode.php:261
121
+ msgid "week"
122
+ msgstr "week"
123
+
124
+ # @ wp-maintenance-mode
125
+ #: wp-maintenance-mode.php:262
126
+ msgid "month"
127
+ msgstr "maand"
128
+
129
+ # @ wp-maintenance-mode
130
+ #: wp-maintenance-mode.php:263
131
+ msgid "year"
132
+ msgstr "jaar"
133
+
134
+ # @ wp-maintenance-mode
135
+ #: wp-maintenance-mode.php:269
136
+ msgid "Link:"
137
+ msgstr "Link:"
138
+
139
+ # @ wp-maintenance-mode
140
+ #: wp-maintenance-mode.php:282
141
+ msgid "Theme:"
142
+ msgstr "Thema:"
143
+
144
+ # @ wp-maintenance-mode
145
+ #: wp-maintenance-mode.php:286
146
+ msgid "Own Style"
147
+ msgstr "Eigen Design"
148
+
149
+ # @ wp-maintenance-mode
150
+ #: wp-maintenance-mode.php:287
151
+ msgid "Simple Text"
152
+ msgstr "Simpele Tekst"
153
+
154
+ # @ wp-maintenance-mode
155
+ #: wp-maintenance-mode.php:288
156
+ msgid "The Truck"
157
+ msgstr "De Truck"
158
+
159
+ # @ wp-maintenance-mode
160
+ #: wp-maintenance-mode.php:289
161
+ msgid "The Sun"
162
+ msgstr "The Sun"
163
+
164
+ # @ wp-maintenance-mode
165
+ #: wp-maintenance-mode.php:290
166
+ msgid "The FF Error"
167
+ msgstr "The FF Error"
168
+
169
+ # @ wp-maintenance-mode
170
+ #: wp-maintenance-mode.php:291
171
+ msgid "Monster"
172
+ msgstr "Monster"
173
+
174
+ # @ wp-maintenance-mode
175
+ #: wp-maintenance-mode.php:292
176
+ msgid "Chastely"
177
+ msgstr "Chastely"
178
+
179
+ # @ wp-maintenance-mode
180
+ #: wp-maintenance-mode.php:293
181
+ msgid "Only Typo"
182
+ msgstr "Only Typo"
183
+
184
+ # @ wp-maintenance-mode
185
+ #: wp-maintenance-mode.php:294
186
+ msgid "Paint"
187
+ msgstr "Paint"
188
+
189
+ # @ wp-maintenance-mode
190
+ #: wp-maintenance-mode.php:295
191
+ msgid "Animate (Flash, only german)"
192
+ msgstr "Animeren (Flash, alleen in Duits)"
193
+
194
+ # @ wp-maintenance-mode
195
+ #: wp-maintenance-mode.php:296
196
+ msgid "Damask"
197
+ msgstr "Damask"
198
+
199
+ # @ wp-maintenance-mode
200
+ #: wp-maintenance-mode.php:297
201
+ msgid "Lego"
202
+ msgstr "Lego"
203
+
204
+ # @ wp-maintenance-mode
205
+ #: wp-maintenance-mode.php:303
206
+ msgid "Own Style URL (incl. http://):"
207
+ msgstr "Eigen Design URL (incl. http://)"
208
+
209
+ # @ wp-maintenance-mode
210
+ #: wp-maintenance-mode.php:335
211
+ msgid "Text:"
212
+ msgstr "Tekst:"
213
+
214
+ # @ wp-maintenance-mode
215
+ #: wp-maintenance-mode.php:345
216
+ msgid "Excludes:"
217
+ msgstr "Uitsluiten:"
218
+
219
+ # @ wp-maintenance-mode
220
+ #: wp-maintenance-mode.php:350
221
+ msgid "Exclude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example: "
222
+ msgstr "Sluit pagina's, berichten of archieven uit van de onderhoudsmodus. Voeg de slug van de pagina of bericht toe als een door komma's gescheiden lijst.<br/>Voorbeeld: "
223
+
224
+ # @ wp-maintenance-mode
225
+ #: wp-maintenance-mode.php:355
226
+ msgid "Role:"
227
+ msgstr "Rol:"
228
+
229
+ # @ wp-maintenance-mode
230
+ #: wp-maintenance-mode.php:383
231
+ msgid "Save"
232
+ msgstr "Opslaan"
233
+
234
+ # @ wp-maintenance-mode
235
+ #: wp-maintenance-mode.php:418
236
+ #: wp-maintenance-mode.php:461
237
+ msgid "Updated"
238
+ msgstr "Bijgewerkt"
239
+
240
+ # @ wp-maintenance-mode
241
+ #: wp-maintenance-mode.php:538
242
+ msgid "Deactivate or change Settings"
243
+ msgstr "Deactiveren of Instellingen veranderen"
244
+
245
+ # @ wp-maintenance-mode
246
+ #: wp-maintenance-mode.php:553
247
+ msgid "seconds"
248
+ msgstr "seconden"
249
+
250
+ # @ wp-maintenance-mode
251
+ #: wp-maintenance-mode.php:557
252
+ msgid "minutes"
253
+ msgstr "minuten"
254
+
255
+ # @ wp-maintenance-mode
256
+ #: wp-maintenance-mode.php:561
257
+ msgid "hours"
258
+ msgstr "uren"
259
+
260
+ # @ wp-maintenance-mode
261
+ #: wp-maintenance-mode.php:565
262
+ msgid "days"
263
+ msgstr "dagen"
264
+
265
+ # @ wp-maintenance-mode
266
+ #: wp-maintenance-mode.php:569
267
+ msgid "weeks"
268
+ msgstr "weken"
269
+
270
+ # @ wp-maintenance-mode
271
+ #: wp-maintenance-mode.php:577
272
+ msgid "years"
273
+ msgstr "jaren"
274
+
275
+ # @ wp-maintenance-mode
276
+ #: wp-maintenance-mode.php:624
277
+ msgid "Plugin by:"
278
+ msgstr "Plugin door:"
279
+
280
+ # @ wp-maintenance-mode
281
+ #: wp-maintenance-mode.php:626
282
+ #: wp-maintenance-mode.php:629
283
+ #: wp-maintenance-mode.php:632
284
+ #: wp-maintenance-mode.php:635
285
+ #: wp-maintenance-mode.php:638
286
+ #: wp-maintenance-mode.php:641
287
+ #: wp-maintenance-mode.php:644
288
+ #: wp-maintenance-mode.php:647
289
+ #: wp-maintenance-mode.php:650
290
+ #: wp-maintenance-mode.php:653
291
+ msgid "Design by:"
292
+ msgstr "Design door:"
293
+
294
+ # @ wp-maintenance-mode
295
+ #: site.php:6
296
+ #: site.php:82
297
+ msgid "Maintenance Mode"
298
+ msgstr "Maintenance Mode"
299
+
300
+ # @ wp-maintenance-mode
301
+ #: site.php:79
302
+ msgid "Admin-Login"
303
+ msgstr "Admin-Login"
304
+
305
+ # @ wp-maintenance-mode
306
+ #: wp-maintenance-mode.php:311
307
+ msgid "Title:"
308
+ msgstr "Titel:"
309
+
310
+ # @ wp-maintenance-mode
311
+ #: wp-maintenance-mode.php:306
312
+ msgid "URL to the css-file"
313
+ msgstr "URL voor het css bestand"
314
+
315
+ # @ wp-maintenance-mode
316
+ #: wp-maintenance-mode.php:314
317
+ #: wp-maintenance-mode.php:322
318
+ #: wp-maintenance-mode.php:330
319
+ msgid "Leave empty for default."
320
+ msgstr "Laat leeg voor standaard."
321
+
322
+ # @ wp-maintenance-mode
323
+ #: wp-maintenance-mode.php:319
324
+ msgid "Header:"
325
+ msgstr "Header:"
326
+
327
+ # @ wp-maintenance-mode
328
+ #: wp-maintenance-mode.php:327
329
+ msgid "Heading:"
330
+ msgstr "Kop:"
331
+
332
+ # @ wp-maintenance-mode
333
+ #: wp-maintenance-mode.php:277
334
+ msgid "Please leave a link to the plugin- and design-author on your maintenance mode site."
335
+ msgstr "Laat aub een link achter naar de plugin- en design auteur op je Maintenance Mode site."
336
+
337
+ # @ wp-maintenance-mode
338
+ #: wp-maintenance-mode.php:573
339
+ msgid "months"
340
+ msgstr "maanden"
341
+
342
+ # @ wp-maintenance-mode
343
+ #: wp-maintenance-mode.php:340
344
+ #, php-format
345
+ msgid "Use the first <em>%1$s</em> for the time value or countdown and second <em>%2$s</em> for the unit of the time or countdown-value; HTML is possible"
346
+ msgstr "Gebruik de eerste <em>%1$s</em> voor de tijdswaarde of aftelling en tweede <em>%2$s</em> voor de tijdseenheid of de aftellingswaarde; HTML is mogelijk"
347
+
348
+ # @ wp-maintenance-mode
349
+ #: site.php:72
350
+ msgid "Access to the admin area blocked"
351
+ msgstr "Toegang tot de beheersomgeving is geblokkeerd"
352
+
353
+ # @ wp-maintenance-mode
354
+ #: site.php:75
355
+ msgid "Admin-Logout"
356
+ msgstr "Admin-Logout"
357
+
358
+ # @ wp-maintenance-mode
359
+ #: wp-maintenance-mode.php:376
360
+ msgid "Allowed userrole to see the frontend of this blog."
361
+ msgstr "Toegestane gebruikersrol om de frontend van deze blog te zien."
362
+
363
+ # @ wp-maintenance-mode
364
+ #: wp-maintenance-mode.php:536
365
+ #, fuzzy
366
+ msgid "Caution: Maintenance mode is <strong>active</strong>!"
367
+ msgstr "Let op: Onderhoudsmodus is <strong>actief</strong>!"
368
+
languages/wp-maintenance-mode-pl_PL.mo ADDED
Binary file
languages/wp-maintenance-mode-pl_PL.po ADDED
@@ -0,0 +1,365 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: \n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2010-01-04 12:57+0100\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Jakub Dirska <jakub.dirska@bellartis.com>\n"
8
+ "Language-Team: \n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
+ "X-Poedit-SourceCharset: utf-8\n"
14
+ "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
15
+ "X-Poedit-Basepath: d:/xampp/htdocs/wpbeta/wp-content/plugins/wartungsmodus/\n"
16
+ "X-Textdomain-Support: yes\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+
19
+ #: wp-maintenance-mode.php:134
20
+ msgid "Settings"
21
+ msgstr "Ustawienia"
22
+
23
+ #@ wp-maintenance-mode
24
+ #: wp-maintenance-mode.php:205
25
+ #: wp-maintenance-mode.php:381
26
+ #, php-format
27
+ msgid "Plugin %s settings <strong>updated</strong>."
28
+ msgstr "Ustawienia wtyczki %s <strong>zaktualizowane</strong>."
29
+
30
+ #@ wp-maintenance-mode
31
+ #: wp-maintenance-mode.php:206
32
+ #: wp-maintenance-mode.php:217
33
+ #, php-format
34
+ msgid "Plugin %s active status <strong>updated</strong>."
35
+ msgstr "Stauts wtyczki %s zmieniony na <strong>włączona</strong>."
36
+
37
+ #@ wp-maintenance-mode
38
+ #: wp-maintenance-mode.php:208
39
+ msgid "Plugin Activate"
40
+ msgstr "Włącz tryb obsługi"
41
+
42
+ #@ wp-maintenance-mode
43
+ #: wp-maintenance-mode.php:212
44
+ #: wp-maintenance-mode.php:229
45
+ #: wp-maintenance-mode.php:273
46
+ msgid "False"
47
+ msgstr "Wyłączony"
48
+
49
+ #@ wp-maintenance-mode
50
+ #: wp-maintenance-mode.php:213
51
+ #: wp-maintenance-mode.php:230
52
+ #: wp-maintenance-mode.php:274
53
+ msgid "True"
54
+ msgstr "Włączcony"
55
+
56
+ #@ wp-maintenance-mode
57
+ #: wp-maintenance-mode.php:215
58
+ msgid "Update"
59
+ msgstr "Zaktualizuj"
60
+
61
+ #@ wp-maintenance-mode
62
+ #: wp-maintenance-mode.php:219
63
+ msgid "Plugin Settings"
64
+ msgstr "Ustaiwenia wtyczki"
65
+
66
+ #@ wp-maintenance-mode
67
+ #: wp-maintenance-mode.php:225
68
+ msgid "Countdown:"
69
+ msgstr "Odliczanie:"
70
+
71
+ #@ wp-maintenance-mode
72
+ #: wp-maintenance-mode.php:236
73
+ #: wp-maintenance-mode.php:239
74
+ msgid "Click for datepicker"
75
+ msgstr "Kliknij na znacznik czasu"
76
+
77
+ #@ wp-maintenance-mode
78
+ #: wp-maintenance-mode.php:236
79
+ msgid "Date:"
80
+ msgstr "Data:"
81
+
82
+ #@ wp-maintenance-mode
83
+ #: wp-maintenance-mode.php:240
84
+ msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
85
+ msgstr "Aby użyć tych opcji aktywuj odliczanie. Użyj wartości i jednostki lub ustaw datę."
86
+
87
+ #@ wp-maintenance-mode
88
+ #: wp-maintenance-mode.php:245
89
+ msgid "Value:"
90
+ msgstr "Wartość:"
91
+
92
+ #@ wp-maintenance-mode
93
+ #: wp-maintenance-mode.php:253
94
+ msgid "Unit:"
95
+ msgstr "Jednostka:"
96
+
97
+ #@ wp-maintenance-mode
98
+ #: wp-maintenance-mode.php:257
99
+ msgid "second"
100
+ msgstr "sekunda"
101
+
102
+ #@ wp-maintenance-mode
103
+ #: wp-maintenance-mode.php:258
104
+ msgid "minute"
105
+ msgstr "minuta"
106
+
107
+ #@ wp-maintenance-mode
108
+ #: wp-maintenance-mode.php:259
109
+ msgid "hour"
110
+ msgstr "godzina"
111
+
112
+ #@ wp-maintenance-mode
113
+ #: wp-maintenance-mode.php:260
114
+ msgid "day"
115
+ msgstr "dzień"
116
+
117
+ #@ wp-maintenance-mode
118
+ #: wp-maintenance-mode.php:261
119
+ msgid "week"
120
+ msgstr "tydzień"
121
+
122
+ #@ wp-maintenance-mode
123
+ #: wp-maintenance-mode.php:262
124
+ msgid "month"
125
+ msgstr "miesiąc"
126
+
127
+ #@ wp-maintenance-mode
128
+ #: wp-maintenance-mode.php:263
129
+ msgid "year"
130
+ msgstr "rok"
131
+
132
+ #@ wp-maintenance-mode
133
+ #: wp-maintenance-mode.php:269
134
+ msgid "Link:"
135
+ msgstr "Link:"
136
+
137
+ #@ wp-maintenance-mode
138
+ #: wp-maintenance-mode.php:282
139
+ msgid "Theme:"
140
+ msgstr "Motyw:"
141
+
142
+ #@ wp-maintenance-mode
143
+ #: wp-maintenance-mode.php:286
144
+ msgid "Own Style"
145
+ msgstr "Własne style"
146
+
147
+ #@ wp-maintenance-mode
148
+ #: wp-maintenance-mode.php:287
149
+ msgid "Simple Text"
150
+ msgstr "Prosty tekst"
151
+
152
+ #@ wp-maintenance-mode
153
+ #: wp-maintenance-mode.php:288
154
+ msgid "The Truck"
155
+ msgstr "Ciężarówka"
156
+
157
+ #@ wp-maintenance-mode
158
+ #: wp-maintenance-mode.php:289
159
+ msgid "The Sun"
160
+ msgstr "Słońce"
161
+
162
+ #@ wp-maintenance-mode
163
+ #: wp-maintenance-mode.php:290
164
+ msgid "The FF Error"
165
+ msgstr "FF Błąd"
166
+
167
+ #@ wp-maintenance-mode
168
+ #: wp-maintenance-mode.php:291
169
+ msgid "Monster"
170
+ msgstr "Potwór"
171
+
172
+ #@ wp-maintenance-mode
173
+ #: wp-maintenance-mode.php:292
174
+ msgid "Chastely"
175
+ msgstr "Czysty-prosty"
176
+
177
+ #@ wp-maintenance-mode
178
+ #: wp-maintenance-mode.php:293
179
+ msgid "Only Typo"
180
+ msgstr "Duży tekst"
181
+
182
+ #@ wp-maintenance-mode
183
+ #: wp-maintenance-mode.php:294
184
+ msgid "Paint"
185
+ msgstr "Malowanie"
186
+
187
+ #@ wp-maintenance-mode
188
+ #: wp-maintenance-mode.php:295
189
+ msgid "Animate (Flash, only german)"
190
+ msgstr "Animacja (Flash, tylko po niemiecku)"
191
+
192
+ #@ wp-maintenance-mode
193
+ #: wp-maintenance-mode.php:296
194
+ msgid "Damask"
195
+ msgstr "Damask"
196
+
197
+ #@ wp-maintenance-mode
198
+ #: wp-maintenance-mode.php:297
199
+ msgid "Lego"
200
+ msgstr "Klocki LEGO"
201
+
202
+ #@ wp-maintenance-mode
203
+ #: wp-maintenance-mode.php:303
204
+ msgid "Own Style URL (incl. http://):"
205
+ msgstr "Własny arkusz stylu (zacznij od. http://)"
206
+
207
+ #@ wp-maintenance-mode
208
+ #: wp-maintenance-mode.php:335
209
+ msgid "Text:"
210
+ msgstr "Tekst:"
211
+
212
+ #@ wp-maintenance-mode
213
+ #: wp-maintenance-mode.php:345
214
+ msgid "Excludes:"
215
+ msgstr "Wykluczone:"
216
+
217
+ #@ wp-maintenance-mode
218
+ #: wp-maintenance-mode.php:350
219
+ msgid "Exlude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example: "
220
+ msgstr "Wykluczane strony, wpisy i archiwa z działania wtyczki Tryb obsługi. Dodaj skrót (slug) strony lub wpisu rozdzialając je przecinkammi.<br />Przykład: "
221
+
222
+ #@ wp-maintenance-mode
223
+ #: wp-maintenance-mode.php:355
224
+ msgid "Role:"
225
+ msgstr "Uprawnienia:"
226
+
227
+ #@ wp-maintenance-mode
228
+ #: wp-maintenance-mode.php:383
229
+ msgid "Save"
230
+ msgstr "Zapisz"
231
+
232
+ #@ wp-maintenance-mode
233
+ #: wp-maintenance-mode.php:418
234
+ #: wp-maintenance-mode.php:461
235
+ msgid "Updated"
236
+ msgstr "Zaktualizowane"
237
+
238
+ #@ wp-maintenance-mode
239
+ #: wp-maintenance-mode.php:538
240
+ msgid "Deactivate or change Settings"
241
+ msgstr "Deaktywuj lub zmień ustawienia"
242
+
243
+ #@ wp-maintenance-mode
244
+ #: wp-maintenance-mode.php:553
245
+ msgid "seconds"
246
+ msgstr "sekundy"
247
+
248
+ #@ wp-maintenance-mode
249
+ #: wp-maintenance-mode.php:557
250
+ msgid "minutes"
251
+ msgstr "minuty"
252
+
253
+ #@ wp-maintenance-mode
254
+ #: wp-maintenance-mode.php:561
255
+ msgid "hours"
256
+ msgstr "godziny"
257
+
258
+ #@ wp-maintenance-mode
259
+ #: wp-maintenance-mode.php:565
260
+ msgid "days"
261
+ msgstr "dni"
262
+
263
+ #@ wp-maintenance-mode
264
+ #: wp-maintenance-mode.php:569
265
+ msgid "weeks"
266
+ msgstr "tygodnie"
267
+
268
+ #@ wp-maintenance-mode
269
+ #: wp-maintenance-mode.php:577
270
+ msgid "years"
271
+ msgstr "lata"
272
+
273
+ #@ wp-maintenance-mode
274
+ #: wp-maintenance-mode.php:624
275
+ msgid "Plugin by:"
276
+ msgstr "Wtyczka:"
277
+
278
+ #@ wp-maintenance-mode
279
+ #: wp-maintenance-mode.php:626
280
+ #: wp-maintenance-mode.php:629
281
+ #: wp-maintenance-mode.php:632
282
+ #: wp-maintenance-mode.php:635
283
+ #: wp-maintenance-mode.php:638
284
+ #: wp-maintenance-mode.php:641
285
+ #: wp-maintenance-mode.php:644
286
+ #: wp-maintenance-mode.php:647
287
+ #: wp-maintenance-mode.php:650
288
+ #: wp-maintenance-mode.php:653
289
+ msgid "Design by:"
290
+ msgstr "Motyw:"
291
+
292
+ #@ wp-maintenance-mode
293
+ #: site.php:6
294
+ #: site.php:82
295
+ msgid "Maintenance Mode"
296
+ msgstr "Tryb obsługi"
297
+
298
+ #@ wp-maintenance-mode
299
+ #: site.php:79
300
+ msgid "Admin-Login"
301
+ msgstr "Admin - zaloguj"
302
+
303
+ #@ wp-maintenance-mode
304
+ #: wp-maintenance-mode.php:311
305
+ msgid "Title:"
306
+ msgstr "Tytuł:"
307
+
308
+ #@ wp-maintenance-mode
309
+ #: wp-maintenance-mode.php:306
310
+ msgid "URL to the css-file"
311
+ msgstr "URL to pliku css"
312
+
313
+ #@ wp-maintenance-mode
314
+ #: wp-maintenance-mode.php:314
315
+ #: wp-maintenance-mode.php:322
316
+ #: wp-maintenance-mode.php:330
317
+ msgid "Leave empty for default."
318
+ msgstr "Zostaw puste dla domyślnych."
319
+
320
+ #@ wp-maintenance-mode
321
+ #: wp-maintenance-mode.php:319
322
+ msgid "Header:"
323
+ msgstr "Nagłówek:"
324
+
325
+ #@ wp-maintenance-mode
326
+ #: wp-maintenance-mode.php:327
327
+ msgid "Heading:"
328
+ msgstr "Główny tytuł:"
329
+
330
+ #@ wp-maintenance-mode
331
+ #: wp-maintenance-mode.php:277
332
+ msgid "Please leave a link to the plugin- and design-author on your maintenance mode site."
333
+ msgstr "Proszę pozostaw link do strony wtyczki oraz autora motywu wtyczki na stronie trybu obsługi."
334
+
335
+ #@ wp-maintenance-mode
336
+ #: wp-maintenance-mode.php:573
337
+ msgid "months"
338
+ msgstr "miesiące"
339
+
340
+ #@ wp-maintenance-mode
341
+ #: wp-maintenance-mode.php:340
342
+ #, php-format
343
+ msgid "Use the first <em>%1$s</em> for the time value or countdown and second <em>%2$s</em> for the unit of the time or countdown-value; HTML is possible"
344
+ msgstr "Uzyj najpierw <em>%1$s</ em> dla wartości czasu lub odliczania i jako drugi <em>%2$s</ em> jako jednostki czasu lub wartości odliczania; mozliwe jest używanie znaczników XHTML."
345
+
346
+ #@ wp-maintenance-mode
347
+ #: site.php:72
348
+ msgid "Access to the admin area blocked"
349
+ msgstr "Dostęp do panelu administracyjnego zablokowany"
350
+
351
+ #@ wp-maintenance-mode
352
+ #: site.php:75
353
+ msgid "Admin-Logout"
354
+ msgstr "Admin - wyloguj"
355
+
356
+ #@ wp-maintenance-mode
357
+ #: wp-maintenance-mode.php:376
358
+ msgid "Allowed userrole for see the frontend of this blog."
359
+ msgstr "Uprawnienia użytkownika uprawniające do oglądania wyglądu witryny."
360
+
361
+ #@ wp-maintenance-mode
362
+ #: wp-maintenance-mode.php:536
363
+ msgid "Caution: Maintenance mode is <strong>active</strong>!"
364
+ msgstr "Uwaga! Tryb obsługi jest <strong>włączony</strong>!"
365
+
languages/{wartungsmodus-ro_RO.mo → wp-maintenance-mode-ro_RO.mo} RENAMED
File without changes
languages/{wartungsmodus-ro_RO.po → wp-maintenance-mode-ro_RO.po} RENAMED
File without changes
languages/{wartungsmodus-sq_AL.mo → wp-maintenance-mode-sq_AL.mo} RENAMED
Binary file
languages/{wartungsmodus-sq_AL.po → wp-maintenance-mode-sq_AL.po} RENAMED
@@ -4,7 +4,7 @@ msgstr ""
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: \n"
6
  "PO-Revision-Date: \n"
7
- "Last-Translator: \n"
8
  "Language-Team: \n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -236,7 +236,7 @@ msgstr "Text:"
236
 
237
  #@ wartungsmodus
238
  #: !wartungsmodus.php:311
239
- msgid "Coution: Maintenance mode is <strong>active</strong>!"
240
  msgstr "Kujdes: Maintenance mode është <strong>aktive</strong>!"
241
 
242
  #@ wartungsmodus
4
  "Report-Msgid-Bugs-To: \n"
5
  "POT-Creation-Date: \n"
6
  "PO-Revision-Date: \n"
7
+ "Last-Translator: Frank Bueltge <frank@bueltge.de>\n"
8
  "Language-Team: \n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=UTF-8\n"
236
 
237
  #@ wartungsmodus
238
  #: !wartungsmodus.php:311
239
+ msgid "Caution: Maintenance mode is <strong>active</strong>!"
240
  msgstr "Kujdes: Maintenance mode është <strong>aktive</strong>!"
241
 
242
  #@ wartungsmodus
languages/{wartungsmodus-tr_TR.mo → wp-maintenance-mode-tr_TR.mo} RENAMED
File without changes
languages/{wartungsmodus-tr_TR.po → wp-maintenance-mode-tr_TR.po} RENAMED
File without changes
languages/wp-maintenance-mode-xx_XX.pot ADDED
@@ -0,0 +1,428 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: \n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2010-01-04 12:57+0100\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Frank Bueltge <frank@bueltge.de>\n"
8
+ "Language-Team: \n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
13
+ "X-Poedit-Language: \n"
14
+ "X-Poedit-Country: \n"
15
+ "X-Poedit-SourceCharset: utf-8\n"
16
+ "X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2;\n"
17
+ "X-Poedit-Basepath: d:/xampp/htdocs/wpbeta/wp-content/plugins/wartungsmodus/\n"
18
+ "X-Poedit-Bookmarks: \n"
19
+ "X-Poedit-SearchPath-0: .\n"
20
+ "X-Textdomain-Support: yes"
21
+
22
+ #. translators: plugin header field 'Description'
23
+ #: wp-maintenance-mode.php:0
24
+ #@ wp-maintenance-mode
25
+ msgid "The plugin adds a splash page to your blog that lets visitors know your blog is down for maintenance. Logged in users get full access to the blog including the front-end, depends of the settings."
26
+ msgstr "Das Plugin fügt eine statische Seite in deinem Blog ein und lässt Besucher wissen, dass Wartungsarbeiten durchgeführt werden. Eingeloggte Nutzer können das Frontend je nach Einstellungen der Rechte uneingeschränkt nutzen."
27
+
28
+ #: wp-maintenance-mode.php:154
29
+ #@ default
30
+ msgid "Settings"
31
+ msgstr "Einstellungen"
32
+
33
+ #: wp-maintenance-mode.php:227
34
+ #: wp-maintenance-mode.php:414
35
+ #, php-format
36
+ #@ wp-maintenance-mode
37
+ msgid "Plugin %s settings <strong>updated</strong>."
38
+ msgstr "Plugin %s Einstellungen <strong>gespeichert</strong>."
39
+
40
+ #: wp-maintenance-mode.php:228
41
+ #: wp-maintenance-mode.php:239
42
+ #, php-format
43
+ #@ wp-maintenance-mode
44
+ msgid "Plugin %s active status <strong>updated</strong>."
45
+ msgstr "Plugin %s aktiv-status <strong>aktualisiert</strong>."
46
+
47
+ #: wp-maintenance-mode.php:230
48
+ #@ wp-maintenance-mode
49
+ msgid "Plugin Activate"
50
+ msgstr "Plugin aktivieren"
51
+
52
+ #: wp-maintenance-mode.php:234
53
+ #: wp-maintenance-mode.php:251
54
+ #: wp-maintenance-mode.php:295
55
+ #@ wp-maintenance-mode
56
+ msgid "False"
57
+ msgstr "Nein"
58
+
59
+ #: wp-maintenance-mode.php:235
60
+ #: wp-maintenance-mode.php:252
61
+ #: wp-maintenance-mode.php:296
62
+ #@ wp-maintenance-mode
63
+ msgid "True"
64
+ msgstr "Ja"
65
+
66
+ #: wp-maintenance-mode.php:237
67
+ #@ wp-maintenance-mode
68
+ msgid "Update"
69
+ msgstr "Aktualisieren"
70
+
71
+ #: wp-maintenance-mode.php:241
72
+ #@ wp-maintenance-mode
73
+ msgid "Plugin Settings"
74
+ msgstr "Plugin Einstellungen"
75
+
76
+ #: wp-maintenance-mode.php:247
77
+ #@ wp-maintenance-mode
78
+ msgid "Countdown:"
79
+ msgstr "Countdown:"
80
+
81
+ #: wp-maintenance-mode.php:258
82
+ #: wp-maintenance-mode.php:261
83
+ #@ wp-maintenance-mode
84
+ msgid "Click for datepicker"
85
+ msgstr "Klick für den Datums-Picker"
86
+
87
+ #: wp-maintenance-mode.php:258
88
+ #@ wp-maintenance-mode
89
+ msgid "Date:"
90
+ msgstr "Datum:"
91
+
92
+ #: wp-maintenance-mode.php:262
93
+ #@ wp-maintenance-mode
94
+ msgid "Activate countdown for using this. Use value and unit or use the countdown and set the date."
95
+ msgstr "Aktiviere den Countdown um ihn zu nutzen. Vergebe Wert und Einheit oder wähle ein Datum für den Countdown."
96
+
97
+ #: wp-maintenance-mode.php:267
98
+ #@ wp-maintenance-mode
99
+ msgid "Value:"
100
+ msgstr "Wert:"
101
+
102
+ #: wp-maintenance-mode.php:275
103
+ #@ wp-maintenance-mode
104
+ msgid "Unit:"
105
+ msgstr "Einheit:"
106
+
107
+ #: wp-maintenance-mode.php:279
108
+ #@ wp-maintenance-mode
109
+ msgid "second"
110
+ msgstr "sekunde"
111
+
112
+ #: wp-maintenance-mode.php:280
113
+ #@ wp-maintenance-mode
114
+ msgid "minute"
115
+ msgstr "minute"
116
+
117
+ #: wp-maintenance-mode.php:281
118
+ #@ wp-maintenance-mode
119
+ msgid "hour"
120
+ msgstr "stunde"
121
+
122
+ #: wp-maintenance-mode.php:282
123
+ #@ wp-maintenance-mode
124
+ msgid "day"
125
+ msgstr "tag"
126
+
127
+ #: wp-maintenance-mode.php:283
128
+ #@ wp-maintenance-mode
129
+ msgid "week"
130
+ msgstr "woche"
131
+
132
+ #: wp-maintenance-mode.php:284
133
+ #@ wp-maintenance-mode
134
+ msgid "month"
135
+ msgstr "monat"
136
+
137
+ #: wp-maintenance-mode.php:285
138
+ #@ wp-maintenance-mode
139
+ msgid "year"
140
+ msgstr "jahr"
141
+
142
+ #: wp-maintenance-mode.php:291
143
+ #@ wp-maintenance-mode
144
+ msgid "Link:"
145
+ msgstr "Link:"
146
+
147
+ #: wp-maintenance-mode.php:304
148
+ #@ wp-maintenance-mode
149
+ msgid "Theme:"
150
+ msgstr "Theme:"
151
+
152
+ #: wp-maintenance-mode.php:308
153
+ #@ wp-maintenance-mode
154
+ msgid "Own Style"
155
+ msgstr "Eigenes Design"
156
+
157
+ #: wp-maintenance-mode.php:309
158
+ #@ wp-maintenance-mode
159
+ msgid "Simple Text"
160
+ msgstr "Einfach Text"
161
+
162
+ #: wp-maintenance-mode.php:310
163
+ #@ wp-maintenance-mode
164
+ msgid "The Truck"
165
+ msgstr "Der Truck"
166
+
167
+ #: wp-maintenance-mode.php:311
168
+ #@ wp-maintenance-mode
169
+ msgid "The Sun"
170
+ msgstr "The Sun"
171
+
172
+ #: wp-maintenance-mode.php:312
173
+ #@ wp-maintenance-mode
174
+ msgid "The FF Error"
175
+ msgstr "The FF Error"
176
+
177
+ #: wp-maintenance-mode.php:313
178
+ #@ wp-maintenance-mode
179
+ msgid "Monster"
180
+ msgstr "Monster"
181
+
182
+ #: wp-maintenance-mode.php:314
183
+ #@ wp-maintenance-mode
184
+ msgid "Chastely"
185
+ msgstr "Chastely"
186
+
187
+ #: wp-maintenance-mode.php:315
188
+ #@ wp-maintenance-mode
189
+ msgid "Only Typo"
190
+ msgstr "Only Typo"
191
+
192
+ #: wp-maintenance-mode.php:316
193
+ #@ wp-maintenance-mode
194
+ msgid "Paint"
195
+ msgstr "Paint"
196
+
197
+ #: wp-maintenance-mode.php:318
198
+ #@ wp-maintenance-mode
199
+ msgid "Damask"
200
+ msgstr "Damask"
201
+
202
+ #: wp-maintenance-mode.php:319
203
+ #@ wp-maintenance-mode
204
+ msgid "Lego"
205
+ msgstr "Lego"
206
+
207
+ #: wp-maintenance-mode.php:326
208
+ #@ wp-maintenance-mode
209
+ msgid "Own Style URL (incl. http://):"
210
+ msgstr "Eigene Design URL (inkl. http://)"
211
+
212
+ #: wp-maintenance-mode.php:368
213
+ #@ wp-maintenance-mode
214
+ msgid "Text:"
215
+ msgstr "Text:"
216
+
217
+ #: wp-maintenance-mode.php:378
218
+ #@ wp-maintenance-mode
219
+ msgid "Excludes:"
220
+ msgstr "Ausnahmen:"
221
+
222
+ #: wp-maintenance-mode.php:388
223
+ #@ wp-maintenance-mode
224
+ msgid "Role:"
225
+ msgstr "Rolle:"
226
+
227
+ #: wp-maintenance-mode.php:416
228
+ #@ wp-maintenance-mode
229
+ msgid "Save"
230
+ msgstr "Speichern"
231
+
232
+ #: wp-maintenance-mode.php:451
233
+ #: wp-maintenance-mode.php:494
234
+ #@ wp-maintenance-mode
235
+ msgid "Updated"
236
+ msgstr "Gespeichert"
237
+
238
+ #: wp-maintenance-mode.php:571
239
+ #: wp-maintenance-mode.php:573
240
+ #@ wp-maintenance-mode
241
+ msgid "Deactivate or change Settings"
242
+ msgstr "Deaktivieren oder Einstellungen ändern "
243
+
244
+ #: wp-maintenance-mode.php:594
245
+ #@ wp-maintenance-mode
246
+ msgid "seconds"
247
+ msgstr "Sekunden"
248
+
249
+ #: wp-maintenance-mode.php:598
250
+ #@ wp-maintenance-mode
251
+ msgid "minutes"
252
+ msgstr "Minuten"
253
+
254
+ #: wp-maintenance-mode.php:602
255
+ #@ wp-maintenance-mode
256
+ msgid "hours"
257
+ msgstr "Stunden"
258
+
259
+ #: wp-maintenance-mode.php:606
260
+ #@ wp-maintenance-mode
261
+ msgid "days"
262
+ msgstr "Tagen"
263
+
264
+ #: wp-maintenance-mode.php:610
265
+ #@ wp-maintenance-mode
266
+ msgid "weeks"
267
+ msgstr "Wochen"
268
+
269
+ #: wp-maintenance-mode.php:618
270
+ #@ wp-maintenance-mode
271
+ msgid "years"
272
+ msgstr "Jahren"
273
+
274
+ #: wp-maintenance-mode.php:666
275
+ #@ wp-maintenance-mode
276
+ msgid "Plugin by:"
277
+ msgstr "Plugin von:"
278
+
279
+ #: wp-maintenance-mode.php:668
280
+ #: wp-maintenance-mode.php:670
281
+ #: wp-maintenance-mode.php:672
282
+ #: wp-maintenance-mode.php:674
283
+ #: wp-maintenance-mode.php:676
284
+ #: wp-maintenance-mode.php:678
285
+ #: wp-maintenance-mode.php:680
286
+ #: wp-maintenance-mode.php:682
287
+ #: wp-maintenance-mode.php:684
288
+ #: wp-maintenance-mode.php:686
289
+ #: wp-maintenance-mode.php:688
290
+ #@ wp-maintenance-mode
291
+ msgid "Design by:"
292
+ msgstr "Design von:"
293
+
294
+ #: site.php:6
295
+ #: site.php:82
296
+ #@ wp-maintenance-mode
297
+ msgid "Maintenance Mode"
298
+ msgstr "Wartungsmodus"
299
+
300
+ #: site.php:79
301
+ #@ wp-maintenance-mode
302
+ msgid "Admin-Login"
303
+ msgstr "Admin-Login"
304
+
305
+ #: wp-maintenance-mode.php:344
306
+ #@ wp-maintenance-mode
307
+ msgid "Title:"
308
+ msgstr "Titel:"
309
+
310
+ #: wp-maintenance-mode.php:329
311
+ #@ wp-maintenance-mode
312
+ msgid "URL to the css-file"
313
+ msgstr "URL zur css-Datei"
314
+
315
+ #: wp-maintenance-mode.php:347
316
+ #: wp-maintenance-mode.php:355
317
+ #: wp-maintenance-mode.php:363
318
+ #@ wp-maintenance-mode
319
+ msgid "Leave empty for default."
320
+ msgstr "Leer lassen für den Standardtext."
321
+
322
+ #: wp-maintenance-mode.php:352
323
+ #@ wp-maintenance-mode
324
+ msgid "Header:"
325
+ msgstr "Header:"
326
+
327
+ #: wp-maintenance-mode.php:360
328
+ #@ wp-maintenance-mode
329
+ msgid "Heading:"
330
+ msgstr "Überschrift:"
331
+
332
+ #: wp-maintenance-mode.php:299
333
+ #@ wp-maintenance-mode
334
+ msgid "Please leave a link to the plugin- and design-author on your maintenance mode site."
335
+ msgstr "Bitte hinterlasse einen Link zum Plugin- und Design-Autor auf deiner Wartungsmodus-Seite."
336
+
337
+ #: wp-maintenance-mode.php:614
338
+ #@ wp-maintenance-mode
339
+ msgid "months"
340
+ msgstr "Monate"
341
+
342
+ #: wp-maintenance-mode.php:373
343
+ #, php-format
344
+ #@ wp-maintenance-mode
345
+ msgid "Use the first <em>%1$s</em> for the time value or countdown and second <em>%2$s</em> for the unit of the time or countdown-value; HTML is possible"
346
+ msgstr "Nutze das erste <em>%1$s</em> für den Zeitwert oder den Countdown und das zweite <em>%2$s</em> für die Einheit der Zeit oder die Ausgabe des Zeitwert, HTML ist möglich"
347
+
348
+ #: site.php:72
349
+ #@ wp-maintenance-mode
350
+ msgid "Access to the admin area blocked"
351
+ msgstr "Zugang zum Admin-Bereich wurde blockiert"
352
+
353
+ #: site.php:75
354
+ #@ wp-maintenance-mode
355
+ msgid "Admin-Logout"
356
+ msgstr "Admin-Logout"
357
+
358
+ #: wp-maintenance-mode.php:409
359
+ #@ wp-maintenance-mode
360
+ msgid "Allowed userrole to see the frontend of this blog."
361
+ msgstr "Erlaubte User-Rolle für das Sehen des Frontend von diesem Blog."
362
+
363
+ #: wp-maintenance-mode.php:569
364
+ #@ wp-maintenance-mode
365
+ msgid "Caution: Maintenance mode is <strong>active</strong>!"
366
+ msgstr "Achtung: Wartungsmodus ist <strong>aktiv</strong>!"
367
+
368
+ #: index.php:5
369
+ #@ default
370
+ msgid "Cheatin&#8217; uh?"
371
+ msgstr ""
372
+
373
+ #: wp-maintenance-mode.php:331
374
+ #@ wp-maintenance-mode
375
+ msgid "<strong>Coution:</strong> Please don&acute;t copy the stylesheet in your plugin folder, it will be deleted on the next automatical update of the plugin!"
376
+ msgstr "<strong>Hinweis:</strong> Bitte speichere das Sytelsheet nicht im Plugin-Ordner, der Ordner wird beim automatischen Update ersetzt!"
377
+
378
+ #: wp-maintenance-mode.php:336
379
+ #: wp-maintenance-mode.php:339
380
+ #@ wp-maintenance-mode
381
+ msgid "Preview"
382
+ msgstr "Vorschau"
383
+
384
+ #. translators: plugin header field 'Name'
385
+ #: wp-maintenance-mode.php:0
386
+ #@ wp-maintenance-mode
387
+ msgid "WP Maintenance Mode"
388
+ msgstr ""
389
+
390
+ #. translators: plugin header field 'PluginURI'
391
+ #: wp-maintenance-mode.php:0
392
+ #@ wp-maintenance-mode
393
+ msgid "http://bueltge.de/wp-wartungsmodus-plugin/101/"
394
+ msgstr ""
395
+
396
+ #. translators: plugin header field 'Author'
397
+ #: wp-maintenance-mode.php:0
398
+ #@ wp-maintenance-mode
399
+ msgid "Frank B&uuml;ltge"
400
+ msgstr ""
401
+
402
+ #. translators: plugin header field 'AuthorURI'
403
+ #: wp-maintenance-mode.php:0
404
+ #@ wp-maintenance-mode
405
+ msgid "http://bueltge.de/"
406
+ msgstr ""
407
+
408
+ #. translators: plugin header field 'Version'
409
+ #: wp-maintenance-mode.php:0
410
+ #@ wp-maintenance-mode
411
+ msgid "1.6.5"
412
+ msgstr ""
413
+
414
+ #: wp-maintenance-mode.php:317
415
+ #@ wp-maintenance-mode
416
+ msgid "Animate (Flash)"
417
+ msgstr "Animate (Flash)"
418
+
419
+ #: wp-maintenance-mode.php:320
420
+ #@ wp-maintenance-mode
421
+ msgid "Chemistry"
422
+ msgstr "Chemielabor"
423
+
424
+ #: wp-maintenance-mode.php:383
425
+ #@ wp-maintenance-mode
426
+ msgid "Exclude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example:"
427
+ msgstr "Die Ausnahme des Wartungsmodus ist möglich für Inhalte aller Art. Füge den Titelform (Slug) hinzu, als Komma-Separierte Liste.<br />Beispiel:"
428
+
license.txt CHANGED
File without changes
readme.txt CHANGED
@@ -1,12 +1,16 @@
1
- === !Wartungsmodus ===
2
  Contributors: Bueltge
 
 
 
 
3
  Donate link: http://bueltge.de/wunschliste/
4
- Tags: maintenance, mode, admin, administration, unavailable
5
  Requires at least: 2.6
6
- Tested up to: 3.0-alpha
7
  Stable tag: 1.0
8
 
9
- After activation in the options of the plugins it adds a splash page to your blog that lets visitors know your blog is down for maintenance. Logged in administrators get full access to the blog including the front-end.
10
 
11
  == Description ==
12
  Adds a maintenance-page to your blog that lets visitors know your blog is down for maintenancetime. User with rights for theme-options get full access to the blog including the frontend.
@@ -15,48 +19,116 @@ Also you can add urls for exlude of maintenance mode.
15
 
16
  You can add your own html and stylesheet and add the url of this style to the options of the plugin. Write your style to this markup and upload to the webspace; after add the url include http:// to the settings of this plugin and change th theme to `"Own Theme"`:
17
 
18
- `<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"`
19
- `"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">`
20
- `<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de" id="wartungsmodus" >`
21
- ``
22
- `<head>`
23
- ` <title>Blogname - Maintenance Mode</title>`
24
- `</head>`
25
- ``
26
- `<body>`
27
- ` `
28
- ` <div id="header">`
29
- ` <p>WP Dev</p>`
30
- ` </div>`
31
- ` `
32
- ` <div id="content">`
33
- ` `
34
- ` <h1>Maintenance Mode</h1>`
35
- ` <p>Sorry for the inconvenience.<br />Our website is currently undergoing scheduled maintenance.<br /><strong>Please try back in 231 weeks.</strong><br />Thank you for your understanding.</p>`
36
- ` <div class="admin"><a href="http://example.com/wp-admin/">Admin-Login</a></div>`
37
- ` </div>`
38
- ` `
39
- ` <div id="footer">`
40
- ` <p><a href="http://bueltge.de/">Plugin by: <img src="http://bueltge.de/favicon.ico" alt="bueltge.de" width="16" height="16" /></a></p>`
41
- ` </div>`
42
- ` `
43
- `</body>`
44
- `</html>`
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
45
 
46
  = Requirements =
47
  1. WordPress version 2.6 and later
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
 
49
- Please visit [the official website](http://bueltge.de/wp-wartungsmodus-plugin/101/ "Wartungsmodus") for further details and the latest information on this plugin.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
 
51
  = Localizations =
52
  * Thanks to [H&uuml;seyin &Uuml;lk&uuml;](http://www.salsabar.org/ "H&uuml;seyin &Uuml;lk&uuml;") for turkey language file
53
  * Thanks to [Gilles WALET](http://www.nevermindfr.com/ "Gilles WALET") for frensh language file
54
  * Thanks to [J&uuml;rgen Toth](http://www.relijoc.ro/ "J&uuml;rgen Toth") for romanian language file
55
- * Thanks to [Gianni Diurno](http://gidibao.net/ "Gianni Diurno") for italian language file
56
  * Thanks to [Romeo Shuka](http://www.romeolab.com/wp-wartungsmodus-shqip "About this Plugin in albanian language") for albanian language file
57
  * Thanks to [TodoWordPress](http://www.todowp.org/ "TodoWordPress") for spanish language file
58
  * Thanks to [FatCow](http://www.fatcow.com "www.fatcow.com") for belorussion language file
59
  * Thanks to [yuarez](http://yuraz.uni.cc "yuraz.uni.cc") for croatian languge files
 
 
 
 
 
 
 
60
 
61
  = Interested in WordPress tips and tricks =
62
  You may also be interested in WordPress tips and tricks at [WP Engineer](http://wpengineer.com/) or for german people [bueltge.de](http://bueltge.de/)
@@ -68,7 +140,7 @@ You may also be interested in WordPress tips and tricks at [WP Engineer](http://
68
  1. Click the `settings`-link for change time, link of authors, text and design
69
  1. Activate under the settings and your blog is in maintenance mode
70
 
71
- See on [the official website](http://bueltge.de/wp-wartungsmodus-plugin/101/ "Wartungsmodus").
72
 
73
  == Screenshots ==
74
  1. Aktiv Maintenance-Mode with Theme "The Truck" and german language
@@ -83,15 +155,67 @@ See on [the official website](http://bueltge.de/wp-wartungsmodus-plugin/101/ "Wa
83
  1. Aktiv Maintenance-Mode with Theme "Animate (Flash)"
84
  1. Aktiv Maintenance-Mode with Theme "Damask"
85
  1. Aktiv Maintenance-Mode with Theme "Lego"
 
86
 
87
  == Frequently Asked Questions ==
88
  = Where can I get more information? =
89
- Please visit [the official website](http://bueltge.de/wp-wartungsmodus-plugin/101/ "Wartungsmodus") for the latest information on this plugin.
90
 
91
  = I love this plugin! How can I show the developer how much I appreciate his work? =
92
- Please visit [the official website](http://bueltge.de/wp-wartungsmodus-plugin/101/ "Wartungsmodus") and let him know your care or see the [wishlist](http://bueltge.de/wunschliste/ "Wishlist") of the author.
 
 
 
 
 
 
 
 
 
93
 
94
  == Other Notes ==
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
95
  = Acknowledgements =
96
  * Thanks to [David Hellmann](http://www.davidhellmann.com/ "David Hellmann") for the design "The Truck"
97
  * Thanks to [Nicki Steiger](http://mynicki.net/ "Nicki Steiger") for the design "The Sun"
@@ -103,6 +227,9 @@ Please visit [the official website](http://bueltge.de/wp-wartungsmodus-plugin/10
103
  * Thanks to [Sebastian Schmiedel](http://www.cayou-media.de/ "Sebastian Schmiedel") for the design "Animate (Flash)"
104
  * Thanks to [Fabian Letscher](http://fabianletscher.de/ "Fabian Letscher") for the design "Damask"
105
  * Thanks to [Alex Frison](http://www.afrison.com/ "Alex Frison") for the design "Lego"
 
 
 
106
 
107
  * Thanks to [H&uuml;seyin &Uuml;lk&uuml;](http://www.salsabar.org/ "H&uuml;seyin &Uuml;lk&uuml;") for turkey language file
108
  * Thanks to [Gilles WALET](http://www.nevermindfr.com/ "Gilles WALET") for frensh language file
@@ -112,8 +239,72 @@ Please visit [the official website](http://bueltge.de/wp-wartungsmodus-plugin/10
112
  * Thanks to [TodoWordPress](http://www.todowp.org/ "TodoWordPress") for spanish language file
113
  * Thanks to [FatCow](http://www.fatcow.com "www.fatcow.com") for belorussion language file
114
  * Thanks to [yuarez](http://yuraz.uni.cc "yuraz.uni.cc") for croatian languge files
 
 
 
 
115
 
116
  == Changelog ==
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
117
  = 1.5.3 (01/05/2010) =
118
  * Fix for JavaScript with WordPress 2.9
119
  * Add new custom fields for fronted: title, header, heading
1
+ === WP Maintenance Mode ===
2
  Contributors: Bueltge
3
+ Plugin Name: WP Maintenance Mode
4
+ Plugin URI: http://bueltge.de/wp-wartungsmodus-plugin/101/
5
+ Author: Frank B&uuml;ltge
6
+ Author URI: http://bueltge.de/
7
  Donate link: http://bueltge.de/wunschliste/
8
+ Tags: maintenance, mode, admin, administration, unavailable, coming soon
9
  Requires at least: 2.6
10
+ Tested up to: 3.1-alpha
11
  Stable tag: 1.0
12
 
13
+ Adds a splash page to your site that lets visitors know your site is down for maintenance. Full access to the back- & front-end is optional.
14
 
15
  == Description ==
16
  Adds a maintenance-page to your blog that lets visitors know your blog is down for maintenancetime. User with rights for theme-options get full access to the blog including the frontend.
19
 
20
  You can add your own html and stylesheet and add the url of this style to the options of the plugin. Write your style to this markup and upload to the webspace; after add the url include http:// to the settings of this plugin and change th theme to `"Own Theme"`:
21
 
22
+ `<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"`
23
+ `"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">`
24
+ `<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de" id="wartungsmodus" >`
25
+ ``
26
+ `<head>`
27
+ ` <title>Blogname - Maintenance Mode</title>`
28
+ `</head>`
29
+ ``
30
+ `<body>`
31
+ ` `
32
+ ` <div id="header">`
33
+ ` <p>WP Dev</p>`
34
+ ` </div>`
35
+ ` `
36
+ ` <div id="content">`
37
+ ` `
38
+ ` <h1>Maintenance Mode</h1>`
39
+ ` <p>Sorry for the inconvenience.<br />Our website is currently undergoing scheduled maintenance.<br /><strong>Please try back in 231 weeks.</strong><br />Thank you for your understanding.</p>`
40
+ ` <div class="admin"><a href="http://example.com/wp-admin/">Admin-Login</a></div>`
41
+ ` </div>`
42
+ ` `
43
+ ` <div id="footer">`
44
+ ` <p><a href="http://bueltge.de/">Plugin by: <img src="http://bueltge.de/favicon.ico" alt="bueltge.de" width="16" height="16" /></a></p>`
45
+ ` </div>`
46
+ ` `
47
+ `</body>`
48
+ `</html>`
49
+
50
+
51
+ Also you can add content via hook:
52
+
53
+ `wm_head` - hook inside the head of the maintenance mode site
54
+ `wm_content` - hook over the content, after the div with id content
55
+ `wm_footer` - hook inside the footer
56
+
57
+
58
+ Example:
59
+
60
+ `function add_my_link() {`
61
+ ` echo '<a href="http://mylink.com/">My Link</a>`
62
+ `}`
63
+ `add_action( 'wm_footer', 'add_my_link' );`
64
+
65
 
66
  = Requirements =
67
  1. WordPress version 2.6 and later
68
+ 1. PHP 5
69
+
70
+
71
+ = Work with MySQLDumper =
72
+ This option is designed for users, who backups their database with "MySQLDumper".
73
+ With this option you can switch your Wordpress into maintenance mode, when you create a database-backup with MySQLDumper. This is very usefull especially for larger blogs, because their backup takes a longer time. With this option enabled, you have the guarantee of a clean and full backup of your database. All other requests to your database from other resources were blocked in the time of the backup and all the performance of the MySQL-Server will be taken for the backup.
74
+
75
+ = How to use =
76
+ * MySQLDumper must be installed and has to run full funtionally. This includes the crontab, MySQLDumper uses.
77
+
78
+ How to install MySQLDumper:
79
+ Please visit [the official website](http://www.mysqldumper.de/tutorials/) for several tutorials and videotutorials where you can see, how to install MySQLDumper.
80
+
81
+ To configure the automatic backup with MySQLDumper:
82
+ Please visit [the official website](http://forum.mysqldumper.de/features-perl-cronscript-einstellungen-von-konfiguration-cron-t502.html) for informations about the full automatic backup of your database with perl and crontab.
83
+
84
+ * Maintenance Mode must be installed and all needed options must be set.
85
+ * After that, go to your Dumper-settings -> Configuration -> Databases. There you have two options
86
+ ->Command before Dump
87
+ ->Command after Dump
88
+ * On the right you find a link named "SQL Commands", after you click this link, you can set the two queries for the automatic backup.
89
+ * Click the link "new command", give it a name like "activate maintenance mode" and paste the code below in the required field and finally save this command:
90
+
91
+ `UPDATE `wp-database`.`wp-prefix_options` SET `option_value` = '1' WHERE `wp-prefix_options`.`option_name` = 'wp-maintenance-mode-msqld';`
92
 
93
+ * Now you can set the second command to deactivate the maintenance mode like the first one with this code:
94
+
95
+ `UPDATE `wp-database`.`wp-prefix_options` SET `option_value` = '0' WHERE `wp-prefix_options`.`option_name` = 'wp-maintenance-mode-msqld';`
96
+
97
+ = Note! =
98
+ You must edit three places of the code to your options:
99
+
100
+ * `wp-database` -> put here the name of your database.
101
+ * `wp-prefix_options` -> put here the name of your options-table with the prefix you use (normally wp_options). This you must edit twice in the code!
102
+
103
+ When you have edited the code, save the two commands and go back to the MySQLDumper Configuration. Now you can choose the commands in the required field. For "Command before Dump" use the Command you named like "activate maintenance mode" and for "Command after Dump" use the other, named like "deactivate maintenance mode".
104
+
105
+ Don't forget to save these settings! After that, your Wordpress will be switch in maintenance mode, when Dumper is backup your database!
106
+
107
+ = Frequently Asked Questions for MySQLDumper =
108
+ Please visit [the official website](http://www.mysqldumper.de/) for general informations about MySQLDumper.
109
+
110
+ = How to: Backup with maintenance mode and MySQLDumper (illustrated Tutorial in german language) =
111
+ Please visit [Automatisches Backup der WordPress-Datenbank](http://www.beedy.de/2010/05/09/automatisches-backup-der-wordpress-datenbank/)
112
+
113
+ = How to: Use a contact form inside the Maintenance Message =
114
+ Please use a plugin for the form-function with the possibility Shortcode, like [Contact Form 7](http://wordpress.org/extend/plugins/contact-form-7/). Use a Shortcode of the plugin inside the teyt on the options of the plugin WP Maintenance Mode, thats all.
115
 
116
  = Localizations =
117
  * Thanks to [H&uuml;seyin &Uuml;lk&uuml;](http://www.salsabar.org/ "H&uuml;seyin &Uuml;lk&uuml;") for turkey language file
118
  * Thanks to [Gilles WALET](http://www.nevermindfr.com/ "Gilles WALET") for frensh language file
119
  * Thanks to [J&uuml;rgen Toth](http://www.relijoc.ro/ "J&uuml;rgen Toth") for romanian language file
120
+ * Thanks to [Gianni Diurno](http://gidibao.net/ "Gianni Diurno") for italian language file and an [tutorial](http://gidibao.net/index.php/2010/09/16/wp-maintenance-mode-in-italiano/ "WP Maintenance Mode in italiano") for italien users
121
  * Thanks to [Romeo Shuka](http://www.romeolab.com/wp-wartungsmodus-shqip "About this Plugin in albanian language") for albanian language file
122
  * Thanks to [TodoWordPress](http://www.todowp.org/ "TodoWordPress") for spanish language file
123
  * Thanks to [FatCow](http://www.fatcow.com "www.fatcow.com") for belorussion language file
124
  * Thanks to [yuarez](http://yuraz.uni.cc "yuraz.uni.cc") for croatian languge files
125
+ * Thanks to [Georg](http://wordpress.blogos.dk/s%C3%B8g-efter-downloads/?did=250 "wordpress.blogos.dk") for danish languge files
126
+ * Thanks to [Jakub Dirska](http://www.bellartis.com "bellartis.com") for polish languge files
127
+ * Thanks to [Rene](http://wpwebshop.com/blog/ "wpwebshop.com/blog") for durch translation files and hints to my errors on my bad english.
128
+ * Thanks to [Alejandro Garcia](http://blog.wrsmexico.com "blog.wrsmexico.com") for a spanish flash-file for the style "Animate"
129
+
130
+ = More Plugins =
131
+ Please see also my [Premium Plugins](http://wpplugins.com/author/malo.conny/). Maybe you find an solution for your requirement.
132
 
133
  = Interested in WordPress tips and tricks =
134
  You may also be interested in WordPress tips and tricks at [WP Engineer](http://wpengineer.com/) or for german people [bueltge.de](http://bueltge.de/)
140
  1. Click the `settings`-link for change time, link of authors, text and design
141
  1. Activate under the settings and your blog is in maintenance mode
142
 
143
+ See on [the official website](http://bueltge.de/wp-wartungsmodus-plugin/101/ "WP Maintenance Mode").
144
 
145
  == Screenshots ==
146
  1. Aktiv Maintenance-Mode with Theme "The Truck" and german language
155
  1. Aktiv Maintenance-Mode with Theme "Animate (Flash)"
156
  1. Aktiv Maintenance-Mode with Theme "Damask"
157
  1. Aktiv Maintenance-Mode with Theme "Lego"
158
+ 1. Aktiv Maintenance-Mode with Theme "Chemistry"
159
 
160
  == Frequently Asked Questions ==
161
  = Where can I get more information? =
162
+ Please visit [the official website](http://bueltge.de/wp-wartungsmodus-plugin/101/ "WP Maintenance Mode") for the latest information on this plugin.
163
 
164
  = I love this plugin! How can I show the developer how much I appreciate his work? =
165
+ Please visit [the official website](http://bueltge.de/wp-wartungsmodus-plugin/101/ "WP Maintenance Mode") and let him know your care or see the [wishlist](http://bueltge.de/wunschliste/ "Wishlist") of the author.
166
+
167
+ = Frequently Asked Questions for MySQLDumper =
168
+ Please visit [the official website](http://www.mysqldumper.de/) for general informations about MySQLDumper.
169
+
170
+ = How to: Backup with maintenance mode and MySQLDumper (illustrated Tutorial in german language) =
171
+ Please visit [Automatisches Backup der WordPress-Datenbank](http://www.beedy.de/2010/05/09/automatisches-backup-der-wordpress-datenbank/)
172
+
173
+ = How to: Use a contact form inside the Maintenance Message =
174
+ Please use a plugin for the form-function with the possibility Shortcode, like [Contact Form 7](http://wordpress.org/extend/plugins/contact-form-7/). Use a Shortcode of the plugin inside the teyt on the options of the plugin WP Maintenance Mode, thats all.
175
 
176
  == Other Notes ==
177
+ = Work with MySQLDumper =
178
+ This option is designed for users, who backups their database with "MySQLDumper".
179
+ With this option you can switch your Wordpress into maintenance mode, when you create a database-backup with MySQLDumper. This is very usefull especially for larger blogs, because their backup takes a longer time. With this option enabled, you have the guarantee of a clean and full backup of your database. All other requests to your database from other resources were blocked in the time of the backup and all the performance of the MySQL-Server will be taken for the backup.
180
+
181
+ = How to use =
182
+ * MySQLDumper must be installed and has to run full funtionally. This includes the crontab, MySQLDumper uses.
183
+
184
+ How to install MySQLDumper:
185
+ Please visit [the official website](http://www.mysqldumper.de/tutorials/) for several tutorials and videotutorials where you can see, how to install MySQLDumper.
186
+
187
+ To configure the automatic backup with MySQLDumper:
188
+ Please visit [the official website](http://forum.mysqldumper.de/features-perl-cronscript-einstellungen-von-konfiguration-cron-t502.html) for informations about the full automatic backup of your database with perl and crontab.
189
+
190
+ * Maintenance Mode must be installed and all needed options must be set.
191
+ * After that, go to your Dumper-settings -> Configuration -> Databases. There you have two options
192
+ ->Command before Dump
193
+ ->Command after Dump
194
+ * On the right you find a link named "SQL Commands", after you click this link, you can set the two queries for the automatic backup.
195
+ * Click the link "new command", give it a name like "activate maintenance mode" and paste the code below in the required field and finally save this command:
196
+
197
+ `UPDATE `wp-database`.`wp-prefix_options` SET `option_value` = '1' WHERE `wp-prefix_options`.`option_name` = 'wp-maintenance-mode-msqld';`
198
+
199
+ * Now you can set the second command to deactivate the maintenance mode like the first one with this code:
200
+
201
+ `UPDATE `wp-database`.`wp-prefix_options` SET `option_value` = '0' WHERE `wp-prefix_options`.`option_name` = 'wp-maintenance-mode-msqld';`
202
+
203
+ = Note! =
204
+ You must edit three places of the code to your options:
205
+
206
+ * `wp-database` -> put here the name of your database.
207
+ * `wp-prefix_options` -> put here the name of your options-table with the prefix you use (normally wp_options). This you must edit twice in the code!
208
+
209
+ When you have edited the code, save the two commands and go back to the MySQLDumper Configuration. Now you can choose the commands in the required field. For "Command before Dump" use the Command you named like "activate maintenance mode" and for "Command after Dump" use the other, named like "deactivate maintenance mode".
210
+
211
+ Don't forget to save these settings! After that, your Wordpress will be switch in maintenance mode, when Dumper is backup your database!
212
+
213
+ = Frequently Asked Questions for MySQLDumper =
214
+ Please visit [the official website](http://www.mysqldumper.de/) for general informations about MySQLDumper.
215
+
216
+ = How to: Backup with maintenance mode and MySQLDumper (illustrated Tutorial in german language) =
217
+ Please visit [Automatisches Backup der WordPress-Datenbank](http://www.beedy.de/2010/05/09/automatisches-backup-der-wordpress-datenbank/)
218
+
219
  = Acknowledgements =
220
  * Thanks to [David Hellmann](http://www.davidhellmann.com/ "David Hellmann") for the design "The Truck"
221
  * Thanks to [Nicki Steiger](http://mynicki.net/ "Nicki Steiger") for the design "The Sun"
227
  * Thanks to [Sebastian Schmiedel](http://www.cayou-media.de/ "Sebastian Schmiedel") for the design "Animate (Flash)"
228
  * Thanks to [Fabian Letscher](http://fabianletscher.de/ "Fabian Letscher") for the design "Damask"
229
  * Thanks to [Alex Frison](http://www.afrison.com/ "Alex Frison") for the design "Lego"
230
+ * Thanks to [elmastudio.de](http://www.elmastudio.de/ "elmastudio.de") for the design "Chemistry"
231
+
232
+ * Thanks to [Stefan Wilhelm](http://www.beedy.de/) for Idea, Tests and a tutorial for work with MySQLDumper
233
 
234
  * Thanks to [H&uuml;seyin &Uuml;lk&uuml;](http://www.salsabar.org/ "H&uuml;seyin &Uuml;lk&uuml;") for turkey language file
235
  * Thanks to [Gilles WALET](http://www.nevermindfr.com/ "Gilles WALET") for frensh language file
239
  * Thanks to [TodoWordPress](http://www.todowp.org/ "TodoWordPress") for spanish language file
240
  * Thanks to [FatCow](http://www.fatcow.com "www.fatcow.com") for belorussion language file
241
  * Thanks to [yuarez](http://yuraz.uni.cc "yuraz.uni.cc") for croatian languge files
242
+ * Thanks to [Georg](http://wordpress.blogos.dk/s%C3%B8g-efter-downloads/?did=250 "wordpress.blogos.dk") for danish languge files
243
+ * Thanks to [Jakub Dirska](http://www.bellartis.com "bellartis.com") for polish languge files
244
+ * Thanks to [Rene](http://wpwebshop.com/blog/ "wpwebshop.com/blog") for durch translation files and hints to my errors on my bad english.
245
+
246
 
247
  == Changelog ==
248
+ = 1.6.6. (10/09/2010) =
249
+ * Maintenance: many changes on the code; $locale and hook in side frontend
250
+ * Maintenance: change attribute_escaped to esc_attr with custom method for WP smaller 2.8
251
+ * Maintenance: Update german language files
252
+ * Feature: Shortcodes is now possible in the "Text" option
253
+ * Feature: no cache header rewrite
254
+
255
+ = 1.6.5 (09/16/2010) =
256
+ * add new design "Chemistry" by [elmastudio.de](http://www.elmastudio.de/ "elmastudio.de")
257
+ * changes for include methods od class for preview
258
+ * changes the possibility for include of language specific flash files
259
+
260
+ = 1.6.4 (09/13/2010) =
261
+ * add preview functions
262
+ * bugfix for list in wp-admin/plugins.php
263
+ * remove datepicker.regional - dont work fine
264
+ * different small changes
265
+ * new language file .pot
266
+ * add flash file and change on plugin for style "Animate" for spanish language
267
+
268
+ = 1.6.3 (07/27/2010) =
269
+ * bugfix to include stylesheet on maintenance mode message
270
+
271
+ = 1.6.2 (07/08/2010) =
272
+ * add functions for hint in the new UI of WP 3.0
273
+ * add more WP Codex standard source
274
+ * fix strings in the language and languages files
275
+ * add datetimepicker-de
276
+
277
+ = 1.6.1 (06/18/2010) =
278
+ * fix a problem with https://; see [Ticket #13941](http://core.trac.wordpress.org/ticket/13941)
279
+
280
+ = 1.6 (05/17/2010) =
281
+ * bugfix for exclude sites
282
+
283
+ = 1.5.9 (05/07/2010) =
284
+ * change different points
285
+ * add possibility to wotk with MySQLDumper
286
+
287
+ = 1.5.8 (21/03/2010)=
288
+ * fix exclude error
289
+ * add textareas for heading and header fields
290
+
291
+ = 1.5.7 (03/18/2010) =
292
+ * block admin-area via role
293
+ * add message for registered users with not enough rights
294
+ * add message on login-page
295
+ * different changes
296
+
297
+ = 1.5.6 (02/25/2010) =
298
+ * changes on css, site.php and different syntax on the plugin
299
+
300
+ = 1.5.5 (02/23/2010) =
301
+ * SORRY, small bug for the url to jQuery
302
+
303
+ = 1.5.4 (02/23/2010) =
304
+ * add time for countdown
305
+ * changes for WP 3.0
306
+ * changees on rights to see frontend
307
+
308
  = 1.5.3 (01/05/2010) =
309
  * Fix for JavaScript with WordPress 2.9
310
  * Add new custom fields for fronted: title, header, heading
screenshot-1.png CHANGED
File without changes
screenshot-10.png CHANGED
File without changes
screenshot-11.png CHANGED
File without changes
screenshot-12.png CHANGED
File without changes
screenshot-13.png ADDED
Binary file
screenshot-2.png CHANGED
Binary file
screenshot-3.png CHANGED
File without changes
screenshot-4.png CHANGED
File without changes
screenshot-5.png CHANGED
File without changes
screenshot-6.png CHANGED
File without changes
screenshot-7.png CHANGED
File without changes
screenshot-8.png CHANGED
File without changes
screenshot-9.png CHANGED
File without changes
site.php CHANGED
@@ -1,73 +1,63 @@
 
 
 
 
 
 
1
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
- <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?> id="wartungsmodus" >
3
 
4
  <head>
5
 
6
  <title><?php if ( isset($value['title']) && ($value['title'] != '') ) echo stripslashes_deep( $value['title'] ); else { bloginfo('name'); echo ' - '; _e( 'Maintenance Mode', FB_WM_TEXTDOMAIN ); } ?></title>
7
 
8
  <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
9
- <meta name="author" content="WP-!wartungsmodus: Frank Bueltge, http://bueltge.de" />
10
  <meta name="description" content="<?php bloginfo('name'); echo ' - '; bloginfo('description'); ?>" />
 
11
  <link rel="Shortcut Icon" type="image/x-icon" href="<?php echo get_option('home'); ?>/favicon.ico" />
12
-
13
- <?php if ( isset($value['radio']) && 1 === $value['radio'] ) {
14
- $date = explode( '-', $value['date'] );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  if (count($date) < 3) {
16
- $date = 0; //ausschalten wegen datum ist nicht
17
  } else {
18
  $date[1] = $date[1] - 1;
19
- $date = $date[2].', '.$date[1].', '.$date[0];
20
- }
21
- ?>
22
- <script language="javascript" type="text/javascript">
23
- <!--
24
- function differenz (d1, d2) {
25
- if (d1 < d2) {
26
- var d = d1;
27
- d1 = d2;
28
- d2 = d;
29
- }
30
- var t = Math.floor ((d1 - d2) / (24 * 60 * 60 * 1000));
31
- var s = Math.floor (((d1 - d2) - (t * 24 * 60 * 60 * 1000)) / (60 * 60 * 1000));
32
- var m = Math.floor (((d1 - d2) - (t * 24 * 60 * 60 * 1000) - (s * 60 * 60 * 1000)) / (60 * 1000));
33
- var sec = Math.floor (((d1 - d2) - (t * 24 * 60 * 60 * 1000) - (s * 60 * 60 * 1000) - (m * 60 * 1000)) / 1000);
34
- return { 't': t, 's': s, 'm': m, 'sec': sec };
35
- }
36
-
37
- function update_countdown (element_id, termin, beschreibung) {
38
- var now = new Date ();
39
- var ausgabe;
40
- var diff;
41
-
42
- if (now.getTime () > termin) {
43
- // Termin war schon
44
- ausgabe = '<?php _e("The due date was before", FB_WM_TEXTDOMAIN ); ?>'+' ';
45
- diff = differenz (now.getTime (), termin);
46
- ausgabe += diff.t + ' '+'<?php _e( "days", FB_WM_TEXTDOMAIN ); ?>'+', ' + diff.s + ' '+'<?php _e("hours", FB_WM_TEXTDOMAIN ); ?>'+', ' + diff.m + ' '+'<?php _e("minutes", FB_WM_TEXTDOMAIN ); ?>'+' '+'<?php _e("and", FB_WM_TEXTDOMAIN ); ?>'+' ' + diff.sec + ' '+'<?php _e("seconds", FB_WM_TEXTDOMAIN ); ?>';
47
- ausgabe += (beschreibung ? beschreibung : '');
48
- } else {
49
- ausgabe = '';
50
- diff = differenz (termin, now.getTime ());
51
- ausgabe += diff.t + ' '+'<?php _e("days", FB_WM_TEXTDOMAIN ); ?>'+', ' + diff.s + ' '+'<?php _e("hours", FB_WM_TEXTDOMAIN ); ?>'+', ' + diff.m + ' '+'<?php _e("minutes", FB_WM_TEXTDOMAIN ); ?>'+' '+'<?php _e("and", FB_WM_TEXTDOMAIN ); ?>'+' ' + diff.sec + ' '+'<?php _e("seconds", FB_WM_TEXTDOMAIN ); ?>';
52
- ausgabe += (beschreibung ? beschreibung : '');
53
- }
54
- document.getElementById (element_id).firstChild.data = ausgabe;
55
- }
56
-
57
- function countdown_timer (element_id, termin, beschreibung) {
58
- if (document.getElementById (element_id)) {
59
- if (!document.getElementById (element_id).firstChild)
60
- document.getElementById (element_id).appendChild (document.createTextNode (''));
61
- if (termin instanceof Date) {
62
- update_countdown (element_id, termin.getTime (), beschreibung);
63
- window.setInterval ('update_countdown (\'' + element_id + '\', ' + termin.getTime () +
64
- (beschreibung ? ', \'' + beschreibung + '\'' : '') + ')', 1000);
65
  }
66
  }
67
  }
68
- // -->
69
- </script>
70
- <?php }
71
 
72
  wm_head(); ?>
73
 
@@ -80,25 +70,56 @@
80
  </div>
81
 
82
  <div id="content">
83
- <?php wm_content(); ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
84
  <h1><?php if ( isset($value['heading']) && ($value['heading'] != '') ) echo stripslashes_deep( $value['heading'] ); else _e( 'Maintenance Mode', FB_WM_TEXTDOMAIN ); ?></h1>
85
- <?php if ( $value['radio'] === 1 && $date !== 0 ) { ?>
86
- <?php echo sprintf( stripslashes_deep( $value['text']), '<span id="countdown"></span>', '' ); ?>
87
- <?php } else { ?>
88
- <?php echo sprintf( stripslashes_deep( $value['text'] ), $value['time'], $unit ); ?>
 
 
 
 
 
 
 
89
  <?php } ?>
90
- <div class="admin"><a href="<?php echo get_option('home'); ?>/wp-admin/"><?php _e( 'Admin-Login', FB_WM_TEXTDOMAIN ); ?></a></div>
91
  </div>
92
 
93
  <?php wm_footer(); ?>
94
 
95
  <?php
96
- if ( isset($date) && $date !== 0 ) {
 
 
97
  ?>
98
- <script language="javascript" type="text/javascript">
99
- <!--
100
- countdown_timer('countdown', new Date(<?php echo $date; ?>) );
101
- // -->
 
 
 
 
 
 
 
 
102
  </script>
103
  <?php } ?>
104
  </body>
1
+ <?php
2
+ if ( !isset($value) ) {
3
+ $value = get_option( FB_WM_TEXTDOMAIN );
4
+ $unitvalues = $WPMaintenanceMode->case_unit($value['unit']);
5
+ }
6
+ ?>
7
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
8
+ <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?> id="wp_maintenance_mode" >
9
 
10
  <head>
11
 
12
  <title><?php if ( isset($value['title']) && ($value['title'] != '') ) echo stripslashes_deep( $value['title'] ); else { bloginfo('name'); echo ' - '; _e( 'Maintenance Mode', FB_WM_TEXTDOMAIN ); } ?></title>
13
 
14
  <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
15
+ <meta name="author" content="WP Maintenance Mode: Frank Bueltge, http://bueltge.de" />
16
  <meta name="description" content="<?php bloginfo('name'); echo ' - '; bloginfo('description'); ?>" />
17
+ <meta name="robots" content="noindex,nofollow" />
18
  <link rel="Shortcut Icon" type="image/x-icon" href="<?php echo get_option('home'); ?>/favicon.ico" />
19
+ <link rel="stylesheet" type="text/css" href="<?php echo WP_PLUGIN_URL . '/' . FB_WM_BASEDIR ?>/css/jquery.countdown.css" media="all" />
20
+
21
+ <?php
22
+ if ( !defined('WP_CONTENT_URL') )
23
+ define('WP_CONTENT_URL', get_option('siteurl') . '/wp-content');
24
+ if ( !defined('WP_PLUGIN_URL') )
25
+ define( 'WP_PLUGIN_URL', WP_CONTENT_URL . '/plugins' );
26
+
27
+ if ( !defined('FB_WM_BASENAME') )
28
+ define( 'FB_WM_BASENAME', plugin_basename(__FILE__) );
29
+ if ( !defined('FB_WM_BASEDIR') )
30
+ define( 'FB_WM_BASEDIR', dirname( plugin_basename(__FILE__) ) );
31
+
32
+ global $locale, $user_ID;
33
+
34
+ get_currentuserinfo();
35
+
36
+ if ( defined('WPLANG') )
37
+ $locale = WPLANG;
38
+ if ( empty($locale) )
39
+ $locale = 'en_US';
40
+
41
+ if ( isset($value['radio']) && 1 === $value['radio'] ) {
42
+ $datetime = explode( ' ', $value['date'] );
43
+ $date = explode( '-', $datetime[0] );
44
+ if ( isset($datetime[1]) )
45
+ $time = explode( ':', $datetime[1] );
46
+ else $time = 0;
47
  if (count($date) < 3) {
48
+ $date = 0; //ausschalten wegen datum is nicht
49
  } else {
50
  $date[1] = $date[1] - 1;
51
+ if (count($time) < 3)
52
+ $time = 0;
53
+ if ( isset($time) && 0 !== $time ) {
54
+ // 'Years', 'Months', 'Weeks', 'Days', 'Hours', 'Minutes', 'Seconds'
55
+ $date = $date[2].', '.$date[1].', '.$date[0].', '.$time[0].', '.$time[1].', '.$time[2];
56
+ } else {
57
+ $date = $date[2].', '.$date[1].', '.$date[0];
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
  }
59
  }
60
  }
 
 
 
61
 
62
  wm_head(); ?>
63
 
70
  </div>
71
 
72
  <div id="content">
73
+ <?php wm_content();
74
+
75
+ if (isset($user_ID) && $user_ID) {
76
+ $adminlogin = wp_logout_url();
77
+ if ( isset($rolestatus) && 'norights' == $rolestatus )
78
+ $adminloginmsg = '<h3>' . __( 'Access to the admin area blocked', FB_WM_TEXTDOMAIN ) . '</h3>';
79
+ else
80
+ $adminloginmsg = '';
81
+ $adminloginstr = __( 'Admin-Logout', FB_WM_TEXTDOMAIN );
82
+ } else {
83
+ $adminlogin = site_url('wp-login.php', 'login');
84
+ $adminloginmsg = '';
85
+ $adminloginstr = __( 'Admin-Login', FB_WM_TEXTDOMAIN );
86
+ } ?>
87
+
88
  <h1><?php if ( isset($value['heading']) && ($value['heading'] != '') ) echo stripslashes_deep( $value['heading'] ); else _e( 'Maintenance Mode', FB_WM_TEXTDOMAIN ); ?></h1>
89
+ <?php echo $adminloginmsg; ?>
90
+ <?php if ( isset($value['radio']) && 1 === $value['radio'] && 0 !== $date ) {
91
+ $echodate = $datetime[0];
92
+ if ('de_DE' == $locale)
93
+ $echodate = str_replace('-', '.', $datetime[0]);
94
+ if ( 0 !== $time )
95
+ $echodate .= ' ' . $datetime[1];
96
+ ?>
97
+ <?php echo sprintf( stripslashes_deep( $value['text']), '<br /><span id="countdown"></span>', $echodate ); ?>
98
+ <?php } elseif ( isset($value['text']) && isset($value['time']) ) { ?>
99
+ <?php echo sprintf( stripslashes_deep( $value['text'] ), $value['time'], $unitvalues['unit'] ); ?>
100
  <?php } ?>
101
+ <div class="admin" onclick="location.href='<?php echo $adminlogin; ?>';" onkeypress="location.href='<?php echo $adminlogin; ?>';"><a href="<?php echo $adminlogin; ?>"><?php echo $adminloginstr; ?></a></div>
102
  </div>
103
 
104
  <?php wm_footer(); ?>
105
 
106
  <?php
107
+ if ( isset($date) && 0 !== $date ) {
108
+
109
+ $locale = substr($locale, 0, 2);
110
  ?>
111
+ <script type="text/javascript" src="<?php bloginfo('url') ?>/wp-includes/js/jquery/jquery.js"></script>
112
+ <script type="text/javascript" src="<?php echo WPMaintenanceMode::get_plugins_url( 'js/jquery.countdown.pack.js', __FILE__ ); ?>"></script>
113
+ <?php if ( WPMaintenanceMode::url_exists( WPMaintenanceMode::get_plugins_url( 'js/jquery.countdown-' . $locale . '.js', __FILE__ ) ) ) { ?>
114
+ <script type="text/javascript" src="<?php echo WPMaintenanceMode::get_plugins_url( 'js/jquery.countdown-' . $locale . '.js', __FILE__ ); ?>"></script>
115
+ <?php } ?>
116
+ <script type="text/javascript">
117
+ jQuery(document).ready( function($){
118
+ var austDay = new Date();
119
+ // 'Years', 'Months', 'Weeks', 'Days', 'Hours', 'Minutes', 'Seconds'
120
+ austDay = new Date(<?php echo $date; ?>);
121
+ $('#countdown').countdown({until: austDay});
122
+ });
123
  </script>
124
  <?php } ?>
125
  </body>
styles/af.css CHANGED
@@ -59,6 +59,13 @@ top: 150px;
59
  no-repeat;
60
  }
61
 
 
 
 
 
 
 
 
62
  #content div.admin {
63
  position: absolute;
64
  top: 255px;
59
  no-repeat;
60
  }
61
 
62
+ h3 {
63
+ position: absolute;
64
+ left: 155px;
65
+ top: 100px;
66
+ color: #8f1218;
67
+ }
68
+
69
  #content div.admin {
70
  position: absolute;
71
  top: 255px;
styles/be.css CHANGED
@@ -30,6 +30,9 @@
30
  font-family:verdana;
31
  font-weight:normal;}
32
 
 
 
 
33
  #header { margin-bottom:90px; padding-left:}
34
 
35
  div.admin a {
30
  font-family:verdana;
31
  font-weight:normal;}
32
 
33
+ h3 {
34
+ color: #8f1218;}
35
+
36
  #header { margin-bottom:90px; padding-left:}
37
 
38
  div.admin a {
styles/cm.css CHANGED
@@ -38,6 +38,10 @@ img {
38
 
39
  }
40
 
 
 
 
 
41
  #footer {
42
  text-align:right;
43
  }
38
 
39
  }
40
 
41
+ h3 {
42
+ color: #8f1218;
43
+ }
44
+
45
  #footer {
46
  text-align:right;
47
  }
styles/dh.css CHANGED
@@ -44,6 +44,15 @@ top: 270px;
44
  no-repeat;
45
  }
46
 
 
 
 
 
 
 
 
 
 
47
  #content p {
48
  width: 380px;
49
  height: 300px;
44
  no-repeat;
45
  }
46
 
47
+ #content h3 {
48
+ position: absolute;
49
+ width: 410px;
50
+ font-size: 20px;
51
+ left: 55px;
52
+ top: 320px;
53
+ color: #8f1218;
54
+ }
55
+
56
  #content p {
57
  width: 380px;
58
  height: 300px;
styles/es.css ADDED
@@ -0,0 +1,92 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * @design http://www.elmastudio.de
3
+ * @link http://www.elmastudio.de/freebies/freebie-illustration-fuer-wartungsmodus-in-wordpress/
4
+ */
5
+ * {
6
+ list-style-type: none;
7
+ margin: 0;
8
+ padding: 0;
9
+ border: none;
10
+ }
11
+
12
+ body {
13
+ background: url('images/es/bg.jpg') repeat;
14
+ }
15
+ a {
16
+ text-decoration: none;
17
+ color: #262626;
18
+ }
19
+ a:hover {
20
+ color:#000;
21
+ text-decoration: underline;
22
+ }
23
+ #content {
24
+ margin: 30px auto;
25
+ width: 980px;
26
+ height: 610px;
27
+ background:url('images/es/bg-image.png') 0 0 no-repeat;
28
+ position:relative;
29
+ }
30
+ #content h1 {
31
+ position: absolute;
32
+ width: 384px;
33
+ height: 45px;
34
+ top: 75px;
35
+ right: 110px;
36
+ background:url('images/es/m-mode.png') 0 0 no-repeat;
37
+ text-indent:-9999px;
38
+ }
39
+ #content h3 {
40
+ position: absolute;
41
+ width: 410px;
42
+ left: 55px;
43
+ top: 320px;
44
+ font-size: 20px;
45
+ color: #8f1218;
46
+ }
47
+ #content p {
48
+ width: 380px;
49
+ height: 300px;
50
+ position: absolute;
51
+ top: 130px;
52
+ right: 105px;
53
+ font: normal 18px/23px Arial, Helvetica, sans-serif;
54
+ color: #ccc;
55
+ text-shadow: 1px 1px 2px #333;
56
+ filter: dropshadow(color=#333, offx=1, offy=1);
57
+ }
58
+ #content p strong {
59
+ font-weight:700;
60
+ color: #30ADE6;
61
+ }
62
+ #content div.admin {
63
+ position: absolute;
64
+ width: 106px;
65
+ height: 40px;
66
+ top: 260px;
67
+ right:110px;
68
+ background:url('images/es/button.png') 0 0 no-repeat;
69
+ text-indent:-9999px;
70
+ cursor:pointer;
71
+ }
72
+ #header {
73
+ position: absolute;
74
+ top: 15px;
75
+ width: 100%;
76
+ text-align:center;
77
+ font: normal 15px Arial, Helvetica, sans-serif;
78
+ text-transform:uppercase;
79
+ color: #ccc;
80
+ text-shadow: 1px 1px 2px #333;
81
+ filter: dropshadow(color=#333, offx=1, offy=1);
82
+ font-weight:700;
83
+ }
84
+ #footer {
85
+ position: absolute;
86
+ bottom: 15px;
87
+ left: 15px;
88
+ font: normal 15px Arial, Helvetica, sans-serif;
89
+ }
90
+ #footer img {
91
+ vertical-align: bottom;
92
+ }
styles/fl.css CHANGED
@@ -97,6 +97,10 @@ margin:0 0 0.7em !important;
97
  margin:4em 0 0.7em 0;
98
  }
99
 
 
 
 
 
100
  *+html h1 {margin:10em 0 0.7 0;}
101
 
102
  #content p {
97
  margin:4em 0 0.7em 0;
98
  }
99
 
100
+ h3 {
101
+ text-align:center;
102
+ }
103
+
104
  *+html h1 {margin:10em 0 0.7 0;}
105
 
106
  #content p {
styles/fv.css CHANGED
@@ -50,6 +50,12 @@ p, strong, a {
50
  border-bottom: 7px solid #C5C5C5;
51
  }
52
 
 
 
 
 
 
 
53
  #content p {
54
  width: 300px;
55
  }
50
  border-bottom: 7px solid #C5C5C5;
51
  }
52
 
53
+ #content h3 {
54
+ font-size: 140%;
55
+ color: #8f1218;
56
+ padding: 0 0 0 22px;
57
+ }
58
+
59
  #content p {
60
  width: 300px;
61
  }
styles/images/background.jpg CHANGED
File without changes
styles/images/bg.gif CHANGED
File without changes
styles/images/bg.jpg CHANGED
File without changes
styles/images/box-bg.jpg CHANGED
File without changes
styles/images/button.png CHANGED
File without changes
styles/images/do-not-enter.jpg CHANGED
File without changes
styles/images/es/bg-image.png ADDED
Binary file
styles/images/es/bg.jpg ADDED
Binary file
styles/images/es/button.png ADDED
Binary file
styles/images/es/m-mode.png ADDED
Binary file
styles/images/gnome-control_48px.png CHANGED
File without changes
styles/images/gnome_key_32px.png CHANGED
File without changes
styles/images/headline-af-de_DE.jpg CHANGED
File without changes
styles/images/headline-af-en_US.jpg CHANGED
File without changes
styles/images/headline-de_DE.jpg CHANGED
File without changes
styles/images/headline-en_US.jpg CHANGED
File without changes
styles/images/lego-bg.jpg CHANGED
File without changes
styles/images/lego-content.jpg CHANGED
File without changes
styles/images/leiste.jpg CHANGED
File without changes
styles/images/monster.jpg CHANGED
File without changes
styles/images/wartungsmodus.jpg CHANGED
File without changes
styles/ks.css CHANGED
@@ -40,6 +40,12 @@ strong {
40
  color: #000;
41
  }
42
 
 
 
 
 
 
 
43
  #content p {
44
  font-size: 170%;
45
  margin-left: 25%;
40
  color: #000;
41
  }
42
 
43
+ #content h3 {
44
+ font-size: 170%;
45
+ margin-left: 25%;
46
+ color: #8f1218;
47
+ }
48
+
49
  #content p {
50
  font-size: 170%;
51
  margin-left: 25%;
styles/ln.css CHANGED
@@ -81,6 +81,9 @@ font-weight: normal;
81
  border-bottom: 1px solid #E3E3E3;
82
  margin-bottom: 0.8em;
83
  }
 
 
 
84
  .admin a {
85
  background: #FFFFFF url('images/gnome_key_32px.png') 0.5em 0.5em no-repeat;
86
  border: 1px solid #A0A0A0;
81
  border-bottom: 1px solid #E3E3E3;
82
  margin-bottom: 0.8em;
83
  }
84
+ h3 {
85
+ color: #8f1218;
86
+ }
87
  .admin a {
88
  background: #FFFFFF url('images/gnome_key_32px.png') 0.5em 0.5em no-repeat;
89
  border: 1px solid #A0A0A0;
styles/monster.css CHANGED
@@ -42,6 +42,12 @@ img{
42
  margin: 33px 0 20px 0;
43
  }
44
 
 
 
 
 
 
 
45
  #content p{
46
  width:300px;
47
  font: 14px/16px helvetica, arial, sans-serif;
42
  margin: 33px 0 20px 0;
43
  }
44
 
45
+ #content h3 {
46
+ padding: 0 0 0 55px;
47
+ margin: -20px 0;
48
+ color: #8f1218;
49
+ }
50
+
51
  #content p{
52
  width:300px;
53
  font: 14px/16px helvetica, arial, sans-serif;
styles/nicki.css CHANGED
@@ -29,6 +29,10 @@ color: #fff;
29
  font-size: 1.2em;
30
  }
31
 
 
 
 
 
32
  #content p{
33
  width: 305px;
34
  }
29
  font-size: 1.2em;
30
  }
31
 
32
+ #content h3 {
33
+ color: #8f1218;
34
+ }
35
+
36
  #content p{
37
  width: 305px;
38
  }
styles/txt.css CHANGED
@@ -42,6 +42,10 @@
42
  padding: .5em 0;
43
  }
44
 
 
 
 
 
45
  #content div.admin {
46
  position: absolute;
47
  bottom: 10px;
42
  padding: .5em 0;
43
  }
44
 
45
+ h3 {
46
+ color: #8f1218;
47
+ }
48
+
49
  #content div.admin {
50
  position: absolute;
51
  bottom: 10px;
styles/wartung-de_DE.swf ADDED
Binary file
styles/wartung-es_ES.swf ADDED
Binary file
styles/wartung.swf CHANGED
File without changes
uninstall.php ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ if( !defined( 'ABSPATH') && !defined('WP_UNINSTALL_PLUGIN') )
2
+ exit();
3
+
4
+ delete_option( 'wp-maintenance-mode' );
5
+ delete_option( 'wp-maintenance-mode-msqd' );
!wartungsmodus.php → wp-maintenance-mode.php RENAMED
@@ -1,35 +1,22 @@
1
  <?php
2
- /*
3
- Plugin Name: !Wartungsmodus
4
- Plugin URI: http://bueltge.de/wp-wartungsmodus-plugin/101/
5
- Description: After activation it adds a splash page to your blog that lets visitors know your blog is down for maintenance. Logged in users get full access to the blog including the front-end, depends of the settings.
6
- Author: Frank B&uuml;ltge
7
- Author URI: http://bueltge.de/
8
- Version: 1.5.3
9
- Last change: 07.01.2010 08:48:41
10
- */
11
-
12
  /**
13
- ------------------------------------------------------------------------------------
14
- ACKNOWLEDGEMENTS
15
- ------------------------------------------------------------------------------------
16
- Basisscript von Angsuman Chakraborty - http://blog.taragana.com/
17
- New Design "The Truck" by David Hellmann - http://www.davidhellmann.com/
18
- New Design "The Sun" by Nicki Steiger - http://mynicki.net/
19
- New Design "FF Error" by Thomas Meschke - http://www.lokalnetz.com/
20
- New Design "Monster" by Sebastian Sebald - http://www.backseatsurfer.de/
21
- New Design "Chastely" by Florian Andreas Vogelmaier - http://fv-web.de/
22
- New Design "Only Typo" by Robert Pfotenhauer - http://krautsuppe.de/
23
- New Design "Paint" by Marvin Labod - http://bugeyes.de/
24
- New Design "Animate (Flash)" by Sebastian Schmiedel - http://www.cayou-media.de/
25
- New Design "Damask" by Fabian Letscher - http://fabianletscher.de/
26
- ------------------------------------------------------------------------------------
27
  */
28
 
29
  /**
30
  License:
31
  ==============================================================================
32
- Copyright 2009 Frank Bueltge (email : frank@bueltge.de)
33
 
34
  This program is free software; you can redistribute it and/or modify
35
  it under the terms of the GNU General Public License as published by
@@ -47,7 +34,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
47
 
48
  Requirements:
49
  ==============================================================================
50
- This plugin requires WordPress >= 1.5 and tested with PHP Interpreter >= 5.2.9
51
  */
52
 
53
  //avoid direct calls to this file, because now WP core and framework has been used
@@ -57,23 +44,24 @@ if ( !function_exists('add_action') ) {
57
  exit();
58
  }
59
 
60
- if ( !defined('WP_CONTENT_URL') )
61
- define('WP_CONTENT_URL', get_option('siteurl') . '/wp-content');
62
- if ( !defined('WP_PLUGIN_URL') )
63
- define( 'WP_PLUGIN_URL', WP_CONTENT_URL . '/plugins' );
64
-
65
- define( 'FB_WM_BASENAME', plugin_basename(__FILE__) );
66
- define( 'FB_WM_BASEDIR', dirname( plugin_basename(__FILE__) ) );
67
- define( 'FB_WM_TEXTDOMAIN', 'wartungsmodus' );
68
 
69
- if ( !class_exists('wartungsmodus') ) {
70
- class wartungsmodus {
 
 
71
 
 
 
 
 
 
72
 
73
- function wartungsmodus() {
74
  global $wp_version;
75
 
76
  add_action( 'load-plugins.php', array(&$this, 'add_scripts') );
 
77
  if ( version_compare( $wp_version, '2.7alpha', '>' ) ) {
78
  add_action( 'after_plugin_row_' . FB_WM_BASENAME, array(&$this, 'add_config_form'), 10, 3);
79
  add_filter( 'plugin_action_links_' . FB_WM_BASENAME, array(&$this, 'add_settings_link' ), 10, 2);
@@ -86,30 +74,76 @@ if ( !class_exists('wartungsmodus') ) {
86
  add_action( 'init', array(&$this, 'on_init') );
87
  register_activation_hook( __FILE__, array(&$this, 'add_config') );
88
  //register_deactivation_hook( __FILE__, array(&$this, 'del_config') );
89
- if ( function_exists('register_uninstall_hook') )
90
- register_uninstall_hook( __FILE__, array(&$this, 'del_config') );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
  }
92
 
93
 
94
  function on_init() {
95
-
96
- load_plugin_textdomain( FB_WM_TEXTDOMAIN, false, FB_WM_BASEDIR . '/languages' );
97
-
98
- $value = get_option( FB_WM_TEXTDOMAIN );
99
-
100
- if ( $value['active'] === 1 )
101
- $this->on_active();
102
  }
103
 
104
 
105
  function add_scripts() {
 
 
 
 
 
 
106
 
107
- wp_enqueue_script( 'jquery-ui-datepicker', WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/js/jquery-ui-1.7.2.custom.min.js', array('jquery-ui-core') , 0.1, true );
108
- //wp_enqueue_script( 'wartungsmodus-options', WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/js/script.php', array('jquery') , 0.1, true );
 
 
109
  add_action( 'admin_footer', array(&$this, 'add_script2admin_footer') );
110
 
111
- wp_enqueue_style( 'jquery-ui-datepicker', WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/css/overcast/jquery-ui-1.7.2.custom.css' );
112
- wp_enqueue_style( 'wartungsmodus-options', WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/css/style.css' );
 
 
 
 
 
 
 
113
  }
114
 
115
 
@@ -130,16 +164,16 @@ if ( !class_exists('wartungsmodus') ) {
130
  jQuery(document).ready( function($){
131
 
132
  $('#wm-pluginconflink').click(function(s){jQuery('#wm_config_row').slideToggle('fast');});
133
- $('#wm_config_active').click(function(){ wm_config_active()});
134
- $('#wm_config_submit').click(function(){ wm_config_update()});
135
- $("#wm_config-date").datepicker({ dateFormat: 'dd-mm-yy' });
136
 
137
  function wm_config_active(){
138
 
139
  active_Val = $('#wm_config-active').val();
140
- url = '<?php echo get_bloginfo('wpurl') ?>/wp-admin/admin-ajax.php';
141
  $.post(url , { "action" : "wm_config-active", "wm_config-active" : active_Val }, function(data) {
142
- $('#wm_message_active').show('fast').animate({opacity: 1.0}, 3000).hide('slow');
143
  });
144
  }
145
 
@@ -161,9 +195,9 @@ if ( !class_exists('wartungsmodus') ) {
161
  cd_day_Val = $('#wm_config-cd-day').val();
162
  cd_month_Val = $('#wm_config-cd-month').val();
163
  cd_year_Val = $('#wm_config-cd-year').val();
164
- url = '<?php echo get_bloginfo('wpurl') ?>/wp-admin/admin-ajax.php';
165
  $.post(url , { "action" : "wm_config-update", "wm_config-time" : time_Val, "wm_config-unit" : unit_Val, "wm_config-link" : link_Val, "wm_config-theme" : theme_Val, "wm_config-styleurl" : styleurl_Val, "wm_config-title" : title_Val, "wm_config-header" : header_Val, "wm_config-heading" : heading_Val,"wm_config-text" : text_Val, "wm_config-exclude" : exclude_Val, "wm_config-role" : role_Val, "wm_config-radio" : radio_Val, "wm_config-date" : date_Val, "wm_config-cd-day" : cd_day_Val, "wm_config-cd-month" : cd_month_Val, "wm_config-cd-year" : cd_year_Val }, function(data) {
166
- $('#wm_message_update').show('fast').animate({opacity: 1.0}, 3000).hide('slow');
167
  });
168
  }
169
  });
@@ -171,39 +205,42 @@ if ( !class_exists('wartungsmodus') ) {
171
  <?php
172
  }
173
 
174
-
175
  /**
176
  *
177
  * @return
178
- * @param $pluginfile Object
179
- * @param $plugindata Object (array)
180
- * @param $context Object (all, active, inactive)
181
  */
182
- function add_config_form($pluginfile, $plugindata, $context) {
183
  global $wp_roles;
184
 
 
 
 
185
  $value = get_option( FB_WM_TEXTDOMAIN );
186
  ?>
187
  <tr id="wm_config_tr" >
188
- <td colspan="5">
189
 
190
- <div id="wm_config_row" class="<?php echo ( $_GET['show'] == 'wmconfig' ) ? '' : 'config_hidden' ;?>">
191
- <div class="updated fade" id="wm_message_update" style="background-color: #FFFBCC;"><p><?php echo sprintf( __( 'Plugin %s settings <strong>updated</strong>.', FB_WM_TEXTDOMAIN ), $plugindata['Name'] ); ?></p></div>
192
- <div class="error fade" id="wm_message_active" ><p><?php echo sprintf( __( 'Plugin %s active status <strong>updated</strong>.', FB_WM_TEXTDOMAIN ), $plugindata['Name'] ); ?></p></div>
193
 
194
  <h4><?php _e( 'Plugin Activate', FB_WM_TEXTDOMAIN ); ?></h4>
195
  <input type="hidden" name="action" value="wm_config-active" />
196
  <p>
197
  <select name="wm_config-active" id="wm_config-active">
198
- <option value="0"<?php if ($value['active'] === 0) { echo ' selected="selected"'; } ?>><?php _e('False', FB_WM_TEXTDOMAIN ); ?> </option>
199
- <option value="1"<?php if ($value['active'] === 1) { echo ' selected="selected"'; } ?>><?php _e('True', FB_WM_TEXTDOMAIN ); ?> </option>
200
  </select>
201
  <input id="wm_config_active" type="button" value="<?php _e( 'Update', FB_WM_TEXTDOMAIN ); ?>" class="button-primary" />
202
  </p>
 
203
 
204
  <h4><?php _e( 'Plugin Settings', FB_WM_TEXTDOMAIN ); ?></h4>
205
  <input type="hidden" name="action" value="wm_config-update" />
206
-
207
  <table class="form-table">
208
  <tr valign="top">
209
  <th scope="row">
@@ -211,8 +248,8 @@ if ( !class_exists('wartungsmodus') ) {
211
  </th>
212
  <td>
213
  <select name="wm_config-radio" id="wm_config-radio">
214
- <option value="0"<?php if ($value['radio'] === 0) { echo ' selected="selected"'; } ?>><?php _e('False', FB_WM_TEXTDOMAIN ); ?> </option>
215
- <option value="1"<?php if ($value['radio'] === 1) { echo ' selected="selected"'; } ?>><?php _e('True', FB_WM_TEXTDOMAIN ); ?> </option>
216
  </select>
217
  </td>
218
  </tr>
@@ -221,7 +258,7 @@ if ( !class_exists('wartungsmodus') ) {
221
  <label for="wm_config-date" title="<?php _e( 'Click for datepicker', FB_WM_TEXTDOMAIN ); ?>"><?php _e( 'Date:', FB_WM_TEXTDOMAIN ); ?></label>
222
  </th>
223
  <td>
224
- <input size="12" title="<?php _e( 'Click for datepicker', FB_WM_TEXTDOMAIN ); ?>" type="text" id="wm_config-date" name="wm_config-date" value="<?php echo $value['date']; ?>" /><br />
225
  <small><?php _e( 'Activate countdown for using this. Use value and unit or use the countdown and set the date.', FB_WM_TEXTDOMAIN ); ?></small>
226
  </td>
227
  </tr>
@@ -239,13 +276,13 @@ if ( !class_exists('wartungsmodus') ) {
239
  </th>
240
  <td class="alternate">
241
  <select name="wm_config-unit" id="wm_config-unit">
242
- <option value="0"<?php if ($value['unit'] === 0) { echo ' selected="selected"'; } ?>><?php _e('second', FB_WM_TEXTDOMAIN ); ?> </option>
243
- <option value="1"<?php if ($value['unit'] === 1) { echo ' selected="selected"'; } ?>><?php _e('minute', FB_WM_TEXTDOMAIN ); ?> </option>
244
- <option value="2"<?php if ($value['unit'] === 2) { echo ' selected="selected"'; } ?>><?php _e('hour', FB_WM_TEXTDOMAIN ); ?> </option>
245
- <option value="3"<?php if ($value['unit'] === 3) { echo ' selected="selected"'; } ?>><?php _e('day', FB_WM_TEXTDOMAIN ); ?> </option>
246
- <option value="4"<?php if ($value['unit'] === 4) { echo ' selected="selected"'; } ?>><?php _e('week', FB_WM_TEXTDOMAIN ); ?> </option>
247
- <option value="5"<?php if ($value['unit'] === 5) { echo ' selected="selected"'; } ?>><?php _e('month', FB_WM_TEXTDOMAIN ); ?> </option>
248
- <option value="6"<?php if ($value['unit'] === 6) { echo ' selected="selected"'; } ?>><?php _e('year', FB_WM_TEXTDOMAIN ); ?> </option>
249
  </select>
250
  </td>
251
  </tr>
@@ -255,8 +292,8 @@ if ( !class_exists('wartungsmodus') ) {
255
  </th>
256
  <td>
257
  <select name="wm_config-link" id="wm_config-link">
258
- <option value="0"<?php if ($value['link'] === 0) { echo ' selected="selected"'; } ?>><?php _e('False', FB_WM_TEXTDOMAIN ); ?> </option>
259
- <option value="1"<?php if ($value['link'] === 1) { echo ' selected="selected"'; } ?>><?php _e('True', FB_WM_TEXTDOMAIN ); ?> </option>
260
  </select>
261
  <br />
262
  <small><?php _e( 'Please leave a link to the plugin- and design-author on your maintenance mode site.', FB_WM_TEXTDOMAIN ); ?></small>
@@ -268,18 +305,19 @@ if ( !class_exists('wartungsmodus') ) {
268
  </th>
269
  <td class="alternate">
270
  <select name="wm_config-theme" id="wm_config-theme">
271
- <option value="0"<?php if ($value['theme'] === 0) { echo ' selected="selected"'; } ?>><?php _e('Own Style', FB_WM_TEXTDOMAIN ); ?> </option>
272
- <option value="1"<?php if ($value['theme'] === 1) { echo ' selected="selected"'; } ?>><?php _e('Simple Text', FB_WM_TEXTDOMAIN ); ?> </option>
273
- <option value="2"<?php if ($value['theme'] === 2) { echo ' selected="selected"'; } ?>><?php _e('The Truck', FB_WM_TEXTDOMAIN ); ?> </option>
274
- <option value="3"<?php if ($value['theme'] === 3) { echo ' selected="selected"'; } ?>><?php _e('The Sun', FB_WM_TEXTDOMAIN ); ?> </option>
275
- <option value="4"<?php if ($value['theme'] === 4) { echo ' selected="selected"'; } ?>><?php _e('The FF Error', FB_WM_TEXTDOMAIN ); ?> </option>
276
- <option value="5"<?php if ($value['theme'] === 5) { echo ' selected="selected"'; } ?>><?php _e('Monster', FB_WM_TEXTDOMAIN ); ?> </option>
277
- <option value="6"<?php if ($value['theme'] === 6) { echo ' selected="selected"'; } ?>><?php _e('Chastely', FB_WM_TEXTDOMAIN ); ?> </option>
278
- <option value="7"<?php if ($value['theme'] === 7) { echo ' selected="selected"'; } ?>><?php _e('Only Typo', FB_WM_TEXTDOMAIN ); ?> </option>
279
- <option value="8"<?php if ($value['theme'] === 8) { echo ' selected="selected"'; } ?>><?php _e('Paint', FB_WM_TEXTDOMAIN ); ?> </option>
280
- <option value="9"<?php if ($value['theme'] === 9) { echo ' selected="selected"'; } ?>><?php _e('Animate (Flash, only german)', FB_WM_TEXTDOMAIN ); ?> </option>
281
- <option value="10"<?php if ($value['theme'] === 10) { echo ' selected="selected"'; } ?>><?php _e('Damask', FB_WM_TEXTDOMAIN ); ?> </option>
282
- <option value="11"<?php if ($value['theme'] === 11) { echo ' selected="selected"'; } ?>><?php _e('Lego', FB_WM_TEXTDOMAIN ); ?> </option>
 
283
  </select>
284
  </td>
285
  </tr>
@@ -288,7 +326,17 @@ if ( !class_exists('wartungsmodus') ) {
288
  <label for="wm_config-styleurl"><?php _e( 'Own Style URL (incl. http://):', FB_WM_TEXTDOMAIN ); ?></label>
289
  </th>
290
  <td class="alternate">
291
- <input size="30" type="text" id="wm_config-styleurl" name="wm_config-styleurl" value="<?php echo $value['styleurl']; ?>" /> <small><?php _e( 'URL to the css-file', FB_WM_TEXTDOMAIN ); ?></small>
 
 
 
 
 
 
 
 
 
 
292
  </td>
293
  </tr>
294
  <tr valign="top">
@@ -322,7 +370,7 @@ if ( !class_exists('wartungsmodus') ) {
322
  <td class="alternate">
323
  <textarea class="code" style="width: 95%;" cols="40" rows="4" name="wm_config-text" id="wm_config-text"><?php echo $value['text']; ?></textarea>
324
  <br />
325
- <small><?php _e( 'Use the first %s for the time value or countdown and second %s for the unit of the time; HTML is possible', FB_WM_TEXTDOMAIN ); ?></small>
326
  </td>
327
  </tr>
328
  <tr valign="top">
@@ -330,9 +378,9 @@ if ( !class_exists('wartungsmodus') ) {
330
  <label for="wm_config-exclude"><?php _e( 'Excludes:', FB_WM_TEXTDOMAIN ); ?></label>
331
  </th>
332
  <td>
333
- <input size="30" type="text" id="wm_config-exclude" name="wm_config-exclude" value="<?php if ($value['exclude']) { echo join( ', ', $value['exclude'] ); } ?>" />
334
  <br />
335
- <small><?php _e( 'Exlude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example: ', FB_WM_TEXTDOMAIN ); ?><code>about, my-first-page, how-is-this-possible, category/test</code></small>
336
  </td>
337
  </tr>
338
  <tr valign="top">
@@ -344,11 +392,11 @@ if ( !class_exists('wartungsmodus') ) {
344
  <?php
345
  foreach ( $wp_roles->roles as $role => $name ) {
346
  if ( function_exists('translate_user_role') )
347
- $role_name = translate_user_role( $name[name] );
348
  elseif ( function_exists('before_last_bar') )
349
- $role_name = before_last_bar( $name[name], 'User role' );
350
  else
351
- $role_name = strrpos( $name[name], '|' );
352
 
353
  if ($value['role'][0] !== $role)
354
  $selected = '';
@@ -358,11 +406,12 @@ if ( !class_exists('wartungsmodus') ) {
358
  }
359
  ?>
360
  </select>
361
- <small><?php _e( 'Allowed userrole for see the frontend of this blog.', FB_WM_TEXTDOMAIN ); ?></small>
362
  </td>
363
  </tr>
364
  </table>
365
  <br />
 
366
  <p id="submitbutton">
367
  <input id="wm_config_submit" type="button" value="<?php _e( 'Save', FB_WM_TEXTDOMAIN ); ?>" class="button-secondary" />
368
  </p>
@@ -377,20 +426,27 @@ if ( !class_exists('wartungsmodus') ) {
377
 
378
  function add_config() {
379
 
380
- $this->data = array( 'active' => 0, 'radio' => 0,'time' => 60, 'link' => 1, 'theme' => 2, 'role' => 'administrator', 'unit' => 1, 'title' => 'Maintenance mode', 'text' => '<p>Sorry for the inconvenience.<br />Our website is currently undergoing scheduled maintenance.<br /><strong>Please try back in %s %s.</strong><br />Thank you for your understanding.</p>' );
381
- add_option( 'wartungsmodus', $this->data );
 
 
 
 
 
382
  }
383
 
384
 
385
  function save_active() {
386
 
387
  $this->data = array();
388
- $this->data = get_option( 'wartungsmodus' );
 
389
 
390
  if ( isset($_POST['wm_config-active']) )
391
  $this->data['active'] = (int) $_POST['wm_config-active'];
392
 
393
- update_option( 'wartungsmodus', $this->data );
 
394
 
395
  die( __( 'Updated', FB_WM_TEXTDOMAIN ) );
396
  }
@@ -399,7 +455,7 @@ if ( !class_exists('wartungsmodus') ) {
399
  function save_config() {
400
 
401
  $this->data = array();
402
- $this->data = get_option( 'wartungsmodus' );
403
 
404
  if ( isset($_POST['wm_config-time']) )
405
  $this->data['time'] = (int) $_POST['wm_config-time'];
@@ -433,7 +489,7 @@ if ( !class_exists('wartungsmodus') ) {
433
  if ( isset($_POST['wm_config-date']) )
434
  $this->data['date'] = attribute_escape( $_POST['wm_config-date'] );
435
 
436
- update_option( 'wartungsmodus', $this->data );
437
 
438
  die( __( 'Updated', FB_WM_TEXTDOMAIN ) );
439
  }
@@ -441,7 +497,8 @@ if ( !class_exists('wartungsmodus') ) {
441
 
442
  function del_config() {
443
 
444
- delete_option( 'wartungsmodus' );
 
445
  }
446
 
447
 
@@ -460,114 +517,150 @@ if ( !class_exists('wartungsmodus') ) {
460
  $value = get_option( FB_WM_TEXTDOMAIN );
461
 
462
  if ( !isset($value['exclude']) )
463
- return false;
464
 
465
  foreach ( (array) $value['exclude'] as $exclude ) {
466
  if ( $exclude && strstr($_SERVER['REQUEST_URI'], $exclude) )
467
- return true;
468
  }
469
 
470
- return false;
471
  }
472
 
473
 
474
  function check_role() {
475
  $value = get_option( FB_WM_TEXTDOMAIN );
476
 
477
- if ( !isset( $value['role'][0] ) || ( $value['role'][0] != '' ) )
478
  $role = 'manage_options';
479
 
480
  $defaultroles = array('administrator', 'editor', 'author', 'contributor', 'subscriber');
481
 
482
- if ( $value['role'][0] == 'administrator' )
483
  $role = 'manage_options';
484
 
485
- elseif ( $value['role'][0] == 'editor' )
486
  $role = 'manage_categories';
487
 
488
- elseif ( $value['role'][0] == 'author' )
489
  $role = 'publish_posts';
490
 
491
- elseif ( $value['role'][0] == 'contributor' )
492
  $role = 'edit_posts';
493
 
494
- elseif ( $value['role'][0] == 'subscriber' )
495
  $role = 'read';
496
 
497
  elseif ( !in_array( $value['role'][0], $defaultroles ) )
498
  $role = 'manage_options';
499
 
500
  if ( current_user_can( $role ) )
501
- return true;
502
 
503
- return false;
504
  }
505
 
506
 
507
- function on_active() {
508
- global $locale, $current_user;
509
-
510
- $value = get_option( FB_WM_TEXTDOMAIN );
511
 
512
- if ( $value['active'] === 1 ) {
513
- $message = '<div id="message" class="error fade" style="background-color: #FFEBE8 !important;"><p>' . __( 'Coution: Maintenance mode is <strong>active</strong>!', FB_WM_TEXTDOMAIN ) . ' <a href="plugins.php">' . __( 'Deactivate or change Settings', FB_WM_TEXTDOMAIN ) . '</a></p></div>';
514
- add_action('admin_notices', create_function( '', "echo '$message';" ) );
515
- }
516
-
517
- add_action( 'wm_head', array(&$this, 'add_theme') );
518
- add_action( 'wm_content', array(&$this, 'add_flash') );
519
- if ( $value['link'] === 1 )
520
- add_action( 'wm_footer', array(&$this, 'add_link') );
521
-
522
- if ( defined('WPLANG') )
523
- $locale = WPLANG;
524
- if ( empty($locale) )
525
- $locale = 'en_US';
526
 
527
  switch( $value['unit'] ) {
528
  case 0:
529
- $unit = __( 'seconds', FB_WM_TEXTDOMAIN );
530
- $multiplier = 1;
531
  break;
532
  case 1:
533
- $unit = __( 'minutes', FB_WM_TEXTDOMAIN );
534
- $multiplier = 60;
535
  break;
536
  case 2:
537
- $unit = __( 'hours', FB_WM_TEXTDOMAIN );
538
- $multiplier = 3600;
539
  break;
540
  case 3:
541
- $unit = __( 'days', FB_WM_TEXTDOMAIN );
542
- $multiplier = 86400;
543
  break;
544
  case 4:
545
- $unit = __( 'weeks', FB_WM_TEXTDOMAIN );
546
- $multiplier = 604800;
547
  break;
548
  case 5:
549
- $unit = __( 'months', FB_WM_TEXTDOMAIN );
550
- $multiplier = 2592000; // 30 days
551
  break;
552
  case 6:
553
- $unit = __( 'years', FB_WM_TEXTDOMAIN );
554
- $multiplier = 31556952;
555
  break;
556
  }
557
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
558
  //$this->check_version();
559
  if ( !strstr($_SERVER['PHP_SELF'], 'feed/')
560
  && !strstr($_SERVER['PHP_SELF'], 'wp-admin/')
561
  && !strstr($_SERVER['PHP_SELF'], 'wp-login.php')
 
 
 
 
562
  && !$this->check_exclude()
563
  && !$this->check_role()
564
- )
565
- {
566
  include('site.php');
567
  exit();
568
  } else if ( strstr($_SERVER['PHP_SELF'], 'feed/') || strstr($_SERVER['PHP_SELF'], 'trackback/') ) {
569
-
570
- $backtime = $value['time'] * $multiplier;
571
  header("HTTP/1.0 503 Service Unavailable");
572
  header("Retry-After: $backtime");
573
  exit();
@@ -582,35 +675,28 @@ if ( !class_exists('wartungsmodus') ) {
582
  ?>
583
  <div id="footer">
584
  <p><a href="http://bueltge.de/"><?php _e( 'Plugin by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://bueltge.de/favicon.ico" alt="bueltge.de" width="16" height="16" /></a>
585
- <?php if ($value['theme'] === 2) { ?>
586
  &nbsp;<a href="http://davidhellmann.com/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://davidhellmann.com/favicon.ico" alt="davidhellmann.com" width="16" height="16" /></a>
587
- <?php } ?>
588
- <?php if ($value['theme'] === 3) { ?>
589
  &nbsp;<a href="http://www.mynicki.net"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.mynicki.net/favicon.ico" alt="mynicki.net" width="16" height="16" /></a>
590
- <?php } ?>
591
- <?php if ($value['theme'] === 4) { ?>
592
  &nbsp;<a href="http://www.lokalnetz.com"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.lokalnetz.com/images/favicon.ico" alt="lokalnetz.com" width="16" height="16" /></a>
593
- <?php } ?>
594
- <?php if ($value['theme'] === 5) { ?>
595
  &nbsp;<a href="http://www.backseatsurfer.de"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.backseatsurfer.de/favicon.ico" alt="backseatsurfer.de" width="16" height="16" /></a>
596
- <?php } ?>
597
- <?php if ($value['theme'] === 6) { ?>
598
  &nbsp;<a href="http://fv-web.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://fv-web.de/favicon.ico" alt="fv-web.de" width="16" height="16" /></a>
599
- <?php } ?>
600
- <?php if ($value['theme'] === 7) { ?>
601
  &nbsp;<a href="http://krautsuppe.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://krautsuppe.de/favicon.ico" alt="krautsuppe.de" width="16" height="16" /></a>
602
- <?php } ?>
603
- <?php if ($value['theme'] === 8) { ?>
604
  &nbsp;<a href="http://www.bugeyes.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.bugeyes.de/favicon.ico" alt="www.bugeyes.de" width="16" height="16" /></a>
605
- <?php } ?>
606
- <?php if ($value['theme'] === 9) { ?>
607
  &nbsp;<a href="http://www.cayou-media.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.cayou-media.de/favicon.ico" alt="www.cayou-media.de" width="16" height="16" /></a>
608
- <?php } ?>
609
- <?php if ($value['theme'] === 10) { ?>
610
  &nbsp;<a href="http://fabianletscher.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://fabianletscher.de/favicon.ico" alt="fabianletscher.de" width="16" height="16" /></a>
611
- <?php } ?>
612
- <?php if ($value['theme'] === 11) { ?>
613
  &nbsp;<a href="http://www.blogdrauf.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.blogdrauf.de/favicon.ico" alt="www.blogdrauf.de" width="16" height="16" /></a>
 
 
614
  <?php } ?>
615
  </p>
616
  </div>
@@ -638,63 +724,61 @@ if ( !class_exists('wartungsmodus') ) {
638
  break;
639
  case 1:
640
  $theme = 'txt.css';
641
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
642
  break;
643
  case 2:
644
  $theme = 'dh.css';
645
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
646
  $style .= ' <style type="text/css">' . "\n" . '<!--';
647
- $style .= ' #content h1 { text-indent: -99999px; background: url(\'' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/images/headline-' . $locale . '.jpg\') no-repeat; }' . "\n";
648
  $style .= ' -->' . "\n";
649
  $style .= ' </style>';
650
  break;
651
  case 3:
652
  $theme = 'nicki.css';
653
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
654
  break;
655
  case 4:
656
  $theme = 'ln.css';
657
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
658
  break;
659
  case 5:
660
  $theme = 'monster.css';
661
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
662
  break;
663
  case 6:
664
  $theme = 'fv.css';
665
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
666
  break;
667
  case 7:
668
  $theme = 'ks.css';
669
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
670
  break;
671
  case 8:
672
  $theme = 'be.css';
673
- $link .= '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
674
  break;
675
  case 9:
676
  $theme = 'cm.css';
677
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
678
  break;
679
  case 10:
680
  $theme = 'fl.css';
681
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
682
  break;
683
  case 11:
684
  $theme = 'af.css';
685
- $link = '<link rel="stylesheet" href="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $theme . '" type="text/css" media="all" />' ."\n";
686
  $style .= ' <style type="text/css">' . "\n" . '<!--';
687
- $style .= ' #content h1 { text-indent: -99999px; background: url(\'' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/images/headline-af-' . $locale . '.jpg\') no-repeat; }' . "\n";
688
  $style .= ' -->' . "\n";
689
  $style .= ' </style>';
690
  break;
 
 
 
691
  }
692
-
693
  echo $link . $style;
694
  }
695
 
696
 
697
  function add_flash() {
 
 
 
 
 
 
698
 
699
  $value = get_option( FB_WM_TEXTDOMAIN );
700
 
@@ -702,19 +786,72 @@ if ( !class_exists('wartungsmodus') ) {
702
  $object = '';
703
  switch( $value['theme'] ) {
704
  case 9:
705
- $flash = 'wartung.swf';
 
 
 
 
 
 
706
  $object = '
707
- <object type="application/x-shockwave-flash" data="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $flash . '" width="800" height="600" id="galerie" style="outline:none;">
708
  <param name="wmode" value="transparent" />
709
- <param name="movie" value="' . WP_PLUGIN_URL . '/' . FB_WM_BASEDIR . '/styles/' . $flash . '" />
710
- </object>
711
- ';
712
  break;
713
  }
714
-
715
  echo $object;
716
  }
717
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
718
  } // end class
719
 
720
  /**
@@ -735,7 +872,11 @@ if ( !class_exists('wartungsmodus') ) {
735
  do_action('wm_footer');
736
  }
737
 
738
- $wartungsmodus = new wartungsmodus();
 
 
 
 
 
739
  }
740
-
741
- ?>
1
  <?php
 
 
 
 
 
 
 
 
 
 
2
  /**
3
+ * Plugin Name: WP Maintenance Mode
4
+ * Plugin URI: http://bueltge.de/wp-wartungsmodus-plugin/101/
5
+ * Text Domain: wp-maintenance-mode
6
+ * Domain Path: /languages
7
+ * Description: The plugin adds a splash page to your blog that lets visitors know your blog is down for maintenance. Logged in users get full access to the blog including the front-end, depends of the settings.
8
+ * Author: Frank B&uuml;ltge
9
+ * Author URI: http://bueltge.de/
10
+ * Donate URI: http://bueltge.de/wunschliste/
11
+ * Version: 1.6.5
12
+ * Last change: 16.09.2010 13:58:36
13
+ * Licence: GPL
 
 
 
14
  */
15
 
16
  /**
17
  License:
18
  ==============================================================================
19
+ Copyright 2009-2010 Frank Bueltge (email : frank@bueltge.de)
20
 
21
  This program is free software; you can redistribute it and/or modify
22
  it under the terms of the GNU General Public License as published by
34
 
35
  Requirements:
36
  ==============================================================================
37
+ This plugin requires WordPress >= 2.6 and tested with PHP Interpreter >= 5.2.9
38
  */
39
 
40
  //avoid direct calls to this file, because now WP core and framework has been used
44
  exit();
45
  }
46
 
47
+ if ( !class_exists('WPMaintenanceMode') ) {
 
 
 
 
 
 
 
48
 
49
+ if ( !defined('WP_CONTENT_URL') )
50
+ define('WP_CONTENT_URL', site_url() . '/wp-content');
51
+ if ( !defined('WP_PLUGIN_URL') )
52
+ define( 'WP_PLUGIN_URL', WP_CONTENT_URL . '/plugins' );
53
 
54
+ define( 'FB_WM_BASENAME', plugin_basename(__FILE__) );
55
+ define( 'FB_WM_BASEDIR', dirname( plugin_basename(__FILE__) ) );
56
+ define( 'FB_WM_TEXTDOMAIN', 'wp-maintenance-mode' );
57
+
58
+ class WPMaintenanceMode {
59
 
60
+ function WPMaintenanceMode() {
61
  global $wp_version;
62
 
63
  add_action( 'load-plugins.php', array(&$this, 'add_scripts') );
64
+ add_action( 'admin_init', array(&$this, 'admin_init') );
65
  if ( version_compare( $wp_version, '2.7alpha', '>' ) ) {
66
  add_action( 'after_plugin_row_' . FB_WM_BASENAME, array(&$this, 'add_config_form'), 10, 3);
67
  add_filter( 'plugin_action_links_' . FB_WM_BASENAME, array(&$this, 'add_settings_link' ), 10, 2);
74
  add_action( 'init', array(&$this, 'on_init') );
75
  register_activation_hook( __FILE__, array(&$this, 'add_config') );
76
  //register_deactivation_hook( __FILE__, array(&$this, 'del_config') );
77
+ }
78
+
79
+
80
+ // function for WP < 2.8
81
+ function get_plugins_url($path = '', $plugin = '') {
82
+
83
+ if ( function_exists('plugin_url') )
84
+ return plugins_url($path, $plugin);
85
+
86
+ if ( function_exists('is_ssl') )
87
+ $scheme = ( is_ssl() ? 'https' : 'http' );
88
+ else
89
+ $scheme = 'http';
90
+ if ( function_exists('plugins_url') )
91
+ $url = plugins_url();
92
+ else
93
+ $url = WP_PLUGIN_URL;
94
+ if ( 0 === strpos($url, 'http') ) {
95
+ if ( function_exists('is_ssl') && is_ssl() )
96
+ $url = str_replace( 'http://', "{$scheme}://", $url );
97
+ }
98
+
99
+ if ( !empty($plugin) && is_string($plugin) )
100
+ {
101
+ $folder = dirname(plugin_basename($plugin));
102
+ if ('.' != $folder)
103
+ $url .= '/' . ltrim($folder, '/');
104
+ }
105
+
106
+ if ( !empty($path) && is_string($path) && ( FALSE === strpos($path, '..') ) )
107
+ $url .= '/' . ltrim($path, '/');
108
+
109
+ return apply_filters('plugins_url', $url, $path, $plugin);
110
  }
111
 
112
 
113
  function on_init() {
114
+
115
+ load_plugin_textdomain( FB_WM_TEXTDOMAIN, FALSE, FB_WM_BASEDIR . '/languages' );
116
+
117
+ $valuemsqld = (int) get_option( FB_WM_TEXTDOMAIN . '-msqld' );
118
+
119
+ if ( 1 === $valuemsqld )
120
+ $this->on_active();
121
  }
122
 
123
 
124
  function add_scripts() {
125
+ global $locale, $current_user;
126
+
127
+ if ( defined('WPLANG') )
128
+ $locale = WPLANG;
129
+ if ( empty($locale) )
130
+ $locale = 'en_US';
131
 
132
+ wp_enqueue_script( 'jquery-ui-datetimepicker', $this->get_plugins_url( 'js/ui.datetimepicker.js', __FILE__ ), array('jquery-ui-core') , 0.1, TRUE );
133
+ //wp_register_script( 'jquery-ui-datetimepicker-de', $this->get_plugins_url( 'js/de_DE.datetimepicker.js', __FILE__ ), array( 'jquery-ui-core', 'jquery-ui-datetimepicker' ) , 0.1, TRUE );
134
+ //if ( 'de_DE' === $locale )
135
+ // wp_enqueue_script( 'jquery-ui-core', 'jquery-ui-datetimepicker', 'jquery-ui-datetimepicker-de' );
136
  add_action( 'admin_footer', array(&$this, 'add_script2admin_footer') );
137
 
138
+ wp_enqueue_style( 'jquery-ui-datepicker', $this->get_plugins_url( 'css/overcast/jquery-ui-1.7.2.custom.css', __FILE__ ) );
139
+
140
+ add_thickbox();
141
+ }
142
+
143
+
144
+ function admin_init() {
145
+
146
+ wp_enqueue_style( 'wp-maintenance-mode-options', $this->get_plugins_url( 'css/style.css', __FILE__ ) );
147
  }
148
 
149
 
164
  jQuery(document).ready( function($){
165
 
166
  $('#wm-pluginconflink').click(function(s){jQuery('#wm_config_row').slideToggle('fast');});
167
+ $('#wm_config_active').click(function(){ wm_config_active() });
168
+ $('#wm_config_submit').click(function(){ wm_config_update() });
169
+ $("#wm_config-date").datetimepicker({ dateFormat: 'dd-mm-yy', timeFormat: ' hh:ii:ss' });
170
 
171
  function wm_config_active(){
172
 
173
  active_Val = $('#wm_config-active').val();
174
+ url = '<?php echo get_bloginfo('wpurl'); ?>/wp-admin/admin-ajax.php';
175
  $.post(url , { "action" : "wm_config-active", "wm_config-active" : active_Val }, function(data) {
176
+ $('#wm_message_active, #wm_message_active2').show('fast').animate({opacity: 1.0}, 3000).hide('slow');
177
  });
178
  }
179
 
195
  cd_day_Val = $('#wm_config-cd-day').val();
196
  cd_month_Val = $('#wm_config-cd-month').val();
197
  cd_year_Val = $('#wm_config-cd-year').val();
198
+ url = '<?php echo get_bloginfo('wpurl'); ?>/wp-admin/admin-ajax.php';
199
  $.post(url , { "action" : "wm_config-update", "wm_config-time" : time_Val, "wm_config-unit" : unit_Val, "wm_config-link" : link_Val, "wm_config-theme" : theme_Val, "wm_config-styleurl" : styleurl_Val, "wm_config-title" : title_Val, "wm_config-header" : header_Val, "wm_config-heading" : heading_Val,"wm_config-text" : text_Val, "wm_config-exclude" : exclude_Val, "wm_config-role" : role_Val, "wm_config-radio" : radio_Val, "wm_config-date" : date_Val, "wm_config-cd-day" : cd_day_Val, "wm_config-cd-month" : cd_month_Val, "wm_config-cd-year" : cd_year_Val }, function(data) {
200
+ $('#wm_message_update, #wm_message_update2').show('fast').animate({opacity: 1.0}, 3000).hide('slow');
201
  });
202
  }
203
  });
205
  <?php
206
  }
207
 
 
208
  /**
209
  *
210
  * @return
211
+ * @param $wm_pluginfile Object
212
+ * @param $wm_plugindata Object (array)
213
+ * @param $wm_context Object (all, active, inactive)
214
  */
215
+ function add_config_form($wm_pluginfile, $wm_plugindata, $wm_context) {
216
  global $wp_roles;
217
 
218
+ //if ( 0 < count($_POST['checked']) )
219
+ // return;
220
+
221
  $value = get_option( FB_WM_TEXTDOMAIN );
222
  ?>
223
  <tr id="wm_config_tr" >
224
+ <td colspan="3">
225
 
226
+ <div id="wm_config_row" class="<?php echo ( isset($_GET['show']) && 'wmconfig' == $_GET['show'] ) ? '' : 'config_hidden' ;?>">
227
+ <div class="updated fade" id="wm_message_update" style="background-color: #FFFBCC;"><p><?php echo sprintf( __( 'Plugin %s settings <strong>updated</strong>.', FB_WM_TEXTDOMAIN ), $wm_plugindata['Name'] ); ?></p></div>
228
+ <div class="error fade" id="wm_message_active" ><p><?php echo sprintf( __( 'Plugin %s active status <strong>updated</strong>.', FB_WM_TEXTDOMAIN ), $wm_plugindata['Name'] ); ?></p></div>
229
 
230
  <h4><?php _e( 'Plugin Activate', FB_WM_TEXTDOMAIN ); ?></h4>
231
  <input type="hidden" name="action" value="wm_config-active" />
232
  <p>
233
  <select name="wm_config-active" id="wm_config-active">
234
+ <option value="0"<?php if ( isset($value['active']) && 0 === $value['active'] ) { echo ' selected="selected"'; } ?>><?php _e('False', FB_WM_TEXTDOMAIN ); ?> </option>
235
+ <option value="1"<?php if ( isset($value['active']) && 1 === $value['active'] ) { echo ' selected="selected"'; } ?>><?php _e('True', FB_WM_TEXTDOMAIN ); ?> </option>
236
  </select>
237
  <input id="wm_config_active" type="button" value="<?php _e( 'Update', FB_WM_TEXTDOMAIN ); ?>" class="button-primary" />
238
  </p>
239
+ <div class="plugin-update-tr"><p id="wm_message_active2" class="update-message"><?php echo sprintf( __( 'Plugin %s active status <strong>updated</strong>.', FB_WM_TEXTDOMAIN ), $wm_plugindata['Name'] ); ?></p></div>
240
 
241
  <h4><?php _e( 'Plugin Settings', FB_WM_TEXTDOMAIN ); ?></h4>
242
  <input type="hidden" name="action" value="wm_config-update" />
243
+
244
  <table class="form-table">
245
  <tr valign="top">
246
  <th scope="row">
248
  </th>
249
  <td>
250
  <select name="wm_config-radio" id="wm_config-radio">
251
+ <option value="0"<?php if ( 0 === $value['radio'] ) { echo ' selected="selected"'; } ?>><?php _e('False', FB_WM_TEXTDOMAIN ); ?> </option>
252
+ <option value="1"<?php if ( 1 === $value['radio'] ) { echo ' selected="selected"'; } ?>><?php _e('True', FB_WM_TEXTDOMAIN ); ?> </option>
253
  </select>
254
  </td>
255
  </tr>
258
  <label for="wm_config-date" title="<?php _e( 'Click for datepicker', FB_WM_TEXTDOMAIN ); ?>"><?php _e( 'Date:', FB_WM_TEXTDOMAIN ); ?></label>
259
  </th>
260
  <td>
261
+ <input size="30" title="<?php _e( 'Click for datepicker', FB_WM_TEXTDOMAIN ); ?>" type="text" id="wm_config-date" name="wm_config-date" value="<?php if ( isset($value['date']) ) echo $value['date']; ?>" /><br />
262
  <small><?php _e( 'Activate countdown for using this. Use value and unit or use the countdown and set the date.', FB_WM_TEXTDOMAIN ); ?></small>
263
  </td>
264
  </tr>
276
  </th>
277
  <td class="alternate">
278
  <select name="wm_config-unit" id="wm_config-unit">
279
+ <option value="0"<?php if ( 0 === $value['unit'] ) { echo ' selected="selected"'; } ?>><?php _e('second', FB_WM_TEXTDOMAIN ); ?> </option>
280
+ <option value="1"<?php if ( 1 === $value['unit'] ) { echo ' selected="selected"'; } ?>><?php _e('minute', FB_WM_TEXTDOMAIN ); ?> </option>
281
+ <option value="2"<?php if ( 2 === $value['unit'] ) { echo ' selected="selected"'; } ?>><?php _e('hour', FB_WM_TEXTDOMAIN ); ?> </option>
282
+ <option value="3"<?php if ( 3 === $value['unit'] ) { echo ' selected="selected"'; } ?>><?php _e('day', FB_WM_TEXTDOMAIN ); ?> </option>
283
+ <option value="4"<?php if ( 4 === $value['unit'] ) { echo ' selected="selected"'; } ?>><?php _e('week', FB_WM_TEXTDOMAIN ); ?> </option>
284
+ <option value="5"<?php if ( 5 === $value['unit'] ) { echo ' selected="selected"'; } ?>><?php _e('month', FB_WM_TEXTDOMAIN ); ?> </option>
285
+ <option value="6"<?php if ( 6 === $value['unit'] ) { echo ' selected="selected"'; } ?>><?php _e('year', FB_WM_TEXTDOMAIN ); ?> </option>
286
  </select>
287
  </td>
288
  </tr>
292
  </th>
293
  <td>
294
  <select name="wm_config-link" id="wm_config-link">
295
+ <option value="0"<?php if ( 0 === $value['link'] ) { echo ' selected="selected"'; } ?>><?php _e('False', FB_WM_TEXTDOMAIN ); ?> </option>
296
+ <option value="1"<?php if ( 1 === $value['link'] ) { echo ' selected="selected"'; } ?>><?php _e('True', FB_WM_TEXTDOMAIN ); ?> </option>
297
  </select>
298
  <br />
299
  <small><?php _e( 'Please leave a link to the plugin- and design-author on your maintenance mode site.', FB_WM_TEXTDOMAIN ); ?></small>
305
  </th>
306
  <td class="alternate">
307
  <select name="wm_config-theme" id="wm_config-theme">
308
+ <option value="0"<?php if ( 0 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Own Style', FB_WM_TEXTDOMAIN ); ?> </option>
309
+ <option value="1"<?php if ( 1 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Simple Text', FB_WM_TEXTDOMAIN ); ?> </option>
310
+ <option value="2"<?php if ( 2 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('The Truck', FB_WM_TEXTDOMAIN ); ?> </option>
311
+ <option value="3"<?php if ( 3 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('The Sun', FB_WM_TEXTDOMAIN ); ?> </option>
312
+ <option value="4"<?php if ( 4 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('The FF Error', FB_WM_TEXTDOMAIN ); ?> </option>
313
+ <option value="5"<?php if ( 5 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Monster', FB_WM_TEXTDOMAIN ); ?> </option>
314
+ <option value="6"<?php if ( 6 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Chastely', FB_WM_TEXTDOMAIN ); ?> </option>
315
+ <option value="7"<?php if ( 7 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Only Typo', FB_WM_TEXTDOMAIN ); ?> </option>
316
+ <option value="8"<?php if ( 8 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Paint', FB_WM_TEXTDOMAIN ); ?> </option>
317
+ <option value="9"<?php if ( 9 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Animate (Flash)', FB_WM_TEXTDOMAIN ); ?> </option>
318
+ <option value="10"<?php if ( 10 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Damask', FB_WM_TEXTDOMAIN ); ?> </option>
319
+ <option value="11"<?php if ( 11 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Lego', FB_WM_TEXTDOMAIN ); ?> </option>
320
+ <option value="12"<?php if ( 12 === $value['theme'] ) { echo ' selected="selected"'; } ?>><?php _e('Chemistry', FB_WM_TEXTDOMAIN ); ?> </option>
321
  </select>
322
  </td>
323
  </tr>
326
  <label for="wm_config-styleurl"><?php _e( 'Own Style URL (incl. http://):', FB_WM_TEXTDOMAIN ); ?></label>
327
  </th>
328
  <td class="alternate">
329
+ <input size="30" type="text" id="wm_config-styleurl" name="wm_config-styleurl" value="<?php if ( isset($value['styleurl']) ) echo $value['styleurl']; ?>" /> <small><?php _e( 'URL to the css-file', FB_WM_TEXTDOMAIN ); ?></small>
330
+ <br />
331
+ <small><?php _e( '<strong>Coution:</strong> Please don&acute;t copy the stylesheet in your plugin folder, it will be deleted on the next automatical update of the plugin!', FB_WM_TEXTDOMAIN ); ?></small>
332
+ </td>
333
+ </tr>
334
+ <tr valign="top">
335
+ <th scope="row" class="alternate">
336
+ <label for="wm_config-preview"><?php _e( 'Preview', FB_WM_TEXTDOMAIN ); ?></label>
337
+ </th>
338
+ <td class="alternate" style="padding:5px 0 0 0;">
339
+ <a onclick="return false;" href="<?php echo WP_PLUGIN_URL . '/' . FB_WM_BASEDIR; ?>/index.php?TB_iframe=true" class="thickbox button"><?php _e( 'Preview', FB_WM_TEXTDOMAIN ); ?></a>
340
  </td>
341
  </tr>
342
  <tr valign="top">
370
  <td class="alternate">
371
  <textarea class="code" style="width: 95%;" cols="40" rows="4" name="wm_config-text" id="wm_config-text"><?php echo $value['text']; ?></textarea>
372
  <br />
373
+ <small><?php _e( 'Use the first <em>%1$s</em> for the time value or countdown and second <em>%2$s</em> for the unit of the time or countdown-value; HTML is possible', FB_WM_TEXTDOMAIN ); ?></small>
374
  </td>
375
  </tr>
376
  <tr valign="top">
378
  <label for="wm_config-exclude"><?php _e( 'Excludes:', FB_WM_TEXTDOMAIN ); ?></label>
379
  </th>
380
  <td>
381
+ <input size="30" type="text" id="wm_config-exclude" name="wm_config-exclude" value="<?php if ( isset($value['exclude']) ) { echo join( ', ', $value['exclude'] ); } ?>" />
382
  <br />
383
+ <small><?php _e( 'Exclude pages, posts or archives from the maintenance mode. Add the Slug of page or post as a comma-separated list.<br />Example:', FB_WM_TEXTDOMAIN ); ?> <code>about, my-first-page, how-is-this-possible, category/test</code></small>
384
  </td>
385
  </tr>
386
  <tr valign="top">
392
  <?php
393
  foreach ( $wp_roles->roles as $role => $name ) {
394
  if ( function_exists('translate_user_role') )
395
+ $role_name = translate_user_role( $name['name'] );
396
  elseif ( function_exists('before_last_bar') )
397
+ $role_name = before_last_bar( $name['name'], 'User role' );
398
  else
399
+ $role_name = strrpos( $name['name'], '|' );
400
 
401
  if ($value['role'][0] !== $role)
402
  $selected = '';
406
  }
407
  ?>
408
  </select>
409
+ <small><?php _e( 'Allowed userrole to see the frontend of this blog.', FB_WM_TEXTDOMAIN ); ?></small>
410
  </td>
411
  </tr>
412
  </table>
413
  <br />
414
+ <div class="plugin-update-tr"><p id="wm_message_update2" class="update-message"><?php echo sprintf( __( 'Plugin %s settings <strong>updated</strong>.', FB_WM_TEXTDOMAIN ), $wm_plugindata['Name'] ); ?></p></div>
415
  <p id="submitbutton">
416
  <input id="wm_config_submit" type="button" value="<?php _e( 'Save', FB_WM_TEXTDOMAIN ); ?>" class="button-secondary" />
417
  </p>
426
 
427
  function add_config() {
428
 
429
+ $this->data = array( 'active' => 0, 'radio' => 0,'time' => 60, 'link' => 1, 'theme' => 2, 'role' => 'administrator', 'unit' => 1, 'title' => 'Maintenance mode', 'text' => '<p>Sorry for the inconvenience.<br />Our website is currently undergoing scheduled maintenance.<br /><strong>Please try back in %1$s %2$s</strong><br />Thank you for your understanding.</p>' );
430
+ add_option( FB_WM_TEXTDOMAIN, $this->data );
431
+ add_option( FB_WM_TEXTDOMAIN . '-msqld', $this->data['active'] );
432
+
433
+ $old_check = get_option( 'wartungsmodus' );
434
+ if ($old_check)
435
+ delete_option( 'wartungsmodus' );
436
  }
437
 
438
 
439
  function save_active() {
440
 
441
  $this->data = array();
442
+ $this->data = get_option( FB_WM_TEXTDOMAIN );
443
+ $this->datamsqld = get_option( FB_WM_TEXTDOMAIN . '-msqld' );
444
 
445
  if ( isset($_POST['wm_config-active']) )
446
  $this->data['active'] = (int) $_POST['wm_config-active'];
447
 
448
+ update_option( FB_WM_TEXTDOMAIN, $this->data );
449
+ update_option( FB_WM_TEXTDOMAIN . '-msqld', $this->data['active'] );
450
 
451
  die( __( 'Updated', FB_WM_TEXTDOMAIN ) );
452
  }
455
  function save_config() {
456
 
457
  $this->data = array();
458
+ $this->data = get_option( FB_WM_TEXTDOMAIN );
459
 
460
  if ( isset($_POST['wm_config-time']) )
461
  $this->data['time'] = (int) $_POST['wm_config-time'];
489
  if ( isset($_POST['wm_config-date']) )
490
  $this->data['date'] = attribute_escape( $_POST['wm_config-date'] );
491
 
492
+ update_option( FB_WM_TEXTDOMAIN, $this->data );
493
 
494
  die( __( 'Updated', FB_WM_TEXTDOMAIN ) );
495
  }
497
 
498
  function del_config() {
499
 
500
+ delete_option( FB_WM_TEXTDOMAIN );
501
+ delete_option( FB_WM_TEXTDOMAIN . '-msqld' );
502
  }
503
 
504
 
517
  $value = get_option( FB_WM_TEXTDOMAIN );
518
 
519
  if ( !isset($value['exclude']) )
520
+ return FALSE;
521
 
522
  foreach ( (array) $value['exclude'] as $exclude ) {
523
  if ( $exclude && strstr($_SERVER['REQUEST_URI'], $exclude) )
524
+ return TRUE;
525
  }
526
 
527
+ return FALSE;
528
  }
529
 
530
 
531
  function check_role() {
532
  $value = get_option( FB_WM_TEXTDOMAIN );
533
 
534
+ if ( !isset( $value['role'][0] ) || ( '' != $value['role'][0] ) )
535
  $role = 'manage_options';
536
 
537
  $defaultroles = array('administrator', 'editor', 'author', 'contributor', 'subscriber');
538
 
539
+ if ( 'administrator' == $value['role'][0] )
540
  $role = 'manage_options';
541
 
542
+ elseif ( 'editor' == $value['role'][0] )
543
  $role = 'manage_categories';
544
 
545
+ elseif ( 'author' == $value['role'][0] )
546
  $role = 'publish_posts';
547
 
548
+ elseif ( 'contributor' == $value['role'][0] )
549
  $role = 'edit_posts';
550
 
551
+ elseif ( 'subscriber' == $value['role'][0] )
552
  $role = 'read';
553
 
554
  elseif ( !in_array( $value['role'][0], $defaultroles ) )
555
  $role = 'manage_options';
556
 
557
  if ( current_user_can( $role ) )
558
+ return TRUE;
559
 
560
+ return FALSE;
561
  }
562
 
563
 
564
+ function case_unit($unitvalue) {
 
 
 
565
 
566
+ $value['unit'] = $unitvalue;
567
+ $unitvalues = array();
 
 
 
 
 
 
 
 
 
 
 
 
568
 
569
  switch( $value['unit'] ) {
570
  case 0:
571
+ $unitvalues['unit'] = __( 'seconds', FB_WM_TEXTDOMAIN );
572
+ $unitvalues['multiplier'] = 1;
573
  break;
574
  case 1:
575
+ $unitvalues['unit'] = __( 'minutes', FB_WM_TEXTDOMAIN );
576
+ $unitvalues['multiplier'] = 60;
577
  break;
578
  case 2:
579
+ $unitvalues['unit'] = __( 'hours', FB_WM_TEXTDOMAIN );
580
+ $unitvalues['multiplier'] = 3600;
581
  break;
582
  case 3:
583
+ $unitvalues['unit'] = __( 'days', FB_WM_TEXTDOMAIN );
584
+ $unitvalues['multiplier'] = 86400;
585
  break;
586
  case 4:
587
+ $unitvalues['unit'] = __( 'weeks', FB_WM_TEXTDOMAIN );
588
+ $unitvalues['multiplier'] = 604800;
589
  break;
590
  case 5:
591
+ $unitvalues['unit'] = __( 'months', FB_WM_TEXTDOMAIN );
592
+ $unitvalues['multiplier'] = 2592000; // 30 days
593
  break;
594
  case 6:
595
+ $unitvalues['unit'] = __( 'years', FB_WM_TEXTDOMAIN );
596
+ $unitvalues['multiplier'] = 31556952;
597
  break;
598
  }
599
 
600
+ return $unitvalues;
601
+ }
602
+
603
+
604
+ function on_active() {
605
+ global $locale, $current_user;
606
+
607
+ $value = get_option( FB_WM_TEXTDOMAIN );
608
+
609
+ $message = __( 'Caution: Maintenance mode is <strong>active</strong>!', FB_WM_TEXTDOMAIN );
610
+ add_filter( 'login_message', create_function( '', "return '<div id=\"login_error\">$message</div>';" ) );
611
+ $admin_notices = '<div id="message" class="error fade" style="background-color: #FFEBE8 !important;"><p>' . $message . ' <a href="plugins.php#wm-pluginconflink">' . __( 'Deactivate or change Settings', FB_WM_TEXTDOMAIN ) . '</a></p></div>';
612
+ add_action( 'admin_notices', create_function( '', "echo '$admin_notices';" ) );
613
+ $in_admin_header = '<a id="mm_in_admin_header" href="plugins.php#wm-pluginconflink" title="' . __( 'Deactivate or change Settings', FB_WM_TEXTDOMAIN ) . '">' . $message . '</a>';
614
+ add_action( 'in_admin_header', create_function( '', "echo '$in_admin_header';" ) );
615
+ /**
616
+ // actual a ticket in trac #14126
617
+ // @link http://core.trac.wordpress.org/ticket/14126
618
+ $in_admin_header = '<a class="privacy-on-link" href="plugins.php#wm-pluginconflink" title="' . __( 'Deactivate or change Settings', FB_WM_TEXTDOMAIN ) . '">' . $message . '</a>';
619
+ add_action( 'in_admin_site_heading', create_function( '', "echo '$in_admin_header';" ) );
620
+ */
621
+
622
+ add_action( 'wm_head', array(&$this, 'add_theme') );
623
+ add_action( 'wm_content', array(&$this, 'add_flash') );
624
+ if ( 1 === $value['link'] )
625
+ add_action( 'wm_footer', array(&$this, 'add_link') );
626
+
627
+ if ( defined('WPLANG') )
628
+ $locale = WPLANG;
629
+ if ( empty($locale) )
630
+ $locale = 'en_US';
631
+
632
+ $unitvalues = $this->case_unit($value['unit']);
633
+
634
+ // set backtime for header status
635
+ $backtime = $value['time'] * $unitvalues['multiplier'];
636
+
637
+ if ( ( !$this->check_role() )
638
+ && !strstr($_SERVER['PHP_SELF'], 'wp-login.php' )
639
+ && !strstr($_SERVER['PHP_SELF'], 'async-upload.php')
640
+ && !strstr($_SERVER['PHP_SELF'], '/plugins/')
641
+ && !$this->check_exclude()
642
+ ) {
643
+ $rolestatus = 'norights';
644
+ header("HTTP/1.0 503 Service Unavailable");
645
+ header("Retry-After: $backtime");
646
+ include('site.php');
647
+ exit();
648
+ }
649
+
650
  //$this->check_version();
651
  if ( !strstr($_SERVER['PHP_SELF'], 'feed/')
652
  && !strstr($_SERVER['PHP_SELF'], 'wp-admin/')
653
  && !strstr($_SERVER['PHP_SELF'], 'wp-login.php')
654
+ && !strstr($_SERVER['PHP_SELF'], 'async-upload.php')
655
+ && !( strstr($_SERVER['PHP_SELF'], 'upgrade.php') && $this->check_role() )
656
+ && !strstr($_SERVER['PHP_SELF'], 'trackback/')
657
+ && !strstr($_SERVER['PHP_SELF'], '/plugins/')
658
  && !$this->check_exclude()
659
  && !$this->check_role()
660
+ ) {
 
661
  include('site.php');
662
  exit();
663
  } else if ( strstr($_SERVER['PHP_SELF'], 'feed/') || strstr($_SERVER['PHP_SELF'], 'trackback/') ) {
 
 
664
  header("HTTP/1.0 503 Service Unavailable");
665
  header("Retry-After: $backtime");
666
  exit();
675
  ?>
676
  <div id="footer">
677
  <p><a href="http://bueltge.de/"><?php _e( 'Plugin by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://bueltge.de/favicon.ico" alt="bueltge.de" width="16" height="16" /></a>
678
+ <?php if ( 2 === $value['theme'] ) { ?>
679
  &nbsp;<a href="http://davidhellmann.com/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://davidhellmann.com/favicon.ico" alt="davidhellmann.com" width="16" height="16" /></a>
680
+ <?php } elseif ( 3 === $value['theme'] ) { ?>
 
681
  &nbsp;<a href="http://www.mynicki.net"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.mynicki.net/favicon.ico" alt="mynicki.net" width="16" height="16" /></a>
682
+ <?php } elseif ( 4 === $value['theme'] ) { ?>
 
683
  &nbsp;<a href="http://www.lokalnetz.com"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.lokalnetz.com/images/favicon.ico" alt="lokalnetz.com" width="16" height="16" /></a>
684
+ <?php } elseif ( 5 === $value['theme'] ) { ?>
 
685
  &nbsp;<a href="http://www.backseatsurfer.de"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.backseatsurfer.de/favicon.ico" alt="backseatsurfer.de" width="16" height="16" /></a>
686
+ <?php } elseif ( 6 === $value['theme'] ) { ?>
 
687
  &nbsp;<a href="http://fv-web.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://fv-web.de/favicon.ico" alt="fv-web.de" width="16" height="16" /></a>
688
+ <?php } elseif ( 7 === $value['theme'] ) { ?>
 
689
  &nbsp;<a href="http://krautsuppe.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://krautsuppe.de/favicon.ico" alt="krautsuppe.de" width="16" height="16" /></a>
690
+ <?php } elseif ( 8 === $value['theme'] ) { ?>
 
691
  &nbsp;<a href="http://www.bugeyes.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.bugeyes.de/favicon.ico" alt="www.bugeyes.de" width="16" height="16" /></a>
692
+ <?php } elseif ( 9 === $value['theme'] ) { ?>
 
693
  &nbsp;<a href="http://www.cayou-media.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.cayou-media.de/favicon.ico" alt="www.cayou-media.de" width="16" height="16" /></a>
694
+ <?php } elseif ( 10 === $value['theme'] ) { ?>
 
695
  &nbsp;<a href="http://fabianletscher.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://fabianletscher.de/favicon.ico" alt="fabianletscher.de" width="16" height="16" /></a>
696
+ <?php } elseif ( 11 === $value['theme'] ) { ?>
 
697
  &nbsp;<a href="http://www.blogdrauf.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.blogdrauf.de/favicon.ico" alt="www.blogdrauf.de" width="16" height="16" /></a>
698
+ <?php } elseif ( 12 === $value['theme'] ) { ?>
699
+ &nbsp;<a href="http://www.elmastudio.de/"><?php _e( 'Design by:', FB_WM_TEXTDOMAIN ); ?> <img src="http://www.elmastudio.de/favicon.ico" alt="www.elmastudio.de" width="16" height="16" /></a>
700
  <?php } ?>
701
  </p>
702
  </div>
724
  break;
725
  case 1:
726
  $theme = 'txt.css';
 
727
  break;
728
  case 2:
729
  $theme = 'dh.css';
 
730
  $style .= ' <style type="text/css">' . "\n" . '<!--';
731
+ $style .= ' #content h1 { text-indent: -99999px; background: url(\'' . $this->get_plugins_url( '/styles/images/headline-' . $locale . '.jpg', __FILE__) . '\') no-repeat; }' . "\n";
732
  $style .= ' -->' . "\n";
733
  $style .= ' </style>';
734
  break;
735
  case 3:
736
  $theme = 'nicki.css';
 
737
  break;
738
  case 4:
739
  $theme = 'ln.css';
 
740
  break;
741
  case 5:
742
  $theme = 'monster.css';
 
743
  break;
744
  case 6:
745
  $theme = 'fv.css';
 
746
  break;
747
  case 7:
748
  $theme = 'ks.css';
 
749
  break;
750
  case 8:
751
  $theme = 'be.css';
 
752
  break;
753
  case 9:
754
  $theme = 'cm.css';
 
755
  break;
756
  case 10:
757
  $theme = 'fl.css';
 
758
  break;
759
  case 11:
760
  $theme = 'af.css';
 
761
  $style .= ' <style type="text/css">' . "\n" . '<!--';
762
+ $style .= ' #content h1 { text-indent: -99999px; background: url(\'' . $this->get_plugins_url( 'styles/images/headline-af-' . $locale . '.jpg\') no-repeat; }', __FILE__ ) . "\n";
763
  $style .= ' -->' . "\n";
764
  $style .= ' </style>';
765
  break;
766
+ case 12:
767
+ $theme = 'es.css';
768
+ break;
769
  }
770
+ $link = '<link rel="stylesheet" href="' . $this->get_plugins_url( 'styles/', __FILE__ ) . $theme . '" type="text/css" media="all" />' ."\n";
771
  echo $link . $style;
772
  }
773
 
774
 
775
  function add_flash() {
776
+ global $locale;
777
+
778
+ if ( defined('WPLANG') )
779
+ $locale = WPLANG;
780
+ if ( empty($locale) )
781
+ $locale = 'en_US';
782
 
783
  $value = get_option( FB_WM_TEXTDOMAIN );
784
 
786
  $object = '';
787
  switch( $value['theme'] ) {
788
  case 9:
789
+ $flash = $this->get_plugins_url( 'styles/', __FILE__ ) . 'wartung-' . $locale . '.swf';
790
+ if ( $this->url_exists( $flash ) ) {
791
+ $flash = $flash;
792
+ } else {
793
+ $flash = $this->get_plugins_url( 'styles/', __FILE__ ) . 'wartung.swf';
794
+ }
795
+
796
  $object = '
797
+ <object type="application/x-shockwave-flash" data="' . $flash . '" width="800" height="600" id="galerie" style="outline:none;">
798
  <param name="wmode" value="transparent" />
799
+ <param name="movie" value="' . $flash . '" />
800
+ </object>';
 
801
  break;
802
  }
 
803
  echo $object;
804
  }
805
 
806
+
807
+ function check_file($url) {
808
+
809
+ $url = parse_url($url);
810
+ $fp = fsockopen($url['host'], 80, $errno, $errstr, 30);
811
+
812
+ if (!$fp) {
813
+ echo $errstr . ' (' . $errno . ')<br />'. "\n";
814
+ } else {
815
+ $httpRequest = 'HEAD ' . $url['path'] . ' HTTP/1.1' . "\r\n"
816
+ . 'Host: ' . $url['host'] ."\r\n"
817
+ . 'Connection: close'. "\r\n\r\n";
818
+
819
+ fputs($fp, $httpRequest);
820
+ $zeileeins = fgets($fp, 1024);
821
+ fclose($fp);
822
+
823
+ if ( eregi('200 OK', $zeileeins) ) {
824
+ return TRUE;
825
+ } else {
826
+ return FALSE;
827
+ }
828
+ }
829
+ }
830
+
831
+
832
+ function url_exists($url) {
833
+ $url = str_replace("http://", "", $url);
834
+ if (strstr($url, "/")) {
835
+ $url = explode("/", $url, 2);
836
+ $url[1] = "/".$url[1];
837
+ } else {
838
+ $url = array($url, "/");
839
+ }
840
+
841
+ $fh = fsockopen($url[0], 80);
842
+ if ($fh) {
843
+ fputs( $fh,"GET " . $url[1] . " HTTP/1.1\nHost:" . $url[0] . "\n\n" );
844
+ if (fread($fh, 22) == "HTTP/1.1 404 Not Found") {
845
+ return FALSE;
846
+ } else {
847
+ return TRUE;
848
+ }
849
+
850
+ } else {
851
+ return FALSE;
852
+ }
853
+ }
854
+
855
  } // end class
856
 
857
  /**
872
  do_action('wm_footer');
873
  }
874
 
875
+ // add the class to WP
876
+ function WPMaintenanceModeStart() {
877
+
878
+ new WPMaintenanceMode();
879
+ }
880
+ add_action( 'plugins_loaded', 'WPMaintenanceModeStart' );
881
  }
882
+ ?>