My Calendar - Version 1.4.6

Version Description

  • Fixed: Flash of unstyled content prevention scripts weren't disabled when other scripting was disabled.
  • Fixed: Categories which started with numerals couldn't have custom styles.
  • Fixed: Locations required valid 0 float value to save records on some servers; now supplied by default.
Download this release

Release Info

Developer joedolson
Plugin Icon 128x128 My Calendar
Version 1.4.6
Comparing to
See all releases

Code changes from version 1.4.3 to 1.4.6

js/jquery-colorpicker.js DELETED
@@ -1,44 +0,0 @@
1
- ;(function($){var _remove=$.fn.remove;$.fn.remove=function(){$("*",this).add(this).triggerHandler("remove");return _remove.apply(this,arguments);};function isVisible(element){function checkStyles(element){var style=element.style;return(style.display!='none'&&style.visibility!='hidden');}
2
- var visible=checkStyles(element);(visible&&$.each($.dir(element,'parentNode'),function(){return(visible=checkStyles(this));}));return visible;}
3
- $.extend($.expr[':'],{data:function(a,i,m){return $.data(a,m[3]);},tabbable:function(a,i,m){var nodeName=a.nodeName.toLowerCase();return(a.tabIndex>=0&&(('a'==nodeName&&a.href)||(/input|select|textarea|button/.test(nodeName)&&'hidden'!=a.type&&!a.disabled))&&isVisible(a));}});$.keyCode={BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38};function getter(namespace,plugin,method,args){function getMethods(type){var methods=$[namespace][plugin][type]||[];return(typeof methods=='string'?methods.split(/,?\s+/):methods);}
4
- var methods=getMethods('getter');if(args.length==1&&typeof args[0]=='string'){methods=methods.concat(getMethods('getterSetter'));}
5
- return($.inArray(method,methods)!=-1);}
6
- $.widget=function(name,prototype){var namespace=name.split(".")[0];name=name.split(".")[1];$.fn[name]=function(options){var isMethodCall=(typeof options=='string'),args=Array.prototype.slice.call(arguments,1);if(isMethodCall&&options.substring(0,1)=='_'){return this;}
7
- if(isMethodCall&&getter(namespace,name,options,args)){var instance=$.data(this[0],name);return(instance?instance[options].apply(instance,args):undefined);}
8
- return this.each(function(){var instance=$.data(this,name);(!instance&&!isMethodCall&&$.data(this,name,new $[namespace][name](this,options)));(instance&&isMethodCall&&$.isFunction(instance[options])&&instance[options].apply(instance,args));});};$[namespace][name]=function(element,options){var self=this;this.widgetName=name;this.widgetEventPrefix=$[namespace][name].eventPrefix||name;this.widgetBaseClass=namespace+'-'+name;this.options=$.extend({},$.widget.defaults,$[namespace][name].defaults,$.metadata&&$.metadata.get(element)[name],options);this.element=$(element).bind('setData.'+name,function(e,key,value){return self._setData(key,value);}).bind('getData.'+name,function(e,key){return self._getData(key);}).bind('remove',function(){return self.destroy();});this._init();};$[namespace][name].prototype=$.extend({},$.widget.prototype,prototype);$[namespace][name].getterSetter='option';};$.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName);},option:function(key,value){var options=key,self=this;if(typeof key=="string"){if(value===undefined){return this._getData(key);}
9
- options={};options[key]=value;}
10
- $.each(options,function(key,value){self._setData(key,value);});},_getData:function(key){return this.options[key];},_setData:function(key,value){this.options[key]=value;if(key=='disabled'){this.element[value?'addClass':'removeClass'](this.widgetBaseClass+'-disabled');}},enable:function(){this._setData('disabled',false);},disable:function(){this._setData('disabled',true);},_trigger:function(type,e,data){var eventName=(type==this.widgetEventPrefix?type:this.widgetEventPrefix+type);e=e||$.event.fix({type:eventName,target:this.element[0]});return this.element.triggerHandler(eventName,[e,data],this.options[type]);}};$.widget.defaults={disabled:false};$.ui={plugin:{add:function(module,option,set){var proto=$.ui[module].prototype;for(var i in set){proto.plugins[i]=proto.plugins[i]||[];proto.plugins[i].push([option,set[i]]);}},call:function(instance,name,args){var set=instance.plugins[name];if(!set){return;}
11
- for(var i=0;i<set.length;i++){if(instance.options[set[i][0]]){set[i][1].apply(instance.element,args);}}}},cssCache:{},css:function(name){if($.ui.cssCache[name]){return $.ui.cssCache[name];}
12
- var tmp=$('<div class="ui-gen">').addClass(name).css({position:'absolute',top:'-5000px',left:'-5000px',display:'block'}).appendTo('body');$.ui.cssCache[name]=!!((!(/auto|default/).test(tmp.css('cursor'))||(/^[1-9]/).test(tmp.css('height'))||(/^[1-9]/).test(tmp.css('width'))||!(/none/).test(tmp.css('backgroundImage'))||!(/transparent|rgba\(0, 0, 0, 0\)/).test(tmp.css('backgroundColor'))));try{$('body').get(0).removeChild(tmp.get(0));}catch(e){}
13
- return $.ui.cssCache[name];},disableSelection:function(el){return $(el).attr('unselectable','on').css('MozUserSelect','none').bind('selectstart.ui',function(){return false;});},enableSelection:function(el){return $(el).attr('unselectable','off').css('MozUserSelect','').unbind('selectstart.ui');},hasScroll:function(e,a){if($(e).css('overflow')=='hidden'){return false;}
14
- var scroll=(a&&a=='left')?'scrollLeft':'scrollTop',has=false;if(e[scroll]>0){return true;}
15
- e[scroll]=1;has=(e[scroll]>0);e[scroll]=0;return has;}};$.ui.mouse={_mouseInit:function(){var self=this;this.element.bind('mousedown.'+this.widgetName,function(e){return self._mouseDown(e);});if($.browser.msie){this._mouseUnselectable=this.element.attr('unselectable');this.element.attr('unselectable','on');}
16
- this.started=false;},_mouseDestroy:function(){this.element.unbind('.'+this.widgetName);($.browser.msie&&this.element.attr('unselectable',this._mouseUnselectable));},_mouseDown:function(e){(this._mouseStarted&&this._mouseUp(e));this._mouseDownEvent=e;var self=this,btnIsLeft=(e.which==1),elIsCancel=(typeof this.options.cancel=="string"?$(e.target).parents().add(e.target).filter(this.options.cancel).length:false);if(!btnIsLeft||elIsCancel||!this._mouseCapture(e)){return true;}
17
- this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){self.mouseDelayMet=true;},this.options.delay);}
18
- if(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)){this._mouseStarted=(this._mouseStart(e)!==false);if(!this._mouseStarted){e.preventDefault();return true;}}
19
- this._mouseMoveDelegate=function(e){return self._mouseMove(e);};this._mouseUpDelegate=function(e){return self._mouseUp(e);};$(document).bind('mousemove.'+this.widgetName,this._mouseMoveDelegate).bind('mouseup.'+this.widgetName,this._mouseUpDelegate);return false;},_mouseMove:function(e){if($.browser.msie&&!e.button){return this._mouseUp(e);}
20
- if(this._mouseStarted){this._mouseDrag(e);return false;}
21
- if(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,e)!==false);(this._mouseStarted?this._mouseDrag(e):this._mouseUp(e));}
22
- return!this._mouseStarted;},_mouseUp:function(e){$(document).unbind('mousemove.'+this.widgetName,this._mouseMoveDelegate).unbind('mouseup.'+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._mouseStop(e);}
23
- return false;},_mouseDistanceMet:function(e){return(Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance);},_mouseDelayMet:function(e){return this.mouseDelayMet;},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return true;}};$.ui.mouse.defaults={cancel:null,distance:1,delay:0};})(jQuery);(function($){$.widget("ui.colorpicker",{_init:function(){this.charMin=65;var o=this.options,self=this,tpl='<div class="ui-colorpicker clearfix"><div class="ui-colorpicker-color"><div><div></div></div></div><div class="ui-colorpicker-hue"><div></div></div><div class="ui-colorpicker-new-color"></div><div class="ui-colorpicker-current-color"></div><div class="ui-colorpicker-hex"><label for="ui-colorpicker-hex" title="hex"></label><input type="text" maxlength="6" size="6" /></div><div class="ui-colorpicker-rgb-r ui-colorpicker-field"><label for="ui-colorpicker-rgb-r"></label><input type="text" maxlength="3" size="2" /><span></span></div><div class="ui-colorpicker-rgb-g ui-colorpicker-field"><label for="ui-colorpicker-rgb-g"></label><input type="text" maxlength="3" size="2" /><span></span></div><div class="ui-colorpicker-rgb-b ui-colorpicker-field"><label for="ui-colorpicker-rgb-b"</label><input type="text" maxlength="3" size="2" /><span></span></div><div class="ui-colorpicker-hsb-h ui-colorpicker-field"><label for="ui-colorpicker-hsb-h"></label><input type="text" maxlength="3" size="2" /><span></span></div><div class="ui-colorpicker-hsb-s ui-colorpicker-field"><label for="ui-colorpicker-hsb-s"></label><input type="text" maxlength="3" size="2" /><span></span></div><div class="ui-colorpicker-hsb-b ui-colorpicker-field"><label for="ui-colorpicker-hsb-b"></label><input type="text" maxlength="3" size="2" /><span></span></div><button class="ui-colorpicker-submit ui-default-state" name="submit" type="button">Done</button></div>';if(typeof o.color=='string'){this.color=this._HexToHSB(o.color);}else if(o.color.r!=undefined&&o.color.g!=undefined&&o.color.b!=undefined){this.color=this._RGBToHSB(o.color);}else if(o.color.h!=undefined&&o.color.s!=undefined&&o.color.b!=undefined){this.color=this._fixHSB(o.color);}else{return this;}
24
- this.origColor=this.color;this.picker=$(tpl);if(o.flat){this.picker.appendTo(this.element).show();}else{this.picker.appendTo(document.body);}
25
- this.fields=this.picker.find('input').bind('keydown',function(e){return self._keyDown.call(self,e);}).bind('change',function(e){return self._change.call(self,e);}).bind('blur',function(e){return self._blur.call(self,e);}).bind('focus',function(e){return self._focus.call(self,e);});this.picker.find('span').bind('mousedown',function(e){return self._downIncrement.call(self,e);});this.selector=this.picker.find('div.ui-colorpicker-color').bind('mousedown',function(e){return self._downSelector.call(self,e);});this.selectorIndic=this.selector.find('div div');this.hue=this.picker.find('div.ui-colorpicker-hue div');this.picker.find('div.ui-colorpicker-hue').bind('mousedown',function(e){return self._downHue.call(self,e);});this.newColor=this.picker.find('div.ui-colorpicker-new-color');this.currentColor=this.picker.find('div.ui-colorpicker-current-color');this.picker.find('.ui-colorpicker-submit').bind('mouseenter',function(e){return self._enterSubmit.call(self,e);}).bind('mouseleave',function(e){return self._leaveSubmit.call(self,e);}).bind('click',function(e){return self._clickSubmit.call(self,e);});this._fillRGBFields(this.color);this._fillHSBFields(this.color);this._fillHexFields(this.color);this._setHue(this.color);this._setSelector(this.color);this._setCurrentColor(this.color);this._setNewColor(this.color);if(o.flat){this.picker.css({position:'relative',display:'block'});}else{$(this.element).bind(o.eventName+".colorpicker",function(e){return self._show.call(self,e);});}},destroy:function(){this.picker.remove();this.element.removeData("colorpicker").unbind(".colorpicker");},_fillRGBFields:function(hsb){var rgb=this._HSBToRGB(hsb);this.fields.eq(1).val(rgb.r).end().eq(2).val(rgb.g).end().eq(3).val(rgb.b).end();},_fillHSBFields:function(hsb){this.fields.eq(4).val(hsb.h).end().eq(5).val(hsb.s).end().eq(6).val(hsb.b).end();},_fillHexFields:function(hsb){this.fields.eq(0).val(this._HSBToHex(hsb)).end();},_setSelector:function(hsb){this.selector.css('backgroundColor','#'+this._HSBToHex({h:hsb.h,s:100,b:100}));this.selectorIndic.css({left:parseInt(150*hsb.s/100,10),top:parseInt(150*(100-hsb.b)/100,10)});},_setHue:function(hsb){this.hue.css('top',parseInt(150-150*hsb.h/360,10));},_setCurrentColor:function(hsb){this.currentColor.css('backgroundColor','#'+this._HSBToHex(hsb));},_setNewColor:function(hsb){this.newColor.css('backgroundColor','#'+this._HSBToHex(hsb));},_keyDown:function(e){var pressedKey=e.charCode||e.keyCode||-1;if((pressedKey>=this.charMin&&pressedKey<=90)||pressedKey==32){return false;}},_change:function(e,target){var col;target=target||e.target;if(target.parentNode.className.indexOf('-hex')>0){this.color=col=this._HexToHSB(this.value);this._fillRGBFields(col.color);this._fillHSBFields(col);}else if(target.parentNode.className.indexOf('-hsb')>0){this.color=col=this._fixHSB({h:parseInt(this.fields.eq(4).val(),10),s:parseInt(this.fields.eq(5).val(),10),b:parseInt(this.fields.eq(6).val(),10)});this._fillRGBFields(col);this._fillHexFields(col);}else{this.color=col=this._RGBToHSB(this._fixRGB({r:parseInt(this.fields.eq(1).val(),10),g:parseInt(this.fields.eq(2).val(),10),b:parseInt(this.fields.eq(3).val(),10)}));this._fillHexFields(col);this._fillHSBFields(col);}
26
- this._setSelector(col);this._setHue(col);this._setNewColor(col);this._trigger('change',e,{options:this.options,hsb:col,hex:this._HSBToHex(col),rgb:this._HSBToRGB(col)});},_blur:function(e){var col=this.color;this._fillRGBFields(col);this._fillHSBFields(col);this._fillHexFields(col);this._setHue(col);this._setSelector(col);this._setNewColor(col);this.fields.parent().removeClass('ui-colorpicker-focus');},_focus:function(e){this.charMin=e.target.parentNode.className.indexOf('-hex')>0?70:65;this.fields.parent().removeClass('ui-colorpicker-focus');$(e.target.parentNode).addClass('ui-colorpicker-focus');},_downIncrement:function(e){var field=$(e.target).parent().find('input').focus(),self=this;this.currentIncrement={el:$(e.target).parent().addClass('ui-colorpicker-slider'),max:e.target.parentNode.className.indexOf('-hsb-h')>0?360:(e.target.parentNode.className.indexOf('-hsb')>0?100:255),y:e.pageY,field:field,val:parseInt(field.val(),10)};$(document).bind('mouseup.cpSlider',function(e){return self._upIncrement.call(self,e);});$(document).bind('mousemove.cpSlider',function(e){return self._moveIncrement.call(self,e);});return false;},_moveIncrement:function(e){this.currentIncrement.field.val(Math.max(0,Math.min(this.currentIncrement.max,parseInt(this.currentIncrement.val+e.pageY-this.currentIncrement.y,10))));this._change.apply(this,[e,this.currentIncrement.field.get(0)]);return false;},_upIncrement:function(e){this.currentIncrement.el.removeClass('ui-colorpicker-slider').find('input').focus();this._change.apply(this,[e,this.currentIncrement.field.get(0)]);$(document).unbind('mouseup.cpSlider');$(document).unbind('mousemove.cpSlider');return false;},_downHue:function(e){this.currentHue={y:this.picker.find('div.ui-colorpicker-hue').offset().top};this._change.apply(this,[e,this.fields.eq(4).val(parseInt(360*(150-Math.max(0,Math.min(150,(e.pageY-this.currentHue.y))))/150,10)).get(0)]);var self=this;$(document).bind('mouseup.cpSlider',function(e){return self._upHue.call(self,e);});$(document).bind('mousemove.cpSlider',function(e){return self._moveHue.call(self,e);});return false;},_moveHue:function(e){this._change.apply(this,[e,this.fields.eq(4).val(parseInt(360*(150-Math.max(0,Math.min(150,(e.pageY-this.currentHue.y))))/150,10)).get(0)]);return false;},_upHue:function(e){$(document).unbind('mouseup.cpSlider');$(document).unbind('mousemove.cpSlider');return false;},_downSelector:function(e){var self=this;this.currentSelector={pos:this.picker.find('div.ui-colorpicker-color').offset()};this._change.apply(this,[e,this.fields.eq(6).val(parseInt(100*(150-Math.max(0,Math.min(150,(e.pageY-this.currentSelector.pos.top))))/150,10)).end().eq(5).val(parseInt(100*(Math.max(0,Math.min(150,(e.pageX-this.currentSelector.pos.left))))/150,10)).get(0)]);$(document).bind('mouseup.cpSlider',function(e){return self._upSelector.call(self,e);});$(document).bind('mousemove.cpSlider',function(e){return self._moveSelector.call(self,e);});return false;},_moveSelector:function(e){this._change.apply(this,[e,this.fields.eq(6).val(parseInt(100*(150-Math.max(0,Math.min(150,(e.pageY-this.currentSelector.pos.top))))/150,10)).end().eq(5).val(parseInt(100*(Math.max(0,Math.min(150,(e.pageX-this.currentSelector.pos.left))))/150,10)).get(0)]);return false;},_upSelector:function(e){$(document).unbind('mouseup.cpSlider');$(document).unbind('mousemove.cpSlider');return false;},_enterSubmit:function(e){this.picker.find('.ui-colorpicker-submit').addClass('ui-colorpicker-focus');},_leaveSubmit:function(e){this.picker.find('.ui-colorpicker-submit').removeClass('ui-colorpicker-focus');},_clickSubmit:function(e){var col=this.color;this.origColor=col;this._setCurrentColor(col);this._trigger("submit",e,{options:this.options,hsb:col,hex:this._HSBToHex(col),rgb:this._HSBToRGB(col)});return false;},_show:function(e){this._trigger("beforeShow",e,{options:this.options,hsb:this.color,hex:this._HSBToHex(this.color),rgb:this._HSBToRGB(this.color)});var pos=this.element.offset();var viewPort=this._getScroll();var top=pos.top+this.element[0].offsetHeight;var left=pos.left;if(top+176>viewPort.t+Math.min(viewPort.h,viewPort.ih)){top-=this.element[0].offsetHeight+176;}
27
- if(left+356>viewPort.l+Math.min(viewPort.w,viewPort.iw)){left-=356;}
28
- this.picker.css({left:left+'px',top:top+'px'});if(this._trigger("show",e,{options:this.options,hsb:this.color,hex:this._HSBToHex(this.color),rgb:this._HSBToRGB(this.color)})!=false){this.picker.show();}
29
- var self=this;$(document).bind('mousedown.colorpicker',function(e){return self._hide.call(self,e);});return false;},_hide:function(e){if(!this._isChildOf(this.picker[0],e.target,this.picker[0])){if(this._trigger("hide",e,{options:this.options,hsb:this.color,hex:this._HSBToHex(this.color),rgb:this._HSBToRGB(this.color)})!=false){this.picker.hide();}
30
- $(document).unbind('mousedown.colorpicker');}},_isChildOf:function(parentEl,el,container){if(parentEl==el){return true;}
31
- if(parentEl.contains&&!$.browser.safari){return parentEl.contains(el);}
32
- if(parentEl.compareDocumentPosition){return!!(parentEl.compareDocumentPosition(el)&16);}
33
- var prEl=el.parentNode;while(prEl&&prEl!=container){if(prEl==parentEl)
34
- return true;prEl=prEl.parentNode;}
35
- return false;},_getScroll:function(){var t,l,w,h,iw,ih;if(document.documentElement){t=document.documentElement.scrollTop;l=document.documentElement.scrollLeft;w=document.documentElement.scrollWidth;h=document.documentElement.scrollHeight;}else{t=document.body.scrollTop;l=document.body.scrollLeft;w=document.body.scrollWidth;h=document.body.scrollHeight;}
36
- iw=self.innerWidth||document.documentElement.clientWidth||document.body.clientWidth||0;ih=self.innerHeight||document.documentElement.clientHeight||document.body.clientHeight||0;return{t:t,l:l,w:w,h:h,iw:iw,ih:ih};},_fixHSB:function(hsb){return{h:Math.min(360,Math.max(0,hsb.h)),s:Math.min(100,Math.max(0,hsb.s)),b:Math.min(100,Math.max(0,hsb.b))};},_fixRGB:function(rgb){return{r:Math.min(255,Math.max(0,rgb.r)),g:Math.min(255,Math.max(0,rgb.g)),b:Math.min(255,Math.max(0,rgb.b))};},_HexToRGB:function(hex){var hex=parseInt(((hex.indexOf('#')>-1)?hex.substring(1):hex),16);return{r:hex>>16,g:(hex&0x00FF00)>>8,b:(hex&0x0000FF)};},_HexToHSB:function(hex){return this._RGBToHSB(this._HexToRGB(hex));},_RGBToHSB:function(rgb){var hsb={};hsb.b=Math.max(Math.max(rgb.r,rgb.g),rgb.b);hsb.s=(hsb.b<=0)?0:Math.round(100*(hsb.b-Math.min(Math.min(rgb.r,rgb.g),rgb.b))/hsb.b);hsb.b=Math.round((hsb.b/255)*100);if((rgb.r==rgb.g)&&(rgb.g==rgb.b))hsb.h=0;else if(rgb.r>=rgb.g&&rgb.g>=rgb.b)hsb.h=60*(rgb.g-rgb.b)/(rgb.r-rgb.b);else if(rgb.g>=rgb.r&&rgb.r>=rgb.b)hsb.h=60+60*(rgb.g-rgb.r)/(rgb.g-rgb.b);else if(rgb.g>=rgb.b&&rgb.b>=rgb.r)hsb.h=120+60*(rgb.b-rgb.r)/(rgb.g-rgb.r);else if(rgb.b>=rgb.g&&rgb.g>=rgb.r)hsb.h=180+60*(rgb.b-rgb.g)/(rgb.b-rgb.r);else if(rgb.b>=rgb.r&&rgb.r>=rgb.g)hsb.h=240+60*(rgb.r-rgb.g)/(rgb.b-rgb.g);else if(rgb.r>=rgb.b&&rgb.b>=rgb.g)hsb.h=300+60*(rgb.r-rgb.b)/(rgb.r-rgb.g);else hsb.h=0;hsb.h=Math.round(hsb.h);return hsb;},_HSBToRGB:function(hsb){var rgb={};var h=Math.round(hsb.h);var s=Math.round(hsb.s*255/100);var v=Math.round(hsb.b*255/100);if(s==0){rgb.r=rgb.g=rgb.b=v;}else{var t1=v;var t2=(255-s)*v/255;var t3=(t1-t2)*(h%60)/60;if(h==360)h=0;if(h<60){rgb.r=t1;rgb.b=t2;rgb.g=t2+t3;}
37
- else if(h<120){rgb.g=t1;rgb.b=t2;rgb.r=t1-t3;}
38
- else if(h<180){rgb.g=t1;rgb.r=t2;rgb.b=t2+t3;}
39
- else if(h<240){rgb.b=t1;rgb.r=t2;rgb.g=t1-t3;}
40
- else if(h<300){rgb.b=t1;rgb.g=t2;rgb.r=t2+t3;}
41
- else if(h<360){rgb.r=t1;rgb.g=t2;rgb.b=t1-t3;}
42
- else{rgb.r=0;rgb.g=0;rgb.b=0;}}
43
- return{r:Math.round(rgb.r),g:Math.round(rgb.g),b:Math.round(rgb.b)};},_RGBToHex:function(rgb){var hex=[rgb.r.toString(16),rgb.g.toString(16),rgb.b.toString(16)];$.each(hex,function(nr,val){if(val.length==1){hex[nr]='0'+val;}});return hex.join('');},_HSBToHex:function(hsb){return this._RGBToHex(this._HSBToRGB(hsb));},setColor:function(col){if(typeof col=='string'){col=this._HexToHSB(col);}else if(col.r!=undefined&&col.g!=undefined&&col.b!=undefined){col=this._RGBToHSB(col);}else if(col.h!=undefined&&col.s!=undefined&&col.b!=undefined){col=this._fixHSB(col);}else{return this;}
44
- this.color=col;this.origColor=col;this._fillRGBFields(col);this._fillHSBFields(col);this._fillHexFields(col);this._setHue(col);this._setSelector(col);this._setCurrentColor(col);this._setNewColor(col);}});$.extend($.ui.colorpicker,{defaults:{eventName:'click',color:'ff0000',flat:false}});})(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
my-calendar-categories.php CHANGED
@@ -36,20 +36,59 @@ echo my_calendar_check_db();
36
  // We do some checking to see what we're doing
37
  if (isset($_POST['mode']) && $_POST['mode'] == 'add') {
38
  $sql = "INSERT INTO " . MY_CALENDAR_CATEGORIES_TABLE . " SET category_name='".mysql_real_escape_string($_POST['category_name'])."', category_color='".mysql_real_escape_string($_POST['category_color'])."', category_icon='".mysql_real_escape_string($_POST['category_icon'])."'";
39
- $wpdb->get_results($sql);
 
40
  echo "<div class=\"updated\"><p><strong>".__('Category added successfully','my-calendar')."</strong></p></div>";
 
 
 
41
  } else if (isset($_GET['mode']) && isset($_GET['category_id']) && $_GET['mode'] == 'delete') {
42
  $sql = "DELETE FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".mysql_real_escape_string($_GET['category_id']);
43
- $wpdb->get_results($sql);
44
- $sql = "UPDATE " . MY_CALENDAR_TABLE . " SET event_category=1 WHERE event_category=".mysql_real_escape_string($_GET['category_id']);
45
- $wpdb->get_results($sql);
46
- echo "<div class=\"updated\"><p><strong>".__('Category deleted successfully','my-calendar')."</strong></p></div>";
 
 
 
 
 
 
 
 
47
  } else if (isset($_GET['mode']) && isset($_GET['category_id']) && $_GET['mode'] == 'edit' && !isset($_POST['mode'])) {
48
  $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".mysql_real_escape_string($_GET['category_id']);
49
  $cur_cat = $wpdb->get_row($sql);
50
- ?>
51
- <h2><?php _e('Edit Category','my-calendar'); ?></h2>
 
 
 
 
52
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
53
 
54
  <?php jd_show_support_box(); ?>
55
  <div id="poststuff" class="jd-my-calendar">
@@ -58,23 +97,23 @@ echo my_calendar_check_db();
58
  <h3><?php _e('Category Editor','my-calendar'); ?></h3>
59
  <div class="inside">
60
  <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-categories">
 
 
 
 
 
 
61
  <div>
62
  <input type="hidden" name="mode" value="edit" />
63
  <input type="hidden" name="category_id" value="<?php echo $cur_cat->category_id ?>" />
64
- </div>
 
65
  <fieldset>
66
  <legend><?php _e('Edit Category','my-calendar'); ?></legend>
67
  <label for="category_name"><?php _e('Category Name','my-calendar'); ?>:</label> <input type="text" id="category_name" name="category_name" class="input" size="30" value="<?php echo $cur_cat->category_name ?>" /><br />
68
  <label for="category_color"><?php _e('Category Color (Hex format)','my-calendar'); ?>:</label> <input type="text" id="category_color" name="category_color" class="input" size="10" maxlength="7" value="<?php echo $cur_cat->category_color ?>" /><br />
69
  <label for="category_icon"><?php _e('Category Icon','my-calendar'); ?>:</label> <select name="category_icon" id="category_icon">
70
  <?php
71
- if ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) ) {
72
- $directory = WP_PLUGIN_DIR . '/my-calendar-custom/';
73
- $path = '/my-calendar-custom';
74
- } else {
75
- $directory = dirname(__FILE__).'/icons/';
76
- $path = '/my-calendar/icons';
77
- }
78
  $files = my_dirlist($directory);
79
  foreach ($files as $value) {
80
  if ($cur_cat->category_icon == $value) {
@@ -93,56 +132,15 @@ if ($cur_cat->category_icon == $value) {
93
  </form>
94
  </div>
95
  </div>
 
96
  </div>
97
- <?php
98
- } else if (isset($_POST['mode']) && isset($_POST['category_id']) && isset($_POST['category_name']) && isset($_POST['category_color']) && $_POST['mode'] == 'edit') {
99
- $sql = "UPDATE " . MY_CALENDAR_CATEGORIES_TABLE . " SET category_name='".mysql_real_escape_string($_POST['category_name'])."', category_color='".mysql_real_escape_string($_POST['category_color'])."', category_icon='".mysql_real_escape_string($_POST['category_icon'])."' WHERE category_id=".mysql_real_escape_string($_POST['category_id']);
100
- $wpdb->get_results($sql);
101
- echo "<div class=\"updated\"><p><strong>".__('Category edited successfully','my-calendar')."</strong></p></div>";
102
- }
103
-
104
- if ($_GET['mode'] != 'edit' || $_POST['mode'] == 'edit') {
105
- ?>
106
-
107
- <h2><?php _e('Add Category','my-calendar'); ?></h2>
108
- <?php jd_show_support_box(); ?>
109
- <div id="poststuff" class="jd-my-calendar">
110
- <div class="postbox">
111
- <h3><?php _e('Add New Category','my-calendar'); ?></h3>
112
- <div class="inside">
113
- <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-categories">
114
- <div>
115
- <input type="hidden" name="mode" value="add" />
116
- <input type="hidden" name="category_id" value="" />
117
- </div>
118
- <fieldset>
119
- <legend><?php _e('Add Category'); ?></legend>
120
- <label for="category_name"><?php _e('Category Name','my-calendar'); ?>:</label> <input type="text" id="category_name" name="category_name" class="input" size="30" value="" /><br />
121
- <label for="category_color"><?php _e('Category Color (Hex format)','my-calendar'); ?>:</label> <input type="text" id="category_color" name="category_color" class="input" size="10" maxlength="7" value="#" /><br />
122
- <label for="category_icon"><?php _e('Category Icon','my-calendar'); ?>:</label> <select name="category_icon" id="category_icon">
123
  <?php
124
- if ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) ) {
125
- $directory = WP_PLUGIN_DIR . '/my-calendar-custom/';
126
- $path = '/my-calendar-custom';
127
- } else {
128
- $directory = dirname(__FILE__).'/icons/';
129
- $path = '/my-calendar/icons';
130
- }
131
- $files = my_dirlist($directory);
132
- foreach ($files as $value) {
133
- echo "<option value='$value' style='background: url(".WP_PLUGIN_URL."$path/$value) no-repeat;'>$value</option>";
134
  }
135
- ?>
136
- </select>
137
- </fieldset>
138
- <p>
139
- <input type="submit" name="save" class="button-primary" value="<?php _e('Add Category','my-calendar'); ?> &raquo;" />
140
- </p>
141
- </form>
142
- </div>
143
- </div>
144
- </div>
145
- <h2><?php _e('Manage Categories','my-calendar'); ?></h2>
146
  <?php
147
 
148
  // We pull the categories from the database
@@ -195,9 +193,4 @@ foreach ($files as $value) {
195
  </div>
196
 
197
  <?php
198
- }
199
- ?>
200
- </div>
201
- <?php
202
- }
203
- ?>
36
  // We do some checking to see what we're doing
37
  if (isset($_POST['mode']) && $_POST['mode'] == 'add') {
38
  $sql = "INSERT INTO " . MY_CALENDAR_CATEGORIES_TABLE . " SET category_name='".mysql_real_escape_string($_POST['category_name'])."', category_color='".mysql_real_escape_string($_POST['category_color'])."', category_icon='".mysql_real_escape_string($_POST['category_icon'])."'";
39
+ $results = $wpdb->query($sql);
40
+ if ( $results ) {
41
  echo "<div class=\"updated\"><p><strong>".__('Category added successfully','my-calendar')."</strong></p></div>";
42
+ } else {
43
+ echo "<div class=\"error\"><p><strong>".__('Category addition failed.','my-calendar')."</strong></p></div>";
44
+ }
45
  } else if (isset($_GET['mode']) && isset($_GET['category_id']) && $_GET['mode'] == 'delete') {
46
  $sql = "DELETE FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".mysql_real_escape_string($_GET['category_id']);
47
+ $results = $wpdb->query($sql);
48
+ if ($results) {
49
+ $sql = "UPDATE " . MY_CALENDAR_TABLE . " SET event_category=1 WHERE event_category=".mysql_real_escape_string($_GET['category_id']);
50
+ $cal_results = $wpdb->query($sql);
51
+ }
52
+ if ($results && $cal_results) {
53
+ echo "<div class=\"updated\"><p><strong>".__('Category deleted successfully. Categories in calendar updated.','my-calendar')."</strong></p></div>";
54
+ } else if ( $results && !$cal_results ) {
55
+ echo "<div class=\"updated\"><p><strong>".__('Category deleted successfully. Categories in calendar not updated.','my-calendar')."</strong></p></div>";
56
+ } else if ( !$results && $cal_results ) {
57
+ echo "<div class=\"updated\"><p><strong>".__('Category not deleted. Categories in calendar updated.','my-calendar')."</strong></p></div>";
58
+ }
59
  } else if (isset($_GET['mode']) && isset($_GET['category_id']) && $_GET['mode'] == 'edit' && !isset($_POST['mode'])) {
60
  $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".mysql_real_escape_string($_GET['category_id']);
61
  $cur_cat = $wpdb->get_row($sql);
62
+ mc_edit_category_form('edit',$cur_cat);
63
+ } else if (isset($_POST['mode']) && isset($_POST['category_id']) && isset($_POST['category_name']) && isset($_POST['category_color']) && $_POST['mode'] == 'edit') {
64
+ $sql = "UPDATE " . MY_CALENDAR_CATEGORIES_TABLE . " SET category_name='".mysql_real_escape_string($_POST['category_name'])."', category_color='".mysql_real_escape_string($_POST['category_color'])."', category_icon='".mysql_real_escape_string($_POST['category_icon'])."' WHERE category_id=".mysql_real_escape_string($_POST['category_id']);
65
+ $wpdb->get_results($sql);
66
+ echo "<div class=\"updated\"><p><strong>".__('Category edited successfully','my-calendar')."</strong></p></div>";
67
+ }
68
 
69
+ if ($_GET['mode'] != 'edit' || $_POST['mode'] == 'edit') {
70
+ mc_edit_category_form('add');
71
+ }
72
+ ?>
73
+ </div>
74
+ <?php
75
+ }
76
+
77
+ function mc_edit_category_form($view='edit',$cur_cat='') {
78
+ global $path;
79
+ if ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) ) {
80
+ $directory = WP_PLUGIN_DIR . '/my-calendar-custom/';
81
+ $path = '/my-calendar-custom';
82
+ } else {
83
+ $directory = dirname(__FILE__).'/icons/';
84
+ $path = '/my-calendar/icons';
85
+ }
86
+ ?>
87
+ <?php if ($view == 'add') { ?>
88
+ <h2><?php _e('Add Category','my-calendar'); ?></h2>
89
+ <?php } else { ?>
90
+ <h2><?php _e('Edit Category','my-calendar'); ?></h2>
91
+ <?php } ?>
92
 
93
  <?php jd_show_support_box(); ?>
94
  <div id="poststuff" class="jd-my-calendar">
97
  <h3><?php _e('Category Editor','my-calendar'); ?></h3>
98
  <div class="inside">
99
  <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-categories">
100
+ <?php if ($view == 'add') { ?>
101
+ <div>
102
+ <input type="hidden" name="mode" value="add" />
103
+ <input type="hidden" name="category_id" value="" />
104
+ </div>
105
+ <?php } else { ?>
106
  <div>
107
  <input type="hidden" name="mode" value="edit" />
108
  <input type="hidden" name="category_id" value="<?php echo $cur_cat->category_id ?>" />
109
+ </div>
110
+ <?php } ?>
111
  <fieldset>
112
  <legend><?php _e('Edit Category','my-calendar'); ?></legend>
113
  <label for="category_name"><?php _e('Category Name','my-calendar'); ?>:</label> <input type="text" id="category_name" name="category_name" class="input" size="30" value="<?php echo $cur_cat->category_name ?>" /><br />
114
  <label for="category_color"><?php _e('Category Color (Hex format)','my-calendar'); ?>:</label> <input type="text" id="category_color" name="category_color" class="input" size="10" maxlength="7" value="<?php echo $cur_cat->category_color ?>" /><br />
115
  <label for="category_icon"><?php _e('Category Icon','my-calendar'); ?>:</label> <select name="category_icon" id="category_icon">
116
  <?php
 
 
 
 
 
 
 
117
  $files = my_dirlist($directory);
118
  foreach ($files as $value) {
119
  if ($cur_cat->category_icon == $value) {
132
  </form>
133
  </div>
134
  </div>
135
+ <?php mc_manage_categories(); ?>
136
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
137
  <?php
 
 
 
 
 
 
 
 
 
 
138
  }
139
+
140
+ function mc_manage_categories() {
141
+ global $wpdb, $path;
142
+ ?>
143
+ <h2><?php _e('Manage Categories','my-calendar'); ?></h2>
 
 
 
 
 
 
144
  <?php
145
 
146
  // We pull the categories from the database
193
  </div>
194
 
195
  <?php
196
+ }
 
 
 
 
 
my-calendar-da_DK.mo ADDED
Binary file
my-calendar-da_DK.po ADDED
@@ -0,0 +1,1268 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Translation of the WordPress plugin My Calendar 1.4.3 by Joseph C Dolson.
2
+ # Copyright (C) 2010 Joseph C Dolson
3
+ # This file is distributed under the same license as the My Calendar package.
4
+ # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
5
+ #
6
+ msgid ""
7
+ msgstr ""
8
+ "Project-Id-Version: My Calendar 1.4.3\n"
9
+ "Report-Msgid-Bugs-To: http://wordpress.org/tag/my-calendar\n"
10
+ "POT-Creation-Date: 2010-08-03 17:58+0000\n"
11
+ "PO-Revision-Date: 2010-08-12 11:18+0100\n"
12
+ "Last-Translator: Jakob Smith <jakob@omkalfatring.dk>\n"
13
+ "Language-Team: omkalfatring.dk <jakob@omkalfatring.dk>\n"
14
+ "MIME-Version: 1.0\n"
15
+ "Content-Type: text/plain; charset=utf-8\n"
16
+ "Content-Transfer-Encoding: 8bit\n"
17
+ "X-Poedit-Language: Danish\n"
18
+ "X-Poedit-Country: DENMARK\n"
19
+ "X-Poedit-SourceCharset: utf-8\n"
20
+
21
+ #: my-calendar-categories.php:40
22
+ msgid "Category added successfully"
23
+ msgstr "Kategori tilføjet"
24
+
25
+ #: my-calendar-categories.php:46
26
+ msgid "Category deleted successfully"
27
+ msgstr "Kategori slettet"
28
+
29
+ #: my-calendar-categories.php:51
30
+ #: my-calendar-categories.php:66
31
+ msgid "Edit Category"
32
+ msgstr "Rediger kategori"
33
+
34
+ #: my-calendar-categories.php:58
35
+ msgid "Category Editor"
36
+ msgstr "Kategoriredigering"
37
+
38
+ #: my-calendar-categories.php:67
39
+ #: my-calendar-categories.php:120
40
+ #: my-calendar-categories.php:158
41
+ msgid "Category Name"
42
+ msgstr "Kategori Navn"
43
+
44
+ #: my-calendar-categories.php:68
45
+ #: my-calendar-categories.php:121
46
+ msgid "Category Color (Hex format)"
47
+ msgstr "Kategori Farve (Hex format)"
48
+
49
+ #: my-calendar-categories.php:69
50
+ #: my-calendar-categories.php:122
51
+ #: my-calendar-categories.php:160
52
+ msgid "Category Icon"
53
+ msgstr "Kategori Ikon"
54
+
55
+ #: my-calendar-categories.php:91
56
+ #: my-calendar-locations.php:82
57
+ msgid "Save Changes"
58
+ msgstr "Gem Ændringer"
59
+
60
+ #: my-calendar-categories.php:101
61
+ msgid "Category edited successfully"
62
+ msgstr "Kategori redigeret"
63
+
64
+ #: my-calendar-categories.php:107
65
+ #: my-calendar-categories.php:119
66
+ #: my-calendar-categories.php:139
67
+ msgid "Add Category"
68
+ msgstr "Tilføj Kategori"
69
+
70
+ #: my-calendar-categories.php:111
71
+ msgid "Add New Category"
72
+ msgstr "Tilføj Ny Kategori"
73
+
74
+ #: my-calendar-categories.php:145
75
+ #: my-calendar.php:169
76
+ msgid "Manage Categories"
77
+ msgstr "Administrer Kategorier"
78
+
79
+ #: my-calendar-categories.php:157
80
+ #: my-calendar-event-manager.php:836
81
+ #: my-calendar-locations.php:171
82
+ msgid "ID"
83
+ msgstr "ID"
84
+
85
+ #: my-calendar-categories.php:159
86
+ msgid "Category Color"
87
+ msgstr "Kategori Farve"
88
+
89
+ #: my-calendar-categories.php:161
90
+ #: my-calendar-categories.php:175
91
+ #: my-calendar-event-manager.php:887
92
+ #: my-calendar-locations.php:173
93
+ #: my-calendar-locations.php:185
94
+ msgid "Edit"
95
+ msgstr "Rediger"
96
+
97
+ #: my-calendar-categories.php:162
98
+ #: my-calendar-categories.php:181
99
+ #: my-calendar-event-manager.php:57
100
+ #: my-calendar-event-manager.php:887
101
+ #: my-calendar-locations.php:174
102
+ #: my-calendar-locations.php:186
103
+ msgid "Delete"
104
+ msgstr "Slet"
105
+
106
+ #: my-calendar-categories.php:178
107
+ #: my-calendar-event-manager.php:873
108
+ #: my-calendar-settings.php:209
109
+ #: my-calendar.php:710
110
+ msgid "N/A"
111
+ msgstr "Ikke oplyst"
112
+
113
+ #: my-calendar-categories.php:181
114
+ #: my-calendar-locations.php:186
115
+ msgid "Are you sure you want to delete this category?"
116
+ msgstr "Er du sikker på, at du vil slette denne kategori?"
117
+
118
+ #: my-calendar-categories.php:192
119
+ msgid "There are no categories in the database - something has gone wrong!"
120
+ msgstr "Der er ingen kategorier i databasen - noget er gået galt!"
121
+
122
+ #: my-calendar-event-manager.php:13
123
+ #: my-calendar-settings.php:249
124
+ msgid "My Calendar has identified that you have the Calendar plugin by Kieran O'Shea installed. You can import those events and categories into the My Calendar database. Would you like to import these events?"
125
+ msgstr "My Calendar har registreret, at du har Kieran O'Sheas Calendar-plugin installeret. Du kan importere begivenheder og kategorier derfra til din My Calendar-database. Ønsker du at gøre dette?"
126
+
127
+ #: my-calendar-event-manager.php:19
128
+ #: my-calendar-settings.php:255
129
+ msgid "Import from Calendar"
130
+ msgstr "Importer fra Calendar"
131
+
132
+ #: my-calendar-event-manager.php:24
133
+ msgid "Although it is possible that this import could fail to import your events correctly, it should not have any impact on your existing Calendar database. If you encounter any problems, <a href=\"http://www.joedolson.com/contact.php\">please contact me</a>!"
134
+ msgstr "Selvom det er muligt, at denne import ikke kan importere dine begivenheder korrekt, skulle det ikke have nogen indvirkning på din eksisterende Calendar-database. <a href=\"http://www.joedolson.com/contact.php\">Kontakt mig venligst</a>, hvis du kommer ud for problemer."
135
+
136
+ #: my-calendar-event-manager.php:52
137
+ msgid "Delete Event"
138
+ msgstr "Slet Begivenhed"
139
+
140
+ #: my-calendar-event-manager.php:52
141
+ msgid "Are you sure you want to delete this event?"
142
+ msgstr "Er du sikker på, at du vil slette denne begivenhed?"
143
+
144
+ #: my-calendar-event-manager.php:65
145
+ msgid "You do not have permission to delete that event."
146
+ msgstr "Du har ikke tilladelse til at slette denne begivenhed."
147
+
148
+ #: my-calendar-event-manager.php:156
149
+ #: my-calendar-event-manager.php:161
150
+ #: my-calendar-event-manager.php:166
151
+ #: my-calendar-event-manager.php:176
152
+ #: my-calendar-event-manager.php:184
153
+ #: my-calendar-event-manager.php:193
154
+ #: my-calendar-event-manager.php:201
155
+ #: my-calendar-event-manager.php:239
156
+ #: my-calendar-event-manager.php:368
157
+ #: my-calendar-event-manager.php:373
158
+ #: my-calendar-event-manager.php:378
159
+ #: my-calendar-event-manager.php:388
160
+ #: my-calendar-event-manager.php:396
161
+ #: my-calendar-event-manager.php:405
162
+ #: my-calendar-event-manager.php:413
163
+ #: my-calendar-event-manager.php:498
164
+ #: my-calendar-event-manager.php:513
165
+ msgid "Error"
166
+ msgstr "Fejl"
167
+
168
+ #: my-calendar-event-manager.php:156
169
+ #: my-calendar-event-manager.php:368
170
+ msgid "Your event end date must be either after or the same as your event begin date"
171
+ msgstr "Din begivenheds slutdato må enten ligge efter eller være lig med begivenhedens startdato."
172
+
173
+ #: my-calendar-event-manager.php:161
174
+ #: my-calendar-event-manager.php:373
175
+ msgid "Your date formatting is correct but one or more of your dates is invalid. Check for number of days in month and leap year related errors."
176
+ msgstr "Din datoformattering er korrekt, men en eller flere af dine datoer er ugyldige. Tjek for fejl relateret til enten antal dage i måneden eller skudår."
177
+
178
+ #: my-calendar-event-manager.php:166
179
+ #: my-calendar-event-manager.php:378
180
+ msgid "Both start and end dates must be entered and be in the format YYYY-MM-DD"
181
+ msgstr "Både start- og slutdato skal indtastes og være i formatet ÅÅÅÅ-MM-DD"
182
+
183
+ #: my-calendar-event-manager.php:176
184
+ #: my-calendar-event-manager.php:388
185
+ msgid "The time field must either be blank or be entered in the format hh:mm"
186
+ msgstr "Feltet for tidspunkt skal enten være blankt eller indtastes i formatet tt:mm"
187
+
188
+ #: my-calendar-event-manager.php:184
189
+ #: my-calendar-event-manager.php:396
190
+ msgid "The URL entered must either be prefixed with http:// or be completely blank"
191
+ msgstr "Den indtastede URL skal enten være foranstillet med http:// eller være helt blank"
192
+
193
+ #: my-calendar-event-manager.php:193
194
+ #: my-calendar-event-manager.php:405
195
+ msgid "The event title must be between 1 and 255 characters in length."
196
+ msgstr "Begivenhedens titel skal være mellem 1 og 255 tegn i længde."
197
+
198
+ #: my-calendar-event-manager.php:201
199
+ #: my-calendar-event-manager.php:413
200
+ msgid "The repetition value must be 0 unless a type of recurrance is selected in which case the repetition value must be 0 or higher"
201
+ msgstr "Værdien for gentagelse skal være 0, medmindre der er er valgt en type af gentagelse, i hvilket tilfælde værdien for gentagelse skal sættes til 0 eller højere."
202
+
203
+ #: my-calendar-event-manager.php:239
204
+ msgid "An event with the details you submitted could not be found in the database. This may indicate a problem with your database or the way in which it is configured."
205
+ msgstr "En begivenhed med de angivne detaljer kunne ikke findes i databasen. Dette indikerer muligvis et problem med din database eller måden, den er konfigureret på."
206
+
207
+ #: my-calendar-event-manager.php:243
208
+ msgid "Event added. It will now show in your calendar."
209
+ msgstr "Begivenhed tilføjet. Den vises nu i din kalender."
210
+
211
+ #: my-calendar-event-manager.php:345
212
+ #: my-calendar-event-manager.php:451
213
+ msgid "Failure"
214
+ msgstr "FEJL"
215
+
216
+ #: my-calendar-event-manager.php:345
217
+ msgid "You can't update an event if you haven't submitted an event id"
218
+ msgstr "Du kan ikke opdatere en begivenhed, hvis du ikke har sendt et begivenheds-id."
219
+
220
+ #: my-calendar-event-manager.php:451
221
+ msgid "Your event was not updated."
222
+ msgstr "Din begivenhed blev ikke opdateret."
223
+
224
+ #: my-calendar-event-manager.php:455
225
+ msgid "Event updated successfully"
226
+ msgstr "Begivenhed opdateret"
227
+
228
+ #: my-calendar-event-manager.php:489
229
+ msgid "You do not have sufficient permissions to edit that event."
230
+ msgstr "Du har ikke tilstrækkelige tilladelser til at redigere denne begivenhed."
231
+
232
+ #: my-calendar-event-manager.php:498
233
+ msgid "You can't delete an event if you haven't submitted an event id"
234
+ msgstr "Du kan ikke redigere en begivenhed, hvis du ikke har sendt et begivenheds-id."
235
+
236
+ #: my-calendar-event-manager.php:509
237
+ msgid "Event deleted successfully"
238
+ msgstr "Begivenhed slettet"
239
+
240
+ #: my-calendar-event-manager.php:513
241
+ msgid "Despite issuing a request to delete, the event still remains in the database. Please investigate."
242
+ msgstr "Selvom der blev sendt en forespørgsel om sletning, eksisterer begivenheden stadig i databasen. Undersøg venligst."
243
+
244
+ #: my-calendar-event-manager.php:531
245
+ #: my-calendar-event-manager.php:604
246
+ msgid "Edit Event"
247
+ msgstr "Rediger Begivenhed"
248
+
249
+ #: my-calendar-event-manager.php:535
250
+ msgid "You must provide an event id in order to edit it"
251
+ msgstr "Du skal angive et begivenheds-id for at kunne redigere den"
252
+
253
+ #: my-calendar-event-manager.php:541
254
+ msgid "Add Event"
255
+ msgstr "Tilføj Begivenhed"
256
+
257
+ #: my-calendar-event-manager.php:546
258
+ msgid "Manage Events"
259
+ msgstr "Administrer Begivenheder"
260
+
261
+ #: my-calendar-event-manager.php:580
262
+ msgid "Sorry! That's an invalid event key."
263
+ msgstr "Beklager! Det er et ugyldigt begivenheds-ID."
264
+
265
+ #: my-calendar-event-manager.php:585
266
+ msgid "Sorry! We couldn't find an event with that ID."
267
+ msgstr "Beklager! Vi kunne ikke finde en begivenhed med det ID."
268
+
269
+ #: my-calendar-event-manager.php:604
270
+ msgid "Add an Event"
271
+ msgstr "Tilføj en Begivenhed"
272
+
273
+ #: my-calendar-event-manager.php:613
274
+ msgid "Enter your Event Information"
275
+ msgstr "Indtast oplysninger om begivenheden"
276
+
277
+ #: my-calendar-event-manager.php:615
278
+ msgid "Event Title"
279
+ msgstr "Begivenheds Titel"
280
+
281
+ #: my-calendar-event-manager.php:618
282
+ msgid "Event Description (<abbr title=\"hypertext markup language\">HTML</abbr> allowed)"
283
+ msgstr "Beskrivelse af begivenhed (<abbr title=\"hypertext markup language\">HTML</abbr> tilladt)"
284
+
285
+ #: my-calendar-event-manager.php:621
286
+ msgid "Event Category"
287
+ msgstr "Begivenheds Kategori"
288
+
289
+ #: my-calendar-event-manager.php:640
290
+ msgid "Event Link (Optional)"
291
+ msgstr "Begivenheds Link (valgfri)"
292
+
293
+ #: my-calendar-event-manager.php:640
294
+ msgid "This link will expire when the event passes."
295
+ msgstr "Dette link udløber, når begivenheden er overstået."
296
+
297
+ #: my-calendar-event-manager.php:643
298
+ msgid "Start Date (YYYY-MM-DD)"
299
+ msgstr "Startdato (ÅÅÅÅ-MM-DD)"
300
+
301
+ #: my-calendar-event-manager.php:646
302
+ msgid "End Date (YYYY-MM-DD) (Optional)"
303
+ msgstr "Slutdato (ÅÅÅÅ-MM-DD)"
304
+
305
+ #: my-calendar-event-manager.php:649
306
+ msgid "Time (hh:mm)"
307
+ msgstr "Tidspunkt (tt:mm)"
308
+
309
+ #: my-calendar-event-manager.php:660
310
+ msgid "Optional, set blank if your event is an all-day event or does not happen at a specific time."
311
+ msgstr "Valgfri, lad feltet være tomt, hvis begivenheden er en heldagsbegivenhed eller ikke foregår på et bestemt tidspunkt."
312
+
313
+ #: my-calendar-event-manager.php:660
314
+ msgid "Current time difference from GMT is "
315
+ msgstr "Nuværende tidsforskel fra GMT er "
316
+
317
+ #: my-calendar-event-manager.php:660
318
+ msgid " hour(s)"
319
+ msgstr " time(r)."
320
+
321
+ #: my-calendar-event-manager.php:663
322
+ msgid "End Time (hh:mm)"
323
+ msgstr "Sluttidspunkt (tt:mm)"
324
+
325
+ #: my-calendar-event-manager.php:674
326
+ msgid "Optional. End times will not be displayed on events where this is not set."
327
+ msgstr "Valgfri. Sluttidspunkter bliver ikke vist på begivenheder, hvor de ikke er valgt."
328
+
329
+ #: my-calendar-event-manager.php:678
330
+ msgid "Recurring Events"
331
+ msgstr "Tilbagevendende begivenheder"
332
+
333
+ #: my-calendar-event-manager.php:699
334
+ msgid "Repeats for"
335
+ msgstr "Gentages"
336
+
337
+ #: my-calendar-event-manager.php:700
338
+ msgid "Units"
339
+ msgstr "gange"
340
+
341
+ #: my-calendar-event-manager.php:701
342
+ msgid "Does not recur"
343
+ msgstr "Gentages ikke"
344
+
345
+ #: my-calendar-event-manager.php:702
346
+ #: my-calendar-event-manager.php:866
347
+ msgid "Daily"
348
+ msgstr "Dagligt"
349
+
350
+ #: my-calendar-event-manager.php:703
351
+ #: my-calendar-event-manager.php:867
352
+ msgid "Weekly"
353
+ msgstr "Ugentligt"
354
+
355
+ #: my-calendar-event-manager.php:704
356
+ msgid "Bi-weekly"
357
+ msgstr "Hveranden uge"
358
+
359
+ #: my-calendar-event-manager.php:705
360
+ #: my-calendar-event-manager.php:869
361
+ msgid "Monthly"
362
+ msgstr "Månedligt"
363
+
364
+ #: my-calendar-event-manager.php:706
365
+ msgid "Annually"
366
+ msgstr "Årligt"
367
+
368
+ #: my-calendar-event-manager.php:708
369
+ msgid "Entering 0 means forever, if a unit is selected. If the recurrance unit is left at \"Does not recur,\" the event will not reoccur."
370
+ msgstr "Indtastning af 0 betyder \"altid\", hvis en type af gentagelse er valgt. Hvis typen af gentagelse er sat til \"Gentages ikke\", vil begivenheden ikke gentages."
371
+
372
+ #: my-calendar-event-manager.php:715
373
+ #: my-calendar-locations.php:44
374
+ #: my-calendar-locations.php:113
375
+ msgid "All location fields are optional: <em>insufficient information may result in an inaccurate map</em>."
376
+ msgstr "Alle stedrelaterede felter er valgfri: <em>Utilstrækkelige oplysninger kan resultere i et upræcist kort</em>."
377
+
378
+ #: my-calendar-event-manager.php:721
379
+ msgid "Choose a preset location:"
380
+ msgstr "Vælg et forudindstillet sted:"
381
+
382
+ #: my-calendar-event-manager.php:735
383
+ msgid "Add recurring locations for later use."
384
+ msgstr "Tilføj tilbagevendende steder til senere brug."
385
+
386
+ #: my-calendar-event-manager.php:740
387
+ #: my-calendar-locations.php:47
388
+ #: my-calendar-locations.php:116
389
+ msgid "Name of Location (e.g. <em>Joe's Bar and Grill</em>)"
390
+ msgstr "Stednavn (f.eks. <em>Joe's Bar & Grill</em>)"
391
+
392
+ #: my-calendar-event-manager.php:743
393
+ #: my-calendar-locations.php:50
394
+ #: my-calendar-locations.php:119
395
+ msgid "Street Address"
396
+ msgstr "Gadenavn"
397
+
398
+ #: my-calendar-event-manager.php:746
399
+ #: my-calendar-locations.php:53
400
+ #: my-calendar-locations.php:122
401
+ msgid "Street Address (2)"
402
+ msgstr "Gadenavn (2)"
403
+
404
+ #: my-calendar-event-manager.php:749
405
+ #: my-calendar-locations.php:56
406
+ #: my-calendar-locations.php:125
407
+ msgid "City"
408
+ msgstr "By"
409
+
410
+ #: my-calendar-event-manager.php:749
411
+ #: my-calendar-locations.php:56
412
+ #: my-calendar-locations.php:125
413
+ msgid "State/Province"
414
+ msgstr "Stat/Provins"
415
+
416
+ #: my-calendar-event-manager.php:749
417
+ #: my-calendar-locations.php:56
418
+ #: my-calendar-locations.php:125
419
+ msgid "Postal Code"
420
+ msgstr "Postnummer"
421
+
422
+ #: my-calendar-event-manager.php:752
423
+ #: my-calendar-locations.php:59
424
+ #: my-calendar-locations.php:128
425
+ msgid "Country"
426
+ msgstr "Land"
427
+
428
+ #: my-calendar-event-manager.php:755
429
+ #: my-calendar-locations.php:62
430
+ #: my-calendar-locations.php:131
431
+ msgid "Initial Zoom"
432
+ msgstr "Indledende Zoom"
433
+
434
+ #: my-calendar-event-manager.php:757
435
+ #: my-calendar-locations.php:64
436
+ #: my-calendar-locations.php:133
437
+ msgid "Neighborhood"
438
+ msgstr "Nabolag"
439
+
440
+ #: my-calendar-event-manager.php:758
441
+ #: my-calendar-locations.php:65
442
+ #: my-calendar-locations.php:134
443
+ msgid "Small City"
444
+ msgstr "Lille By"
445
+
446
+ #: my-calendar-event-manager.php:759
447
+ #: my-calendar-locations.php:66
448
+ #: my-calendar-locations.php:135
449
+ msgid "Large City"
450
+ msgstr "Stor By"
451
+
452
+ #: my-calendar-event-manager.php:760
453
+ #: my-calendar-locations.php:67
454
+ #: my-calendar-locations.php:136
455
+ msgid "Greater Metro Area"
456
+ msgstr "Større byområde"
457
+
458
+ #: my-calendar-event-manager.php:761
459
+ #: my-calendar-locations.php:68
460
+ #: my-calendar-locations.php:137
461
+ msgid "State"
462
+ msgstr "Kommune"
463
+
464
+ #: my-calendar-event-manager.php:762
465
+ #: my-calendar-locations.php:69
466
+ #: my-calendar-locations.php:138
467
+ msgid "Region"
468
+ msgstr "Region"
469
+
470
+ #: my-calendar-event-manager.php:766
471
+ #: my-calendar-locations.php:73
472
+ #: my-calendar-locations.php:142
473
+ msgid "GPS Coordinates (optional)"
474
+ msgstr "GPS Koordinater (valgfri)"
475
+
476
+ #: my-calendar-event-manager.php:768
477
+ #: my-calendar-locations.php:75
478
+ #: my-calendar-locations.php:144
479
+ msgid "If you supply GPS coordinates for your location, they will be used in place of any other address information to pinpoint your location."
480
+ msgstr "Hvis du oplyser GPS koordinater for dit sted, bliver de brugt i stedet for enhver af de andre adresseoplysninger til at identificere stedet."
481
+
482
+ #: my-calendar-event-manager.php:771
483
+ #: my-calendar-locations.php:78
484
+ #: my-calendar-locations.php:147
485
+ msgid "Longitude"
486
+ msgstr "Længdegrad"
487
+
488
+ #: my-calendar-event-manager.php:771
489
+ #: my-calendar-locations.php:78
490
+ #: my-calendar-locations.php:147
491
+ msgid "Latitude"
492
+ msgstr "Breddegrad"
493
+
494
+ #: my-calendar-event-manager.php:777
495
+ msgid "Save Event"
496
+ msgstr "Gem begivenhed"
497
+
498
+ #: my-calendar-event-manager.php:837
499
+ #: my-calendar-widgets.php:37
500
+ #: my-calendar-widgets.php:122
501
+ msgid "Title"
502
+ msgstr "Titel"
503
+
504
+ #: my-calendar-event-manager.php:838
505
+ msgid "Link"
506
+ msgstr "Link"
507
+
508
+ #: my-calendar-event-manager.php:839
509
+ #: my-calendar-locations.php:172
510
+ msgid "Location"
511
+ msgstr "Sted"
512
+
513
+ #: my-calendar-event-manager.php:840
514
+ msgid "Description"
515
+ msgstr "Beskrivelse"
516
+
517
+ #: my-calendar-event-manager.php:841
518
+ msgid "Start Date"
519
+ msgstr "Startdato"
520
+
521
+ #: my-calendar-event-manager.php:842
522
+ msgid "Recurs"
523
+ msgstr "Gentages"
524
+
525
+ #: my-calendar-event-manager.php:843
526
+ #: my-calendar-settings.php:177
527
+ msgid "Author"
528
+ msgstr "Forfatter"
529
+
530
+ #: my-calendar-event-manager.php:844
531
+ msgid "Category"
532
+ msgstr "Kategori"
533
+
534
+ #: my-calendar-event-manager.php:845
535
+ msgid "Edit / Delete"
536
+ msgstr "Rediger / Slet"
537
+
538
+ #: my-calendar-event-manager.php:865
539
+ msgid "Never"
540
+ msgstr "Aldrig"
541
+
542
+ #: my-calendar-event-manager.php:868
543
+ msgid "Bi-Weekly"
544
+ msgstr "Hveranden uge"
545
+
546
+ #: my-calendar-event-manager.php:870
547
+ msgid "Yearly"
548
+ msgstr "Årligt"
549
+
550
+ #: my-calendar-event-manager.php:874
551
+ msgid "Forever"
552
+ msgstr "Altid"
553
+
554
+ #: my-calendar-event-manager.php:875
555
+ msgid "Times"
556
+ msgstr "Gange"
557
+
558
+ #: my-calendar-event-manager.php:897
559
+ msgid "There are no events in the database!"
560
+ msgstr "Der er ingen begivenheder i databasen!"
561
+
562
+ #: my-calendar-help.php:6
563
+ msgid "How to use My Calendar"
564
+ msgstr "Sådan bruger du My Calendar"
565
+
566
+ #: my-calendar-help.php:11
567
+ msgid "Shortcode Syntax"
568
+ msgstr "Shortcode syntaks"
569
+
570
+ #: my-calendar-help.php:14
571
+ msgid "These shortcodes can be used in Posts, Pages, or in text widgets."
572
+ msgstr "Disse shortcodes kan bruges i Indlæg, Sider eller i text widgets."
573
+
574
+ #: my-calendar-help.php:17
575
+ msgid "This basic shortcode will show the calendar on a post or page including all categories and the category key, in a traditional month-by-month format."
576
+ msgstr "Denne basale shortcode vil vise kalenderen i et indlæg eller en side, inklusiv alle kategorier og kategorinøglen, i et traditionelt måned-for-måned format."
577
+
578
+ #: my-calendar-help.php:20
579
+ msgid "The shortcode supports three attributes, <code>category</code>, <code>format</code> and <code>showkey</code>. There two alternate option for <code>format</code> &mdash; <code>list</code> &mdash; which will show the calendar in a list format, skipping dates without any events, and <code>mini</code>, which will display the calendar in a form more suitable to being displayed in smaller spaces, such as the sidebar. The <code>category</code> attribute requires either the name of or ID number one of your event categories (the name is case-sensitive). This will show a calendar only including events in that category. Multiple categories can be specified by separating the category names or IDs using the pipe character: <code>|</code>. Setting <code>showkey</code> to <code>no</code> will prevent the category key from being displayed &mdash; this can be useful with single-category output."
580
+ msgstr "Denne shortcode understøtter tre attributter, <code>category</code>, <code>format</code> og <code>showkey</code>. Der er to valgmuligheder for <code>format</code> &mdash; <code>list</code> &mdash; som viser kalenderen i et listeformat, hvor dage uden begivenheder springes over, og <code>mini</code>, som viser kalenderen i en form, der passer bedre ind i små områder, som f.eks. en sidebar. Attributten <code>category</code> kræver en af dine begivenhedskategoriers navn eller ID-nummer (navnet er kasusfølsomt). Dette viser en kalender, der kun inkluderer begivenheder i den angivne kategori. Flere kategorier kan specificeres ved at adskille kategorinavnene eller ID-numrene med \"pipe\"-tegnet: <code>|</code>. Sætter man <code>showkey</code> til <code>no</code>, forhindrer man kategorinøglen i at blive vist &mdash; dette kan være brugbart ved enkeltkategorioutput."
581
+
582
+ #: my-calendar-help.php:23
583
+ msgid "This shortcode displays the output of the Upcoming Events widget. Without attributes, it will display using the settings in your widget; the attributes are used to override the widget settings. The <code>before</code> and <code>after</code> attributes should be numbers; the <code>type</code> attribute can be either \"event\" or \"days\", and the <code>category</code> attribute works the same way as the category attribute on the main calendar shortcode. Templates work using the template codes listed below."
584
+ msgstr "Denne shortcode viser outputtet fra widgetten Kommende Begivenheder. Uden attributter vises den med indstillingerne fra widgetten; attributterne bruges til at tilsidesætte widgettens indstillinger. Attributterne <code>before</code> og <code>after</code> skal være tal; attributten <code>type</code> kan være enten \"event\" eller \"days\", og attributten <code>category</code> fungerer på samme måde som kategori-attributten i hovedkalenderens shortcode. Skabeloner fungerer vha. skabelonkoderne listet herunder."
585
+
586
+ #: my-calendar-help.php:26
587
+ msgid "Predictably enough, this shortcode displays the output of the Today's Events widget, with two configurable attributes: category and template."
588
+ msgstr "Forudsigeligt nok viser denne shortcode outputtet fra widgetten Dagens Begivenheder, med to indstillelige attributter: <code>category</code> og <code>template</code>."
589
+
590
+ #: my-calendar-help.php:34
591
+ msgid "Category Icons"
592
+ msgstr "Kategori Ikoner"
593
+
594
+ #: my-calendar-help.php:37
595
+ msgid "My Calendar is designed to manage multiple calendars. The basis for these calendars are categories; you can easily setup a calendar page which includes all categories, or you can dedicate separate pages to calendars in each category. For an example, this might be useful for you in managing the tour calendars for multiple bands; event calendars for a variety of locations, etc."
596
+ msgstr "My Calendar er designet til at kunne administrere flere kalendere. Udgangspunktet for dette er kategorier; du kan let opsætte en kalenderside, som inkluderer alle kategorier, eller du kan dedikere separate sider til kalendere i hver kategori. Dette kunne f.eks. være relevant, hvis du skulle administrere tourkalenderne for flere bands eller begivenhedskalenderne for en række forskellige steder."
597
+
598
+ #: my-calendar-help.php:40
599
+ msgid "The pre-installed category icons may not be especially useful for your needs or design. I'm assuming that you're going to upload your own icons -- all you need to do is upload them to the plugin's icons folder, and they'll be available for immediate use, or place them in a folder at \"my-calendar-custom\" to avoid having them overwritten by upgrades."
600
+ msgstr "De præinstallerede kategori-ikoner er måske ikke specielt velegnede til dit formål eller design. Jeg går ud fra, at du gerne vil uploade dine egne ikoner &mdash; alt du behøver at gøre er at uploade dem til mappen icons i pluginnets mappe i wp-content/plugins. Derefter er de klar til brug med det samme. Du kan også placere dem i en mappe kaldet \"my-calendar-custom\" for at undgå, at de bliver overskrevet ved opgradering af pluginnet."
601
+
602
+ #: my-calendar-help.php:40
603
+ msgid "Your icons folder is:"
604
+ msgstr "Din mappe til ikoner er:"
605
+
606
+ #: my-calendar-help.php:40
607
+ msgid "You can alternately place icons in:"
608
+ msgstr "Du kan alternativt placere ikoner i:"
609
+
610
+ #: my-calendar-help.php:48
611
+ msgid "Widget Templating"
612
+ msgstr "Widget Skabeloner"
613
+
614
+ #: my-calendar-help.php:51
615
+ msgid "These codes are available in calendar widgets to create your own custom calendar format."
616
+ msgstr "Disse koder er tilgængelige i kalenderwidgets med henblik på at kunne skabe dit eget tilpassede kalenderformat."
617
+
618
+ #: my-calendar-help.php:55
619
+ msgid "Displays the name of the category the event is in."
620
+ msgstr "Viser navnet på kategorien, som begivenheden er i."
621
+
622
+ #: my-calendar-help.php:58
623
+ msgid "Displays the title of the event."
624
+ msgstr "Viser begivenhedens titel."
625
+
626
+ #: my-calendar-help.php:61
627
+ msgid "Displays the start time for the event."
628
+ msgstr "Viser begivenhedens starttidspunkt."
629
+
630
+ #: my-calendar-help.php:64
631
+ msgid "Displays the date on which the event begins."
632
+ msgstr "Viser begivenhedens startdato."
633
+
634
+ #: my-calendar-help.php:67
635
+ msgid "Displays the date on which the event ends."
636
+ msgstr "Viser begivenhedens slutdato."
637
+
638
+ #: my-calendar-help.php:70
639
+ msgid "Displays the time at which the event ends."
640
+ msgstr "Viser begivenhedens sluttidspunkt."
641
+
642
+ #: my-calendar-help.php:73
643
+ msgid "Displays the WordPress author who posted the event."
644
+ msgstr "Viser den WordPress forfatter, der publicerede begivenheden."
645
+
646
+ #: my-calendar-help.php:76
647
+ msgid "Displays the URL provided for the event."
648
+ msgstr "Viser URL'en, der er indtastet i begivenhedens oplysninger."
649
+
650
+ #: my-calendar-help.php:79
651
+ msgid "Displays the description of the event."
652
+ msgstr "Viser beskrivelsen af begivenhden."
653
+
654
+ #: my-calendar-help.php:82
655
+ msgid "Displays title of the event as a link if a URL is present, or the title alone if no URL is available."
656
+ msgstr "Viser begivenhedens titel som et link, hvis en URL er tilgængelig, eller titlen alene, hvis en URL ikke er tilgængelig."
657
+
658
+ #: my-calendar-help.php:85
659
+ msgid "Displays the name of the location of the event."
660
+ msgstr "Viser navnet på begivenhedens sted."
661
+
662
+ #: my-calendar-help.php:88
663
+ msgid "Displays the first line of the site address."
664
+ msgstr "Viser første linie af stedets gadenavn."
665
+
666
+ #: my-calendar-help.php:91
667
+ msgid "Displays the second line of the site address."
668
+ msgstr "Viser anden linie af stedets gadenavn."
669
+
670
+ #: my-calendar-help.php:94
671
+ msgid "Displays the city for the event."
672
+ msgstr "Viser bynavnet i begivenhedens stedoplysninger."
673
+
674
+ #: my-calendar-help.php:97
675
+ msgid "Displays the state for the event."
676
+ msgstr "Viser kommunen i begivenhedens stedoplysninger."
677
+
678
+ #: my-calendar-help.php:100
679
+ msgid "Displays the postcode for the event."
680
+ msgstr "Viser postnummeret i begivenhedens stedoplysninger."
681
+
682
+ #: my-calendar-help.php:103
683
+ msgid "Displays the country for the event location."
684
+ msgstr "Viser landet i begivenhedens stedoplysninger."
685
+
686
+ #: my-calendar-help.php:106
687
+ msgid "Displays the event address in <a href=\"http://microformats.org/wiki/hcard\">hcard</a> format."
688
+ msgstr "Viser begivenhedens adresse i <a href=\"http://microformats.org/wiki/hcard\">hcard</a> format."
689
+
690
+ #: my-calendar-help.php:109
691
+ msgid "Displays a link to a Google Map of the event, if sufficient address information is available. If not, will be empty."
692
+ msgstr "Viser et link til et Google Kort over begivenhedens sted, hvis tilstrækkelige adresseinformationer er tilgængelig. Hvis ikke, vises der ikke et kort."
693
+
694
+ #: my-calendar-locations.php:21
695
+ msgid "Location added successfully"
696
+ msgstr "Sted tilføjet"
697
+
698
+ #: my-calendar-locations.php:25
699
+ msgid "Location deleted successfully"
700
+ msgstr "Sted slettet"
701
+
702
+ #: my-calendar-locations.php:30
703
+ msgid "Edit Location"
704
+ msgstr "Rediger Sted"
705
+
706
+ #: my-calendar-locations.php:34
707
+ msgid "Location Editor"
708
+ msgstr "Sted Redigering"
709
+
710
+ #: my-calendar-locations.php:93
711
+ msgid "Location edited successfully"
712
+ msgstr "Sted redigeret"
713
+
714
+ #: my-calendar-locations.php:99
715
+ #: my-calendar-locations.php:151
716
+ msgid "Add Location"
717
+ msgstr "Tilføj Sted"
718
+
719
+ #: my-calendar-locations.php:103
720
+ msgid "Add New Location"
721
+ msgstr "Tilføj Nyt Sted"
722
+
723
+ #: my-calendar-locations.php:159
724
+ #: my-calendar.php:170
725
+ msgid "Manage Locations"
726
+ msgstr "Administrer Steder"
727
+
728
+ #: my-calendar-locations.php:194
729
+ msgid "There are no locations in the database yet!"
730
+ msgstr "Der er endnu ingen steder i databasen!"
731
+
732
+ #: my-calendar-locations.php:198
733
+ msgid "Please note: editing or deleting locations stored for re-use will have no effect on any event previously scheduled at that location. The location database exists purely as a shorthand method to enter frequently used locations into event records."
734
+ msgstr "Bemærk: redigering eller sletning af steder gemt til genbrug, har ikke indvirkning på tidligere gemte begivenheder på det sted. Steddatabasen eksisterer kun som en hurtig metode til indtastning af ofte brugte steder i begivenhedsoplysninger."
735
+
736
+ #: my-calendar-settings.php:67
737
+ msgid "Categories imported successfully."
738
+ msgstr "Kategorier importeret"
739
+
740
+ #: my-calendar-settings.php:69
741
+ msgid "Categories not imported."
742
+ msgstr "Kategorier blev ikke importeret"
743
+
744
+ #: my-calendar-settings.php:72
745
+ msgid "Events imported successfully."
746
+ msgstr "Begivenheder importeret"
747
+
748
+ #: my-calendar-settings.php:74
749
+ msgid "Events not imported."
750
+ msgstr "Begivenheder blev ikke importeret"
751
+
752
+ #: my-calendar-settings.php:135
753
+ msgid "Settings saved"
754
+ msgstr "Indstillinger gemt"
755
+
756
+ #: my-calendar-settings.php:161
757
+ msgid "My Calendar Options"
758
+ msgstr "My Calendar Valgmuligheder"
759
+
760
+ #: my-calendar-settings.php:168
761
+ msgid "Calendar Settings"
762
+ msgstr "Calendar Indstillinger"
763
+
764
+ #: my-calendar-settings.php:172
765
+ msgid "Calendar Options: Management"
766
+ msgstr "Kalender Indstillinger: Administration"
767
+
768
+ #: my-calendar-settings.php:174
769
+ msgid "Choose the lowest user group that may manage events"
770
+ msgstr "Vælg den laveste brugergruppe, der må administrere begivenheder"
771
+
772
+ #: my-calendar-settings.php:175
773
+ msgid "Subscriber"
774
+ msgstr "Abonnent"
775
+
776
+ #: my-calendar-settings.php:176
777
+ msgid "Contributor"
778
+ msgstr "Bidragyder"
779
+
780
+ #: my-calendar-settings.php:178
781
+ msgid "Editor"
782
+ msgstr "Redaktør"
783
+
784
+ #: my-calendar-settings.php:179
785
+ msgid "Administrator"
786
+ msgstr "Administrator"
787
+
788
+ #: my-calendar-settings.php:184
789
+ msgid "Calendar Options: Output"
790
+ msgstr "Kalender Valgmuligheder: Output"
791
+
792
+ #: my-calendar-settings.php:186
793
+ msgid "Do you want to display the author name on events?"
794
+ msgstr "Ønsker du at vise forfatterens navn i begivenheder?"
795
+
796
+ #: my-calendar-settings.php:187
797
+ #: my-calendar-settings.php:194
798
+ msgid "Yes"
799
+ msgstr "Ja"
800
+
801
+ #: my-calendar-settings.php:188
802
+ #: my-calendar-settings.php:195
803
+ msgid "No"
804
+ msgstr "Nej"
805
+
806
+ #: my-calendar-settings.php:193
807
+ msgid "Display a jumpbox for changing month and year quickly?"
808
+ msgstr "Vis en popup-boks til hurtig ændring af måned og år?"
809
+
810
+ #: my-calendar-settings.php:199
811
+ msgid "In list mode, show how many months of events at a time:"
812
+ msgstr "Hvor mange måneders begivenheder skal vises i listevisning ad gangen:"
813
+
814
+ #: my-calendar-settings.php:202
815
+ msgid "Date format in list mode"
816
+ msgstr "Datoformat i listevisning"
817
+
818
+ #: my-calendar-settings.php:203
819
+ msgid "Date format uses the same syntax as the <a href=\"http://php.net/date\">PHP <code>date()</code> function</a>. Save option to update sample output."
820
+ msgstr "Datoformat bruger samme syntaks som <a href=\"http://php.net/date\">PHP <code>date()</code> funktionen</a>. Gem indstillingen for at opdatere test-outputtet."
821
+
822
+ #: my-calendar-settings.php:206
823
+ msgid "Show Heading for Calendar"
824
+ msgstr "Vis Overskrift for Kalender"
825
+
826
+ #: my-calendar-settings.php:209
827
+ msgid "Label for events without a specific time"
828
+ msgstr "Mærkat for begivenheder uden et specifikt tidspunkt"
829
+
830
+ #: my-calendar-settings.php:212
831
+ msgid "Previous events link text"
832
+ msgstr "Linktekst for tidligere begivenheder"
833
+
834
+ #: my-calendar-settings.php:212
835
+ msgid "Previous Events"
836
+ msgstr "Tidligere Begivenheder"
837
+
838
+ #: my-calendar-settings.php:215
839
+ msgid "Next events link text"
840
+ msgstr "Linktekst for kommende begivenheder"
841
+
842
+ #: my-calendar-settings.php:215
843
+ msgid "Next Events"
844
+ msgstr "Kommende Begivenheder"
845
+
846
+ #: my-calendar-settings.php:218
847
+ msgid "Additional caption text"
848
+ msgstr "Yderligere tekst til kalendercaption"
849
+
850
+ #: my-calendar-settings.php:218
851
+ msgid "The calendar caption is the text containing the displayed month and year in either list or calendar format. This text will be displayed following that existing text."
852
+ msgstr "Kalender caption teksten er den tekst, der indeholder den viste måned og år i enten liste- eller kalendervisning. Den indtastede tekst vises efter den eksisterende tekst."
853
+
854
+ #: my-calendar-settings.php:221
855
+ msgid "Hide category icons in output"
856
+ msgstr "Skjul kategori-ikoner i output"
857
+
858
+ #: my-calendar-settings.php:224
859
+ msgid "Show Link to Google Map (when sufficient address information is available.)"
860
+ msgstr "Vis Link til Google Kort (når tilstrækkelige adresseoplysninger er tilgængelige)"
861
+
862
+ #: my-calendar-settings.php:227
863
+ msgid "Show Event Address in Details"
864
+ msgstr "Vis Begivenheds Adresse i Detaljer"
865
+
866
+ #: my-calendar-settings.php:230
867
+ msgid "Links associated with events will automatically expire after the event has passed."
868
+ msgstr "Links associeret med begivenheder vil automatisk udløbe efter en begivenhed er overstået."
869
+
870
+ #: my-calendar-settings.php:233
871
+ msgid "Default usage of category colors."
872
+ msgstr "Standard brug af kategorifarver"
873
+
874
+ #: my-calendar-settings.php:234
875
+ msgid "Apply category colors to event titles as a font color."
876
+ msgstr "Brug kategorifarver som skriftfarve i begivenhedstitler."
877
+
878
+ #: my-calendar-settings.php:235
879
+ msgid "Apply category colors to event titles as a background color."
880
+ msgstr "Brug kategorifarver som baggrundsfarve i begivenhedstitler"
881
+
882
+ #: my-calendar-settings.php:239
883
+ msgid "Save Settings"
884
+ msgstr "Gem Indstillinger"
885
+
886
+ #: my-calendar-styles.php:46
887
+ msgid "Style Settings saved"
888
+ msgstr "Stil Indstillinger Gemt"
889
+
890
+ #: my-calendar-styles.php:70
891
+ msgid "My Calendar Styles"
892
+ msgstr "My Calendar Stile"
893
+
894
+ #: my-calendar-styles.php:74
895
+ msgid "Calendar Style Settings"
896
+ msgstr "Kalender Stil Indstillinger"
897
+
898
+ #: my-calendar-styles.php:78
899
+ msgid "Show CSS & JavaScript only on these pages (comma separated page IDs)"
900
+ msgstr "Vis kun CSS & Javascript på disse sider (kommaseparerede side ID'er)"
901
+
902
+ #: my-calendar-styles.php:81
903
+ msgid "CSS Style Options"
904
+ msgstr "CSS Stil Valgmuligheder"
905
+
906
+ #: my-calendar-styles.php:83
907
+ msgid "Reset the My Calendar stylesheet to the default"
908
+ msgstr "Nulstil My Calendar stylesheets til default"
909
+
910
+ #: my-calendar-styles.php:83
911
+ msgid "Disable My Calendar Stylesheet"
912
+ msgstr "Deaktiver My Calendar Stylesheet"
913
+
914
+ #: my-calendar-styles.php:86
915
+ msgid "Edit the stylesheet for My Calendar"
916
+ msgstr "Rediger My Calendars stylesheet"
917
+
918
+ #: my-calendar-styles.php:89
919
+ #: my-calendar-styles.php:101
920
+ #: my-calendar-styles.php:113
921
+ #: my-calendar-styles.php:125
922
+ msgid "Save"
923
+ msgstr "Gem"
924
+
925
+ #: my-calendar-styles.php:93
926
+ msgid "Calendar Behaviors: Calendar View"
927
+ msgstr "Kalender Opførsel: Kalendervisning"
928
+
929
+ #: my-calendar-styles.php:95
930
+ msgid "Reset the My Calendar Calendar Javascript"
931
+ msgstr "Nulstil My Calendar Kalender Javascript"
932
+
933
+ #: my-calendar-styles.php:95
934
+ msgid "Disable Calendar Javascript Effects"
935
+ msgstr "Deaktiver Kalender Javascript Effekter"
936
+
937
+ #: my-calendar-styles.php:98
938
+ msgid "Edit the jQuery scripts for My Calendar in Calendar format"
939
+ msgstr "Rediger jQuery scripts til My Calendar i Kalenderformat."
940
+
941
+ #: my-calendar-styles.php:105
942
+ msgid "Calendar Behaviors: List View"
943
+ msgstr "Kalender Opførsel: Listevisning"
944
+
945
+ #: my-calendar-styles.php:107
946
+ msgid "Reset the My Calendar List Javascript"
947
+ msgstr "Nulstil My Calendar Liste Javascript"
948
+
949
+ #: my-calendar-styles.php:107
950
+ msgid "Disable List Javascript Effects"
951
+ msgstr "Deaktiver Liste Javascript Effekter"
952
+
953
+ #: my-calendar-styles.php:110
954
+ msgid "Edit the jQuery scripts for My Calendar in List format"
955
+ msgstr "Rediger jQuery scripts til My Calendar i Listeformat"
956
+
957
+ #: my-calendar-styles.php:117
958
+ msgid "Calendar Behaviors: Mini Calendar View"
959
+ msgstr "Kalendar Opførsel: Mini Kalender Visning"
960
+
961
+ #: my-calendar-styles.php:119
962
+ msgid "Reset the My Calendar Mini Format Javascript"
963
+ msgstr "Nulstil My Calendar Mini Format Javascript"
964
+
965
+ #: my-calendar-styles.php:119
966
+ msgid "Disable Mini Javascript Effects"
967
+ msgstr "Deaktiver Mini Javascript Effekter"
968
+
969
+ #: my-calendar-styles.php:122
970
+ msgid "Edit the jQuery scripts for My Calendar in Mini Calendar format"
971
+ msgstr "Rediger jQuery scripts til My Calendar i Mini Kalender format"
972
+
973
+ #: my-calendar-upgrade-db.php:19
974
+ msgid "The My Calendar database needs to be updated."
975
+ msgstr "My Calendars database skal opdateres"
976
+
977
+ #: my-calendar-upgrade-db.php:20
978
+ #: my-calendar-upgrade-db.php:34
979
+ msgid "Update now"
980
+ msgstr "Opdater nu"
981
+
982
+ #: my-calendar-upgrade-db.php:33
983
+ msgid "You haven't entered any events, so My Calendar can't tell whether your database needs to be updated. If you can't add events, upgrade your database!"
984
+ msgstr "Du har ikke tilføjet nogen begivenheder, så My Calendar ved ikke om din database har brug for at blive opdateret. Opgrader din database, hvis du ikke kan tilføje begivenheder!"
985
+
986
+ #: my-calendar-upgrade-db.php:44
987
+ msgid "My Calendar Database is updated."
988
+ msgstr "My Calendars database er opdateret."
989
+
990
+ #: my-calendar-widgets.php:11
991
+ #: my-calendar-widgets.php:51
992
+ #: my-calendar-widgets.php:52
993
+ msgid "Today's Events"
994
+ msgstr "Dagens Begivenheder"
995
+
996
+ #: my-calendar-widgets.php:41
997
+ #: my-calendar-widgets.php:126
998
+ msgid "Template"
999
+ msgstr "Skabelon"
1000
+
1001
+ #: my-calendar-widgets.php:45
1002
+ msgid "Show this text if there are no events today:"
1003
+ msgstr "Vis denne tekst, hvis der ikke er begivenheder i dag:"
1004
+
1005
+ #: my-calendar-widgets.php:65
1006
+ #: my-calendar-widgets.php:152
1007
+ #: my-calendar-widgets.php:153
1008
+ msgid "Upcoming Events"
1009
+ msgstr "Kommende begivenheder"
1010
+
1011
+ #: my-calendar-widgets.php:130
1012
+ msgid "Widget Options"
1013
+ msgstr "Widget Indstillinger"
1014
+
1015
+ #: my-calendar-widgets.php:132
1016
+ msgid "Display upcoming events by:"
1017
+ msgstr "Vis kommende begivenheder med:"
1018
+
1019
+ #: my-calendar-widgets.php:133
1020
+ msgid "Events (e.g. 2 past, 3 future)"
1021
+ msgstr "Begivenheder (f.eks. 2 overståede, 3 kommende)"
1022
+
1023
+ #: my-calendar-widgets.php:134
1024
+ msgid "Dates (e.g. 4 days past, 5 forward)"
1025
+ msgstr "Datoer (f.eks. 4 dage bagud, 5 fremad)"
1026
+
1027
+ #: my-calendar-widgets.php:138
1028
+ msgid "events into the future;"
1029
+ msgstr "Begivenheder i den kommende tid;"
1030
+
1031
+ #: my-calendar-widgets.php:139
1032
+ msgid "events from the past"
1033
+ msgstr "Hidtidige begivenheder;"
1034
+
1035
+ #: my-calendar-widgets.php:142
1036
+ msgid "days into the future;"
1037
+ msgstr "dage i den kommende tid;"
1038
+
1039
+ #: my-calendar-widgets.php:143
1040
+ msgid "days from the past"
1041
+ msgstr "hidtidige dage"
1042
+
1043
+ #: my-calendar-widgets.php:146
1044
+ msgid "Show only this category:"
1045
+ msgstr "Vis kun denne kategori;"
1046
+
1047
+ #: my-calendar-widgets.php:272
1048
+ msgid "There are no events currently scheduled."
1049
+ msgstr "Der er ikke planlagt nogen begivenheder p.t."
1050
+
1051
+ #: my-calendar.php:52
1052
+ #: my-calendar.php:171
1053
+ msgid "Settings"
1054
+ msgstr "Indstillinger"
1055
+
1056
+ #: my-calendar.php:53
1057
+ #: my-calendar.php:173
1058
+ msgid "Help"
1059
+ msgstr "Hjælp"
1060
+
1061
+ #: my-calendar.php:76
1062
+ msgid "Get Support"
1063
+ msgstr "Få Support"
1064
+
1065
+ #: my-calendar.php:77
1066
+ #: my-calendar.php:173
1067
+ msgid "My Calendar Help"
1068
+ msgstr "My Calendar Hjælp"
1069
+
1070
+ #: my-calendar.php:78
1071
+ msgid "Make a Donation"
1072
+ msgstr "Giv en Donation"
1073
+
1074
+ #. #-#-#-#-# plugin.pot (My Calendar 1.4.3) #-#-#-#-#
1075
+ #. Plugin Name of the plugin/theme
1076
+ #: my-calendar.php:162
1077
+ msgid "My Calendar"
1078
+ msgstr "My Calendar"
1079
+
1080
+ #: my-calendar.php:165
1081
+ msgid "Add/Edit Events"
1082
+ msgstr "Tilføj/Rediger Begivenheder"
1083
+
1084
+ #: my-calendar.php:172
1085
+ msgid "Style Editor"
1086
+ msgstr "Stil Redigering"
1087
+
1088
+ #: my-calendar.php:691
1089
+ msgid "Event Details"
1090
+ msgstr "Begivenheds Detaljer"
1091
+
1092
+ #: my-calendar.php:700
1093
+ msgid "Close"
1094
+ msgstr "Luk"
1095
+
1096
+ #: my-calendar.php:710
1097
+ msgid "Not Applicable"
1098
+ msgstr "Ikke Relevant"
1099
+
1100
+ #: my-calendar.php:722
1101
+ msgid "Posted by"
1102
+ msgstr "Publiceret af"
1103
+
1104
+ #: my-calendar.php:1287
1105
+ msgid "Month"
1106
+ msgstr "Måned"
1107
+
1108
+ #: my-calendar.php:1288
1109
+ #: my-calendar.php:1372
1110
+ msgid "January"
1111
+ msgstr "Januar"
1112
+
1113
+ #: my-calendar.php:1289
1114
+ #: my-calendar.php:1372
1115
+ msgid "February"
1116
+ msgstr "Februar"
1117
+
1118
+ #: my-calendar.php:1290
1119
+ #: my-calendar.php:1372
1120
+ msgid "March"
1121
+ msgstr "Marts"
1122
+
1123
+ #: my-calendar.php:1291
1124
+ #: my-calendar.php:1372
1125
+ msgid "April"
1126
+ msgstr "April"
1127
+
1128
+ #: my-calendar.php:1292
1129
+ #: my-calendar.php:1372
1130
+ msgid "May"
1131
+ msgstr "Maj"
1132
+
1133
+ #: my-calendar.php:1293
1134
+ #: my-calendar.php:1372
1135
+ msgid "June"
1136
+ msgstr "Juni"
1137
+
1138
+ #: my-calendar.php:1294
1139
+ #: my-calendar.php:1372
1140
+ msgid "July"
1141
+ msgstr "Juli"
1142
+
1143
+ #: my-calendar.php:1295
1144
+ #: my-calendar.php:1372
1145
+ msgid "August"
1146
+ msgstr "August"
1147
+
1148
+ #: my-calendar.php:1296
1149
+ #: my-calendar.php:1372
1150
+ msgid "September"
1151
+ msgstr "September"
1152
+
1153
+ #: my-calendar.php:1297
1154
+ #: my-calendar.php:1372
1155
+ msgid "October"
1156
+ msgstr "Oktober"
1157
+
1158
+ #: my-calendar.php:1298
1159
+ #: my-calendar.php:1372
1160
+ msgid "November"
1161
+ msgstr "November"
1162
+
1163
+ #: my-calendar.php:1299
1164
+ #: my-calendar.php:1372
1165
+ msgid "December"
1166
+ msgstr "December"
1167
+
1168
+ #: my-calendar.php:1301
1169
+ msgid "Year"
1170
+ msgstr "År"
1171
+
1172
+ #: my-calendar.php:1326
1173
+ msgid "Go"
1174
+ msgstr "Gå"
1175
+
1176
+ #: my-calendar.php:1344
1177
+ msgid "<abbr title=\"Sunday\">Sun</abbr>"
1178
+ msgstr "<abbr title=\"Søndag\">Søn</abbr>"
1179
+
1180
+ #: my-calendar.php:1345
1181
+ msgid "<abbr title=\"Monday\">Mon</abbr>"
1182
+ msgstr "<abbr title=\"Mandag\">Man</abbr>"
1183
+
1184
+ #: my-calendar.php:1346
1185
+ msgid "<abbr title=\"Tuesday\">Tues</abbr>"
1186
+ msgstr "<abbr title=\"Tirsdag\">Tirs</abbr>"
1187
+
1188
+ #: my-calendar.php:1347
1189
+ msgid "<abbr title=\"Wednesday\">Wed</abbr>"
1190
+ msgstr "<abbr title=\"Onsdag\">Ons</abbr>"
1191
+
1192
+ #: my-calendar.php:1348
1193
+ msgid "<abbr title=\"Thursday\">Thur</abbr>"
1194
+ msgstr "<abbr title=\"Torsdag\">Tors</abbr>"
1195
+
1196
+ #: my-calendar.php:1349
1197
+ msgid "<abbr title=\"Friday\">Fri</abbr>"
1198
+ msgstr "<abbr title=\"Fredag\">Fre</abbr>"
1199
+
1200
+ #: my-calendar.php:1350
1201
+ msgid "<abbr title=\"Saturday\">Sat</abbr>"
1202
+ msgstr "<abbr title=\"Lørdag\">Lør</abbr>"
1203
+
1204
+ #: my-calendar.php:1355
1205
+ msgid "<abbr title=\"Sunday\">S</abbr>"
1206
+ msgstr "<abbr title=\"Søndag\">S</abbr>"
1207
+
1208
+ #: my-calendar.php:1356
1209
+ msgid "<abbr title=\"Monday\">M</abbr>"
1210
+ msgstr "<abbr title=\"Mandag\">M</abbr>"
1211
+
1212
+ #: my-calendar.php:1357
1213
+ msgid "<abbr title=\"Tuesday\">T</abbr>"
1214
+ msgstr "<abbr title=\"Tirsdag\">T</abbr>"
1215
+
1216
+ #: my-calendar.php:1358
1217
+ msgid "<abbr title=\"Wednesday\">W</abbr>"
1218
+ msgstr "<abbr title=\"Onsdag\">O</abbr>"
1219
+
1220
+ #: my-calendar.php:1359
1221
+ msgid "<abbr title=\"Thursday\">T</abbr>"
1222
+ msgstr "<abbr title=\"Torsdag\">T</abbr>"
1223
+
1224
+ #: my-calendar.php:1360
1225
+ msgid "<abbr title=\"Friday\">F</abbr>"
1226
+ msgstr "<abbr title=\"Fredag\">F</abbr>"
1227
+
1228
+ #: my-calendar.php:1361
1229
+ msgid "<abbr title=\"Saturday\">S</abbr>"
1230
+ msgstr "<abbr title=\"Lørdag\">S</abbr>"
1231
+
1232
+ #: my-calendar.php:1411
1233
+ msgid "and"
1234
+ msgstr "og"
1235
+
1236
+ #: my-calendar.php:1440
1237
+ #: my-calendar.php:1444
1238
+ msgid "Calendar"
1239
+ msgstr "Calendar"
1240
+
1241
+ #: my-calendar.php:1448
1242
+ msgid "Events in"
1243
+ msgstr "Begivenheder i"
1244
+
1245
+ #: my-calendar.php:1560
1246
+ msgid "There are no events scheduled during this period."
1247
+ msgstr "Der er ikke planlagt begivenheder i denne periode."
1248
+
1249
+ #: my-calendar.php:1570
1250
+ msgid "Category Key"
1251
+ msgstr "Kategorinøgle"
1252
+
1253
+ #. Plugin URI of the plugin/theme
1254
+ msgid "http://www.joedolson.com/articles/my-calendar/"
1255
+ msgstr "http://www.joedolson.com/articles/my-calendar/"
1256
+
1257
+ #. Description of the plugin/theme
1258
+ msgid "Accessible WordPress event calendar plugin. Show events from multiple calendars on pages, in posts, or in widgets."
1259
+ msgstr "Brugervenlig Wordpress begivenhedskalender plugin. Vis begivenheder fra flere kalendere på sider, i indlæg eller i widgets."
1260
+
1261
+ #. Author of the plugin/theme
1262
+ msgid "Joseph C Dolson"
1263
+ msgstr "Joseph C Dolson"
1264
+
1265
+ #. Author URI of the plugin/theme
1266
+ msgid "http://www.joedolson.com"
1267
+ msgstr "http://www.joedolson.com"
1268
+
my-calendar-event-manager.php CHANGED
@@ -3,39 +3,35 @@
3
  // to deal with posts
4
  function edit_my_calendar() {
5
  global $current_user, $wpdb, $users_entries;
6
- ?>
7
-
8
- <?php
9
- if ( get_option('ko_calendar_imported') != 'true' ) {
10
- if (function_exists('check_calendar')) {
11
- echo "<div id='message' class='updated'>";
12
- echo "<p>";
13
- _e('My Calendar has identified that you have the Calendar plugin by Kieran O\'Shea installed. You can import those events and categories into the My Calendar database. Would you like to import these events?','my-calendar');
14
- echo "</p>";
15
- ?>
16
- <form method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-config">
17
- <div>
18
- <input type="hidden" name="import" value="true" />
19
- <input type="submit" value="<?php _e('Import from Calendar','my-calendar'); ?>" name="import-calendar" class="button-primary" />
20
- </div>
21
- </form>
22
- <?php
23
- echo "<p>";
24
- _e('Although it is possible that this import could fail to import your events correctly, it should not have any impact on your existing Calendar database. If you encounter any problems, <a href="http://www.joedolson.com/contact.php">please contact me</a>!','my-calendar');
25
- echo "</p>";
26
- echo "</div>";
27
  }
28
- }
29
- ?>
30
-
31
- <?php
32
  // First some quick cleaning up
33
  $edit = $create = $save = $delete = false;
34
 
35
  $action = !empty($_POST['action']) ? $_POST['action'] : '';
36
  $event_id = !empty($_POST['event_id']) ? $_POST['event_id'] : '';
37
 
38
- if ($_GET['action'] == 'edit') {
39
  $action = "edit";
40
  $event_id = (int) $_GET['event_id'];
41
  }
@@ -43,7 +39,7 @@ if ($_GET['action'] == 'edit') {
43
  // Lets see if this is first run and create us a table if it is!
44
  check_my_calendar();
45
 
46
- if ($_GET['action'] == 'delete') {
47
  $sql = "SELECT event_title, event_author FROM " . MY_CALENDAR_TABLE . " WHERE event_id=" . (int) $_GET['event_id'];
48
  $result = $wpdb->get_results( $sql, ARRAY_A );
49
  if ( mc_can_edit_event( $result[0]['event_author'] ) ) {
@@ -68,452 +64,88 @@ if ($_GET['action'] == 'delete') {
68
  }
69
  }
70
 
 
 
71
  // Deal with adding an event to the database
72
- if ( $action == 'add' ) {
73
- $title = !empty($_POST['event_title']) ? $_POST['event_title'] : '';
74
- $desc = !empty($_POST['event_desc']) ? $_POST['event_desc'] : '';
75
- $begin = !empty($_POST['event_begin']) ? $_POST['event_begin'] : '';
76
- $end = !empty($_POST['event_end']) ? $_POST['event_end'] : $begin;
77
- $time = !empty($_POST['event_time']) ? $_POST['event_time'] : '';
78
- $endtime = !empty($_POST['event_endtime']) ? $_POST['event_endtime'] : '';
79
- $recur = !empty($_POST['event_recur']) ? $_POST['event_recur'] : '';
80
- $repeats = !empty($_POST['event_repeats']) ? $_POST['event_repeats'] : 0;
81
- $category = !empty($_POST['event_category']) ? $_POST['event_category'] : '';
82
- $linky = !empty($_POST['event_link']) ? $_POST['event_link'] : '';
83
- $expires = !empty($_POST['event_link_expires']) ? $_POST['event_link_expires'] : '0';
84
- $location_preset = !empty($_POST['location_preset']) ? $_POST['location_preset'] : '';
85
- if ($location_preset != 'none') {
86
- $sql = "SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id = $location_preset";
87
- $location = $wpdb->get_row($sql);
88
- $event_label = $location->location_label;
89
- $event_street = $location->location_street;
90
- $event_street2 = $location->location_street2;
91
- $event_city = $location->location_city;
92
- $event_state = $location->location_state;
93
- $event_postcode = $location->location_postcode;
94
- $event_country = $location->location_country;
95
- $event_longitude = $location->location_longitude;
96
- $event_latitude = $location->location_latitude;
97
- $event_zoom = $location->location_zoom;
98
- } else {
99
- $event_label = !empty($_POST['event_label']) ? $_POST['event_label'] : '';
100
- $event_street = !empty($_POST['event_street']) ? $_POST['event_street'] : '';
101
- $event_street2 = !empty($_POST['event_street2']) ? $_POST['event_street2'] : '';
102
- $event_city = !empty($_POST['event_city']) ? $_POST['event_city'] : '';
103
- $event_state = !empty($_POST['event_state']) ? $_POST['event_state'] : '';
104
- $event_postcode = !empty($_POST['event_postcode']) ? $_POST['event_postcode'] : '';
105
- $event_country = !empty($_POST['event_country']) ? $_POST['event_country'] : '';
106
- $event_longitude = !empty($_POST['event_longitude']) ? $_POST['event_longitude'] : '';
107
- $event_latitude = !empty($_POST['event_latitude']) ? $_POST['event_latitude'] : '';
108
- $event_zoom = !empty($_POST['event_zoom']) ? $_POST['event_zoom'] : '';
109
- }
110
- // Deal with the fools who have left magic quotes turned on
111
- if ( ini_get('magic_quotes_gpc') ) {
112
- $title = stripslashes($title);
113
- $desc = stripslashes($desc);
114
- $begin = stripslashes($begin);
115
- $end = stripslashes($end);
116
- $time = stripslashes($time);
117
- $endtime = stripslashes($endtime);
118
- $recur = stripslashes($recur);
119
- $repeats = stripslashes($repeats);
120
- $category = stripslashes($category);
121
- $linky = stripslashes($linky);
122
- $expires = stripslashes($expires);
123
- $event_label = stripslashes($event_label);
124
- $event_street = stripslashes($event_street);
125
- $event_street2 = stripslashes($event_street2);
126
- $event_city = stripslashes($event_city);
127
- $event_state = stripslashes($event_state);
128
- $event_postcode = stripslashes($event_postcode);
129
- $event_country = stripslashes($event_country);
130
- $event_longitude = stripslashes($event_longitude);
131
- $event_latitude = stripslashes($event_latitude);
132
- $event_zoom = stripslashes($event_zoom);
133
-
134
- }
135
 
136
- // Perform some validation on the submitted dates - this checks for valid years and months
137
- $date_format_one = '/^([0-9]{4})-([0][1-9])-([0-3][0-9])$/';
138
- $date_format_two = '/^([0-9]{4})-([1][0-2])-([0-3][0-9])$/';
139
- if ((preg_match($date_format_one,$begin) || preg_match($date_format_two,$begin)) && (preg_match($date_format_one,$end) || preg_match($date_format_two,$end))) {
140
- // We know we have a valid year and month and valid integers for days so now we do a final check on the date
141
- $begin_split = split('-',$begin);
142
- $begin_y = $begin_split[0];
143
- $begin_m = $begin_split[1];
144
- $begin_d = $begin_split[2];
145
- $end_split = split('-',$end);
146
- $end_y = $end_split[0];
147
- $end_m = $end_split[1];
148
- $end_d = $end_split[2];
149
- if (checkdate($begin_m,$begin_d,$begin_y) && checkdate($end_m,$end_d,$end_y)) {
150
- // Ok, now we know we have valid dates, we want to make sure that they are either equal or that the end date is later than the start date
151
- if (strtotime($end) >= strtotime($begin)) {
152
- $start_date_ok = 1;
153
- $end_date_ok = 1;
154
- } else {
155
- ?>
156
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Your event end date must be either after or the same as your event begin date','my-calendar'); ?></p></div>
157
- <?php
158
- }
159
- } else {
160
- ?>
161
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Your date formatting is correct but one or more of your dates is invalid. Check for number of days in month and leap year related errors.','my-calendar'); ?></p></div>
162
- <?php
163
- }
164
- } else {
165
- ?>
166
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Both start and end dates must be entered and be in the format YYYY-MM-DD','my-calendar'); ?></p></div>
167
- <?php
168
- }
169
- // We check for a valid time, or an empty one
170
- $time_format_one = '/^([0-1][0-9]):([0-5][0-9])$/';
171
- $time_format_two = '/^([2][0-3]):([0-5][0-9])$/';
172
- if (preg_match($time_format_one,$time) || preg_match($time_format_two,$time) || $time == '') {
173
- $time_ok = 1;
174
- } else {
175
- ?>
176
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The time field must either be blank or be entered in the format hh:mm','my-calendar'); ?></p></div>
177
- <?php
178
- }
179
- // We check to make sure the URL is alright
180
- if (preg_match('/^(http)(s?)(:)\/\//',$linky) || $linky == '') {
181
- $url_ok = 1;
182
- } else {
183
- ?>
184
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The URL entered must either be prefixed with http:// or be completely blank','my-calendar'); ?></p></div>
185
- <?php
186
- }
187
- // The title must be at least one character in length and no more than 255 - only basic punctuation is allowed
188
- $title_length = strlen($title);
189
- if ( $title_length > 1 && $title_length <= 255 ) {
190
- $title_ok =1;
191
- } else {
192
- ?>
193
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The event title must be between 1 and 255 characters in length.','my-calendar'); ?></p></div>
194
- <?php
195
- }
196
- // We run some checks on recurrance
197
- if (($repeats == 0 && $recur == 'S') || (($repeats >= 0) && ($recur == 'W' || $recur == 'B' || $recur == 'M' || $recur == 'Y' || $recur == 'D'))) {
198
- $recurring_ok = 1;
199
- } else {
200
- ?>
201
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The repetition value must be 0 unless a type of recurrance is selected in which case the repetition value must be 0 or higher','my-calendar'); ?></p></div>
202
- <?php
203
- }
204
- if ($start_date_ok == 1 && $end_date_ok == 1 && $time_ok == 1 && $url_ok == 1 && $title_ok == 1 && $recurring_ok == 1) {
205
- $update = array(
206
- 'event_id'=>'',
207
- 'event_begin'=>$begin,
208
- 'event_end'=>$end,
209
- 'event_title'=>$title,
210
- 'event_desc'=>$desc,
211
- 'event_time'=>$time,
212
- 'event_endtime'=>$endtime,
213
- 'event_recur'=>$recur,
214
- 'event_repeats'=>$repeats,
215
- 'event_author'=>$current_user->ID,
216
- 'event_category'=>$category,
217
- 'event_link'=>$linky,
218
- 'event_link_expires'=>$expires,
219
- 'event_label'=>$event_label,
220
- 'event_street'=>$event_street,
221
- 'event_street2'=>$event_street2,
222
- 'event_city'=>$event_city,
223
- 'event_state'=>$event_state,
224
- 'event_postcode'=>$event_postcode,
225
- 'event_country'=>$event_country,
226
- 'event_longitude'=>$event_longitude,
227
- 'event_latitude'=>$event_latitude,
228
- 'event_zoom'=>$event_zoom);
229
-
230
- $format = array('%s');
231
  $result = $wpdb->insert(
232
  MY_CALENDAR_TABLE,
233
- $update,
234
  $formats
235
  );
236
-
237
  if ( !$result ) {
238
  ?>
239
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('An event with the details you submitted could not be found in the database. This may indicate a problem with your database or the way in which it is configured.','my-calendar'); ?></p></div>
240
  <?php
241
  } else {
242
  ?>
243
  <div class="updated"><p><?php _e('Event added. It will now show in your calendar.','my-calendar'); ?></p></div>
244
  <?php
245
  }
246
- } else {
247
- // The form is going to be rejected due to field validation issues, so we preserve the users entries here
248
- $users_entries->event_title = $title;
249
- $users_entries->event_desc = $desc;
250
- $users_entries->event_begin = $begin;
251
- $users_entries->event_end = $end;
252
- $users_entries->event_time = $time;
253
- $users_entries->event_endtime = $endtime;
254
- $users_entries->event_recur = $recur;
255
- $users_entries->event_repeats = $repeats;
256
- $users_entries->event_category = $category;
257
- $users_entries->event_link = $linky;
258
- $users_entries->event_link_expires = $expires;
259
- $users_entries->event_label = $event_label;
260
- $users_entries->event_street = $event_street;
261
- $users_entries->event_street2 = $event_street2;
262
- $users_entries->event_city = $event_city;
263
- $users_entries->event_state = $event_state;
264
- $users_entries->event_postcode = $event_postcode;
265
- $users_entries->event_country = $event_country;
266
- $users_entries->event_longitude = $event_longitude;
267
- $users_entries->event_latitude = $event_latitude;
268
- $users_entries->event_zoom = $event_zoom;
269
-
270
- }
271
- // Permit saving of events that have been edited
272
- } elseif ( $action == 'edit_save' ) {
273
- $title = !empty($_POST['event_title']) ? $_POST['event_title'] : '';
274
- $desc = !empty($_POST['event_desc']) ? $_POST['event_desc'] : ' ';
275
- $begin = !empty($_POST['event_begin']) ? $_POST['event_begin'] : '';
276
- $end = !empty($_POST['event_end']) ? $_POST['event_end'] : $begin;
277
- $time = !empty($_POST['event_time']) ? $_POST['event_time'] : '';
278
- $endtime = !empty($_POST['event_endtime']) ? $_POST['event_endtime'] : '';
279
- $recur = !empty($_POST['event_recur']) ? $_POST['event_recur'] : '';
280
- $repeats = !empty($_POST['event_repeats']) ? $_POST['event_repeats'] : 0;
281
- $category = !empty($_POST['event_category']) ? $_POST['event_category'] : '';
282
- $linky = !empty($_POST['event_link']) ? $_POST['event_link'] : '';
283
- $expires = !empty($_POST['event_link_expires']) ? $_POST['event_link_expires'] : '0';
284
- $location_preset = !empty($_POST['location_preset']) ? $_POST['location_preset'] : '';
285
- if ($location_preset != 'none') {
286
- $sql = "SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id = $location_preset";
287
- $location = $wpdb->get_row($sql);
288
- $event_label = $location->location_label;
289
- $event_street = $location->location_street;
290
- $event_street2 = $location->location_street2;
291
- $event_city = $location->location_city;
292
- $event_state = $location->location_state;
293
- $event_postcode = $location->location_postcode;
294
- $event_country = $location->location_country;
295
- $event_longitude = $location->location_longitude;
296
- $event_latitude = $location->location_latitude;
297
- $event_zoom = $location->location_zoom;
298
- } else {
299
- $event_label = !empty($_POST['event_label']) ? $_POST['event_label'] : '';
300
- $event_street = !empty($_POST['event_street']) ? $_POST['event_street'] : '';
301
- $event_street2 = !empty($_POST['event_street2']) ? $_POST['event_street2'] : '';
302
- $event_city = !empty($_POST['event_city']) ? $_POST['event_city'] : '';
303
- $event_state = !empty($_POST['event_state']) ? $_POST['event_state'] : '';
304
- $event_postcode = !empty($_POST['event_postcode']) ? $_POST['event_postcode'] : '';
305
- $event_country = !empty($_POST['event_country']) ? $_POST['event_country'] : '';
306
- $event_longitude = !empty($_POST['event_longitude']) ? $_POST['event_longitude'] : '';
307
- $event_latitude = !empty($_POST['event_latitude']) ? $_POST['event_latitude'] : '';
308
- $event_zoom = !empty($_POST['event_zoom']) ? $_POST['event_zoom'] : '';
309
-
310
- }
311
- $event_author = !empty($_POST['event_author']) ? $_POST['event_author'] : '';
312
-
313
- if ( mc_can_edit_event( $event_author ) ) {
314
-
315
-
316
- // Deal with the fools who have left magic quotes turned on
317
- if ( ini_get('magic_quotes_gpc') ) {
318
- $title = stripslashes($title);
319
- $desc = stripslashes($desc);
320
- $begin = stripslashes($begin);
321
- $end = stripslashes($end);
322
- $time = stripslashes($time);
323
- $endtime = stripslashes($endtime);
324
- $recur = stripslashes($recur);
325
- $repeats = stripslashes($repeats);
326
- $category = stripslashes($category);
327
- $linky = stripslashes($linky);
328
- $expires = stripslashes($expires);
329
- $event_label = stripslashes($event_label);
330
- $event_street = stripslashes($event_street);
331
- $event_street2 = stripslashes($event_street2);
332
- $event_city = stripslashes($event_city);
333
- $event_state = stripslashes($event_state);
334
- $event_postcode = stripslashes($event_postcode);
335
- $event_country = stripslashes($event_country);
336
- $event_longitude = stripslashes($event_longitude);
337
- $event_latitude = stripslashes($event_latitude);
338
- $event_zoom = stripslashes($event_zoom);
339
-
340
- $event_author = stripslashes($event_author);
341
  }
342
-
343
- if ( empty($event_id) ) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
344
  ?>
345
- <div class="error"><p><strong><?php _e('Failure','my-calendar'); ?>:</strong> <?php _e("You can't update an event if you haven't submitted an event id",'my-calendar'); ?></p></div>
346
- <?php
347
- } else {
348
- // Perform some validation on the submitted dates - this checks for valid years and months
349
- $date_format_one = '/^([0-9]{4})-([0][1-9])-([0-3][0-9])$/';
350
- $date_format_two = '/^([0-9]{4})-([1][0-2])-([0-3][0-9])$/';
351
- if ((preg_match($date_format_one,$begin) || preg_match($date_format_two,$begin)) && (preg_match($date_format_one,$end) || preg_match($date_format_two,$end))) {
352
- // We know we have a valid year and month and valid integers for days so now we do a final check on the date
353
- $begin_split = split('-',$begin);
354
- $begin_y = $begin_split[0];
355
- $begin_m = $begin_split[1];
356
- $begin_d = $begin_split[2];
357
- $end_split = split('-',$end);
358
- $end_y = $end_split[0];
359
- $end_m = $end_split[1];
360
- $end_d = $end_split[2];
361
- if (checkdate($begin_m,$begin_d,$begin_y) && checkdate($end_m,$end_d,$end_y)) {
362
- // Ok, now we know we have valid dates, we want to make sure that they are either equal or that the end date is later than the start date
363
- if (strtotime($end) >= strtotime($begin)) {
364
- $start_date_ok = 1;
365
- $end_date_ok = 1;
366
- } else {
367
- ?>
368
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Your event end date must be either after or the same as your event begin date','my-calendar'); ?></p></div>
369
- <?php
370
- }
371
- } else {
372
- ?>
373
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Your date formatting is correct but one or more of your dates is invalid. Check for number of days in month and leap year related errors.','my-calendar'); ?></p></div>
374
- <?php
375
- }
376
- } else {
377
- ?>
378
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Both start and end dates must be entered and be in the format YYYY-MM-DD','my-calendar'); ?></p></div>
379
- <?php
380
- }
381
- // We check for a valid time, or an empty one
382
- $time_format_one = '/^([0-1][0-9]):([0-5][0-9])$/';
383
- $time_format_two = '/^([2][0-3]):([0-5][0-9])$/';
384
- if (preg_match($time_format_one,$time) || preg_match($time_format_two,$time) || $time == '') {
385
- $time_ok = 1;
386
- } else {
387
- ?>
388
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The time field must either be blank or be entered in the format hh:mm','my-calendar'); ?></p></div>
389
- <?php
390
- }
391
- // We check to make sure the URL is alright
392
- if (preg_match('/^(http)(s?)(:)\/\//',$linky) || $linky == '') {
393
- $url_ok = 1;
394
- } else {
395
- ?>
396
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The URL entered must either be prefixed with http:// or be completely blank','my-calendar'); ?></p></div>
397
- <?php
398
- }
399
- // The title must be at least one character in length and no more than 255 - no non-standard characters allowed
400
- $title_length = strlen($title);
401
- if ( $title_length > 1 && $title_length <= 255 ) {
402
- $title_ok =1;
403
- } else {
404
- ?>
405
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The event title must be between 1 and 255 characters in length.','my-calendar'); ?></p></div>
406
- <?php
407
- }
408
- // We run some checks on recurrance
409
- if (($repeats == 0 && $recur == 'S') || (($repeats >= 0) && ($recur == 'W' || $recur == 'B' || $recur == 'M' || $recur == 'Y' || $recur == 'D' ))) {
410
- $recurring_ok = 1;
411
- } else {
412
- ?>
413
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The repetition value must be 0 unless a type of recurrance is selected in which case the repetition value must be 0 or higher','my-calendar'); ?></p></div>
414
- <?php
415
- }
416
- if ($start_date_ok == 1 && $end_date_ok == 1 && $time_ok == 1 && $url_ok == 1 && $title_ok && $recurring_ok == 1) {
417
-
418
- $update = array(
419
- 'event_begin'=>$begin,
420
- 'event_end'=>$end,
421
- 'event_title'=>$title,
422
- 'event_desc'=>$desc,
423
- 'event_time'=>$time,
424
- 'event_endtime'=>$endtime,
425
- 'event_recur'=>$recur,
426
- 'event_repeats'=>$repeats,
427
- 'event_category'=>$category,
428
- 'event_link'=>$linky,
429
- 'event_link_expires'=>$expires,
430
- 'event_label'=>$event_label,
431
- 'event_street'=>$event_street,
432
- 'event_street2'=>$event_street2,
433
- 'event_city'=>$event_city,
434
- 'event_state'=>$event_state,
435
- 'event_postcode'=>$event_postcode,
436
- 'event_country'=>$event_country,
437
- 'event_longitude'=>$event_longitude,
438
- 'event_latitude'=>$event_latitude,
439
- 'event_zoom'=>$event_zoom);
440
 
441
- $format = array('%s');
442
- $result = $wpdb->update(
443
- MY_CALENDAR_TABLE,
444
- $update,
445
- array( 'event_id'=>$event_id ),
446
- $formats,
447
- '%d' );
448
-
449
- if ( !$result ) {
450
  ?>
451
- <div class="error"><p><strong><?php _e('Failure','my-calendar'); ?>:</strong> <?php echo _e('Your event was not updated.','my-calendar'); ?></p></div>
452
  <?php
453
  } else {
454
  ?>
455
- <div class="updated"><p><?php _e('Event updated successfully','my-calendar'); ?></p></div>
456
  <?php
457
- }
458
- } else {
459
- // The form is going to be rejected due to field validation issues, so we preserve the users entries here
460
- $users_entries->event_title = $title;
461
- $users_entries->event_desc = $desc;
462
- $users_entries->event_begin = $begin;
463
- $users_entries->event_end = $end;
464
- $users_entries->event_time = $time;
465
- $users_entries->event_endtime = $endtime;
466
- $users_entries->event_recur = $recur;
467
- $users_entries->event_repeats = $repeats;
468
- $users_entries->event_category = $category;
469
- $users_entries->event_link = $linky;
470
- $users_entries->event_link_expires = $expires;
471
- $users_entries->event_label = $event_label;
472
- $users_entries->event_street = $event_street;
473
- $users_entries->event_street2 = $event_street2;
474
- $users_entries->event_city = $event_city;
475
- $users_entries->event_state = $event_state;
476
- $users_entries->event_postcode = $event_postcode;
477
- $users_entries->event_country = $event_country;
478
- $users_entries->event_longitude = $event_longitude;
479
- $users_entries->event_latitude = $event_latitude;
480
- $users_entries->event_zoom = $event_zoom;
481
-
482
- $users_entries->event_author = $event_author;
483
- $error_with_saving = 1;
484
- }
485
- }
486
- } else {
487
- ?>
488
- <div class="error">
489
- <p><strong><?php _e('You do not have sufficient permissions to edit that event.','my-calendar'); ?></strong></p>
490
- </div>
491
- <?php
492
- }
493
- } elseif ( $action == 'delete' ) {
494
- // Deal with deleting an event from the database
495
 
496
- if ( empty($event_id) ) {
497
- ?>
498
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e("You can't delete an event if you haven't submitted an event id",'my-calendar'); ?></p></div>
499
- <?php
500
- } else {
501
- $sql = "DELETE FROM " . MY_CALENDAR_TABLE . " WHERE event_id='" . mysql_real_escape_string($event_id) . "'";
502
- $wpdb->get_results($sql);
503
-
504
- $sql = "SELECT event_id FROM " . MY_CALENDAR_TABLE . " WHERE event_id='" . mysql_real_escape_string($event_id) . "'";
505
- $result = $wpdb->get_results($sql);
506
-
507
- if ( empty($result) || empty($result[0]->event_id) ) {
508
- ?>
509
- <div class="updated"><p><?php _e('Event deleted successfully','my-calendar'); ?></p></div>
510
- <?php
511
- } else {
512
- ?>
513
- <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Despite issuing a request to delete, the event still remains in the database. Please investigate.','my-calendar'); ?></p></div>
514
- <?php
515
-
516
- }
517
  }
518
  }
519
 
@@ -526,7 +158,7 @@ if ( $action == 'add' ) {
526
  my_calendar_check_db();
527
  ?>
528
  <?php
529
- if ( $action == 'edit' || ($action == 'edit_save' && $error_with_saving == 1)) {
530
  ?>
531
  <h2><?php _e('Edit Event','my-calendar'); ?></h2>
532
  <?php jd_show_support_box(); ?>
@@ -534,7 +166,7 @@ my_calendar_check_db();
534
  if ( empty($event_id) ) {
535
  echo "<div class=\"error\"><p>".__("You must provide an event id in order to edit it",'my-calendar')."</p></div>";
536
  } else {
537
- jd_events_edit_form('edit_save', $event_id);
538
  }
539
  } else {
540
  ?>
@@ -648,6 +280,7 @@ function jd_events_edit_form($mode='add', $event_id=false) {
648
  <p>
649
  <label for="event_time"><?php _e('Time (hh:mm)','my-calendar'); ?></label> <input type="text" id="event_time" name="event_time" class="input" size="12"
650
  value="<?php
 
651
  if ( !empty($data) ) {
652
  if ($data->event_time == "00:00:00") {
653
  echo '';
@@ -655,7 +288,7 @@ function jd_events_edit_form($mode='add', $event_id=false) {
655
  echo date("H:i",strtotime($data->event_time));
656
  }
657
  } else {
658
- echo date_i18n("H:i",time());
659
  }
660
  ?>" /> <?php _e('Optional, set blank if your event is an all-day event or does not happen at a specific time.','my-calendar'); ?> <?php _e('Current time difference from GMT is ','my-calendar'); echo get_option('gmt_offset'); _e(' hour(s)', 'my-calendar'); ?>
661
  </p>
@@ -710,7 +343,7 @@ function jd_events_edit_form($mode='add', $event_id=false) {
710
  </fieldset>
711
  <?php if ( get_option( 'my_calendar_show_address' ) == 'true' || get_option( 'my_calendar_show_map' ) == 'true' ) { ?>
712
  <fieldset>
713
- <legend>Event Location</legend>
714
  <p>
715
  <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
716
  </p>
@@ -847,17 +480,21 @@ function jd_events_display_list($sortby='default',$sortdir='default') {
847
  </thead>
848
  <?php
849
  $class = '';
 
 
 
850
  foreach ( $events as $event ) {
851
  $class = ($class == 'alternate') ? '' : 'alternate';
852
  $author = get_userdata($event->event_author);
853
  ?>
854
  <tr class="<?php echo $class; ?>">
855
  <th scope="row"><?php echo $event->event_id; ?></th>
856
- <td><?php echo htmlentities(stripslashes($event->event_title)); ?></td>
857
- <td><?php echo htmlentities(stripslashes($event->event_link)); ?></td>
858
- <td><?php echo htmlentities(stripslashes($event->event_label)); ?></td>
859
  <td><?php echo substr(strip_tags(stripslashes($event->event_desc)),0,60); ?>&hellip;</td>
860
- <td><?php echo "$event->event_begin ($event->event_time)"; ?></td>
 
861
  <?php /* <td><?php echo $event->event_end; ?></td> */ ?>
862
  <td>
863
  <?php
@@ -877,16 +514,20 @@ function jd_events_display_list($sortby='default',$sortdir='default') {
877
  </td>
878
  <td><?php echo $author->display_name; ?></td>
879
  <?php
880
- $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".$event->event_category;
881
- $this_cat = $wpdb->get_row($sql);
 
 
 
 
882
  ?>
883
  <td><div class="category-color" style="background-color:<?php echo $this_cat->category_color;?>;"> </div> <?php echo stripslashes($this_cat->category_name); ?></td>
884
  <?php unset($this_cat); ?>
885
  <td>
886
  <?php if ( mc_can_edit_event( $event->event_author ) ) { ?>
887
- <a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;action=edit&amp;event_id=<?php echo $event->event_id;?>" class='edit'><?php echo __('Edit','my-calendar'); ?></a> &middot; <a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;action=delete&amp;event_id=<?php echo $event->event_id;?>" class="delete"><?php echo __('Delete','my-calendar'); ?></a></td>
888
  <?php } else { echo "Not editable."; } ?>
889
- </tr>
890
  <?php
891
  }
892
  ?>
@@ -899,4 +540,237 @@ function jd_events_display_list($sortby='default',$sortdir='default') {
899
  }
900
  }
901
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
902
  ?>
3
  // to deal with posts
4
  function edit_my_calendar() {
5
  global $current_user, $wpdb, $users_entries;
6
+
7
+ if ( get_option('ko_calendar_imported') != 'true' ) {
8
+ if (function_exists('check_calendar')) {
9
+ echo "<div id='message' class='updated'>";
10
+ echo "<p>";
11
+ _e('My Calendar has identified that you have the Calendar plugin by Kieran O\'Shea installed. You can import those events and categories into the My Calendar database. Would you like to import these events?','my-calendar');
12
+ echo "</p>";
13
+ ?>
14
+ <form method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-config">
15
+ <div>
16
+ <input type="hidden" name="import" value="true" />
17
+ <input type="submit" value="<?php _e('Import from Calendar','my-calendar'); ?>" name="import-calendar" class="button-primary" />
18
+ </div>
19
+ </form>
20
+ <?php
21
+ echo "<p>";
22
+ _e('Although it is possible that this import could fail to import your events correctly, it should not have any impact on your existing Calendar database. If you encounter any problems, <a href="http://www.joedolson.com/contact.php">please contact me</a>!','my-calendar');
23
+ echo "</p>";
24
+ echo "</div>";
25
+ }
 
26
  }
27
+
 
 
 
28
  // First some quick cleaning up
29
  $edit = $create = $save = $delete = false;
30
 
31
  $action = !empty($_POST['action']) ? $_POST['action'] : '';
32
  $event_id = !empty($_POST['event_id']) ? $_POST['event_id'] : '';
33
 
34
+ if ($_GET['mode'] == 'edit') {
35
  $action = "edit";
36
  $event_id = (int) $_GET['event_id'];
37
  }
39
  // Lets see if this is first run and create us a table if it is!
40
  check_my_calendar();
41
 
42
+ if ($_GET['mode'] == 'delete') {
43
  $sql = "SELECT event_title, event_author FROM " . MY_CALENDAR_TABLE . " WHERE event_id=" . (int) $_GET['event_id'];
44
  $result = $wpdb->get_results( $sql, ARRAY_A );
45
  if ( mc_can_edit_event( $result[0]['event_author'] ) ) {
64
  }
65
  }
66
 
67
+ if ( isset( $_POST['action'] ) ) {
68
+ $proceed = false;
69
  // Deal with adding an event to the database
70
+ $event_author = (int) ($action == 'add')?($current_user->ID):($_POST['event_author']);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
71
 
72
+ $output = mc_check_data($action,$_POST);
73
+ $proceed = $output[0];
74
+ // end data checking and gathering
75
+ if ( $action == 'add' && $proceed == true ) {
76
+ $add = $output[2];
77
+ $formats = array('%s','%s','%s','%s','%s','%s','%d','%d','%d','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%f','%f','%d');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
  $result = $wpdb->insert(
79
  MY_CALENDAR_TABLE,
80
+ $add,
81
  $formats
82
  );
 
83
  if ( !$result ) {
84
  ?>
85
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('I\'m sorry! I couldn\'d add that event to the database.','my-calendar'); ?></p></div>
86
  <?php
87
  } else {
88
  ?>
89
  <div class="updated"><p><?php _e('Event added. It will now show in your calendar.','my-calendar'); ?></p></div>
90
  <?php
91
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
92
  }
93
+ if ( $action == 'edit' && $proceed == true ) {
94
+ if ( mc_can_edit_event( $event_author ) ) {
95
+ $update = $output[2];
96
+ $formats = array('%s','%s','%s','%s','%s','%s','%d','%d','%s','%s','%s','%s','%s','%s','%s','%s','%s','%d','%f','%f','%d');
97
+ $result = $wpdb->update(
98
+ MY_CALENDAR_TABLE,
99
+ $update,
100
+ array( 'event_id'=>$event_id ),
101
+ $formats,
102
+ '%d' );
103
+ if ( $result === false ) {
104
+ ?>
105
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php echo _e('Your event was not updated.','my-calendar'); ?></p></div>
106
+ <?php
107
+ } else if ( $result === 0 ) {
108
+ ?>
109
+ <div class="updated"><p><?php _e('Nothing was changed in that update.','my-calendar'); ?></p></div>
110
+ <?php
111
+ } else {
112
+ ?>
113
+ <div class="updated"><p><?php _e('Event updated successfully','my-calendar'); ?></p></div>
114
+ <?php
115
+ }
116
+ } else {
117
  ?>
118
+ <div class="error">
119
+ <p><strong><?php _e('You do not have sufficient permissions to edit that event.','my-calendar'); ?></strong></p>
120
+ </div>
121
+ <?php
122
+ }
123
+ }
124
+
125
+ if ( $action == 'delete' ) {
126
+ // Deal with deleting an event from the database
127
+ if ( empty($event_id) ) {
128
+ ?>
129
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e("You can't delete an event if you haven't submitted an event id",'my-calendar'); ?></p></div>
130
+ <?php
131
+ } else {
132
+ $sql = "DELETE FROM " . MY_CALENDAR_TABLE . " WHERE event_id='" . mysql_real_escape_string($event_id) . "'";
133
+ $wpdb->get_results($sql);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
 
135
+ $sql = "SELECT event_id FROM " . MY_CALENDAR_TABLE . " WHERE event_id='" . mysql_real_escape_string($event_id) . "'";
136
+ $result = $wpdb->get_results($sql);
137
+
138
+ if ( empty($result) || empty($result[0]->event_id) ) {
 
 
 
 
 
139
  ?>
140
+ <div class="updated"><p><?php _e('Event deleted successfully','my-calendar'); ?></p></div>
141
  <?php
142
  } else {
143
  ?>
144
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Despite issuing a request to delete, the event still remains in the database. Please investigate.','my-calendar'); ?></p></div>
145
  <?php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
146
 
147
+ }
148
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
149
  }
150
  }
151
 
158
  my_calendar_check_db();
159
  ?>
160
  <?php
161
+ if ( $action == 'edit' || ($action == 'edit' && $error_with_saving == 1)) {
162
  ?>
163
  <h2><?php _e('Edit Event','my-calendar'); ?></h2>
164
  <?php jd_show_support_box(); ?>
166
  if ( empty($event_id) ) {
167
  echo "<div class=\"error\"><p>".__("You must provide an event id in order to edit it",'my-calendar')."</p></div>";
168
  } else {
169
+ jd_events_edit_form('edit', $event_id);
170
  }
171
  } else {
172
  ?>
280
  <p>
281
  <label for="event_time"><?php _e('Time (hh:mm)','my-calendar'); ?></label> <input type="text" id="event_time" name="event_time" class="input" size="12"
282
  value="<?php
283
+ $offset = (60*60*get_option('gmt_offset'));
284
  if ( !empty($data) ) {
285
  if ($data->event_time == "00:00:00") {
286
  echo '';
288
  echo date("H:i",strtotime($data->event_time));
289
  }
290
  } else {
291
+ echo date_i18n("H:i",time()+$offset);
292
  }
293
  ?>" /> <?php _e('Optional, set blank if your event is an all-day event or does not happen at a specific time.','my-calendar'); ?> <?php _e('Current time difference from GMT is ','my-calendar'); echo get_option('gmt_offset'); _e(' hour(s)', 'my-calendar'); ?>
294
  </p>
343
  </fieldset>
344
  <?php if ( get_option( 'my_calendar_show_address' ) == 'true' || get_option( 'my_calendar_show_map' ) == 'true' ) { ?>
345
  <fieldset>
346
+ <legend><?php _e('Event Location','my-calendar'); ?></legend>
347
  <p>
348
  <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
349
  </p>
480
  </thead>
481
  <?php
482
  $class = '';
483
+ $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE ;
484
+ $categories = $wpdb->get_results($sql);
485
+
486
  foreach ( $events as $event ) {
487
  $class = ($class == 'alternate') ? '' : 'alternate';
488
  $author = get_userdata($event->event_author);
489
  ?>
490
  <tr class="<?php echo $class; ?>">
491
  <th scope="row"><?php echo $event->event_id; ?></th>
492
+ <td><?php echo stripslashes($event->event_title); ?></td>
493
+ <td><?php echo stripslashes($event->event_link); ?></td>
494
+ <td><?php echo stripslashes($event->event_label); ?></td>
495
  <td><?php echo substr(strip_tags(stripslashes($event->event_desc)),0,60); ?>&hellip;</td>
496
+ <?php if ($event->event_time != "00:00:00") { $eventTime = date_i18n(get_option('time_format'), strtotime($event->event_time)); } else { $eventTime = get_option('my_calendar_notime_text'); } ?>
497
+ <td><?php echo "$event->event_begin ($eventTime)"; ?></td>
498
  <?php /* <td><?php echo $event->event_end; ?></td> */ ?>
499
  <td>
500
  <?php
514
  </td>
515
  <td><?php echo $author->display_name; ?></td>
516
  <?php
517
+ $this_category = $event->event_category;
518
+ foreach ($categories as $key=>$value) {
519
+ if ($value->category_id == $this_category) {
520
+ $this_cat = $categories[$key];
521
+ }
522
+ }
523
  ?>
524
  <td><div class="category-color" style="background-color:<?php echo $this_cat->category_color;?>;"> </div> <?php echo stripslashes($this_cat->category_name); ?></td>
525
  <?php unset($this_cat); ?>
526
  <td>
527
  <?php if ( mc_can_edit_event( $event->event_author ) ) { ?>
528
+ <a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;mode=edit&amp;event_id=<?php echo $event->event_id;?>" class='edit'><?php echo __('Edit','my-calendar'); ?></a> &middot; <a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar&amp;mode=delete&amp;event_id=<?php echo $event->event_id;?>" class="delete"><?php echo __('Delete','my-calendar'); ?></a></td>
529
  <?php } else { echo "Not editable."; } ?>
530
+ </tr>
531
  <?php
532
  }
533
  ?>
540
  }
541
  }
542
 
543
+ function mc_check_data($action,$_POST) {
544
+ global $wpdb, $current_user;
545
+ if ( $action == 'add' || $action == 'edit' ) {
546
+ $title = !empty($_POST['event_title']) ? $_POST['event_title'] : '';
547
+ $desc = !empty($_POST['event_desc']) ? $_POST['event_desc'] : '';
548
+ $begin = !empty($_POST['event_begin']) ? $_POST['event_begin'] : '';
549
+ $end = !empty($_POST['event_end']) ? $_POST['event_end'] : $begin;
550
+ $time = !empty($_POST['event_time']) ? $_POST['event_time'] : '';
551
+ $endtime = !empty($_POST['event_endtime']) ? $_POST['event_endtime'] : '';
552
+ $recur = !empty($_POST['event_recur']) ? $_POST['event_recur'] : '';
553
+ $repeats = !empty($_POST['event_repeats']) ? $_POST['event_repeats'] : 0;
554
+ $category = !empty($_POST['event_category']) ? $_POST['event_category'] : '';
555
+ $linky = !empty($_POST['event_link']) ? $_POST['event_link'] : '';
556
+ $expires = !empty($_POST['event_link_expires']) ? $_POST['event_link_expires'] : '0';
557
+ $location_preset = !empty($_POST['location_preset']) ? $_POST['location_preset'] : '';
558
+ $event_author = !empty($_POST['event_author']) ? $_POST['event_author'] : '';
559
+ // set location
560
+ if ($location_preset != 'none') {
561
+ $sql = "SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id = $location_preset";
562
+ $location = $wpdb->get_row($sql);
563
+ $event_label = $location->location_label;
564
+ $event_street = $location->location_street;
565
+ $event_street2 = $location->location_street2;
566
+ $event_city = $location->location_city;
567
+ $event_state = $location->location_state;
568
+ $event_postcode = $location->location_postcode;
569
+ $event_country = $location->location_country;
570
+ $event_longitude = $location->location_longitude;
571
+ $event_latitude = $location->location_latitude;
572
+ $event_zoom = $location->location_zoom;
573
+ } else {
574
+ $event_label = !empty($_POST['event_label']) ? $_POST['event_label'] : '';
575
+ $event_street = !empty($_POST['event_street']) ? $_POST['event_street'] : '';
576
+ $event_street2 = !empty($_POST['event_street2']) ? $_POST['event_street2'] : '';
577
+ $event_city = !empty($_POST['event_city']) ? $_POST['event_city'] : '';
578
+ $event_state = !empty($_POST['event_state']) ? $_POST['event_state'] : '';
579
+ $event_postcode = !empty($_POST['event_postcode']) ? $_POST['event_postcode'] : '';
580
+ $event_country = !empty($_POST['event_country']) ? $_POST['event_country'] : '';
581
+ $event_longitude = !empty($_POST['event_longitude']) ? $_POST['event_longitude'] : '';
582
+ $event_latitude = !empty($_POST['event_latitude']) ? $_POST['event_latitude'] : '';
583
+ $event_zoom = !empty($_POST['event_zoom']) ? $_POST['event_zoom'] : '';
584
+ }
585
+ // Deal with those who have magic quotes turned on
586
+ if ( ini_get('magic_quotes_gpc') ) {
587
+ $title = stripslashes($title);
588
+ $desc = stripslashes($desc);
589
+ $begin = stripslashes($begin);
590
+ $end = stripslashes($end);
591
+ $time = stripslashes($time);
592
+ $endtime = stripslashes($endtime);
593
+ $recur = stripslashes($recur);
594
+ $repeats = stripslashes($repeats);
595
+ $category = stripslashes($category);
596
+ $linky = stripslashes($linky);
597
+ $expires = stripslashes($expires);
598
+ $event_label = stripslashes($event_label);
599
+ $event_street = stripslashes($event_street);
600
+ $event_street2 = stripslashes($event_street2);
601
+ $event_city = stripslashes($event_city);
602
+ $event_state = stripslashes($event_state);
603
+ $event_postcode = stripslashes($event_postcode);
604
+ $event_country = stripslashes($event_country);
605
+ $event_longitude = stripslashes($event_longitude);
606
+ $event_latitude = stripslashes($event_latitude);
607
+ $event_zoom = stripslashes($event_zoom);
608
+ }
609
+
610
+ // Perform some validation on the submitted dates - this checks for valid years and months
611
+ $date_format_one = '/^([0-9]{4})-([0][1-9])-([0-3][0-9])$/';
612
+ $date_format_two = '/^([0-9]{4})-([1][0-2])-([0-3][0-9])$/';
613
+ if ((preg_match($date_format_one,$begin) || preg_match($date_format_two,$begin)) && (preg_match($date_format_one,$end) || preg_match($date_format_two,$end))) {
614
+ // We know we have a valid year and month and valid integers for days so now we do a final check on the date
615
+ $begin_split = split('-',$begin);
616
+ $begin_y = $begin_split[0];
617
+ $begin_m = $begin_split[1];
618
+ $begin_d = $begin_split[2];
619
+ $end_split = split('-',$end);
620
+ $end_y = $end_split[0];
621
+ $end_m = $end_split[1];
622
+ $end_d = $end_split[2];
623
+ if (checkdate($begin_m,$begin_d,$begin_y) && checkdate($end_m,$end_d,$end_y)) {
624
+ // Ok, now we know we have valid dates, we want to make sure that they are either equal or that the end date is later than the start date
625
+ if (strtotime($end) >= strtotime($begin)) {
626
+ $start_date_ok = 1;
627
+ $end_date_ok = 1;
628
+ } else {
629
+ ?>
630
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Your event end date must be either after or the same as your event begin date','my-calendar'); ?></p></div>
631
+ <?php
632
+ }
633
+ } else {
634
+ ?>
635
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Your date formatting is correct but one or more of your dates is invalid. Check for number of days in month and leap year related errors.','my-calendar'); ?></p></div>
636
+ <?php
637
+ }
638
+ } else {
639
+ ?>
640
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('Both start and end dates must be in the format YYYY-MM-DD','my-calendar'); ?></p></div>
641
+ <?php
642
+ }
643
+ // We check for a valid time, or an empty one
644
+ $time_format_one = '/^([0-1][0-9]):([0-5][0-9])$/';
645
+ $time_format_two = '/^([2][0-3]):([0-5][0-9])$/';
646
+ if (preg_match($time_format_one,$time) || preg_match($time_format_two,$time) || $time == '') {
647
+ $time_ok = 1;
648
+ if ( strlen($time) == 5 ) { $time = $time . ":00"; }
649
+ if ( strlen($time) == 0 ) { $time = "00:00:00"; }
650
+ } else {
651
+ ?>
652
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The time field must either be blank or be entered in the format hh:mm','my-calendar'); ?></p></div>
653
+ <?php
654
+ }
655
+ // We check for a valid end time, or an empty one
656
+ if (preg_match($time_format_one,$endtime) || preg_match($time_format_two,$endtime) || $endtime == '') {
657
+ $endtime_ok = 1;
658
+ if ( strlen($endtime) == 5 ) { $endtime = $endtime . ":00"; }
659
+ if ( strlen($endtime) == 0 ) { $endtime = "00:00:00"; }
660
+ } else {
661
+ ?>
662
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The end time field must either be blank or be entered in the format hh:mm','my-calendar'); ?></p></div>
663
+ <?php
664
+ }
665
+ // We check to make sure the URL is alright
666
+ if (preg_match('/^(http)(s?)(:)\/\//',$linky) || $linky == '') {
667
+ $url_ok = 1;
668
+ } else {
669
+ ?>
670
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The URL entered must either be prefixed with http:// or be completely blank','my-calendar'); ?></p></div>
671
+ <?php
672
+ }
673
+ // The title must be at least one character in length and no more than 255 - only basic punctuation is allowed
674
+ $title_length = strlen($title);
675
+ if ( $title_length > 1 && $title_length <= 255 ) {
676
+ $title_ok =1;
677
+ } else {
678
+ ?>
679
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The event title must be between 1 and 255 characters in length.','my-calendar'); ?></p></div>
680
+ <?php
681
+ }
682
+ // We run some checks on recurrance
683
+ if (($repeats == 0 && $recur == 'S') || (($repeats >= 0) && ($recur == 'W' || $recur == 'B' || $recur == 'M' || $recur == 'Y' || $recur == 'D'))) {
684
+ $recurring_ok = 1;
685
+ } else {
686
+ ?>
687
+ <div class="error"><p><strong><?php _e('Error','my-calendar'); ?>:</strong> <?php _e('The repetition value must be 0 unless a type of recurrance is selected.','my-calendar'); ?></p></div>
688
+ <?php
689
+ }
690
+ if ($start_date_ok == 1 && $end_date_ok == 1 && $time_ok == 1 && $endtime_ok == 1 && $url_ok == 1 && $title_ok == 1 && $recurring_ok == 1) {
691
+ $proceed = true;
692
+ if ($action == 'add' ) {
693
+ $submit = array(
694
+ 'event_begin'=>$begin,
695
+ 'event_end'=>$end,
696
+ 'event_title'=>$title,
697
+ 'event_desc'=>$desc,
698
+ 'event_time'=>$time,
699
+ 'event_recur'=>$recur,
700
+ 'event_repeats'=>$repeats,
701
+ 'event_author'=>$current_user->ID,
702
+ 'event_category'=>$category,
703
+ 'event_link'=>$linky,
704
+ 'event_label'=>$event_label,
705
+ 'event_street'=>$event_street,
706
+ 'event_street2'=>$event_street2,
707
+ 'event_city'=>$event_city,
708
+ 'event_state'=>$event_state,
709
+ 'event_postcode'=>$event_postcode,
710
+ 'event_country'=>$event_country,
711
+ 'event_endtime'=>$endtime,
712
+ 'event_link_expires'=>$expires,
713
+ 'event_longitude'=>$event_longitude,
714
+ 'event_latitude'=>$event_latitude,
715
+ 'event_zoom'=>$event_zoom);
716
+
717
+ } else if ($action == 'edit') {
718
+ $submit = array(
719
+ 'event_begin'=>$begin,
720
+ 'event_end'=>$end,
721
+ 'event_title'=>$title,
722
+ 'event_desc'=>$desc,
723
+ 'event_time'=>$time,
724
+ 'event_recur'=>$recur,
725
+ 'event_repeats'=>$repeats,
726
+ 'event_category'=>$category,
727
+ 'event_link'=>$linky,
728
+ 'event_label'=>$event_label,
729
+ 'event_street'=>$event_street,
730
+ 'event_street2'=>$event_street2,
731
+ 'event_city'=>$event_city,
732
+ 'event_state'=>$event_state,
733
+ 'event_postcode'=>$event_postcode,
734
+ 'event_country'=>$event_country,
735
+ 'event_endtime'=>$endtime,
736
+ 'event_link_expires'=>$expires,
737
+ 'event_longitude'=>$event_longitude,
738
+ 'event_latitude'=>$event_latitude,
739
+ 'event_zoom'=>$event_zoom);
740
+ }
741
+
742
+
743
+ } else {
744
+ // The form is going to be rejected due to field validation issues, so we preserve the users entries here
745
+ $users_entries->event_title = $title;
746
+ $users_entries->event_desc = $desc;
747
+ $users_entries->event_begin = $begin;
748
+ $users_entries->event_end = $end;
749
+ $users_entries->event_time = $time;
750
+ $users_entries->event_endtime = $endtime;
751
+ $users_entries->event_recur = $recur;
752
+ $users_entries->event_repeats = $repeats;
753
+ $users_entries->event_category = $category;
754
+ $users_entries->event_link = $linky;
755
+ $users_entries->event_link_expires = $expires;
756
+ $users_entries->event_label = $event_label;
757
+ $users_entries->event_street = $event_street;
758
+ $users_entries->event_street2 = $event_street2;
759
+ $users_entries->event_city = $event_city;
760
+ $users_entries->event_state = $event_state;
761
+ $users_entries->event_postcode = $event_postcode;
762
+ $users_entries->event_country = $event_country;
763
+ $users_entries->event_longitude = $event_longitude;
764
+ $users_entries->event_latitude = $event_latitude;
765
+ $users_entries->event_zoom = $event_zoom;
766
+ $users_entries->event_author = $event_author;
767
+ $proceed = false;
768
+ }
769
+
770
+
771
+ }
772
+ $data = array($proceed, $users_entries, $submit);
773
+ return $data;
774
+ }
775
+
776
  ?>
my-calendar-install.php CHANGED
@@ -58,9 +58,82 @@ line-height: 1.5;
58
  color: #000;
59
  background: #fff;
60
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
61
  #jd-calendar caption, #jd-calendar .my-calendar-date-switcher {
62
- background: #edf7ff;
63
- border: 1px solid #a9e3ff;
64
  margin: 2px 0;
65
  font-weight:700;
66
  padding:2px 0;
@@ -74,7 +147,6 @@ border-collapse:collapse;
74
 
75
  #jd-calendar td {
76
  vertical-align:top;
77
- border:1px solid #eee;
78
  text-align:left;
79
  width:13%;
80
  height:70px;
@@ -117,9 +189,6 @@ margin:0;
117
  #jd-calendar .calendar-event .details, #jd-calendar .calendar-events {
118
  position:absolute;
119
  width:50%;
120
- background: #edf7ff;
121
- color:#000;
122
- border:1px solid #9b5;
123
  -moz-border-radius:10px;
124
  -moz-box-shadow:3px 3px 6px #777;
125
  -webkit-box-shadow:3px 3px 6px #777;
@@ -137,14 +206,11 @@ width: 200px!important;
137
  left: 0px;
138
  }
139
  #jd-calendar .list-event .details {
140
- background:#fafafa;
141
- border:1px solid #eee;
142
  -moz-border-radius:5px;
143
  -webkit-border-radius:5px;
144
  border-radius:5px;
145
  margin:5px 0;
146
  padding:5px 5px 0;
147
- color: #333;
148
  }
149
  #jd-calendar #calendar-list {
150
  margin: 0;
@@ -156,43 +222,17 @@ list-style-type: none;
156
  margin: 0;
157
  }
158
 
159
- #jd-calendar #calendar-list .odd {
160
- background:#d3e3e3;
161
- }
162
-
163
- #jd-calendar .odd .list-event .details {
164
- background:#e3f3f3;
165
- border:1px solid #c3d3d3;
166
- }
167
-
168
- #jd-calendar .current-day {
169
- background:#ffb;
170
- }
171
- #jd-calendar .current-day .mc-date {
172
- color: #000;
173
- background: #eee;
174
- }
175
-
176
  #jd-calendar .mc-date {
177
  display:block;
178
- background:#f6f6f6;
179
  margin:-2px -2px 2px;
180
  padding:2px 4px;
181
  }
182
-
183
- #jd-calendar .weekend {
184
- background:#bd7;
185
- color: #000;
186
- }
187
-
188
  #jd-calendar th {
189
  font-size:.8em;
190
  text-transform:uppercase;
191
  padding:2px 4px 2px 0;
192
  }
193
  #jd-calendar .category-key {
194
- background: #edf7ff;
195
- border: 1px solid #a9e3ff;
196
  padding: 5px;
197
  margin: 5px 0;
198
  }
@@ -212,7 +252,6 @@ vertical-align:middle;
212
  width: 10px;
213
  height: 10px;
214
  display: inline-block;
215
- border: 1px solid #555;
216
  -moz-border-radius: 2px;
217
  -webkit-border-radius: 2px;
218
  border-radius: 2px;
@@ -232,6 +271,7 @@ margin-right:10px;
232
  margin-bottom:10px;
233
  font-weight:700;
234
  font-size:.9em;
 
235
  }
236
 
237
  #jd-calendar p {
@@ -252,11 +292,6 @@ margin:10px 0;
252
  #jd-calendar .calendar-event .vcard {
253
  margin:0 0 10px;
254
  }
255
-
256
- #jd-calendar,#calendar-list {
257
- clear:left;
258
- background: #fff;
259
- }
260
  #jd-calendar {
261
  position: relative;
262
  }
@@ -289,21 +324,13 @@ content:'';
289
  }
290
  #jd-calendar .my-calendar-nav li a {
291
  display:block;
292
- background:#fff;
293
- border:1px solid #9b5;
294
  text-align:center;
295
  padding:1px 20px;
296
- color: #243f82;
297
  }
298
  .mini .my-calendar-nav li a {
299
  padding: 1px 3px!important;
300
  font-size: .7em;
301
  }
302
- #jd-calendar .my-calendar-nav li a:hover {
303
- background:#a9e3ff;
304
- color:#000;
305
- border: 1px solid #243f82;
306
- }
307
  #jd-calendar .my-calendar-next {
308
  margin-left: 4px;
309
  text-align:right;
@@ -324,18 +351,7 @@ border-bottom-right-radius: 8px;
324
  border-top-left-radius: 8px;
325
  border-bottom-left-radius: 8px;
326
  }
327
- #jd-calendar .day-without-date {
328
- background: #fafafa;
329
- }
330
- #upcoming-events .past-event {
331
- color: #777;
332
- }
333
- #upcoming-events .today {
334
- color: #111;
335
- }
336
- #upcoming-events .future-event {
337
- color: #555;
338
- }
339
  #jd-calendar.mini .my-calendar-date-switcher label {
340
  display: block;
341
  float: left;
58
  color: #000;
59
  background: #fff;
60
  }
61
+
62
+ #jd-calendar,#calendar-list {
63
+ background: #fff; // general background color
64
+ }
65
+
66
+ #jd-calendar caption, #jd-calendar .my-calendar-date-switcher,
67
+ #jd-calendar .category-key, #jd-calendar .calendar-event .details,
68
+ #jd-calendar .calendar-events {
69
+ background: #edf7ff; // very light blue background
70
+ }
71
+
72
+ #jd-calendar .category-key .no-icon {
73
+ border: 1px solid #555; // border on category color if no icon
74
+ }
75
+
76
+ #jd-calendar caption, #jd-calendar .my-calendar-date-switcher, #jd-calendar .my-calendar-nav li a:hover, #jd-calendar .category-key {
77
+ border: 1px solid #a9e3ff; // light blue border color
78
+ }
79
+ #jd-calendar .list-event .details, #jd-calendar td {
80
+ border:1px solid #eee; // light gray border
81
+ }
82
+ #jd-calendar .calendar-event .details, #jd-calendar .calendar-events {
83
+ color:#000; // event details text color
84
+ }
85
+
86
+ #jd-calendar .my-calendar-nav li a, #jd-calendar .calendar-event .details, #jd-calendar .calendar-events {
87
+ border:1px solid #9b5; // light green border color
88
+ }
89
+
90
+ #jd-calendar .list-event .details, #jd-calendar .day-without-date {
91
+ background:#fafafa; // light gray background
92
+ }
93
+
94
+ #jd-calendar #calendar-list .odd {
95
+ background:#d3e3e3; // list format, odd event listings
96
+ }
97
+
98
+ #jd-calendar .odd .list-event .details {
99
+ background:#e3f3f3; // details on odd event listings
100
+ border:1px solid #c3d3d3; // border on odd event listings
101
+ }
102
+
103
+ #jd-calendar .current-day {
104
+ background:#ffb; // current day highlight
105
+ }
106
+ #jd-calendar .current-day .mc-date {
107
+ color: #000; // text color current date
108
+ background: #eee; // background current date
109
+ }
110
+ #jd-calendar .weekend {
111
+ background:#bd7; // weekend label background
112
+ color: #000; // weekend label color
113
+ }
114
+ #jd-calendar .mc-date {
115
+ background:#f6f6f6; // non-weekend date label background
116
+ }
117
+ #jd-calendar .my-calendar-nav li a {
118
+ color: #243f82; // previous/next link color
119
+ background:#fff; // previous/next link background
120
+
121
+ }
122
+ #jd-calendar .my-calendar-nav li a:hover {
123
+ color:#000; // previous/next link hover color
124
+ border: 1px solid #243f82; // previous/next link hover border color
125
+ }
126
+ #upcoming-events .past-event {
127
+ color: #777; // text color, past events in upcoming events widget
128
+ }
129
+ #upcoming-events .today {
130
+ color: #111; // text color, todays events in upcoming events widget
131
+ }
132
+ #upcoming-events .future-event {
133
+ color: #555; // text color, future events in upcoming events widget
134
+ }
135
+
136
  #jd-calendar caption, #jd-calendar .my-calendar-date-switcher {
 
 
137
  margin: 2px 0;
138
  font-weight:700;
139
  padding:2px 0;
147
 
148
  #jd-calendar td {
149
  vertical-align:top;
 
150
  text-align:left;
151
  width:13%;
152
  height:70px;
189
  #jd-calendar .calendar-event .details, #jd-calendar .calendar-events {
190
  position:absolute;
191
  width:50%;
 
 
 
192
  -moz-border-radius:10px;
193
  -moz-box-shadow:3px 3px 6px #777;
194
  -webkit-box-shadow:3px 3px 6px #777;
206
  left: 0px;
207
  }
208
  #jd-calendar .list-event .details {
 
 
209
  -moz-border-radius:5px;
210
  -webkit-border-radius:5px;
211
  border-radius:5px;
212
  margin:5px 0;
213
  padding:5px 5px 0;
 
214
  }
215
  #jd-calendar #calendar-list {
216
  margin: 0;
222
  margin: 0;
223
  }
224
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
225
  #jd-calendar .mc-date {
226
  display:block;
 
227
  margin:-2px -2px 2px;
228
  padding:2px 4px;
229
  }
 
 
 
 
 
 
230
  #jd-calendar th {
231
  font-size:.8em;
232
  text-transform:uppercase;
233
  padding:2px 4px 2px 0;
234
  }
235
  #jd-calendar .category-key {
 
 
236
  padding: 5px;
237
  margin: 5px 0;
238
  }
252
  width: 10px;
253
  height: 10px;
254
  display: inline-block;
 
255
  -moz-border-radius: 2px;
256
  -webkit-border-radius: 2px;
257
  border-radius: 2px;
271
  margin-bottom:10px;
272
  font-weight:700;
273
  font-size:.9em;
274
+ width: 6em;
275
  }
276
 
277
  #jd-calendar p {
292
  #jd-calendar .calendar-event .vcard {
293
  margin:0 0 10px;
294
  }
 
 
 
 
 
295
  #jd-calendar {
296
  position: relative;
297
  }
324
  }
325
  #jd-calendar .my-calendar-nav li a {
326
  display:block;
 
 
327
  text-align:center;
328
  padding:1px 20px;
 
329
  }
330
  .mini .my-calendar-nav li a {
331
  padding: 1px 3px!important;
332
  font-size: .7em;
333
  }
 
 
 
 
 
334
  #jd-calendar .my-calendar-next {
335
  margin-left: 4px;
336
  text-align:right;
351
  border-top-left-radius: 8px;
352
  border-bottom-left-radius: 8px;
353
  }
354
+
 
 
 
 
 
 
 
 
 
 
 
355
  #jd-calendar.mini .my-calendar-date-switcher label {
356
  display: block;
357
  float: left;
my-calendar-locations.php CHANGED
@@ -17,29 +17,69 @@ echo my_calendar_check_db();
17
  // We do some checking to see what we're doing
18
  if (isset($_POST['mode']) && $_POST['mode'] == 'add') {
19
  $sql = "INSERT INTO " . MY_CALENDAR_LOCATIONS_TABLE . " SET location_label='".mysql_real_escape_string($_POST['location_label'])."', location_street='".mysql_real_escape_string($_POST['location_street'])."', location_street2='".mysql_real_escape_string($_POST['location_street2'])."', location_city='".mysql_real_escape_string($_POST['location_city'])."', location_state='".mysql_real_escape_string($_POST['location_state'])."', location_postcode='".mysql_real_escape_string($_POST['location_postcode'])."', location_country='".mysql_real_escape_string($_POST['location_country'])."', location_longitude='".mysql_real_escape_string($_POST['location_longitude'])."', location_latitude='".mysql_real_escape_string($_POST['location_latitude'])."', location_zoom='".mysql_real_escape_string($_POST['location_zoom'])."'";
20
- $wpdb->get_results($sql);
 
21
  echo "<div class=\"updated\"><p><strong>".__('Location added successfully','my-calendar')."</strong></p></div>";
 
 
 
22
  } else if (isset($_GET['mode']) && isset($_GET['location_id']) && $_GET['mode'] == 'delete') {
23
  $sql = "DELETE FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id=".mysql_real_escape_string($_GET['location_id']);
24
- $wpdb->get_results($sql);
 
25
  echo "<div class=\"updated\"><p><strong>".__('Location deleted successfully','my-calendar')."</strong></p></div>";
 
 
 
26
  } else if (isset($_GET['mode']) && isset($_GET['location_id']) && $_GET['mode'] == 'edit' && !isset($_POST['mode'])) {
27
  $sql = "SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id=".mysql_real_escape_string($_GET['location_id']);
28
  $cur_loc = $wpdb->get_row($sql);
29
- ?>
30
- <h2><?php _e('Edit Location','my-calendar'); ?></h2>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  <?php jd_show_support_box(); ?>
32
  <div id="poststuff" class="jd-my-calendar">
33
  <div class="postbox">
34
  <h3><?php _e('Location Editor','my-calendar'); ?></h3>
35
  <div class="inside">
36
  <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations">
 
37
  <div>
 
 
 
 
 
38
  <input type="hidden" name="mode" value="edit" />
39
  <input type="hidden" name="location_id" value="<?php echo $cur_loc->location_id ?>" />
40
- </div>
 
41
  <fieldset>
42
- <legend>Event Location</legend>
43
  <p>
44
  <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
45
  </p>
@@ -75,87 +115,24 @@ echo my_calendar_check_db();
75
  <small><?php _e('If you supply GPS coordinates for your location, they will be used in place of any other address information to pinpoint your location.','my-calendar'); ?></small>
76
  </p>
77
  <p>
78
- <label for="location_longitude"><?php _e('Longitude','my-calendar'); ?></label> <input type="text" id="location_longitude" name="location_longitude" class="input" size="10" value="<?php if ( !empty( $cur_loc ) ) echo htmlspecialchars(stripslashes($cur_loc->location_longitude)); ?>" /> <label for="location_latitude"><?php _e('Latitude','my-calendar'); ?></label> <input type="text" id="location_latitude" name="location_latitude" class="input" size="10" value="<?php if ( !empty( $cur_loc ) ) echo htmlspecialchars(stripslashes($cur_loc->location_latitude)); ?>" />
79
  </p>
80
  </fieldset>
81
  <p>
82
- <input type="submit" name="save" class="button-primary" value="<?php _e('Save Changes','my-calendar'); ?> &raquo;" />
83
  </p>
84
  </fieldset>
85
- </form>
86
- </div>
87
  </div>
 
88
  </div>
89
- <?php
90
- } else if (isset($_POST['mode']) && isset($_POST['location_id']) && isset($_POST['location_label']) && isset($_POST['location_street']) && $_POST['mode'] == 'edit') {
91
- $sql = "UPDATE " . MY_CALENDAR_LOCATIONS_TABLE . " SET location_label='".mysql_real_escape_string($_POST['location_label'])."', location_street='".mysql_real_escape_string($_POST['location_street'])."', location_street2='".mysql_real_escape_string($_POST['location_street2'])."', location_city='".mysql_real_escape_string($_POST['location_city'])."', location_state='".mysql_real_escape_string($_POST['location_state'])."', location_postcode='".mysql_real_escape_string($_POST['location_postcode'])."', location_country='".mysql_real_escape_string($_POST['location_country'])."', location_longitude='".mysql_real_escape_string($_POST['location_longitude'])."', location_latitude='".mysql_real_escape_string($_POST['location_latitude'])."', location_zoom='".mysql_real_escape_string($_POST['location_zoom'])."' WHERE location_id=".mysql_real_escape_string($_POST['location_id']);
92
- $wpdb->get_results($sql);
93
- echo "<div class=\"updated\"><p><strong>".__('Location edited successfully','my-calendar')."</strong></p></div>";
94
- }
95
 
96
- if ($_GET['mode'] != 'edit' || $_POST['mode'] == 'edit') {
 
97
  ?>
98
-
99
- <h2><?php _e('Add Location','my-calendar'); ?></h2>
100
- <?php jd_show_support_box(); ?>
101
- <div id="poststuff" class="jd-my-calendar">
102
- <div class="postbox">
103
- <h3><?php _e('Add New Location','my-calendar'); ?></h3>
104
- <div class="inside">
105
- <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations">
106
- <div>
107
- <input type="hidden" name="mode" value="add" />
108
- <input type="hidden" name="location_id" value="" />
109
- </div>
110
- <fieldset>
111
- <legend>Event Location</legend>
112
- <p>
113
- <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
114
- </p>
115
- <p>
116
- <label for="location_label"><?php _e('Name of Location (e.g. <em>Joe\'s Bar and Grill</em>)','my-calendar'); ?></label> <input type="text" id="location_label" name="location_label" class="input" size="40" value="" />
117
- </p>
118
- <p>
119
- <label for="location_street"><?php _e('Street Address','my-calendar'); ?></label> <input type="text" id="location_street" name="location_street" class="input" size="40" value="" />
120
- </p>
121
- <p>
122
- <label for="location_street2"><?php _e('Street Address (2)','my-calendar'); ?></label> <input type="text" id="location_street2" name="location_street2" class="input" size="40" value="" />
123
- </p>
124
- <p>
125
- <label for="location_city"><?php _e('City','my-calendar'); ?></label> <input type="text" id="location_city" name="location_city" class="input" size="40" value="" /> <label for="location_state"><?php _e('State/Province','my-calendar'); ?></label> <input type="text" id="location_state" name="location_state" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->location_state); ?>" /> <label for="location_postcode"><?php _e('Postal Code','my-calendar'); ?></label> <input type="text" id="location_postcode" name="location_postcode" class="input" size="10" value="<?php if ( !empty($data) ) echo htmlspecialchars($data->location_postcode); ?>" />
126
- </p>
127
- <p>
128
- <label for="location_country"><?php _e('Country','my-calendar'); ?></label> <input type="text" id="location_country" name="location_country" class="input" size="10" value="" />
129
- </p>
130
- <p>
131
- <label for="location_zoom"><?php _e('Initial Zoom','my-calendar'); ?></label>
132
- <select name="location_zoom" id="location_zoom">
133
- <option value="16"><?php _e('Neighborhood','my-calendar'); ?></option>
134
- <option value="14"><?php _e('Small City','my-calendar'); ?></option>
135
- <option value="12"><?php _e('Large City','my-calendar'); ?></option>
136
- <option value="10"><?php _e('Greater Metro Area','my-calendar'); ?></option>
137
- <option value="8"><?php _e('State','my-calendar'); ?></option>
138
- <option value="6"><?php _e('Region','my-calendar'); ?></option>
139
- </select>
140
- </p>
141
- <fieldset>
142
- <legend><?php _e('GPS Coordinates (optional)','my-calendar'); ?></legend>
143
- <p>
144
- <small><?php _e('If you supply GPS coordinates for your location, they will be used in place of any other address information to pinpoint your location.','my-calendar'); ?></small>
145
- </p>
146
- <p>
147
- <label for="location_longitude"><?php _e('Longitude','my-calendar'); ?></label> <input type="text" id="location_longitude" name="location_longitude" class="input" size="10" value="" /> <label for="location_latitude"><?php _e('Latitude','my-calendar'); ?></label> <input type="text" id="location_latitude" name="location_latitude" class="input" size="10" value="" />
148
- </p>
149
- </fieldset>
150
- <p>
151
- <input type="submit" name="save" class="button-primary" value="<?php _e('Add Location','my-calendar'); ?> &raquo;" />
152
- </p>
153
- </fieldset>
154
-
155
- </form>
156
- </div>
157
- </div>
158
- </div>
159
  <h2><?php _e('Manage Locations','my-calendar'); ?></h2>
160
  <?php
161
 
@@ -183,7 +160,7 @@ echo my_calendar_check_db();
183
  <th scope="row"><?php echo $location->location_id; ?></th>
184
  <td><?php echo stripslashes($location->location_label) . "<br />" . stripslashes($location->location_street) . "<br />" . stripslashes($location->location_street2) . "<br />" . stripslashes($location->location_city) . ", " . stripslashes($location->location_state) . " " . stripslashes($location->location_postcode); ?></td>
185
  <td><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations&amp;mode=edit&amp;location_id=<?php echo $location->location_id;?>" class='edit'><?php echo __('Edit','my-calendar'); ?></a></td>
186
- <td><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations&amp;mode=delete&amp;location_id=<?php echo $category->location_id;?>" class="delete" onclick="return confirm('<?php echo __('Are you sure you want to delete this category?','my-calendar'); ?>')"><?php echo __('Delete','my-calendar'); ?></a></td>
187
  </tr>
188
  <?php
189
  }
@@ -198,11 +175,6 @@ echo my_calendar_check_db();
198
  <em><?php _e('Please note: editing or deleting locations stored for re-use will have no effect on any event previously scheduled at that location. The location database exists purely as a shorthand method to enter frequently used locations into event records.','my-calendar'); ?>
199
  </p>
200
  </div>
201
-
202
- <?php
203
- }
204
- ?>
205
- </div>
206
  <?php
207
  }
208
- ?>
17
  // We do some checking to see what we're doing
18
  if (isset($_POST['mode']) && $_POST['mode'] == 'add') {
19
  $sql = "INSERT INTO " . MY_CALENDAR_LOCATIONS_TABLE . " SET location_label='".mysql_real_escape_string($_POST['location_label'])."', location_street='".mysql_real_escape_string($_POST['location_street'])."', location_street2='".mysql_real_escape_string($_POST['location_street2'])."', location_city='".mysql_real_escape_string($_POST['location_city'])."', location_state='".mysql_real_escape_string($_POST['location_state'])."', location_postcode='".mysql_real_escape_string($_POST['location_postcode'])."', location_country='".mysql_real_escape_string($_POST['location_country'])."', location_longitude='".mysql_real_escape_string($_POST['location_longitude'])."', location_latitude='".mysql_real_escape_string($_POST['location_latitude'])."', location_zoom='".mysql_real_escape_string($_POST['location_zoom'])."'";
20
+ $results = $wpdb->query($sql);
21
+ if ($results) {
22
  echo "<div class=\"updated\"><p><strong>".__('Location added successfully','my-calendar')."</strong></p></div>";
23
+ } else {
24
+ echo "<div class=\"error\"><p><strong>".__('Location could not be added to database','my-calendar')."</strong></p></div>";
25
+ }
26
  } else if (isset($_GET['mode']) && isset($_GET['location_id']) && $_GET['mode'] == 'delete') {
27
  $sql = "DELETE FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id=".mysql_real_escape_string($_GET['location_id']);
28
+ $results = $wpdb->query($sql);
29
+ if ($results) {
30
  echo "<div class=\"updated\"><p><strong>".__('Location deleted successfully','my-calendar')."</strong></p></div>";
31
+ } else {
32
+ echo "<div class=\"error\"><p><strong>".__('Location could not be deleted','my-calendar')."</strong></p></div>";
33
+ }
34
  } else if (isset($_GET['mode']) && isset($_GET['location_id']) && $_GET['mode'] == 'edit' && !isset($_POST['mode'])) {
35
  $sql = "SELECT * FROM " . MY_CALENDAR_LOCATIONS_TABLE . " WHERE location_id=".mysql_real_escape_string($_GET['location_id']);
36
  $cur_loc = $wpdb->get_row($sql);
37
+
38
+ mc_show_location_form('edit', $cur_loc);
39
+ } else if (isset($_POST['mode']) && isset($_POST['location_id']) && isset($_POST['location_label']) && isset($_POST['location_street']) && $_POST['mode'] == 'edit') {
40
+ $sql = "UPDATE " . MY_CALENDAR_LOCATIONS_TABLE . " SET location_label='".mysql_real_escape_string($_POST['location_label'])."', location_street='".mysql_real_escape_string($_POST['location_street'])."', location_street2='".mysql_real_escape_string($_POST['location_street2'])."', location_city='".mysql_real_escape_string($_POST['location_city'])."', location_state='".mysql_real_escape_string($_POST['location_state'])."', location_postcode='".mysql_real_escape_string($_POST['location_postcode'])."', location_country='".mysql_real_escape_string($_POST['location_country'])."', location_longitude='".mysql_real_escape_string($_POST['location_longitude'])."', location_latitude='".mysql_real_escape_string($_POST['location_latitude'])."', location_zoom='".mysql_real_escape_string($_POST['location_zoom'])."' WHERE location_id=".mysql_real_escape_string($_POST['location_id']);
41
+ $results = $wpdb->query($sql);
42
+ if ( $results === false ) {
43
+ echo "<div class=\"error\"><p><strong>".__('Location could not be edited.','my-calendar')."</strong></p></div>";
44
+ } else if ( $results == 0 ) {
45
+ echo "<div class=\"updated\"><p><strong>".__('Location was not changed.','my-calendar')."</strong></p></div>";
46
+ } else {
47
+ echo "<div class=\"updated\"><p><strong>".__('Location edited successfully','my-calendar')."</strong></p></div>";
48
+ }
49
+ }
50
+ echo $sql;
51
+
52
+ if ($_GET['mode'] != 'edit' || $_POST['mode'] == 'edit') {
53
+ mc_show_location_form('add');
54
+ }
55
+ }
56
+
57
+ function mc_show_location_form($view='add',$cur_loc='') {
58
+ ?>
59
+ <?php if ($view == 'add') { ?>
60
+ <h2><?php _e('Add New Location','my-calendar'); ?></h2>
61
+ <?php } else { ?>
62
+ <h2><?php _e('Edit Location','my-calendar'); ?></h2>
63
+ <?php } ?>
64
  <?php jd_show_support_box(); ?>
65
  <div id="poststuff" class="jd-my-calendar">
66
  <div class="postbox">
67
  <h3><?php _e('Location Editor','my-calendar'); ?></h3>
68
  <div class="inside">
69
  <form name="my-calendar" id="my-calendar" method="post" action="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations">
70
+ <?php if ( $view == 'add' ) { ?>
71
  <div>
72
+ <input type="hidden" name="mode" value="add" />
73
+ <input type="hidden" name="location_id" value="" />
74
+ </div>
75
+ <?php } else { ?>
76
+ <div>
77
  <input type="hidden" name="mode" value="edit" />
78
  <input type="hidden" name="location_id" value="<?php echo $cur_loc->location_id ?>" />
79
+ </div>
80
+ <?php } ?>
81
  <fieldset>
82
+ <legend><?php _e('Event Location','my-calendar'); ?></legend>
83
  <p>
84
  <?php _e('All location fields are optional: <em>insufficient information may result in an inaccurate map</em>.','my-calendar'); ?>
85
  </p>
115
  <small><?php _e('If you supply GPS coordinates for your location, they will be used in place of any other address information to pinpoint your location.','my-calendar'); ?></small>
116
  </p>
117
  <p>
118
+ <label for="location_longitude"><?php _e('Longitude','my-calendar'); ?></label> <input type="text" id="location_longitude" name="location_longitude" class="input" size="10" value="<?php if ( !empty( $cur_loc ) ) { echo htmlspecialchars(stripslashes($cur_loc->location_longitude)); } else { echo '0.000000'; } ?>" /> <label for="location_latitude"><?php _e('Latitude','my-calendar'); ?></label> <input type="text" id="location_latitude" name="location_latitude" class="input" size="10" value="<?php if ( !empty( $cur_loc ) ) { echo htmlspecialchars(stripslashes($cur_loc->location_latitude)); } else { echo '0.000000'; } ?>" />
119
  </p>
120
  </fieldset>
121
  <p>
122
+ <input type="submit" name="save" class="button-primary" value="<?php if ($view == 'edit') { _e('Save Changes','my-calendar'); } else { _e('Add Location'); } ?> &raquo;" />
123
  </p>
124
  </fieldset>
125
+ </form>
126
+ </div>
127
  </div>
128
+ <?php mc_manage_locations(); ?>
129
  </div>
130
+ <?php
131
+ }
 
 
 
 
132
 
133
+ function mc_manage_locations() {
134
+ global $wpdb;
135
  ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
136
  <h2><?php _e('Manage Locations','my-calendar'); ?></h2>
137
  <?php
138
 
160
  <th scope="row"><?php echo $location->location_id; ?></th>
161
  <td><?php echo stripslashes($location->location_label) . "<br />" . stripslashes($location->location_street) . "<br />" . stripslashes($location->location_street2) . "<br />" . stripslashes($location->location_city) . ", " . stripslashes($location->location_state) . " " . stripslashes($location->location_postcode); ?></td>
162
  <td><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations&amp;mode=edit&amp;location_id=<?php echo $location->location_id;?>" class='edit'><?php echo __('Edit','my-calendar'); ?></a></td>
163
+ <td><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-locations&amp;mode=delete&amp;location_id=<?php echo $location->location_id;?>" class="delete" onclick="return confirm('<?php echo __('Are you sure you want to delete this category?','my-calendar'); ?>')"><?php echo __('Delete','my-calendar'); ?></a></td>
164
  </tr>
165
  <?php
166
  }
175
  <em><?php _e('Please note: editing or deleting locations stored for re-use will have no effect on any event previously scheduled at that location. The location database exists purely as a shorthand method to enter frequently used locations into event records.','my-calendar'); ?>
176
  </p>
177
  </div>
 
 
 
 
 
178
  <?php
179
  }
180
+ ?>
my-calendar-widgets.php CHANGED
@@ -281,7 +281,7 @@ function my_calendar_upcoming_events($before='default',$after='default',$type='d
281
 
282
  // Widget todays events
283
  function my_calendar_todays_events($category='default',$template='default') {
284
- global $wpdb;
285
 
286
  // This function cannot be called unless calendar is up to date
287
  check_my_calendar();
@@ -298,7 +298,7 @@ function my_calendar_todays_events($category='default',$template='default') {
298
  $category = $category;
299
  }
300
 
301
- $events = my_calendar_grab_events(date_i18n("Y"),date_i18n("m"),date_i18n("d"),$category);
302
  if (count($events) != 0) {
303
  $output = "<ul>";
304
  }
@@ -307,10 +307,10 @@ function my_calendar_todays_events($category='default',$template='default') {
307
  $event_details = event_as_array($event);
308
 
309
  if (get_option('my_calendar_date_format') != '') {
310
- $date = date_i18n(get_option('my_calendar_date_format'),time());
311
  } else {
312
- $date = date_i18n(get_option('date_format'),time());
313
- }
314
  // correct displayed time to today
315
  $event_details['date'] = $date;
316
  $output .= "<li>".jd_draw_widget_event($event_details,$template)."</li>";
@@ -371,7 +371,7 @@ if ($event->event_country != "") {
371
  $hcard .= "</div>\n</div>";
372
 
373
  $map_string = $event->event_street.' '.$event->event_street2.' '.$event->event_city.' '.$event->event_state.' '.$event->event_postcode.' '.$event->event_country;
374
- if ( strlen($map_string) > 0 ) {
375
  $map_string = str_replace(" ","+",$map_string);
376
  if ($event->event_label != "") {
377
  $map_label = $event->event_label;
@@ -407,7 +407,7 @@ $date_end = date_i18n(get_option('date_format'),strtotime($event->event_end));
407
  $details['time'] = date(get_option('time_format'),strtotime($event->event_time));
408
  }
409
  if ($event->event_endtime == '00:00:00' ) {
410
- $deatils['endtime'] = '';
411
  } else {
412
  $details['endtime'] = date( get_option('time_format'),strtotime($event->event_endtime));
413
  }
281
 
282
  // Widget todays events
283
  function my_calendar_todays_events($category='default',$template='default') {
284
+ global $wpdb, $offset;
285
 
286
  // This function cannot be called unless calendar is up to date
287
  check_my_calendar();
298
  $category = $category;
299
  }
300
 
301
+ $events = my_calendar_grab_events(date("Y"),date("m"),date("d"),$category);
302
  if (count($events) != 0) {
303
  $output = "<ul>";
304
  }
307
  $event_details = event_as_array($event);
308
 
309
  if (get_option('my_calendar_date_format') != '') {
310
+ $date = date_i18n(get_option('my_calendar_date_format'),time()+$offset);
311
  } else {
312
+ $date = date_i18n(get_option('date_format'),time()+$offset);
313
+ }
314
  // correct displayed time to today
315
  $event_details['date'] = $date;
316
  $output .= "<li>".jd_draw_widget_event($event_details,$template)."</li>";
371
  $hcard .= "</div>\n</div>";
372
 
373
  $map_string = $event->event_street.' '.$event->event_street2.' '.$event->event_city.' '.$event->event_state.' '.$event->event_postcode.' '.$event->event_country;
374
+ if ( strlen( trim( $map_string ) ) > 0 ) {
375
  $map_string = str_replace(" ","+",$map_string);
376
  if ($event->event_label != "") {
377
  $map_label = $event->event_label;
407
  $details['time'] = date(get_option('time_format'),strtotime($event->event_time));
408
  }
409
  if ($event->event_endtime == '00:00:00' ) {
410
+ $details['endtime'] = '';
411
  } else {
412
  $details['endtime'] = date( get_option('time_format'),strtotime($event->event_endtime));
413
  }
my-calendar.php CHANGED
@@ -5,7 +5,7 @@ Plugin URI: http://www.joedolson.com/articles/my-calendar/
5
  Description: Accessible WordPress event calendar plugin. Show events from multiple calendars on pages, in posts, or in widgets.
6
  Author: Joseph C Dolson
7
  Author URI: http://www.joedolson.com
8
- Version: 1.4.3
9
  */
10
  /* Copyright 2009 Joe Dolson (email : joe@joedolson.com)
11
 
@@ -33,6 +33,10 @@ define('MY_CALENDAR_TABLE', $wpdb->prefix . 'my_calendar');
33
  define('MY_CALENDAR_CATEGORIES_TABLE', $wpdb->prefix . 'my_calendar_categories');
34
  define('MY_CALENDAR_LOCATIONS_TABLE', $wpdb->prefix . 'my_calendar_locations');
35
 
 
 
 
 
36
  // Create a master category for My Calendar and its sub-pages
37
  add_action('admin_menu', 'my_calendar_menu');
38
  // Add the function that puts style information in the header
@@ -73,17 +77,19 @@ function jd_show_support_box() {
73
  ?>
74
  <div class="resources">
75
  <ul>
 
76
  <li><a href="http://www.joedolson.com/articles/my-calendar/"><?php _e("Get Support",'my-calendar'); ?></a></li>
77
  <li><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-help"><?php _e("My Calendar Help",'my-calendar'); ?></a></li>
78
  <li><a href="http://www.joedolson.com/donate.php"><?php _e("Make a Donation",'my-calendar'); ?></a></li>
79
  <li><form action="https://www.paypal.com/cgi-bin/webscr" method="post">
80
  <div>
81
  <input type="hidden" name="cmd" value="_s-xclick" />
82
- <input type="hidden" name="hosted_button_id" value="8490399" />
83
- <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donate_SM.gif" name="submit" alt="Donate" />
84
- <img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1" />
85
  </div>
86
- </form></li>
 
87
  </ul>
88
 
89
  </div>
@@ -122,7 +128,7 @@ function my_calendar_wp_head() {
122
  // generate category colors
123
  $categories = $wpdb->get_results("SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " ORDER BY category_id ASC");
124
  foreach ( $categories as $category ) {
125
- $class = sanitize_title($category->category_name);
126
  $color = $category->category_color;
127
  if ( get_option( 'mc_apply_color' ) == 'font' ) {
128
  $type = 'color';
@@ -135,6 +141,7 @@ $categories = $wpdb->get_results("SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE
135
  echo "
136
  <style type=\"text/css\">
137
  <!--
 
138
  // Styles from My Calendar - Joseph C Dolson http://www.joedolson.com/
139
  $styles
140
 
@@ -180,108 +187,100 @@ function my_calendar_add_javascript() {
180
  if ($_GET['page'] == 'my-calendar') {
181
  wp_enqueue_script('jquery-ui-datepicker',WP_PLUGIN_URL . '/my-calendar/js/ui.datepicker.js', array('jquery','jquery-ui-core') );
182
  }
183
- if ($_GET['page'] == 'my-calendar-categories') {
184
- wp_enqueue_script('jquery-colorpicker',WP_PLUGIN_URL . '/my-calendar/js/jquery-colorpicker.js', array('jquery') );
185
- }
186
  }
187
  function my_calendar_write_js() {
188
- if ($_GET['page']=='my-calendar') {
189
- echo '
190
- <script type="text/javascript">
191
- //<![CDATA[
192
- jQuery(document).ready(function($) {
193
- $("#event_begin").datepicker({
194
- numberOfMonths: 2,
195
- dateFormat: "yy-mm-dd"
196
- });
197
- $("#event_end").datepicker({
198
- numberOfMonths: 2,
199
- dateFormat: "yy-mm-dd"
200
- });
201
- });
202
- //]]>
203
- </script>
204
- ';
205
- }
206
- if ($_GET['page']=='my-calendar-categories') {
207
- /*
208
- <script type=\"text/javascript\">
209
  //<![CDATA[
210
- //jQuery(document).ready(function($) {
211
- //$('#category_color').colorpicker({ flat: true });
 
 
 
 
 
 
 
 
212
  //]]>
213
- */
214
- }
 
215
  }
216
  function my_calendar_add_display_javascript() {
217
- wp_enqueue_script('jquery');
218
  }
219
  add_action('init','my_calendar_add_display_javascript');
220
 
221
- function my_calendar_calendar_javascript() {
222
- global $wpdb, $wp_query;
223
 
224
- $list_js = stripcslashes( get_option( 'my_calendar_listjs' ) );
225
- $cal_js = stripcslashes( get_option( 'my_calendar_caljs' ) );
226
- $mini_js = stripcslashes( get_option( 'my_calendar_minijs' ) );
227
-
228
- if ( get_option('calendar_javascript') != 1 || get_option('list_javascript') != 1 || get_option('mini_javascript') != 1 ) {
229
- $fouc = "$j(\'html\').addClass(\'js\')";
230
- } else {
231
- $fouc = '';
232
- }
233
  $this_post = $wp_query->get_queried_object();
234
  if (is_object($this_post)) {
235
  $id = $this_post->ID;
236
  }
237
- if ( get_option( 'my_calendar_show_css' ) != '' ) {
238
- $array = explode( ",",get_option( 'my_calendar_show_css' ) );
239
- if (!is_array($array)) {
240
- $array = array();
 
 
 
 
 
241
  }
242
  }
243
- if ( @in_array( $id, $array ) || get_option( 'my_calendar_show_css' ) == '' ) {
244
 
 
 
245
 
246
- if ( get_option('calendar_javascript') != 1 ) {
247
- echo "\n";
248
- ?>
249
- <script type='text/javascript'>
250
- <?php echo $cal_js; ?>
251
- </script>
252
- <?php
253
- }
254
- if ( get_option('list_javascript') != 1 ) {
255
- echo "\n"
256
- ?>
257
- <script type='text/javascript'>
258
- <?php echo $list_js; ?>
259
- </script>
260
- <?php
261
- }
262
- if ( get_option('mini_javascript') != 1 ) {
263
- echo "\n"
264
- ?>
265
- <script type='text/javascript'>
266
- <?php echo $mini_js; ?>
267
- </script>
268
- <?php
 
269
  }
270
- } else {
271
- echo "Ha, Ha!";
272
  }
273
- }
274
- add_action('wp_head','my_calendar_calendar_javascript');
275
 
276
  function my_calendar_add_styles() {
277
- ?>
278
- <link type="text/css" rel="stylesheet" href="<?php echo WP_PLUGIN_URL; ?>/my-calendar/js/ui.datepicker.css" />
279
- <?php
280
  echo '
281
  <style type="text/css">
282
  <!--
283
  .jd-my-calendar {
284
- margin-right: 150px!important;
285
  }
286
  #my-calendar legend {
287
  font-weight: 700;
@@ -389,19 +388,9 @@ function check_my_calendar() {
389
  global $wpdb, $initial_style, $initial_listjs, $initial_caljs, $initial_minijs, $mini_styles;
390
  $current_version = get_option('my_calendar_version');
391
  // If current version matches, don't bother running this.
392
- if ($current_version == '1.4.3') {
393
  return true;
394
  }
395
- // check whether mini version styles exist in current styles, if not, add them
396
- if (strpos(get_option('my_calendar_style'),"mini-event") === false) {
397
- $cur_styles = get_option('my_calendar_style')."\n".$mini_styles;
398
- update_option('my_calendar_style',$cur_styles);
399
- }
400
-
401
- // Checks to make sure My Calendar is installed, if not it adds the default
402
- // database tables and populates them with test data. If it is, then the
403
- // version is checked through various means and if it is not up to date
404
- // then it is upgraded.
405
 
406
  // Lets see if this is first run and create a table if it is!
407
  // Assume this is not a new install until we prove otherwise
@@ -432,19 +421,16 @@ function check_my_calendar() {
432
  }
433
 
434
  // having determined upgrade path, assign new version number
435
- update_option( 'my_calendar_version' , '1.4.3' );
436
 
437
  // Now we've determined what the current install is or isn't
438
  if ( $new_install == true ) {
439
  //add default settings
440
  mc_default_settings();
441
-
442
  $sql = "UPDATE " . MY_CALENDAR_TABLE . " SET event_category=1";
443
  $wpdb->get_results($sql);
444
-
445
  $sql = "INSERT INTO " . MY_CALENDAR_CATEGORIES_TABLE . " SET category_id=1, category_name='General', category_color='#ffffff', category_icon='event.png'";
446
  $wpdb->get_results($sql);
447
-
448
  }
449
 
450
  // switch for different upgrade paths
@@ -479,6 +465,11 @@ function check_my_calendar() {
479
  mc_default_settings();
480
  update_option( 'mc_db_version', '1.4.0' );
481
  }
 
 
 
 
 
482
  }
483
 
484
  function jd_cal_checkCheckbox( $theFieldname,$theValue ){
@@ -533,12 +524,8 @@ function my_calendar_permalink_prefix() {
533
  // Configure the "Next" link in the calendar
534
  function my_calendar_next_link($cur_year,$cur_month,$format) {
535
  $next_year = $cur_year + 1;
536
- if ( get_option( 'mc_next_events') == '' ) {
537
- $next_events = "Next events";
538
- } else {
539
- $next_events = stripcslashes( get_option( 'mc_next_events') );
540
- }
541
- $num_months = get_option('my_calendar_show_months');
542
  if ($num_months <= 1 || $format=="calendar") {
543
  if ($cur_month == 12) {
544
  return '<a href="' . my_calendar_permalink_prefix() . 'month=1&amp;yr=' . $next_year . '#jd-calendar" rel="nofollow">'.$next_events.' &raquo;</a>';
@@ -547,11 +534,7 @@ $num_months = get_option('my_calendar_show_months');
547
  return '<a href="' . my_calendar_permalink_prefix() . 'month='.$next_month.'&amp;yr=' . $cur_year . '#jd-calendar" rel="nofollow">'.$next_events.' &raquo;</a>';
548
  }
549
  } else {
550
- if (($cur_month + $num_months) > 12) {
551
- $next_month = ($cur_month + $num_months) - 12;
552
- } else {
553
- $next_month = $cur_month + $num_months;
554
- }
555
  if ($cur_month >= (12-$num_months)) {
556
  return '<a href="' . my_calendar_permalink_prefix() . 'month='.$next_month.'&amp;yr=' . $next_year . '#jd-calendar" rel="nofollow">'.$next_events.' &raquo;</a>';
557
  } else {
@@ -563,12 +546,8 @@ $num_months = get_option('my_calendar_show_months');
563
  // Configure the "Previous" link in the calendar
564
  function my_calendar_prev_link($cur_year,$cur_month,$format) {
565
  $last_year = $cur_year - 1;
566
- if ( get_option( 'mc_previous_events') == '' ) {
567
- $previous_events = "Previous events";
568
- } else {
569
- $previous_events = stripcslashes( get_option( 'mc_previous_events') );
570
- }
571
- $num_months = get_option('my_calendar_show_months');
572
  if ($num_months <= 1 || $format=="calendar") {
573
  if ($cur_month == 1) {
574
  return '<a href="' . my_calendar_permalink_prefix() . 'month=12&amp;yr='. $last_year .'#jd-calendar" rel="nofollow">&laquo; '.$previous_events.'</a>';
@@ -577,11 +556,7 @@ $num_months = get_option('my_calendar_show_months');
577
  return '<a href="' . my_calendar_permalink_prefix() . 'month='.$next_month.'&amp;yr=' . $cur_year . '#jd-calendar" rel="nofollow">&laquo; '.$previous_events.'</a>';
578
  }
579
  } else {
580
- if ($cur_month > $num_months) {
581
- $next_month = $cur_month - $num_months;
582
- } else {
583
- $next_month = ($cur_month - $num_months) + 12;
584
- }
585
  if ($cur_month <= $num_months) {
586
  return '<a href="' . my_calendar_permalink_prefix() . 'month='.$next_month.'&amp;yr=' . $last_year . '#jd-calendar" rel="nofollow">&laquo; '.$previous_events.'</a>';
587
  } else {
@@ -605,41 +580,37 @@ function my_calendar_draw_events($events, $type) {
605
  }
606
  return $output;
607
  }
608
-
609
  // Used to draw an event to the screen
610
  function my_calendar_draw_event($event, $type="calendar") {
611
- global $wpdb;
612
-
613
  // My Calendar must be updated to run this function
614
  check_my_calendar();
615
 
616
  $display_author = get_option('display_author');
617
  $display_map = get_option('my_calendar_show_map');
618
  $display_address = get_option('my_calendar_show_address');
619
- $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_id=".$event->event_category;
620
- $cat_details = $wpdb->get_row($sql);
621
- $style = "background-color:".$cat_details->category_color.";";
622
- $category = sanitize_title( $cat_details->category_name );
 
 
 
623
  if ( get_option('my_calendar_hide_icons')=='true' ) {
624
  $image = "";
625
  } else {
626
  if ($cat_details->category_icon != "") {
627
- if ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) ) {
628
- $path = '/my-calendar-custom';
629
- } else {
630
- $path = '/my-calendar/icons';
631
- }
632
  $image = '<img src="'.WP_PLUGIN_URL.$path.'/'.$cat_details->category_icon.'" alt="" class="category-icon" style="background:'.$cat_details->category_color.';" />';
633
  } else {
634
  $image = "";
635
  }
636
  }
637
  $location_string = $event->event_street.$event->event_street2.$event->event_city.$event->event_state.$event->event_postcode.$event->event_country;
638
-
639
  if (($display_address == 'true' || $display_map == 'true') && strlen($location_string) > 0 ) {
640
  $map_string = $event->event_street.' '.$event->event_street2.' '.$event->event_city.' '.$event->event_state.' '.$event->event_postcode.' '.$event->event_country;
641
  $address .= '<div class="address vcard">';
642
-
643
  if ($display_address == 'true') {
644
  $address .= "<div class=\"adr\">";
645
  if ($event->event_label != "") {
@@ -684,23 +655,39 @@ function my_calendar_draw_event($event, $type="calendar") {
684
  $address .= "</div>";
685
  }
686
 
687
- $my_calendar_directory = get_bloginfo( 'wpurl' ) . '/' . PLUGINDIR . '/' . dirname( plugin_basename(__FILE__) );
688
-
689
  $header_details .= "\n<div class='$type-event'>\n";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
690
  if ($type == 'calendar') {
691
- $toggle = " <a href='#' class='mc-toggle mc-expand'><img src='$my_calendar_directory/images/event-details.png' alt='".__('Event Details','my-calendar')."' /></a>";
692
  } else {
693
  $toggle = "";
694
  }
695
  if ($type != 'list') {
696
- $header_details .= "<h3 class='event-title $category'>$image".stripslashes($event->event_title)."$toggle</h3>\n";
697
  }
698
 
699
  $header_details .= "<div class='details'>";
700
- if ($type == "calendar" ) { $header_details .= "<h3 class='close'><a href='#' class='mc-toggle mc-close'><img src='$my_calendar_directory/images/event-close.png' alt='".__('Close','my-calendar')."' /></a></h3>"; }
701
- if ($event->event_time != "00:00:00") {
702
  $header_details .= "<span class='event-time'>".date_i18n(get_option('time_format'), strtotime($event->event_time));
703
- if ($event->event_endtime != "00:00:00") {
704
  $header_details .= "<span class='time-separator'>&thinsp;&ndash;&thinsp;</span><span class='end-time'>".date_i18n(get_option('time_format'), strtotime($event->event_endtime))."</span>";
705
  }
706
  $header_details .= "</span>\n";
@@ -715,7 +702,7 @@ $my_calendar_directory = get_bloginfo( 'wpurl' ) . '/' . PLUGINDIR . '/' . dirna
715
  }
716
  $header_details .= "<div class='sub-details'>";
717
  if ($type == "list") {
718
- $header_details .= "<h3 class='event-title'>$image".stripslashes($event->event_title)."</h3>\n";
719
  }
720
  if ($display_author == 'true') {
721
  $e = get_userdata($event->event_author);
@@ -728,7 +715,7 @@ $my_calendar_directory = get_bloginfo( 'wpurl' ) . '/' . PLUGINDIR . '/' . dirna
728
  if ( $event->event_link_expires == 0 ) {
729
  $event_link = $event->event_link;
730
  } else {
731
- if ( my_calendar_date_comp( $event->event_begin,date_i18n('Y-m-d',time() ) ) ) {
732
  $event_link = '';
733
  } else {
734
  $event_link = $event->event_link;
@@ -736,61 +723,66 @@ $my_calendar_directory = get_bloginfo( 'wpurl' ) . '/' . PLUGINDIR . '/' . dirna
736
  }
737
 
738
  if ($event_link != '') {
739
- $details = "\n". $header_details . '' . wpautop(stripslashes($event->event_desc),1) . '<p><a href="'.$event_link.'" class="event-link">' . stripslashes($event->event_title) . '&raquo; </a></p>'."</div></div></div>\n";
740
  } else {
741
- $details = "\n". $header_details . '' . wpautop(stripslashes($event->event_desc),1) . "</div></div></div>\n";
742
  }
743
  return $details;
744
  }
745
- // used to generate upcoming events lists
746
- function mc_get_all_events($category) {
747
  global $wpdb;
748
- if ( $category!='default' ) {
749
- if ( strpos( $category, "|" ) ) {
750
- $categories = explode( "|", $category );
751
- $numcat = count($categories);
752
- $i = 1;
753
- foreach ($categories as $key) {
754
- if ( is_numeric($key) ) {
755
- if ($i == 1) {
756
- $select_category .= " WHERE (";
757
- }
758
- $select_category .= " event_category = $key";
759
- if ($i < $numcat) {
760
- $select_category .= " OR ";
761
- } else if ($i == $numcat) {
762
- $select_category .= ") ";
763
- }
764
- $i++;
765
- } else {
766
- $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$key'");
767
- $category_id = $cat->category_id;
768
- if ($i == 1) {
769
- $select_category .= " WHERE (";
770
- }
771
- $select_category .= " event_category = $category_id";
772
- if ($i < $numcat) {
773
- $select_category .= " OR ";
774
- } else if ($i == $numcat) {
775
- $select_category .= ") ";
776
- }
777
- $i++;
778
  }
779
- }
780
- } else {
781
- if (is_numeric($category)) {
782
- $select_category = " WHERE event_category = $category";
783
  } else {
784
- $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$category'");
785
- $category_id = $cat->category_id;
786
- if (!$category_id) {
787
- //if the requested category doesn't exist, fail silently
788
- $select_category = "";
789
- } else {
790
- $select_category = " WHERE event_category = $category_id";
 
 
 
791
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
792
  }
793
  }
 
 
 
 
 
 
 
 
794
  } else {
795
  $select_category = "";
796
  }
@@ -1070,53 +1062,10 @@ function my_calendar_grab_events($y,$m,$d,$category=null) {
1070
  }
1071
 
1072
  global $wpdb;
1073
-
1074
- if ( $category!=null ) {
1075
- if ( strpos( $category, "|" ) ) {
1076
- $categories = explode( "|", $category );
1077
- $numcat = count($categories);
1078
- $i = 1;
1079
- foreach ($categories as $key) {
1080
- if ( is_numeric($key) ) {
1081
- if ($i == 1) {
1082
- $select_category .= "(";
1083
- }
1084
- $select_category .= " event_category = $key";
1085
- if ($i < $numcat) {
1086
- $select_category .= " OR ";
1087
- } else if ($i == $numcat) {
1088
- $select_category .= ") AND";
1089
- }
1090
- $i++;
1091
- } else {
1092
- $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$key'");
1093
- $category_id = $cat->category_id;
1094
- if ($i == 1) {
1095
- $select_category .= "(";
1096
- }
1097
- $select_category .= " event_category = $category_id";
1098
- if ($i < $numcat) {
1099
- $select_category .= " OR ";
1100
- } else if ($i == $numcat) {
1101
- $select_category .= ") AND";
1102
- }
1103
- $i++;
1104
- }
1105
- }
1106
- } else {
1107
- if (is_numeric($category)) {
1108
- $select_category = "event_category = $category AND";
1109
- } else {
1110
- $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$category'");
1111
- $category_id = $cat->category_id;
1112
- if (!$category_id) {
1113
- //if the requested category doesn't exist, fail silently
1114
- $select_category = "";
1115
- } else {
1116
- $select_category = "event_category = $category_id AND";
1117
- }
1118
- }
1119
- }
1120
  }
1121
  $arr_events = array();
1122
 
@@ -1244,7 +1193,6 @@ function my_calendar_grab_events($y,$m,$d,$category=null) {
1244
  }
1245
  }
1246
  }
1247
-
1248
  return $arr_events;
1249
  }
1250
 
@@ -1284,7 +1232,7 @@ function mc_build_date_switcher() {
1284
  }
1285
  // We build the months in the switcher
1286
  $my_calendar_body .= '
1287
- <label for="my-calendar-month">'.__('Month','my-calendar').':</label> <select id="my-calendar-month" name="month" style="width:100px;">
1288
  <option value="1"'.mc_month_comparison('1').'>'.__('January','my-calendar').'</option>
1289
  <option value="2"'.mc_month_comparison('2').'>'.__('February','my-calendar').'</option>
1290
  <option value="3"'.mc_month_comparison('3').'>'.__('March','my-calendar').'</option>
@@ -1332,7 +1280,11 @@ function mc_build_date_switcher() {
1332
  // Compared to searching for and displaying events
1333
  // this bit is really rather easy!
1334
  function my_calendar($name,$format,$category,$showkey) {
1335
- global $wpdb;
 
 
 
 
1336
  if ($category == "") {
1337
  $category=null;
1338
  }
@@ -1366,19 +1318,15 @@ function my_calendar($name,$format,$category,$showkey) {
1366
  $first = array_shift($name_days);
1367
  $name_days[] = $first;
1368
  }
1369
-
1370
-
1371
- // Carry on with the script
1372
  $name_months = array(1=>__('January','my-calendar'),__('February','my-calendar'),__('March','my-calendar'),__('April','my-calendar'),__('May','my-calendar'),__('June','my-calendar'),__('July','my-calendar'),__('August','my-calendar'),__('September','my-calendar'),__('October','my-calendar'),__('November','my-calendar'),__('December','my-calendar'));
1373
  $offset = (60*60*get_option('gmt_offset'));
1374
-
1375
  // If we don't pass arguments we want a calendar that is relevant to today
1376
  if (empty($_GET['month']) || empty($_GET['yr'])) {
1377
  $c_year = date("Y",time()+($offset));
1378
  $c_month = date("m",time()+($offset));
1379
  $c_day = date("d",time()+($offset));
1380
  }
1381
-
1382
  // Years get funny if we exceed 3000, so we use this check
1383
  if ($_GET['yr'] <= 3000 && $_GET['yr'] >= 0) {
1384
 
@@ -1441,24 +1389,14 @@ function my_calendar($name,$format,$category,$showkey) {
1441
  $my_calendar_body .= '<caption class="my-calendar-month">'.$name_months[(int)$c_month].' '.$c_year.$caption_text."</caption>\n";
1442
  } else {
1443
  if ( get_option('my_calendar_show_heading') == 'true' ) {
1444
- $my_calendar_body .= "\n<h2 class=\"my-calendar-heading\">$category_label".__('Calendar','my-calendar')."</h2>\n";
1445
- }
1446
- $num_months = get_option('my_calendar_show_months');
1447
- if ($num_months <= 1) {
1448
- $my_calendar_body .= '<h3 class="my-calendar-month">'.__('Events in','my-calendar').' '.$name_months[(int)$c_month].' '.$c_year.$caption_text."</h3>\n";
1449
- } else {
1450
- $my_calendar_body .= '<h3 class="my-calendar-month">'.$name_months[(int)$c_month].'&thinsp;&ndash;&thinsp;'.$name_months[(int)$c_month+$num_months-1].' '.$c_year.$caption_text."</h3>\n";
1451
  }
 
 
1452
  $my_calendar_body .= '<div class="my-calendar-header">';
1453
-
1454
  // We want to know if we should display the date switcher
1455
- $date_switcher = get_option('display_jump');
1456
 
1457
- if ($date_switcher == 'true') {
1458
- $my_calendar_body .= mc_build_date_switcher();
1459
- }
1460
-
1461
- // The header of the calendar table and the links. Note calls to link functions
1462
  $my_calendar_body .= '
1463
  <div class="my-calendar-nav">
1464
  <ul>
@@ -1469,7 +1407,6 @@ function my_calendar($name,$format,$category,$showkey) {
1469
  </div>';
1470
  }
1471
  // If in calendar format, print the headings of the days of the week
1472
- //$my_calendar_body .= "$format, $category, $name";
1473
  if ( $format == "calendar" || $format == "mini" ) {
1474
  $my_calendar_body .= "<thead>\n<tr>\n";
1475
  for ($i=0; $i<=6; $i++) {
@@ -1493,26 +1430,26 @@ if ( $format == "calendar" || $format == "mini" ) {
1493
 
1494
  if ($go) {
1495
  // Colors again, this time for the day numbers
1496
- $grabbed_events = my_calendar_grab_events($c_year,$c_month,$i,$category);
1497
- $events_class = '';
1498
- if (!count($grabbed_events)) {
1499
- $events_class = ' no-events';
 
 
 
 
 
 
 
 
1500
  $element = 'span';
1501
  $trigger = '';
1502
- } else {
1503
- $events_class = ' has-events';
1504
- if ($format == 'mini') {
1505
- $element = 'a href="#"';
1506
- $trigger = ' trigger';
1507
- } else {
1508
- $element = 'span';
1509
- $trigger = '';
1510
- }
1511
  }
 
1512
  if (get_option('start_of_week') == 0) {
1513
- $my_calendar_body .= '<td class="'.(date("Ymd", mktime (0,0,0,$c_month,$i,$c_year))==date_i18n("Ymd",time())?'current-day':'day-with-date').$events_class.'">'."\n <$element class='mc-date ".($ii<6&&$ii>0?"$trigger":"weekend$trigger")."'>".$i++."</$element>\n ". my_calendar_draw_events($grabbed_events, $format) . "\n</td>\n";
1514
  } else {
1515
- $my_calendar_body .= '<td class="'.(date("Ymd", mktime (0,0,0,$c_month,$i,$c_year))==date_i18n("Ymd",time())?'current-day':'day-with-date').$events_class.'">'."\n <$element class='mc-date ".($ii<5?"$trigger":"weekend$trigger'")."'>".$i++."</$element>\n ". my_calendar_draw_events($grabbed_events, $format) . "\n</td>\n";
1516
  }
1517
  } else {
1518
  $my_calendar_body .= "<td class='day-without-date'>&nbsp;</td>\n";
@@ -1523,11 +1460,8 @@ if ( $format == "calendar" || $format == "mini" ) {
1523
  $my_calendar_body .= "\n</tbody>\n</table>";
1524
  } else if ($format == "list") {
1525
  $my_calendar_body .= "<ul id=\"calendar-list\">";
1526
- // show calendar as list
1527
- $date_format = get_option('my_calendar_date_format');
1528
- if ($date_format == "") {
1529
- $date_format = "l, F j, Y";
1530
- }
1531
  $num_months = get_option('my_calendar_show_months');
1532
  $num_events = 0;
1533
  for ($m=0;$m<$num_months;$m++) {
@@ -1549,11 +1483,7 @@ if ($date_format == "") {
1549
  $my_calendar_body .= "<li class='$class".(date("Ymd", mktime (0,0,0,$c_month,$i,$c_year))==date("Ymd",time()+($offset))?' current-day':'')."'><strong class=\"event-date\">$is_anchor".date_i18n($date_format,mktime(0,0,0,$c_month,$i,$c_year))."$is_close_anchor</strong>".my_calendar_draw_events($grabbed_events, $format)."</li>";
1550
  $num_events++;
1551
  }
1552
- if (my_calendar_is_odd($num_events)) {
1553
- $class = "odd";
1554
- } else {
1555
- $class = "even";
1556
- }
1557
  }
1558
  }
1559
  if ($num_events == 0) {
@@ -1618,6 +1548,4 @@ if (version_compare(phpversion(), '5.0') < 0) {
1618
  }
1619
  ');
1620
  }
1621
-
1622
-
1623
  ?>
5
  Description: Accessible WordPress event calendar plugin. Show events from multiple calendars on pages, in posts, or in widgets.
6
  Author: Joseph C Dolson
7
  Author URI: http://www.joedolson.com
8
+ Version: 1.4.6
9
  */
10
  /* Copyright 2009 Joe Dolson (email : joe@joedolson.com)
11
 
33
  define('MY_CALENDAR_CATEGORIES_TABLE', $wpdb->prefix . 'my_calendar_categories');
34
  define('MY_CALENDAR_LOCATIONS_TABLE', $wpdb->prefix . 'my_calendar_locations');
35
 
36
+ // Define other plugin constants
37
+ $my_calendar_directory = get_bloginfo( 'wpurl' ) . '/' . PLUGINDIR . '/' . dirname( plugin_basename(__FILE__) );
38
+ define( 'MY_CALENDAR_DIRECTORY', $my_calendar_directory );
39
+
40
  // Create a master category for My Calendar and its sub-pages
41
  add_action('admin_menu', 'my_calendar_menu');
42
  // Add the function that puts style information in the header
77
  ?>
78
  <div class="resources">
79
  <ul>
80
+ <li><a href="http://mywpworks.com/wp-plugin-guides/my-calendar-plugin-beginners-guide/">Buy the Beginner's Guide</a></li>
81
  <li><a href="http://www.joedolson.com/articles/my-calendar/"><?php _e("Get Support",'my-calendar'); ?></a></li>
82
  <li><a href="<?php bloginfo('wpurl'); ?>/wp-admin/admin.php?page=my-calendar-help"><?php _e("My Calendar Help",'my-calendar'); ?></a></li>
83
  <li><a href="http://www.joedolson.com/donate.php"><?php _e("Make a Donation",'my-calendar'); ?></a></li>
84
  <li><form action="https://www.paypal.com/cgi-bin/webscr" method="post">
85
  <div>
86
  <input type="hidden" name="cmd" value="_s-xclick" />
87
+ <input type="hidden" name="hosted_button_id" value="UZBQUG2LKKMRW" />
88
+ <input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donate_SM.gif" name="submit" alt="Donate!" />
89
+ <img alt="" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1" />
90
  </div>
91
+ </form>
92
+ </li>
93
  </ul>
94
 
95
  </div>
128
  // generate category colors
129
  $categories = $wpdb->get_results("SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE . " ORDER BY category_id ASC");
130
  foreach ( $categories as $category ) {
131
+ $class = "mc_".sanitize_title($category->category_name);
132
  $color = $category->category_color;
133
  if ( get_option( 'mc_apply_color' ) == 'font' ) {
134
  $type = 'color';
141
  echo "
142
  <style type=\"text/css\">
143
  <!--
144
+ .js #jd-calendar .details { display: none; }
145
  // Styles from My Calendar - Joseph C Dolson http://www.joedolson.com/
146
  $styles
147
 
187
  if ($_GET['page'] == 'my-calendar') {
188
  wp_enqueue_script('jquery-ui-datepicker',WP_PLUGIN_URL . '/my-calendar/js/ui.datepicker.js', array('jquery','jquery-ui-core') );
189
  }
 
 
 
190
  }
191
  function my_calendar_write_js() {
192
+ if ($_GET['page']=='my-calendar') {
193
+ echo '
194
+ <script type="text/javascript">
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
195
  //<![CDATA[
196
+ jQuery(document).ready(function($) {
197
+ $("#event_begin").datepicker({
198
+ numberOfMonths: 2,
199
+ dateFormat: "yy-mm-dd"
200
+ });
201
+ $("#event_end").datepicker({
202
+ numberOfMonths: 2,
203
+ dateFormat: "yy-mm-dd"
204
+ });
205
+ });
206
  //]]>
207
+ </script>
208
+ ';
209
+ }
210
  }
211
  function my_calendar_add_display_javascript() {
212
+ wp_enqueue_script('jquery');
213
  }
214
  add_action('init','my_calendar_add_display_javascript');
215
 
216
+ function my_calendar_fouc() {
217
+ global $wp_query;
218
 
219
+ if ( get_option('calendar_javascript') != 1 || get_option('list_javascript') != 1 || get_option('mini_javascript') != 1 ) {
220
+ $scripting = "\n<script type='text/javascript'>\n";
221
+ $scripting .= "var \$mc = jQuery.noConflict();\n";
222
+ $scripting .= "\$mc('html').addClass('js');\n";
223
+ $scripting .= "\$mc(document).ready(function() { \$mc('html').removeClass('js') });\n";
224
+ $scripting .= "</script>\n";
225
+ }
226
+ if ( get_option('calendar_javascript') != 1 || get_option('list_javascript') != 1 || get_option('mini_javascript') != 1 ) {
 
227
  $this_post = $wp_query->get_queried_object();
228
  if (is_object($this_post)) {
229
  $id = $this_post->ID;
230
  }
231
+ if ( get_option( 'my_calendar_show_css' ) != '' ) {
232
+ $array = explode( ",",get_option( 'my_calendar_show_css' ) );
233
+ if (!is_array($array)) {
234
+ $array = array();
235
+ }
236
+ }
237
+ if ( @in_array( $id, $array ) || get_option( 'my_calendar_show_css' ) == '' ) {
238
+ echo $scripting;
239
+ }
240
  }
241
  }
 
242
 
243
+ function my_calendar_calendar_javascript() {
244
+ global $wpdb, $wp_query;
245
 
246
+ if ( get_option('calendar_javascript') != 1 || get_option('list_javascript') != 1 || get_option('mini_javascript') != 1 ) {
247
+
248
+ $list_js = stripcslashes( get_option( 'my_calendar_listjs' ) );
249
+ $cal_js = stripcslashes( get_option( 'my_calendar_caljs' ) );
250
+ $mini_js = stripcslashes( get_option( 'my_calendar_minijs' ) );
251
+
252
+ $this_post = $wp_query->get_queried_object();
253
+ if (is_object($this_post)) {
254
+ $id = $this_post->ID;
255
+ }
256
+ if ( get_option( 'my_calendar_show_css' ) != '' ) {
257
+ $array = explode( ",",get_option( 'my_calendar_show_css' ) );
258
+ if (!is_array($array)) {
259
+ $array = array();
260
+ }
261
+ }
262
+ if ( @in_array( $id, $array ) || get_option( 'my_calendar_show_css' ) == '' ) {
263
+ $scripting = "<script type='text/javascript'>\n";
264
+ if ( get_option('calendar_javascript') != 1 ) { $scripting .= "\n".$cal_js; }
265
+ if ( get_option('list_javascript') != 1 ) { $scripting .= "\n".$list_js; }
266
+ if ( get_option('mini_javascript') != 1 ) { $scripting .= "\n".$mini_js; }
267
+ $scripting .= "</script>";
268
+ echo $scripting;
269
+ }
270
  }
 
 
271
  }
272
+ add_action('wp_footer','my_calendar_calendar_javascript');
273
+ add_action('wp_head','my_calendar_fouc');
274
 
275
  function my_calendar_add_styles() {
276
+
277
+ echo '<link type="text/css" rel="stylesheet" href="'.WP_PLUGIN_URL.'/my-calendar/js/ui.datepicker.css" />';
278
+
279
  echo '
280
  <style type="text/css">
281
  <!--
282
  .jd-my-calendar {
283
+ margin-right: 190px!important;
284
  }
285
  #my-calendar legend {
286
  font-weight: 700;
388
  global $wpdb, $initial_style, $initial_listjs, $initial_caljs, $initial_minijs, $mini_styles;
389
  $current_version = get_option('my_calendar_version');
390
  // If current version matches, don't bother running this.
391
+ if ($current_version == '1.4.6') {
392
  return true;
393
  }
 
 
 
 
 
 
 
 
 
 
394
 
395
  // Lets see if this is first run and create a table if it is!
396
  // Assume this is not a new install until we prove otherwise
421
  }
422
 
423
  // having determined upgrade path, assign new version number
424
+ update_option( 'my_calendar_version' , '1.4.6' );
425
 
426
  // Now we've determined what the current install is or isn't
427
  if ( $new_install == true ) {
428
  //add default settings
429
  mc_default_settings();
 
430
  $sql = "UPDATE " . MY_CALENDAR_TABLE . " SET event_category=1";
431
  $wpdb->get_results($sql);
 
432
  $sql = "INSERT INTO " . MY_CALENDAR_CATEGORIES_TABLE . " SET category_id=1, category_name='General', category_color='#ffffff', category_icon='event.png'";
433
  $wpdb->get_results($sql);
 
434
  }
435
 
436
  // switch for different upgrade paths
465
  mc_default_settings();
466
  update_option( 'mc_db_version', '1.4.0' );
467
  }
468
+ // check whether mini version styles exist in current styles, if not, add them
469
+ if (strpos(get_option('my_calendar_style'),"mini-event") === false) {
470
+ $cur_styles = get_option('my_calendar_style')."\n".$mini_styles;
471
+ update_option('my_calendar_style',$cur_styles);
472
+ }
473
  }
474
 
475
  function jd_cal_checkCheckbox( $theFieldname,$theValue ){
524
  // Configure the "Next" link in the calendar
525
  function my_calendar_next_link($cur_year,$cur_month,$format) {
526
  $next_year = $cur_year + 1;
527
+ $next_events = ( get_option( 'mc_next_events') == '' )?"Next events":stripcslashes( get_option( 'mc_next_events') );
528
+ $num_months = get_option('my_calendar_show_months');
 
 
 
 
529
  if ($num_months <= 1 || $format=="calendar") {
530
  if ($cur_month == 12) {
531
  return '<a href="' . my_calendar_permalink_prefix() . 'month=1&amp;yr=' . $next_year . '#jd-calendar" rel="nofollow">'.$next_events.' &raquo;</a>';
534
  return '<a href="' . my_calendar_permalink_prefix() . 'month='.$next_month.'&amp;yr=' . $cur_year . '#jd-calendar" rel="nofollow">'.$next_events.' &raquo;</a>';
535
  }
536
  } else {
537
+ $next_month = (($cur_month + $num_months) > 12)?(($cur_month + $num_months) - 12):($cur_month + $num_months);
 
 
 
 
538
  if ($cur_month >= (12-$num_months)) {
539
  return '<a href="' . my_calendar_permalink_prefix() . 'month='.$next_month.'&amp;yr=' . $next_year . '#jd-calendar" rel="nofollow">'.$next_events.' &raquo;</a>';
540
  } else {
546
  // Configure the "Previous" link in the calendar
547
  function my_calendar_prev_link($cur_year,$cur_month,$format) {
548
  $last_year = $cur_year - 1;
549
+ $previous_events = ( get_option( 'mc_previous_events') == '' )?"Previous events":stripcslashes( get_option( 'mc_previous_events') );
550
+ $num_months = get_option('my_calendar_show_months');
 
 
 
 
551
  if ($num_months <= 1 || $format=="calendar") {
552
  if ($cur_month == 1) {
553
  return '<a href="' . my_calendar_permalink_prefix() . 'month=12&amp;yr='. $last_year .'#jd-calendar" rel="nofollow">&laquo; '.$previous_events.'</a>';
556
  return '<a href="' . my_calendar_permalink_prefix() . 'month='.$next_month.'&amp;yr=' . $cur_year . '#jd-calendar" rel="nofollow">&laquo; '.$previous_events.'</a>';
557
  }
558
  } else {
559
+ $next_month = ($cur_month > $num_months)?($cur_month - $num_months):(($cur_month - $num_months) + 12);
 
 
 
 
560
  if ($cur_month <= $num_months) {
561
  return '<a href="' . my_calendar_permalink_prefix() . 'month='.$next_month.'&amp;yr=' . $last_year . '#jd-calendar" rel="nofollow">&laquo; '.$previous_events.'</a>';
562
  } else {
580
  }
581
  return $output;
582
  }
 
583
  // Used to draw an event to the screen
584
  function my_calendar_draw_event($event, $type="calendar") {
585
+ global $wpdb, $categories;
 
586
  // My Calendar must be updated to run this function
587
  check_my_calendar();
588
 
589
  $display_author = get_option('display_author');
590
  $display_map = get_option('my_calendar_show_map');
591
  $display_address = get_option('my_calendar_show_address');
592
+ $this_category = $event->event_category;
593
+ foreach ($categories as $key=>$value) {
594
+ if ($value->category_id == $this_category) {
595
+ $cat_details = $categories[$key];
596
+ }
597
+ }
598
+ $category = "mc_".sanitize_title( $cat_details->category_name );
599
  if ( get_option('my_calendar_hide_icons')=='true' ) {
600
  $image = "";
601
  } else {
602
  if ($cat_details->category_icon != "") {
603
+ $path = ( file_exists( WP_PLUGIN_DIR . '/my-calendar-custom/' ) )?'/my-calendar-custom' : '/my-calendar/icons';
 
 
 
 
604
  $image = '<img src="'.WP_PLUGIN_URL.$path.'/'.$cat_details->category_icon.'" alt="" class="category-icon" style="background:'.$cat_details->category_color.';" />';
605
  } else {
606
  $image = "";
607
  }
608
  }
609
  $location_string = $event->event_street.$event->event_street2.$event->event_city.$event->event_state.$event->event_postcode.$event->event_country;
610
+ // put together address information as vcard
611
  if (($display_address == 'true' || $display_map == 'true') && strlen($location_string) > 0 ) {
612
  $map_string = $event->event_street.' '.$event->event_street2.' '.$event->event_city.' '.$event->event_state.' '.$event->event_postcode.' '.$event->event_country;
613
  $address .= '<div class="address vcard">';
 
614
  if ($display_address == 'true') {
615
  $address .= "<div class=\"adr\">";
616
  if ($event->event_label != "") {
655
  $address .= "</div>";
656
  }
657
 
 
 
658
  $header_details .= "\n<div class='$type-event'>\n";
659
+ if ( get_option('mc_show_link_on_title') == 'true' ) { // this doesn't exist yet.
660
+ if ( $event->event_link_expires == 0 ) {
661
+ $event_link = $event->event_link;
662
+ } else {
663
+ if ( my_calendar_date_comp( $event->event_begin,date_i18n('Y-m-d',time()+$offset ) ) ) {
664
+ $event_link = '';
665
+ } else {
666
+ $event_link = $event->event_link;
667
+ }
668
+ }
669
+ if ($event_link != '') {
670
+ $mytitle = '<a href="'.$event_link.'" class="my-link">'.stripslashes($event->event_title).' &raquo; </a>';
671
+ } else {
672
+ $mytitle = stripslashes($event->event_title);
673
+ }
674
+ } else {
675
+ $mytitle = stripslashes($event->event_title);
676
+ }
677
  if ($type == 'calendar') {
678
+ $toggle = " <a href='#' class='mc-toggle mc-expand'><img src='".MY_CALENDAR_DIRECTORY."/images/event-details.png' alt='".__('Event Details','my-calendar')."' /></a>";
679
  } else {
680
  $toggle = "";
681
  }
682
  if ($type != 'list') {
683
+ $header_details .= "<h3 class='event-title $category'>$image".$mytitle."$toggle</h3>\n";
684
  }
685
 
686
  $header_details .= "<div class='details'>";
687
+ if ( $type == "calendar" ) { $header_details .= "<h3 class='close'><a href='#' class='mc-toggle mc-close'><img src='".MY_CALENDAR_DIRECTORY."/images/event-close.png' alt='".__('Close','my-calendar')."' /></a></h3>"; }
688
+ if ( $event->event_time != "00:00:00" && $event->event_time != '' ) {
689
  $header_details .= "<span class='event-time'>".date_i18n(get_option('time_format'), strtotime($event->event_time));
690
+ if ($event->event_endtime != "00:00:00" && $event->event_endtime != '' ) {
691
  $header_details .= "<span class='time-separator'>&thinsp;&ndash;&thinsp;</span><span class='end-time'>".date_i18n(get_option('time_format'), strtotime($event->event_endtime))."</span>";
692
  }
693
  $header_details .= "</span>\n";
702
  }
703
  $header_details .= "<div class='sub-details'>";
704
  if ($type == "list") {
705
+ $header_details .= "<h3 class='event-title'>$image".$mytitle."</h3>\n";
706
  }
707
  if ($display_author == 'true') {
708
  $e = get_userdata($event->event_author);
715
  if ( $event->event_link_expires == 0 ) {
716
  $event_link = $event->event_link;
717
  } else {
718
+ if ( my_calendar_date_comp( $event->event_begin,date_i18n('Y-m-d',time()+$offset ) ) ) {
719
  $event_link = '';
720
  } else {
721
  $event_link = $event->event_link;
723
  }
724
 
725
  if ($event_link != '') {
726
+ $details = "\n". $header_details . '' . wpautop(stripcslashes($event->event_desc),1) . '<p><a href="'.$event_link.'" class="event-link">' . stripslashes($event->event_title) . '&raquo; </a></p>'."</div></div></div>\n";
727
  } else {
728
+ $details = "\n". $header_details . '' . wpautop(stripcslashes($event->event_desc),1) . "</div></div></div>\n";
729
  }
730
  return $details;
731
  }
732
+ function mc_select_category($category, $type='event') {
 
733
  global $wpdb;
734
+ if ( strpos( $category, "|" ) ) {
735
+ $categories = explode( "|", $category );
736
+ $numcat = count($categories);
737
+ $i = 1;
738
+ foreach ($categories as $key) {
739
+ if ( is_numeric($key) ) {
740
+ if ($i == 1) {
741
+ $select_category .= ($type=='all')?" WHERE (":' (';
742
+ }
743
+ $select_category .= " event_category = $key";
744
+ if ($i < $numcat) {
745
+ $select_category .= " OR ";
746
+ } else if ($i == $numcat) {
747
+ $select_category .= ($type=='all')?") ":' ) AND';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
748
  }
749
+ $i++;
 
 
 
750
  } else {
751
+ $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$key'");
752
+ $category_id = $cat->category_id;
753
+ if ($i == 1) {
754
+ $select_category .= ($type=='all')?" WHERE (":' (';
755
+ }
756
+ $select_category .= " event_category = $category_id";
757
+ if ($i < $numcat) {
758
+ $select_category .= " OR ";
759
+ } else if ($i == $numcat) {
760
+ $select_category .= ($type=='all')?") ":' ) AND';
761
  }
762
+ $i++;
763
+ }
764
+ }
765
+ } else {
766
+ if (is_numeric($category)) {
767
+ $select_category = ($type=='all')?" WHERE event_category = $category":" event_category = $category AND";
768
+ } else {
769
+ $cat = $wpdb->get_row("SELECT category_id FROM " . MY_CALENDAR_CATEGORIES_TABLE . " WHERE category_name = '$category'");
770
+ $category_id = $cat->category_id;
771
+ if (!$category_id) {
772
+ //if the requested category doesn't exist, fail silently
773
+ $select_category = "";
774
+ } else {
775
+ $select_category = ($type=='all')?" WHERE event_category = $category_id":" event_category = $category_id AND";
776
  }
777
  }
778
+ }
779
+ return $select_category;
780
+ }
781
+ // used to generate upcoming events lists
782
+ function mc_get_all_events($category) {
783
+ global $wpdb;
784
+ if ( $category!='default' ) {
785
+ $select_category = mc_select_category($category,'all');
786
  } else {
787
  $select_category = "";
788
  }
1062
  }
1063
 
1064
  global $wpdb;
1065
+ if ( $category != null ) {
1066
+ $select_category = mc_select_category($category);
1067
+ } else {
1068
+ $select_category = "";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1069
  }
1070
  $arr_events = array();
1071
 
1193
  }
1194
  }
1195
  }
 
1196
  return $arr_events;
1197
  }
1198
 
1232
  }
1233
  // We build the months in the switcher
1234
  $my_calendar_body .= '
1235
+ <label for="my-calendar-month">'.__('Month','my-calendar').':</label> <select id="my-calendar-month" name="month">
1236
  <option value="1"'.mc_month_comparison('1').'>'.__('January','my-calendar').'</option>
1237
  <option value="2"'.mc_month_comparison('2').'>'.__('February','my-calendar').'</option>
1238
  <option value="3"'.mc_month_comparison('3').'>'.__('March','my-calendar').'</option>
1280
  // Compared to searching for and displaying events
1281
  // this bit is really rather easy!
1282
  function my_calendar($name,$format,$category,$showkey) {
1283
+ global $wpdb,$categories;
1284
+
1285
+ $sql = "SELECT * FROM " . MY_CALENDAR_CATEGORIES_TABLE ;
1286
+ $categories = $wpdb->get_results($sql);
1287
+
1288
  if ($category == "") {
1289
  $category=null;
1290
  }
1318
  $first = array_shift($name_days);
1319
  $name_days[] = $first;
1320
  }
1321
+ // Carry on with the script
 
 
1322
  $name_months = array(1=>__('January','my-calendar'),__('February','my-calendar'),__('March','my-calendar'),__('April','my-calendar'),__('May','my-calendar'),__('June','my-calendar'),__('July','my-calendar'),__('August','my-calendar'),__('September','my-calendar'),__('October','my-calendar'),__('November','my-calendar'),__('December','my-calendar'));
1323
  $offset = (60*60*get_option('gmt_offset'));
 
1324
  // If we don't pass arguments we want a calendar that is relevant to today
1325
  if (empty($_GET['month']) || empty($_GET['yr'])) {
1326
  $c_year = date("Y",time()+($offset));
1327
  $c_month = date("m",time()+($offset));
1328
  $c_day = date("d",time()+($offset));
1329
  }
 
1330
  // Years get funny if we exceed 3000, so we use this check
1331
  if ($_GET['yr'] <= 3000 && $_GET['yr'] >= 0) {
1332
 
1389
  $my_calendar_body .= '<caption class="my-calendar-month">'.$name_months[(int)$c_month].' '.$c_year.$caption_text."</caption>\n";
1390
  } else {
1391
  if ( get_option('my_calendar_show_heading') == 'true' ) {
1392
+ $my_calendar_body .= "\n<h2 class=\"my-calendar-heading\">$category_label".__('Calendar','my-calendar')."</h2>\n";
 
 
 
 
 
 
1393
  }
1394
+ // determine which header text to show depending on number of months displayed;
1395
+ $my_calendar_body .= (get_option('my_calendar_show_months') <= 1)?'<h3 class="my-calendar-month">'.__('Events in','my-calendar').' '.$name_months[(int)$c_month].' '.$c_year.$caption_text."</h3>\n":'<h3 class="my-calendar-month">'.$name_months[(int)$c_month].'&thinsp;&ndash;&thinsp;'.$name_months[(int)$c_month+$num_months-1].' '.$c_year.$caption_text."</h3>\n";
1396
  $my_calendar_body .= '<div class="my-calendar-header">';
 
1397
  // We want to know if we should display the date switcher
1398
+ $my_calendar_body .= ( get_option('display_jump') == 'true' )?mc_build_date_switcher():'';
1399
 
 
 
 
 
 
1400
  $my_calendar_body .= '
1401
  <div class="my-calendar-nav">
1402
  <ul>
1407
  </div>';
1408
  }
1409
  // If in calendar format, print the headings of the days of the week
 
1410
  if ( $format == "calendar" || $format == "mini" ) {
1411
  $my_calendar_body .= "<thead>\n<tr>\n";
1412
  for ($i=0; $i<=6; $i++) {
1430
 
1431
  if ($go) {
1432
  // Colors again, this time for the day numbers
1433
+ $grabbed_events = my_calendar_grab_events($c_year,$c_month,$i,$category);
1434
+ $events_class = '';
1435
+ if (!count($grabbed_events)) {
1436
+ $events_class = ' no-events';
1437
+ $element = 'span';
1438
+ $trigger = '';
1439
+ } else {
1440
+ $events_class = ' has-events';
1441
+ if ($format == 'mini') {
1442
+ $element = 'a href="#"';
1443
+ $trigger = ' trigger';
1444
+ } else {
1445
  $element = 'span';
1446
  $trigger = '';
 
 
 
 
 
 
 
 
 
1447
  }
1448
+ }
1449
  if (get_option('start_of_week') == 0) {
1450
+ $my_calendar_body .= '<td class="'.(date("Ymd", mktime (0,0,0,$c_month,$i,$c_year))==date_i18n("Ymd",time()+$offset)?'current-day':'day-with-date').$events_class.'">'."\n <$element class='mc-date ".($ii<6&&$ii>0?"$trigger":"weekend$trigger")."'>".$i++."</$element>\n ". my_calendar_draw_events($grabbed_events, $format) . "\n</td>\n";
1451
  } else {
1452
+ $my_calendar_body .= '<td class="'.(date("Ymd", mktime (0,0,0,$c_month,$i,$c_year))==date_i18n("Ymd",time()+$offset)?'current-day':'day-with-date').$events_class.'">'."\n <$element class='mc-date ".($ii<5?"$trigger":"weekend$trigger'")."'>".$i++."</$element>\n ". my_calendar_draw_events($grabbed_events, $format) . "\n</td>\n";
1453
  }
1454
  } else {
1455
  $my_calendar_body .= "<td class='day-without-date'>&nbsp;</td>\n";
1460
  $my_calendar_body .= "\n</tbody>\n</table>";
1461
  } else if ($format == "list") {
1462
  $my_calendar_body .= "<ul id=\"calendar-list\">";
1463
+ // show calendar as list
1464
+ $date_format = ( get_option('my_calendar_date_format') != '' ) ? ( get_option('my_calendar_date_format') ) : ( get_option( 'date_format' ) );
 
 
 
1465
  $num_months = get_option('my_calendar_show_months');
1466
  $num_events = 0;
1467
  for ($m=0;$m<$num_months;$m++) {
1483
  $my_calendar_body .= "<li class='$class".(date("Ymd", mktime (0,0,0,$c_month,$i,$c_year))==date("Ymd",time()+($offset))?' current-day':'')."'><strong class=\"event-date\">$is_anchor".date_i18n($date_format,mktime(0,0,0,$c_month,$i,$c_year))."$is_close_anchor</strong>".my_calendar_draw_events($grabbed_events, $format)."</li>";
1484
  $num_events++;
1485
  }
1486
+ $class = (my_calendar_is_odd($num_events))?"odd":"even";
 
 
 
 
1487
  }
1488
  }
1489
  if ($num_events == 0) {
1548
  }
1549
  ');
1550
  }
 
 
1551
  ?>
my-calendar.pot CHANGED
@@ -1,4 +1,4 @@
1
- # Translation of the WordPress plugin My Calendar 1.4.3 by Joseph C Dolson.
2
  # Copyright (C) 2010 Joseph C Dolson
3
  # This file is distributed under the same license as the My Calendar package.
4
  # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
@@ -6,9 +6,9 @@
6
  #, fuzzy
7
  msgid ""
8
  msgstr ""
9
- "Project-Id-Version: My Calendar 1.4.3\n"
10
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/my-calendar\n"
11
- "POT-Creation-Date: 2010-08-03 17:58+0000\n"
12
  "PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,103 +16,108 @@ msgstr ""
16
  "Content-Type: text/plain; charset=utf-8\n"
17
  "Content-Transfer-Encoding: 8bit\n"
18
 
19
- #: my-calendar-categories.php:40
20
  msgid "Category added successfully"
21
  msgstr ""
22
 
23
- #: my-calendar-categories.php:46
24
- msgid "Category deleted successfully"
25
  msgstr ""
26
 
27
- #: my-calendar-categories.php:51 my-calendar-categories.php:66
28
- msgid "Edit Category"
29
  msgstr ""
30
 
31
- #: my-calendar-categories.php:58
32
- msgid "Category Editor"
33
  msgstr ""
34
 
35
- #: my-calendar-categories.php:67 my-calendar-categories.php:120
36
- #: my-calendar-categories.php:158
37
- msgid "Category Name"
38
  msgstr ""
39
 
40
- #: my-calendar-categories.php:68 my-calendar-categories.php:121
41
- msgid "Category Color (Hex format)"
42
  msgstr ""
43
 
44
- #: my-calendar-categories.php:69 my-calendar-categories.php:122
45
- #: my-calendar-categories.php:160
46
- msgid "Category Icon"
47
  msgstr ""
48
 
49
- #: my-calendar-categories.php:91 my-calendar-locations.php:82
50
- msgid "Save Changes"
51
  msgstr ""
52
 
53
- #: my-calendar-categories.php:101
54
- msgid "Category edited successfully"
55
  msgstr ""
56
 
57
- #: my-calendar-categories.php:107 my-calendar-categories.php:119
58
- #: my-calendar-categories.php:139
59
- msgid "Add Category"
60
  msgstr ""
61
 
62
- #: my-calendar-categories.php:111
63
- msgid "Add New Category"
 
 
 
 
 
 
 
 
64
  msgstr ""
65
 
66
- #: my-calendar-categories.php:145 my-calendar.php:169
67
  msgid "Manage Categories"
68
  msgstr ""
69
 
70
- #: my-calendar-categories.php:157 my-calendar-event-manager.php:836
71
- #: my-calendar-locations.php:171
72
  msgid "ID"
73
  msgstr ""
74
 
75
- #: my-calendar-categories.php:159
76
  msgid "Category Color"
77
  msgstr ""
78
 
79
- #: my-calendar-categories.php:161 my-calendar-categories.php:175
80
- #: my-calendar-event-manager.php:887 my-calendar-locations.php:173
81
- #: my-calendar-locations.php:185
82
  msgid "Edit"
83
  msgstr ""
84
 
85
- #: my-calendar-categories.php:162 my-calendar-categories.php:181
86
- #: my-calendar-event-manager.php:57 my-calendar-event-manager.php:887
87
- #: my-calendar-locations.php:174 my-calendar-locations.php:186
88
  msgid "Delete"
89
  msgstr ""
90
 
91
- #: my-calendar-categories.php:178 my-calendar-event-manager.php:873
92
- #: my-calendar-settings.php:209 my-calendar.php:710
93
  msgid "N/A"
94
  msgstr ""
95
 
96
- #: my-calendar-categories.php:181 my-calendar-locations.php:186
97
  msgid "Are you sure you want to delete this category?"
98
  msgstr ""
99
 
100
- #: my-calendar-categories.php:192
101
  msgid "There are no categories in the database - something has gone wrong!"
102
  msgstr ""
103
 
104
- #: my-calendar-event-manager.php:13 my-calendar-settings.php:249
105
  msgid ""
106
  "My Calendar has identified that you have the Calendar plugin by Kieran "
107
  "O'Shea installed. You can import those events and categories into the My "
108
  "Calendar database. Would you like to import these events?"
109
  msgstr ""
110
 
111
- #: my-calendar-event-manager.php:19 my-calendar-settings.php:255
112
  msgid "Import from Calendar"
113
  msgstr ""
114
 
115
- #: my-calendar-event-manager.php:24
116
  msgid ""
117
  "Although it is possible that this import could fail to import your events "
118
  "correctly, it should not have any impact on your existing Calendar database. "
@@ -120,413 +125,390 @@ msgid ""
120
  "\">please contact me</a>!"
121
  msgstr ""
122
 
123
- #: my-calendar-event-manager.php:52
124
  msgid "Delete Event"
125
  msgstr ""
126
 
127
- #: my-calendar-event-manager.php:52
128
  msgid "Are you sure you want to delete this event?"
129
  msgstr ""
130
 
131
- #: my-calendar-event-manager.php:65
132
  msgid "You do not have permission to delete that event."
133
  msgstr ""
134
 
135
- #: my-calendar-event-manager.php:156 my-calendar-event-manager.php:161
136
- #: my-calendar-event-manager.php:166 my-calendar-event-manager.php:176
137
- #: my-calendar-event-manager.php:184 my-calendar-event-manager.php:193
138
- #: my-calendar-event-manager.php:201 my-calendar-event-manager.php:239
139
- #: my-calendar-event-manager.php:368 my-calendar-event-manager.php:373
140
- #: my-calendar-event-manager.php:378 my-calendar-event-manager.php:388
141
- #: my-calendar-event-manager.php:396 my-calendar-event-manager.php:405
142
- #: my-calendar-event-manager.php:413 my-calendar-event-manager.php:498
143
- #: my-calendar-event-manager.php:513
144
  msgid "Error"
145
  msgstr ""
146
 
147
- #: my-calendar-event-manager.php:156 my-calendar-event-manager.php:368
148
- msgid ""
149
- "Your event end date must be either after or the same as your event begin date"
150
- msgstr ""
151
-
152
- #: my-calendar-event-manager.php:161 my-calendar-event-manager.php:373
153
- msgid ""
154
- "Your date formatting is correct but one or more of your dates is invalid. "
155
- "Check for number of days in month and leap year related errors."
156
- msgstr ""
157
-
158
- #: my-calendar-event-manager.php:166 my-calendar-event-manager.php:378
159
- msgid ""
160
- "Both start and end dates must be entered and be in the format YYYY-MM-DD"
161
  msgstr ""
162
 
163
- #: my-calendar-event-manager.php:176 my-calendar-event-manager.php:388
164
- msgid "The time field must either be blank or be entered in the format hh:mm"
165
- msgstr ""
166
-
167
- #: my-calendar-event-manager.php:184 my-calendar-event-manager.php:396
168
- msgid ""
169
- "The URL entered must either be prefixed with http:// or be completely blank"
170
- msgstr ""
171
-
172
- #: my-calendar-event-manager.php:193 my-calendar-event-manager.php:405
173
- msgid "The event title must be between 1 and 255 characters in length."
174
- msgstr ""
175
-
176
- #: my-calendar-event-manager.php:201 my-calendar-event-manager.php:413
177
- msgid ""
178
- "The repetition value must be 0 unless a type of recurrance is selected in "
179
- "which case the repetition value must be 0 or higher"
180
- msgstr ""
181
-
182
- #: my-calendar-event-manager.php:239
183
- msgid ""
184
- "An event with the details you submitted could not be found in the database. "
185
- "This may indicate a problem with your database or the way in which it is "
186
- "configured."
187
- msgstr ""
188
-
189
- #: my-calendar-event-manager.php:243
190
  msgid "Event added. It will now show in your calendar."
191
  msgstr ""
192
 
193
- #: my-calendar-event-manager.php:345 my-calendar-event-manager.php:451
194
- msgid "Failure"
195
- msgstr ""
196
-
197
- #: my-calendar-event-manager.php:345
198
- msgid "You can't update an event if you haven't submitted an event id"
199
  msgstr ""
200
 
201
- #: my-calendar-event-manager.php:451
202
- msgid "Your event was not updated."
203
  msgstr ""
204
 
205
- #: my-calendar-event-manager.php:455
206
  msgid "Event updated successfully"
207
  msgstr ""
208
 
209
- #: my-calendar-event-manager.php:489
210
  msgid "You do not have sufficient permissions to edit that event."
211
  msgstr ""
212
 
213
- #: my-calendar-event-manager.php:498
214
  msgid "You can't delete an event if you haven't submitted an event id"
215
  msgstr ""
216
 
217
- #: my-calendar-event-manager.php:509
218
  msgid "Event deleted successfully"
219
  msgstr ""
220
 
221
- #: my-calendar-event-manager.php:513
222
  msgid ""
223
  "Despite issuing a request to delete, the event still remains in the "
224
  "database. Please investigate."
225
  msgstr ""
226
 
227
- #: my-calendar-event-manager.php:531 my-calendar-event-manager.php:604
228
  msgid "Edit Event"
229
  msgstr ""
230
 
231
- #: my-calendar-event-manager.php:535
232
  msgid "You must provide an event id in order to edit it"
233
  msgstr ""
234
 
235
- #: my-calendar-event-manager.php:541
236
  msgid "Add Event"
237
  msgstr ""
238
 
239
- #: my-calendar-event-manager.php:546
240
  msgid "Manage Events"
241
  msgstr ""
242
 
243
- #: my-calendar-event-manager.php:580
244
  msgid "Sorry! That's an invalid event key."
245
  msgstr ""
246
 
247
- #: my-calendar-event-manager.php:585
248
  msgid "Sorry! We couldn't find an event with that ID."
249
  msgstr ""
250
 
251
- #: my-calendar-event-manager.php:604
252
  msgid "Add an Event"
253
  msgstr ""
254
 
255
- #: my-calendar-event-manager.php:613
256
  msgid "Enter your Event Information"
257
  msgstr ""
258
 
259
- #: my-calendar-event-manager.php:615
260
  msgid "Event Title"
261
  msgstr ""
262
 
263
- #: my-calendar-event-manager.php:618
264
  msgid ""
265
  "Event Description (<abbr title=\"hypertext markup language\">HTML</abbr> "
266
  "allowed)"
267
  msgstr ""
268
 
269
- #: my-calendar-event-manager.php:621
270
  msgid "Event Category"
271
  msgstr ""
272
 
273
- #: my-calendar-event-manager.php:640
274
  msgid "Event Link (Optional)"
275
  msgstr ""
276
 
277
- #: my-calendar-event-manager.php:640
278
  msgid "This link will expire when the event passes."
279
  msgstr ""
280
 
281
- #: my-calendar-event-manager.php:643
282
  msgid "Start Date (YYYY-MM-DD)"
283
  msgstr ""
284
 
285
- #: my-calendar-event-manager.php:646
286
  msgid "End Date (YYYY-MM-DD) (Optional)"
287
  msgstr ""
288
 
289
- #: my-calendar-event-manager.php:649
290
  msgid "Time (hh:mm)"
291
  msgstr ""
292
 
293
- #: my-calendar-event-manager.php:660
294
  msgid ""
295
  "Optional, set blank if your event is an all-day event or does not happen at "
296
  "a specific time."
297
  msgstr ""
298
 
299
- #: my-calendar-event-manager.php:660
300
  msgid "Current time difference from GMT is "
301
  msgstr ""
302
 
303
- #: my-calendar-event-manager.php:660
304
  msgid " hour(s)"
305
  msgstr ""
306
 
307
- #: my-calendar-event-manager.php:663
308
  msgid "End Time (hh:mm)"
309
  msgstr ""
310
 
311
- #: my-calendar-event-manager.php:674
312
  msgid ""
313
  "Optional. End times will not be displayed on events where this is not set."
314
  msgstr ""
315
 
316
- #: my-calendar-event-manager.php:678
317
  msgid "Recurring Events"
318
  msgstr ""
319
 
320
- #: my-calendar-event-manager.php:699
321
  msgid "Repeats for"
322
  msgstr ""
323
 
324
- #: my-calendar-event-manager.php:700
325
  msgid "Units"
326
  msgstr ""
327
 
328
- #: my-calendar-event-manager.php:701
329
  msgid "Does not recur"
330
  msgstr ""
331
 
332
- #: my-calendar-event-manager.php:702 my-calendar-event-manager.php:866
333
  msgid "Daily"
334
  msgstr ""
335
 
336
- #: my-calendar-event-manager.php:703 my-calendar-event-manager.php:867
337
  msgid "Weekly"
338
  msgstr ""
339
 
340
- #: my-calendar-event-manager.php:704
341
  msgid "Bi-weekly"
342
  msgstr ""
343
 
344
- #: my-calendar-event-manager.php:705 my-calendar-event-manager.php:869
345
  msgid "Monthly"
346
  msgstr ""
347
 
348
- #: my-calendar-event-manager.php:706
349
  msgid "Annually"
350
  msgstr ""
351
 
352
- #: my-calendar-event-manager.php:708
353
  msgid ""
354
  "Entering 0 means forever, if a unit is selected. If the recurrance unit is "
355
  "left at \"Does not recur,\" the event will not reoccur."
356
  msgstr ""
357
 
358
- #: my-calendar-event-manager.php:715 my-calendar-locations.php:44
359
- #: my-calendar-locations.php:113
 
 
 
360
  msgid ""
361
  "All location fields are optional: <em>insufficient information may result in "
362
  "an inaccurate map</em>."
363
  msgstr ""
364
 
365
- #: my-calendar-event-manager.php:721
366
  msgid "Choose a preset location:"
367
  msgstr ""
368
 
369
- #: my-calendar-event-manager.php:735
370
  msgid "Add recurring locations for later use."
371
  msgstr ""
372
 
373
- #: my-calendar-event-manager.php:740 my-calendar-locations.php:47
374
- #: my-calendar-locations.php:116
375
  msgid "Name of Location (e.g. <em>Joe's Bar and Grill</em>)"
376
  msgstr ""
377
 
378
- #: my-calendar-event-manager.php:743 my-calendar-locations.php:50
379
- #: my-calendar-locations.php:119
380
  msgid "Street Address"
381
  msgstr ""
382
 
383
- #: my-calendar-event-manager.php:746 my-calendar-locations.php:53
384
- #: my-calendar-locations.php:122
385
  msgid "Street Address (2)"
386
  msgstr ""
387
 
388
- #: my-calendar-event-manager.php:749 my-calendar-locations.php:56
389
- #: my-calendar-locations.php:125
390
  msgid "City"
391
  msgstr ""
392
 
393
- #: my-calendar-event-manager.php:749 my-calendar-locations.php:56
394
- #: my-calendar-locations.php:125
395
  msgid "State/Province"
396
  msgstr ""
397
 
398
- #: my-calendar-event-manager.php:749 my-calendar-locations.php:56
399
- #: my-calendar-locations.php:125
400
  msgid "Postal Code"
401
  msgstr ""
402
 
403
- #: my-calendar-event-manager.php:752 my-calendar-locations.php:59
404
- #: my-calendar-locations.php:128
405
  msgid "Country"
406
  msgstr ""
407
 
408
- #: my-calendar-event-manager.php:755 my-calendar-locations.php:62
409
- #: my-calendar-locations.php:131
410
  msgid "Initial Zoom"
411
  msgstr ""
412
 
413
- #: my-calendar-event-manager.php:757 my-calendar-locations.php:64
414
- #: my-calendar-locations.php:133
415
  msgid "Neighborhood"
416
  msgstr ""
417
 
418
- #: my-calendar-event-manager.php:758 my-calendar-locations.php:65
419
- #: my-calendar-locations.php:134
420
  msgid "Small City"
421
  msgstr ""
422
 
423
- #: my-calendar-event-manager.php:759 my-calendar-locations.php:66
424
- #: my-calendar-locations.php:135
425
  msgid "Large City"
426
  msgstr ""
427
 
428
- #: my-calendar-event-manager.php:760 my-calendar-locations.php:67
429
- #: my-calendar-locations.php:136
430
  msgid "Greater Metro Area"
431
  msgstr ""
432
 
433
- #: my-calendar-event-manager.php:761 my-calendar-locations.php:68
434
- #: my-calendar-locations.php:137
435
  msgid "State"
436
  msgstr ""
437
 
438
- #: my-calendar-event-manager.php:762 my-calendar-locations.php:69
439
- #: my-calendar-locations.php:138
440
  msgid "Region"
441
  msgstr ""
442
 
443
- #: my-calendar-event-manager.php:766 my-calendar-locations.php:73
444
- #: my-calendar-locations.php:142
445
  msgid "GPS Coordinates (optional)"
446
  msgstr ""
447
 
448
- #: my-calendar-event-manager.php:768 my-calendar-locations.php:75
449
- #: my-calendar-locations.php:144
450
  msgid ""
451
  "If you supply GPS coordinates for your location, they will be used in place "
452
  "of any other address information to pinpoint your location."
453
  msgstr ""
454
 
455
- #: my-calendar-event-manager.php:771 my-calendar-locations.php:78
456
- #: my-calendar-locations.php:147
457
  msgid "Longitude"
458
  msgstr ""
459
 
460
- #: my-calendar-event-manager.php:771 my-calendar-locations.php:78
461
- #: my-calendar-locations.php:147
462
  msgid "Latitude"
463
  msgstr ""
464
 
465
- #: my-calendar-event-manager.php:777
466
  msgid "Save Event"
467
  msgstr ""
468
 
469
- #: my-calendar-event-manager.php:837 my-calendar-widgets.php:37
470
  #: my-calendar-widgets.php:122
471
  msgid "Title"
472
  msgstr ""
473
 
474
- #: my-calendar-event-manager.php:838
475
  msgid "Link"
476
  msgstr ""
477
 
478
- #: my-calendar-event-manager.php:839 my-calendar-locations.php:172
479
  msgid "Location"
480
  msgstr ""
481
 
482
- #: my-calendar-event-manager.php:840
483
  msgid "Description"
484
  msgstr ""
485
 
486
- #: my-calendar-event-manager.php:841
487
  msgid "Start Date"
488
  msgstr ""
489
 
490
- #: my-calendar-event-manager.php:842
491
  msgid "Recurs"
492
  msgstr ""
493
 
494
- #: my-calendar-event-manager.php:843 my-calendar-settings.php:177
495
  msgid "Author"
496
  msgstr ""
497
 
498
- #: my-calendar-event-manager.php:844
499
  msgid "Category"
500
  msgstr ""
501
 
502
- #: my-calendar-event-manager.php:845
503
  msgid "Edit / Delete"
504
  msgstr ""
505
 
506
- #: my-calendar-event-manager.php:865
507
  msgid "Never"
508
  msgstr ""
509
 
510
- #: my-calendar-event-manager.php:868
511
  msgid "Bi-Weekly"
512
  msgstr ""
513
 
514
- #: my-calendar-event-manager.php:870
515
  msgid "Yearly"
516
  msgstr ""
517
 
518
- #: my-calendar-event-manager.php:874
519
  msgid "Forever"
520
  msgstr ""
521
 
522
- #: my-calendar-event-manager.php:875
523
  msgid "Times"
524
  msgstr ""
525
 
526
- #: my-calendar-event-manager.php:897
527
  msgid "There are no events in the database!"
528
  msgstr ""
529
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
530
  #: my-calendar-help.php:6
531
  msgid "How to use My Calendar"
532
  msgstr ""
@@ -702,43 +684,59 @@ msgid ""
702
  "information is available. If not, will be empty."
703
  msgstr ""
704
 
705
- #: my-calendar-locations.php:21
706
  msgid "Location added successfully"
707
  msgstr ""
708
 
709
- #: my-calendar-locations.php:25
710
- msgid "Location deleted successfully"
711
  msgstr ""
712
 
713
  #: my-calendar-locations.php:30
714
- msgid "Edit Location"
715
  msgstr ""
716
 
717
- #: my-calendar-locations.php:34
718
- msgid "Location Editor"
719
  msgstr ""
720
 
721
- #: my-calendar-locations.php:93
722
- msgid "Location edited successfully"
723
  msgstr ""
724
 
725
- #: my-calendar-locations.php:99 my-calendar-locations.php:151
726
- msgid "Add Location"
727
  msgstr ""
728
 
729
- #: my-calendar-locations.php:103
 
 
 
 
730
  msgid "Add New Location"
731
  msgstr ""
732
 
733
- #: my-calendar-locations.php:159 my-calendar.php:170
 
 
 
 
 
 
 
 
 
 
 
 
734
  msgid "Manage Locations"
735
  msgstr ""
736
 
737
- #: my-calendar-locations.php:194
738
  msgid "There are no locations in the database yet!"
739
  msgstr ""
740
 
741
- #: my-calendar-locations.php:198
742
  msgid ""
743
  "Please note: editing or deleting locations stored for re-use will have no "
744
  "effect on any event previously scheduled at that location. The location "
@@ -1063,189 +1061,189 @@ msgstr ""
1063
  msgid "There are no events currently scheduled."
1064
  msgstr ""
1065
 
1066
- #: my-calendar.php:52 my-calendar.php:171
1067
  msgid "Settings"
1068
  msgstr ""
1069
 
1070
- #: my-calendar.php:53 my-calendar.php:173
1071
  msgid "Help"
1072
  msgstr ""
1073
 
1074
- #: my-calendar.php:76
1075
  msgid "Get Support"
1076
  msgstr ""
1077
 
1078
- #: my-calendar.php:77 my-calendar.php:173
1079
  msgid "My Calendar Help"
1080
  msgstr ""
1081
 
1082
- #: my-calendar.php:78
1083
  msgid "Make a Donation"
1084
  msgstr ""
1085
 
1086
- #. #-#-#-#-# plugin.pot (My Calendar 1.4.3) #-#-#-#-#
1087
  #. Plugin Name of the plugin/theme
1088
- #: my-calendar.php:162
1089
  msgid "My Calendar"
1090
  msgstr ""
1091
 
1092
- #: my-calendar.php:165
1093
  msgid "Add/Edit Events"
1094
  msgstr ""
1095
 
1096
- #: my-calendar.php:172
1097
  msgid "Style Editor"
1098
  msgstr ""
1099
 
1100
- #: my-calendar.php:691
1101
  msgid "Event Details"
1102
  msgstr ""
1103
 
1104
- #: my-calendar.php:700
1105
  msgid "Close"
1106
  msgstr ""
1107
 
1108
- #: my-calendar.php:710
1109
  msgid "Not Applicable"
1110
  msgstr ""
1111
 
1112
- #: my-calendar.php:722
1113
  msgid "Posted by"
1114
  msgstr ""
1115
 
1116
- #: my-calendar.php:1287
1117
  msgid "Month"
1118
  msgstr ""
1119
 
1120
- #: my-calendar.php:1288 my-calendar.php:1372
1121
  msgid "January"
1122
  msgstr ""
1123
 
1124
- #: my-calendar.php:1289 my-calendar.php:1372
1125
  msgid "February"
1126
  msgstr ""
1127
 
1128
- #: my-calendar.php:1290 my-calendar.php:1372
1129
  msgid "March"
1130
  msgstr ""
1131
 
1132
- #: my-calendar.php:1291 my-calendar.php:1372
1133
  msgid "April"
1134
  msgstr ""
1135
 
1136
- #: my-calendar.php:1292 my-calendar.php:1372
1137
  msgid "May"
1138
  msgstr ""
1139
 
1140
- #: my-calendar.php:1293 my-calendar.php:1372
1141
  msgid "June"
1142
  msgstr ""
1143
 
1144
- #: my-calendar.php:1294 my-calendar.php:1372
1145
  msgid "July"
1146
  msgstr ""
1147
 
1148
- #: my-calendar.php:1295 my-calendar.php:1372
1149
  msgid "August"
1150
  msgstr ""
1151
 
1152
- #: my-calendar.php:1296 my-calendar.php:1372
1153
  msgid "September"
1154
  msgstr ""
1155
 
1156
- #: my-calendar.php:1297 my-calendar.php:1372
1157
  msgid "October"
1158
  msgstr ""
1159
 
1160
- #: my-calendar.php:1298 my-calendar.php:1372
1161
  msgid "November"
1162
  msgstr ""
1163
 
1164
- #: my-calendar.php:1299 my-calendar.php:1372
1165
  msgid "December"
1166
  msgstr ""
1167
 
1168
- #: my-calendar.php:1301
1169
  msgid "Year"
1170
  msgstr ""
1171
 
1172
- #: my-calendar.php:1326
1173
  msgid "Go"
1174
  msgstr ""
1175
 
1176
- #: my-calendar.php:1344
1177
  msgid "<abbr title=\"Sunday\">Sun</abbr>"
1178
  msgstr ""
1179
 
1180
- #: my-calendar.php:1345
1181
  msgid "<abbr title=\"Monday\">Mon</abbr>"
1182
  msgstr ""
1183
 
1184
- #: my-calendar.php:1346
1185
  msgid "<abbr title=\"Tuesday\">Tues</abbr>"
1186
  msgstr ""
1187
 
1188
- #: my-calendar.php:1347
1189
  msgid "<abbr title=\"Wednesday\">Wed</abbr>"
1190
  msgstr ""
1191
 
1192
- #: my-calendar.php:1348
1193
  msgid "<abbr title=\"Thursday\">Thur</abbr>"
1194
  msgstr ""
1195
 
1196
- #: my-calendar.php:1349
1197
  msgid "<abbr title=\"Friday\">Fri</abbr>"
1198
  msgstr ""
1199
 
1200
- #: my-calendar.php:1350
1201
  msgid "<abbr title=\"Saturday\">Sat</abbr>"
1202
  msgstr ""
1203
 
1204
- #: my-calendar.php:1355
1205
  msgid "<abbr title=\"Sunday\">S</abbr>"
1206
  msgstr ""
1207
 
1208
- #: my-calendar.php:1356
1209
  msgid "<abbr title=\"Monday\">M</abbr>"
1210
  msgstr ""
1211
 
1212
- #: my-calendar.php:1357
1213
  msgid "<abbr title=\"Tuesday\">T</abbr>"
1214
  msgstr ""
1215
 
1216
- #: my-calendar.php:1358
1217
  msgid "<abbr title=\"Wednesday\">W</abbr>"
1218
  msgstr ""
1219
 
1220
- #: my-calendar.php:1359
1221
  msgid "<abbr title=\"Thursday\">T</abbr>"
1222
  msgstr ""
1223
 
1224
- #: my-calendar.php:1360
1225
  msgid "<abbr title=\"Friday\">F</abbr>"
1226
  msgstr ""
1227
 
1228
- #: my-calendar.php:1361
1229
  msgid "<abbr title=\"Saturday\">S</abbr>"
1230
  msgstr ""
1231
 
1232
- #: my-calendar.php:1411
1233
  msgid "and"
1234
  msgstr ""
1235
 
1236
- #: my-calendar.php:1440 my-calendar.php:1444
1237
  msgid "Calendar"
1238
  msgstr ""
1239
 
1240
- #: my-calendar.php:1448
1241
  msgid "Events in"
1242
  msgstr ""
1243
 
1244
- #: my-calendar.php:1560
1245
  msgid "There are no events scheduled during this period."
1246
  msgstr ""
1247
 
1248
- #: my-calendar.php:1570
1249
  msgid "Category Key"
1250
  msgstr ""
1251
 
1
+ # Translation of the WordPress plugin My Calendar 1.4.5 by Joseph C Dolson.
2
  # Copyright (C) 2010 Joseph C Dolson
3
  # This file is distributed under the same license as the My Calendar package.
4
  # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
6
  #, fuzzy
7
  msgid ""
8
  msgstr ""
9
+ "Project-Id-Version: My Calendar 1.4.5\n"
10
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/my-calendar\n"
11
+ "POT-Creation-Date: 2010-08-12 18:38+0000\n"
12
  "PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
16
  "Content-Type: text/plain; charset=utf-8\n"
17
  "Content-Transfer-Encoding: 8bit\n"
18
 
19
+ #: my-calendar-categories.php:41
20
  msgid "Category added successfully"
21
  msgstr ""
22
 
23
+ #: my-calendar-categories.php:43
24
+ msgid "Category addition failed."
25
  msgstr ""
26
 
27
+ #: my-calendar-categories.php:53
28
+ msgid "Category deleted successfully. Categories in calendar updated."
29
  msgstr ""
30
 
31
+ #: my-calendar-categories.php:55
32
+ msgid "Category deleted successfully. Categories in calendar not updated."
33
  msgstr ""
34
 
35
+ #: my-calendar-categories.php:57
36
+ msgid "Category not deleted. Categories in calendar updated."
 
37
  msgstr ""
38
 
39
+ #: my-calendar-categories.php:66
40
+ msgid "Category edited successfully"
41
  msgstr ""
42
 
43
+ #: my-calendar-categories.php:88
44
+ msgid "Add Category"
 
45
  msgstr ""
46
 
47
+ #: my-calendar-categories.php:90 my-calendar-categories.php:112
48
+ msgid "Edit Category"
49
  msgstr ""
50
 
51
+ #: my-calendar-categories.php:97
52
+ msgid "Category Editor"
53
  msgstr ""
54
 
55
+ #: my-calendar-categories.php:113 my-calendar-categories.php:156
56
+ msgid "Category Name"
 
57
  msgstr ""
58
 
59
+ #: my-calendar-categories.php:114
60
+ msgid "Category Color (Hex format)"
61
+ msgstr ""
62
+
63
+ #: my-calendar-categories.php:115 my-calendar-categories.php:158
64
+ msgid "Category Icon"
65
+ msgstr ""
66
+
67
+ #: my-calendar-categories.php:130 my-calendar-locations.php:123
68
+ msgid "Save Changes"
69
  msgstr ""
70
 
71
+ #: my-calendar-categories.php:143 my-calendar.php:175
72
  msgid "Manage Categories"
73
  msgstr ""
74
 
75
+ #: my-calendar-categories.php:155 my-calendar-event-manager.php:469
76
+ #: my-calendar-locations.php:149
77
  msgid "ID"
78
  msgstr ""
79
 
80
+ #: my-calendar-categories.php:157
81
  msgid "Category Color"
82
  msgstr ""
83
 
84
+ #: my-calendar-categories.php:159 my-calendar-categories.php:173
85
+ #: my-calendar-event-manager.php:528 my-calendar-locations.php:151
86
+ #: my-calendar-locations.php:163
87
  msgid "Edit"
88
  msgstr ""
89
 
90
+ #: my-calendar-categories.php:160 my-calendar-categories.php:179
91
+ #: my-calendar-event-manager.php:53 my-calendar-event-manager.php:528
92
+ #: my-calendar-locations.php:152 my-calendar-locations.php:164
93
  msgid "Delete"
94
  msgstr ""
95
 
96
+ #: my-calendar-categories.php:176 my-calendar-event-manager.php:510
97
+ #: my-calendar-settings.php:209 my-calendar.php:680
98
  msgid "N/A"
99
  msgstr ""
100
 
101
+ #: my-calendar-categories.php:179 my-calendar-locations.php:164
102
  msgid "Are you sure you want to delete this category?"
103
  msgstr ""
104
 
105
+ #: my-calendar-categories.php:190
106
  msgid "There are no categories in the database - something has gone wrong!"
107
  msgstr ""
108
 
109
+ #: my-calendar-event-manager.php:11 my-calendar-settings.php:249
110
  msgid ""
111
  "My Calendar has identified that you have the Calendar plugin by Kieran "
112
  "O'Shea installed. You can import those events and categories into the My "
113
  "Calendar database. Would you like to import these events?"
114
  msgstr ""
115
 
116
+ #: my-calendar-event-manager.php:17 my-calendar-settings.php:255
117
  msgid "Import from Calendar"
118
  msgstr ""
119
 
120
+ #: my-calendar-event-manager.php:22
121
  msgid ""
122
  "Although it is possible that this import could fail to import your events "
123
  "correctly, it should not have any impact on your existing Calendar database. "
125
  "\">please contact me</a>!"
126
  msgstr ""
127
 
128
+ #: my-calendar-event-manager.php:48
129
  msgid "Delete Event"
130
  msgstr ""
131
 
132
+ #: my-calendar-event-manager.php:48
133
  msgid "Are you sure you want to delete this event?"
134
  msgstr ""
135
 
136
+ #: my-calendar-event-manager.php:61
137
  msgid "You do not have permission to delete that event."
138
  msgstr ""
139
 
140
+ #: my-calendar-event-manager.php:85 my-calendar-event-manager.php:105
141
+ #: my-calendar-event-manager.php:129 my-calendar-event-manager.php:144
142
+ #: my-calendar-event-manager.php:630 my-calendar-event-manager.php:635
143
+ #: my-calendar-event-manager.php:640 my-calendar-event-manager.php:652
144
+ #: my-calendar-event-manager.php:662 my-calendar-event-manager.php:670
145
+ #: my-calendar-event-manager.php:679 my-calendar-event-manager.php:687
 
 
 
146
  msgid "Error"
147
  msgstr ""
148
 
149
+ #: my-calendar-event-manager.php:85
150
+ msgid "I'm sorry! I couldn'd add that event to the database."
 
 
 
 
 
 
 
 
 
 
 
 
151
  msgstr ""
152
 
153
+ #: my-calendar-event-manager.php:89
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
154
  msgid "Event added. It will now show in your calendar."
155
  msgstr ""
156
 
157
+ #: my-calendar-event-manager.php:105
158
+ msgid "Your event was not updated."
 
 
 
 
159
  msgstr ""
160
 
161
+ #: my-calendar-event-manager.php:109
162
+ msgid "Nothing was changed in that update."
163
  msgstr ""
164
 
165
+ #: my-calendar-event-manager.php:113
166
  msgid "Event updated successfully"
167
  msgstr ""
168
 
169
+ #: my-calendar-event-manager.php:119
170
  msgid "You do not have sufficient permissions to edit that event."
171
  msgstr ""
172
 
173
+ #: my-calendar-event-manager.php:129
174
  msgid "You can't delete an event if you haven't submitted an event id"
175
  msgstr ""
176
 
177
+ #: my-calendar-event-manager.php:140
178
  msgid "Event deleted successfully"
179
  msgstr ""
180
 
181
+ #: my-calendar-event-manager.php:144
182
  msgid ""
183
  "Despite issuing a request to delete, the event still remains in the "
184
  "database. Please investigate."
185
  msgstr ""
186
 
187
+ #: my-calendar-event-manager.php:163 my-calendar-event-manager.php:236
188
  msgid "Edit Event"
189
  msgstr ""
190
 
191
+ #: my-calendar-event-manager.php:167
192
  msgid "You must provide an event id in order to edit it"
193
  msgstr ""
194
 
195
+ #: my-calendar-event-manager.php:173
196
  msgid "Add Event"
197
  msgstr ""
198
 
199
+ #: my-calendar-event-manager.php:178
200
  msgid "Manage Events"
201
  msgstr ""
202
 
203
+ #: my-calendar-event-manager.php:212
204
  msgid "Sorry! That's an invalid event key."
205
  msgstr ""
206
 
207
+ #: my-calendar-event-manager.php:217
208
  msgid "Sorry! We couldn't find an event with that ID."
209
  msgstr ""
210
 
211
+ #: my-calendar-event-manager.php:236
212
  msgid "Add an Event"
213
  msgstr ""
214
 
215
+ #: my-calendar-event-manager.php:245
216
  msgid "Enter your Event Information"
217
  msgstr ""
218
 
219
+ #: my-calendar-event-manager.php:247
220
  msgid "Event Title"
221
  msgstr ""
222
 
223
+ #: my-calendar-event-manager.php:250
224
  msgid ""
225
  "Event Description (<abbr title=\"hypertext markup language\">HTML</abbr> "
226
  "allowed)"
227
  msgstr ""
228
 
229
+ #: my-calendar-event-manager.php:253
230
  msgid "Event Category"
231
  msgstr ""
232
 
233
+ #: my-calendar-event-manager.php:272
234
  msgid "Event Link (Optional)"
235
  msgstr ""
236
 
237
+ #: my-calendar-event-manager.php:272
238
  msgid "This link will expire when the event passes."
239
  msgstr ""
240
 
241
+ #: my-calendar-event-manager.php:275
242
  msgid "Start Date (YYYY-MM-DD)"
243
  msgstr ""
244
 
245
+ #: my-calendar-event-manager.php:278
246
  msgid "End Date (YYYY-MM-DD) (Optional)"
247
  msgstr ""
248
 
249
+ #: my-calendar-event-manager.php:281
250
  msgid "Time (hh:mm)"
251
  msgstr ""
252
 
253
+ #: my-calendar-event-manager.php:293
254
  msgid ""
255
  "Optional, set blank if your event is an all-day event or does not happen at "
256
  "a specific time."
257
  msgstr ""
258
 
259
+ #: my-calendar-event-manager.php:293
260
  msgid "Current time difference from GMT is "
261
  msgstr ""
262
 
263
+ #: my-calendar-event-manager.php:293
264
  msgid " hour(s)"
265
  msgstr ""
266
 
267
+ #: my-calendar-event-manager.php:296
268
  msgid "End Time (hh:mm)"
269
  msgstr ""
270
 
271
+ #: my-calendar-event-manager.php:307
272
  msgid ""
273
  "Optional. End times will not be displayed on events where this is not set."
274
  msgstr ""
275
 
276
+ #: my-calendar-event-manager.php:311
277
  msgid "Recurring Events"
278
  msgstr ""
279
 
280
+ #: my-calendar-event-manager.php:332
281
  msgid "Repeats for"
282
  msgstr ""
283
 
284
+ #: my-calendar-event-manager.php:333
285
  msgid "Units"
286
  msgstr ""
287
 
288
+ #: my-calendar-event-manager.php:334
289
  msgid "Does not recur"
290
  msgstr ""
291
 
292
+ #: my-calendar-event-manager.php:335 my-calendar-event-manager.php:503
293
  msgid "Daily"
294
  msgstr ""
295
 
296
+ #: my-calendar-event-manager.php:336 my-calendar-event-manager.php:504
297
  msgid "Weekly"
298
  msgstr ""
299
 
300
+ #: my-calendar-event-manager.php:337
301
  msgid "Bi-weekly"
302
  msgstr ""
303
 
304
+ #: my-calendar-event-manager.php:338 my-calendar-event-manager.php:506
305
  msgid "Monthly"
306
  msgstr ""
307
 
308
+ #: my-calendar-event-manager.php:339
309
  msgid "Annually"
310
  msgstr ""
311
 
312
+ #: my-calendar-event-manager.php:341
313
  msgid ""
314
  "Entering 0 means forever, if a unit is selected. If the recurrance unit is "
315
  "left at \"Does not recur,\" the event will not reoccur."
316
  msgstr ""
317
 
318
+ #: my-calendar-event-manager.php:346 my-calendar-locations.php:83
319
+ msgid "Event Location"
320
+ msgstr ""
321
+
322
+ #: my-calendar-event-manager.php:348 my-calendar-locations.php:85
323
  msgid ""
324
  "All location fields are optional: <em>insufficient information may result in "
325
  "an inaccurate map</em>."
326
  msgstr ""
327
 
328
+ #: my-calendar-event-manager.php:354
329
  msgid "Choose a preset location:"
330
  msgstr ""
331
 
332
+ #: my-calendar-event-manager.php:368
333
  msgid "Add recurring locations for later use."
334
  msgstr ""
335
 
336
+ #: my-calendar-event-manager.php:373 my-calendar-locations.php:88
 
337
  msgid "Name of Location (e.g. <em>Joe's Bar and Grill</em>)"
338
  msgstr ""
339
 
340
+ #: my-calendar-event-manager.php:376 my-calendar-locations.php:91
 
341
  msgid "Street Address"
342
  msgstr ""
343
 
344
+ #: my-calendar-event-manager.php:379 my-calendar-locations.php:94
 
345
  msgid "Street Address (2)"
346
  msgstr ""
347
 
348
+ #: my-calendar-event-manager.php:382 my-calendar-locations.php:97
 
349
  msgid "City"
350
  msgstr ""
351
 
352
+ #: my-calendar-event-manager.php:382 my-calendar-locations.php:97
 
353
  msgid "State/Province"
354
  msgstr ""
355
 
356
+ #: my-calendar-event-manager.php:382 my-calendar-locations.php:97
 
357
  msgid "Postal Code"
358
  msgstr ""
359
 
360
+ #: my-calendar-event-manager.php:385 my-calendar-locations.php:100
 
361
  msgid "Country"
362
  msgstr ""
363
 
364
+ #: my-calendar-event-manager.php:388 my-calendar-locations.php:103
 
365
  msgid "Initial Zoom"
366
  msgstr ""
367
 
368
+ #: my-calendar-event-manager.php:390 my-calendar-locations.php:105
 
369
  msgid "Neighborhood"
370
  msgstr ""
371
 
372
+ #: my-calendar-event-manager.php:391 my-calendar-locations.php:106
 
373
  msgid "Small City"
374
  msgstr ""
375
 
376
+ #: my-calendar-event-manager.php:392 my-calendar-locations.php:107
 
377
  msgid "Large City"
378
  msgstr ""
379
 
380
+ #: my-calendar-event-manager.php:393 my-calendar-locations.php:108
 
381
  msgid "Greater Metro Area"
382
  msgstr ""
383
 
384
+ #: my-calendar-event-manager.php:394 my-calendar-locations.php:109
 
385
  msgid "State"
386
  msgstr ""
387
 
388
+ #: my-calendar-event-manager.php:395 my-calendar-locations.php:110
 
389
  msgid "Region"
390
  msgstr ""
391
 
392
+ #: my-calendar-event-manager.php:399 my-calendar-locations.php:114
 
393
  msgid "GPS Coordinates (optional)"
394
  msgstr ""
395
 
396
+ #: my-calendar-event-manager.php:401 my-calendar-locations.php:116
 
397
  msgid ""
398
  "If you supply GPS coordinates for your location, they will be used in place "
399
  "of any other address information to pinpoint your location."
400
  msgstr ""
401
 
402
+ #: my-calendar-event-manager.php:404 my-calendar-locations.php:119
 
403
  msgid "Longitude"
404
  msgstr ""
405
 
406
+ #: my-calendar-event-manager.php:404 my-calendar-locations.php:119
 
407
  msgid "Latitude"
408
  msgstr ""
409
 
410
+ #: my-calendar-event-manager.php:410
411
  msgid "Save Event"
412
  msgstr ""
413
 
414
+ #: my-calendar-event-manager.php:470 my-calendar-widgets.php:37
415
  #: my-calendar-widgets.php:122
416
  msgid "Title"
417
  msgstr ""
418
 
419
+ #: my-calendar-event-manager.php:471
420
  msgid "Link"
421
  msgstr ""
422
 
423
+ #: my-calendar-event-manager.php:472 my-calendar-locations.php:150
424
  msgid "Location"
425
  msgstr ""
426
 
427
+ #: my-calendar-event-manager.php:473
428
  msgid "Description"
429
  msgstr ""
430
 
431
+ #: my-calendar-event-manager.php:474
432
  msgid "Start Date"
433
  msgstr ""
434
 
435
+ #: my-calendar-event-manager.php:475
436
  msgid "Recurs"
437
  msgstr ""
438
 
439
+ #: my-calendar-event-manager.php:476 my-calendar-settings.php:177
440
  msgid "Author"
441
  msgstr ""
442
 
443
+ #: my-calendar-event-manager.php:477
444
  msgid "Category"
445
  msgstr ""
446
 
447
+ #: my-calendar-event-manager.php:478
448
  msgid "Edit / Delete"
449
  msgstr ""
450
 
451
+ #: my-calendar-event-manager.php:502
452
  msgid "Never"
453
  msgstr ""
454
 
455
+ #: my-calendar-event-manager.php:505
456
  msgid "Bi-Weekly"
457
  msgstr ""
458
 
459
+ #: my-calendar-event-manager.php:507
460
  msgid "Yearly"
461
  msgstr ""
462
 
463
+ #: my-calendar-event-manager.php:511
464
  msgid "Forever"
465
  msgstr ""
466
 
467
+ #: my-calendar-event-manager.php:512
468
  msgid "Times"
469
  msgstr ""
470
 
471
+ #: my-calendar-event-manager.php:538
472
  msgid "There are no events in the database!"
473
  msgstr ""
474
 
475
+ #: my-calendar-event-manager.php:630
476
+ msgid ""
477
+ "Your event end date must be either after or the same as your event begin date"
478
+ msgstr ""
479
+
480
+ #: my-calendar-event-manager.php:635
481
+ msgid ""
482
+ "Your date formatting is correct but one or more of your dates is invalid. "
483
+ "Check for number of days in month and leap year related errors."
484
+ msgstr ""
485
+
486
+ #: my-calendar-event-manager.php:640
487
+ msgid "Both start and end dates must be in the format YYYY-MM-DD"
488
+ msgstr ""
489
+
490
+ #: my-calendar-event-manager.php:652
491
+ msgid "The time field must either be blank or be entered in the format hh:mm"
492
+ msgstr ""
493
+
494
+ #: my-calendar-event-manager.php:662
495
+ msgid ""
496
+ "The end time field must either be blank or be entered in the format hh:mm"
497
+ msgstr ""
498
+
499
+ #: my-calendar-event-manager.php:670
500
+ msgid ""
501
+ "The URL entered must either be prefixed with http:// or be completely blank"
502
+ msgstr ""
503
+
504
+ #: my-calendar-event-manager.php:679
505
+ msgid "The event title must be between 1 and 255 characters in length."
506
+ msgstr ""
507
+
508
+ #: my-calendar-event-manager.php:687
509
+ msgid "The repetition value must be 0 unless a type of recurrance is selected."
510
+ msgstr ""
511
+
512
  #: my-calendar-help.php:6
513
  msgid "How to use My Calendar"
514
  msgstr ""
684
  "information is available. If not, will be empty."
685
  msgstr ""
686
 
687
+ #: my-calendar-locations.php:22
688
  msgid "Location added successfully"
689
  msgstr ""
690
 
691
+ #: my-calendar-locations.php:24
692
+ msgid "Location could not be added to database"
693
  msgstr ""
694
 
695
  #: my-calendar-locations.php:30
696
+ msgid "Location deleted successfully"
697
  msgstr ""
698
 
699
+ #: my-calendar-locations.php:32
700
+ msgid "Location could not be deleted"
701
  msgstr ""
702
 
703
+ #: my-calendar-locations.php:44
704
+ msgid "Location could not be edited."
705
  msgstr ""
706
 
707
+ #: my-calendar-locations.php:46
708
+ msgid "Location was not changed."
709
  msgstr ""
710
 
711
+ #: my-calendar-locations.php:48
712
+ msgid "Location edited successfully"
713
+ msgstr ""
714
+
715
+ #: my-calendar-locations.php:61
716
  msgid "Add New Location"
717
  msgstr ""
718
 
719
+ #: my-calendar-locations.php:63
720
+ msgid "Edit Location"
721
+ msgstr ""
722
+
723
+ #: my-calendar-locations.php:68
724
+ msgid "Location Editor"
725
+ msgstr ""
726
+
727
+ #: my-calendar-locations.php:123
728
+ msgid "Add Location"
729
+ msgstr ""
730
+
731
+ #: my-calendar-locations.php:137 my-calendar.php:176
732
  msgid "Manage Locations"
733
  msgstr ""
734
 
735
+ #: my-calendar-locations.php:172
736
  msgid "There are no locations in the database yet!"
737
  msgstr ""
738
 
739
+ #: my-calendar-locations.php:176
740
  msgid ""
741
  "Please note: editing or deleting locations stored for re-use will have no "
742
  "effect on any event previously scheduled at that location. The location "
1061
  msgid "There are no events currently scheduled."
1062
  msgstr ""
1063
 
1064
+ #: my-calendar.php:56 my-calendar.php:177
1065
  msgid "Settings"
1066
  msgstr ""
1067
 
1068
+ #: my-calendar.php:57 my-calendar.php:179
1069
  msgid "Help"
1070
  msgstr ""
1071
 
1072
+ #: my-calendar.php:81
1073
  msgid "Get Support"
1074
  msgstr ""
1075
 
1076
+ #: my-calendar.php:82 my-calendar.php:179
1077
  msgid "My Calendar Help"
1078
  msgstr ""
1079
 
1080
+ #: my-calendar.php:83
1081
  msgid "Make a Donation"
1082
  msgstr ""
1083
 
1084
+ #. #-#-#-#-# plugin.pot (My Calendar 1.4.5) #-#-#-#-#
1085
  #. Plugin Name of the plugin/theme
1086
+ #: my-calendar.php:168
1087
  msgid "My Calendar"
1088
  msgstr ""
1089
 
1090
+ #: my-calendar.php:171
1091
  msgid "Add/Edit Events"
1092
  msgstr ""
1093
 
1094
+ #: my-calendar.php:178
1095
  msgid "Style Editor"
1096
  msgstr ""
1097
 
1098
+ #: my-calendar.php:661
1099
  msgid "Event Details"
1100
  msgstr ""
1101
 
1102
+ #: my-calendar.php:670
1103
  msgid "Close"
1104
  msgstr ""
1105
 
1106
+ #: my-calendar.php:680
1107
  msgid "Not Applicable"
1108
  msgstr ""
1109
 
1110
+ #: my-calendar.php:692
1111
  msgid "Posted by"
1112
  msgstr ""
1113
 
1114
+ #: my-calendar.php:1218
1115
  msgid "Month"
1116
  msgstr ""
1117
 
1118
+ #: my-calendar.php:1219 my-calendar.php:1305
1119
  msgid "January"
1120
  msgstr ""
1121
 
1122
+ #: my-calendar.php:1220 my-calendar.php:1305
1123
  msgid "February"
1124
  msgstr ""
1125
 
1126
+ #: my-calendar.php:1221 my-calendar.php:1305
1127
  msgid "March"
1128
  msgstr ""
1129
 
1130
+ #: my-calendar.php:1222 my-calendar.php:1305
1131
  msgid "April"
1132
  msgstr ""
1133
 
1134
+ #: my-calendar.php:1223 my-calendar.php:1305
1135
  msgid "May"
1136
  msgstr ""
1137
 
1138
+ #: my-calendar.php:1224 my-calendar.php:1305
1139
  msgid "June"
1140
  msgstr ""
1141
 
1142
+ #: my-calendar.php:1225 my-calendar.php:1305
1143
  msgid "July"
1144
  msgstr ""
1145
 
1146
+ #: my-calendar.php:1226 my-calendar.php:1305
1147
  msgid "August"
1148
  msgstr ""
1149
 
1150
+ #: my-calendar.php:1227 my-calendar.php:1305
1151
  msgid "September"
1152
  msgstr ""
1153
 
1154
+ #: my-calendar.php:1228 my-calendar.php:1305
1155
  msgid "October"
1156
  msgstr ""
1157
 
1158
+ #: my-calendar.php:1229 my-calendar.php:1305
1159
  msgid "November"
1160
  msgstr ""
1161
 
1162
+ #: my-calendar.php:1230 my-calendar.php:1305
1163
  msgid "December"
1164
  msgstr ""
1165
 
1166
+ #: my-calendar.php:1232
1167
  msgid "Year"
1168
  msgstr ""
1169
 
1170
+ #: my-calendar.php:1257
1171
  msgid "Go"
1172
  msgstr ""
1173
 
1174
+ #: my-calendar.php:1279
1175
  msgid "<abbr title=\"Sunday\">Sun</abbr>"
1176
  msgstr ""
1177
 
1178
+ #: my-calendar.php:1280
1179
  msgid "<abbr title=\"Monday\">Mon</abbr>"
1180
  msgstr ""
1181
 
1182
+ #: my-calendar.php:1281
1183
  msgid "<abbr title=\"Tuesday\">Tues</abbr>"
1184
  msgstr ""
1185
 
1186
+ #: my-calendar.php:1282
1187
  msgid "<abbr title=\"Wednesday\">Wed</abbr>"
1188
  msgstr ""
1189
 
1190
+ #: my-calendar.php:1283
1191
  msgid "<abbr title=\"Thursday\">Thur</abbr>"
1192
  msgstr ""
1193
 
1194
+ #: my-calendar.php:1284
1195
  msgid "<abbr title=\"Friday\">Fri</abbr>"
1196
  msgstr ""
1197
 
1198
+ #: my-calendar.php:1285
1199
  msgid "<abbr title=\"Saturday\">Sat</abbr>"
1200
  msgstr ""
1201
 
1202
+ #: my-calendar.php:1290
1203
  msgid "<abbr title=\"Sunday\">S</abbr>"
1204
  msgstr ""
1205
 
1206
+ #: my-calendar.php:1291
1207
  msgid "<abbr title=\"Monday\">M</abbr>"
1208
  msgstr ""
1209
 
1210
+ #: my-calendar.php:1292
1211
  msgid "<abbr title=\"Tuesday\">T</abbr>"
1212
  msgstr ""
1213
 
1214
+ #: my-calendar.php:1293
1215
  msgid "<abbr title=\"Wednesday\">W</abbr>"
1216
  msgstr ""
1217
 
1218
+ #: my-calendar.php:1294
1219
  msgid "<abbr title=\"Thursday\">T</abbr>"
1220
  msgstr ""
1221
 
1222
+ #: my-calendar.php:1295
1223
  msgid "<abbr title=\"Friday\">F</abbr>"
1224
  msgstr ""
1225
 
1226
+ #: my-calendar.php:1296
1227
  msgid "<abbr title=\"Saturday\">S</abbr>"
1228
  msgstr ""
1229
 
1230
+ #: my-calendar.php:1342
1231
  msgid "and"
1232
  msgstr ""
1233
 
1234
+ #: my-calendar.php:1371 my-calendar.php:1375
1235
  msgid "Calendar"
1236
  msgstr ""
1237
 
1238
+ #: my-calendar.php:1378
1239
  msgid "Events in"
1240
  msgstr ""
1241
 
1242
+ #: my-calendar.php:1473
1243
  msgid "There are no events scheduled during this period."
1244
  msgstr ""
1245
 
1246
+ #: my-calendar.php:1483
1247
  msgid "Category Key"
1248
  msgstr ""
1249
 
readme.txt CHANGED
@@ -47,6 +47,7 @@ Languages available:
47
  * American English (Default)
48
  * Brazilian Portuguese ([Daniel Prata](daniel@grudaemmim.com.br))
49
  * Spanish ([Esteban Truelsegaard](http://www.netmdp.com))
 
50
 
51
  == Installation ==
52
 
@@ -69,6 +70,31 @@ Languages available:
69
 
70
  == Changelog ==
71
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
72
  = 1.4.3 =
73
 
74
  * Fixed a bug where event end times were displaying the start time instead when editing.
47
  * American English (Default)
48
  * Brazilian Portuguese ([Daniel Prata](daniel@grudaemmim.com.br))
49
  * Spanish ([Esteban Truelsegaard](http://www.netmdp.com))
50
+ * Danish ([Jakob Smith](http://www.omkalfatring.dk/))
51
 
52
  == Installation ==
53
 
70
 
71
  == Changelog ==
72
 
73
+ = 1.4.6 =
74
+
75
+ * Fixed: Flash of unstyled content prevention scripts weren't disabled when other scripting was disabled.
76
+ * Fixed: Categories which started with numerals couldn't have custom styles.
77
+ * Fixed: Locations required valid 0 float value to save records on some servers; now supplied by default.
78
+
79
+ = 1.4.5 =
80
+
81
+ * Fixed a bug with editing and adding locations
82
+ * Fixed a bug with error messages when adding categories
83
+ * Fixed a bug with identification of current day (again?)
84
+ * Added Danish translation (Thanks to Jakob Smith)
85
+
86
+ = 1.4.4 =
87
+
88
+ * Fixed a bug where event end times tags were not rendered when blank in widget templates
89
+ * Fixed a bug with event adding and updating for Windows IIS
90
+ * Fixed a bug with international characters
91
+ * Reduced number of SQL queries made.
92
+ * Moved JavaScript output to footer.
93
+ * Improved error messages.
94
+ * Significant edits to basic codebase to improve efficiency.
95
+ * Fixed bug where full default styles didn't initially load on new installs.
96
+ * Re-organized default styles to make it easier for users to customize colors.
97
+
98
  = 1.4.3 =
99
 
100
  * Fixed a bug where event end times were displaying the start time instead when editing.