You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
educoder/public/admin/Coco/assets/libs/bootstrap-calendar/js/bic_calendar.min.js

9 lines
6.0 KiB

/*
* Bic Calendar - v3.1.2
* A simple twitter bootstrap calendar / agenda to mark events and select range of dates.
* http://bichotll.github.io/bic_calendar
*
* Made by bichotll
* Under Apache License
*/
$.fn.bic_calendar=function(a){var b=$.extend({},$.fn.bic_calendar.defaults,a);return this.each(function(){function a(){n=$('<table class="table">'),d();var a=new Date,b=a.getMonth(),f=a.getFullYear();e(b,f);var g=$('<td><a href="#" class="button-month-next"><i class="fa fa-angle-right" ></i></a></td>');g.click(function(a){a.preventDefault(),b=(b+1)%12,0==b&&f++,c(b,f)});var h=$('<td><a href="#" class="button-month-previous"><i class="fa fa-angle-left" ></i></a></td>');h.click(function(a){a.preventDefault(),b-=1,-1==b&&(f--,b=11),c(b,f)});var j=$('<td><a href="#" class="button-year-next"><i class="fa fa-angle-right" ></i></a></td>');j.click(function(a){a.preventDefault(),f++,c(b,f)});var l=$('<td><a href="#" class="button-year-previous"><i class="fa fa-angle-left" ></i></a></td>');l.click(function(a){a.preventDefault(),f--,c(b,f)});var o=$('<table class="table header"></table>');if(C===!0){var t=$("<tr></tr>"),u=$('<td colspan=5 class="monthAndYear span6"></td>');t.append(l),t.append(u),t.append(j),u.append(r),o.append(t)}if(B===!0){var v=$("<tr></tr>"),w=$('<td colspan=5 class="monthAndYear span6"></td>');v.append(h),v.append(w),v.append(g),w.append(q),o.append(v)}m=$('<div class="bic_calendar row" id="'+s+'" ></div>'),m.prepend(o),m.append(n),p.append(m),i(b,f),k()}function c(a,b){n.empty(),d(),e(a,b),i(a,b),l()}function d(){if(0!=v){var a=$('<tr class="days-month" >'),b="";$(o).each(function(a,c){b+="<td",0==a&&(b+=' class="first"'),6==a&&(b+=' class="sunday last"'),b+=">"+c+"</td>"}),b+="</tr>",a.append(b),n.append(a)}}function e(a,b){q.text(u[a]),r.text(b);for(var c=1,d=f(1,a,b),e=h(a,b),g=a+1,i="",j=0;7>j;j++){if(d>j){var k="";0==j&&(k+="<tr>"),k+='<td class="invalid-day week-day-'+j+'"',k+='"></td>'}else{var k="";0==j&&(k+="<tr>"),k+='<td id="'+s+"_"+c+"_"+g+"_"+b+'" data-date="'+g+"/"+c+"/"+b+'" ',k+=' class="day week-day-'+j+'"',k+="><div><a>"+c+"</a></div></span>",6==j&&(k+="</tr>"),c++}i+=k}for(var l=1;e>=c;){var k="";l%7==1&&(k+="<tr>"),k+='<td id="'+s+"_"+c+"_"+g+"_"+b+'" data-date="'+g+"/"+c+"/"+b+'" ',k+=' class="day week-day-'+(l-1)%7+'"',k+="><div><a>"+c+"</a></div></td>",l%7==0&&(k+="</tr>"),c++,l++,i+=k}if(l--,l%7!=0){k="";for(var j=l%7+1;7>=j;j++){var k="";k+="<td ",k+=' class="invalid-day week-day-'+(j-1)+'"',k+='"></td>',7==j&&(k+="</tr>"),i+=k}}n.append(i)}function f(a,b,c){var d=new Date(c,b,a),e=d.getDay();return e+=D,0==e?e=6:e--,e}function g(a,b,c){return a>0&&13>a&&c>0&&32768>c&&b>0&&b<=new Date(c,a,0).getDate()}function h(a,b){for(var c=28;g(a+1,c+1,b);)c++;return c}function i(a,b){0!=y?$.ajax({type:y.type,url:y.url,data:{mes:a+1,ano:b},dataType:"json"}).done(function(c){"undefined"==typeof t&&(t=[]),$.each(c,function(a){t.push(c[a])}),j(a,b)}):j(a,b)}function j(a,b){for(var c=a+1,d=0;d<t.length;d++)if(t[d].date.split("/")[1]==c&&t[d].date.split("/")[2]==b){var e=$("#"+s+"_"+t[d].date.replace(/\//g,"_")),f=$("#"+s+"_"+t[d].date.replace(/\//g,"_")+" a");e.addClass("event"),f.attr("data-original-title",t[d].title),t[d].color&&e.css("background",t[d].color),"undefined"!=typeof t[d].link&&""!=t[d].link&&f.attr("href",t[d].link),"undefined"!=typeof t[d].linkTarget&&""!=t[d].linkTarget&&f.attr("target",t[d].linkTarget),t[d].class&&e.addClass(t[d].class),t[d].content?(e.addClass("event_popover"),f.attr("rel","popover"),f.attr("data-content",t[d].content)):(e.addClass("event_tooltip"),f.attr("rel","tooltip"))}$("#"+s+" .event_tooltip a").tooltip(x),$("#"+s+" .event_popover a").popover(w),$(".manual_popover").click(function(){$(this).popover("toggle")})}function k(){if(1==z){p.on("click","td.day",function(){if(1==A)if(""==G)G=$(this).data("date"),l();else if(""==F){E=G,F=$(this).data("date"),l();var a=new CustomEvent("bicCalendarSelect",{detail:{dateFirst:E,dateLast:F}});document.dispatchEvent(a)}else E="",F="",G="",p.find(".selection").removeClass("middle-selection selection first-selection last-selection");else{p.find("td div").removeClass("selection"),$(this).find("div").addClass("selection");var a=new CustomEvent("bicCalendarSelect",{detail:{date:$(this).data("date")}});document.dispatchEvent(a)}}