UNPKG

calenstyle

Version:

CalenStyle is a Responsive Drag-and-Drop Event Calendar for Web, iOS, Android & Windows. CalenStyle is customizable plugin having multiple, clean-designed event calendar templates specially designed for web & mobile applications.

219 lines (169 loc) 5.98 kB
<!DOCTYPE html> <html> <head> <title>DayEventList View with Custom Event View</title> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> <script type="text/javascript" src="js/jquery-1.11.1.min.js"></script> <script type="text/javascript" src="js/jquery-ui-custom-1.11.2.min.js"></script> <link rel="stylesheet" type="text/css" href="css/jquery-ui-custom-1.11.2.min.css" /> <link rel="stylesheet" type="text/css" href="../src/calenstyle.css" /> <link rel="stylesheet" type="text/css" href="../src/calenstyle-jquery-ui-override.css" /> <link rel="stylesheet" type="text/css" href="../src/calenstyle-iconfont.css" /> <script type="text/javascript" src="../src/calenstyle.js"></script> <!-- Sample Styles and Element Generation code for EventList --> <link rel="stylesheet" type="text/css" href="css/CalEventList.css" /> <script type="text/javascript" src="js/CalJsonGenerator.js"></script> <style type="text/css"> .calendarContOuter { position: absolute; left: 0px; right: 0px; top: 0px; bottom: 0px; font-size: 14px; text-shadow: none; } .cdlvDaysTableRowCustom { text-align: center; margin-left: 10px; margin-right: 10px; } .custEvent { position: relative; margin-left: 6px; display: inline-block; width: 7px; height: 7px; } @media screen and (max-width: 500px), (max-height: 400px) { .custEvent { width: 5px; height: 5px; margin-left: 4px; } } </style> <script type="text/javascript"> $(function() { var oCal1; $(".calendarContOuter").CalenStyle( { initialize: function() { oCal1 = this; }, sectionsList: ["Header", "Calendar", "EventList"], headerSectionsList: { left: ["HeaderLabelWithDropdownMenuArrow"], center: [], right: ["PreviousButton", "NextButton"] }, visibleView: "DayEventListView", daysInDayListView: 5, eventIndicatorInDayListView: "Custom", dropdownMenuElements: ["DatePicker"], displayEventsForPeriodInList: function(listStartDate, listEndDate) { return displayEventsInList(this, listStartDate, listEndDate); }, calDataSource: [ { sourceFetchType: "DateRange", sourceType: "FUNCTION", source: function(fetchStartDate, fetchEndDate, durationStartDate, durationEndDate, oConfig, loadViewCallback) { var calObj1 = this; calObj1.incrementDataLoadingCount(1); var oEventResponse = generateJsonEvents(fetchStartDate, fetchEndDate); console.log(oEventResponse); if(oEventResponse != undefined) { if(oEventResponse[0]) { calObj1.parseDataSource("eventSource", oEventResponse[1], durationStartDate, durationEndDate, loadViewCallback, oConfig, false); } } } } ], modifyCustomView: function(dArrViewDates) { var calObj1 = this; for(var iTempIndex = 0; iTempIndex < dArrViewDates.length; iTempIndex++) { var dThisDate = dArrViewDates[iTempIndex], sDayId = "#cdlvRowDay"+iTempIndex, oArrEvents = calObj1.getArrayOfEventsForView(dThisDate, dThisDate), sTempStr = "", iTempIndex2, sBgColor = "", bIsMarkedG = false; for(iTempIndex2 = 0; iTempIndex2 < oArrEvents.length; iTempIndex2++) { var oEvent = oArrEvents[iTempIndex2], sEventColor = oEvent.fromSingleColor ? oEvent.textColor : oEvent.backgroundColor, bIsMarked = ($.cf.isValid(oEvent.isMarked) && oEvent.isMarked); if(bIsMarked) { bIsMarkedG = true; sBgColor = oEvent.fromSingleColor ? oEvent.backgroundColor : $.cf.addHashToHexcode(oEvent.backgroundColor, 0.1); } sTempStr += "<span class='custEvent' style='background: "+sEventColor+";'></span>"; } var sTemp = sTempStr; for(iTempIndex3 = 0; iTempIndex3 < 15; iTempIndex3++) { sTemp += sTempStr; } if(bIsMarkedG) $(calObj1.elem).find(sDayId).css({"background": sBgColor}); $(calObj1.elem).find(sDayId + " .cdlvDaysTableRowCustom").html(sTemp); //console.log($(calObj1.elem).find(sDayId + " .cdlvDaysTableRowCustom")); } calObj1.addRemoveViewLoader(false, "cEventLoaderBg"); calObj1.addRemoveLoaderIndicators(false, "cEventLoaderIndicator"); //console.log("Events appended in custom View"); }, eventListAppended: function() { adjustList(); } }); setTimeout(function() { adjustList(); }, 0); $(window).resize(function() { adjustList(); }); function adjustList() { var oCal3 = $(".calendarContOuter").CalenStyle(); var iEventWidth = $(oCal3.elem).width(), iEventColorWidth = $(".cListEventColor").outerWidth(true), iEventIconWidth = $(".cListEventIcon span").outerWidth(true), oElems = $(".cListEventTime span"); var iMaxWidth = Math.max.apply(null, $(oElems).map(function() { return $(this).outerWidth(true); }).get()); iMaxWidth += 5; $(".cListEventTime").css({"width": iMaxWidth}); var iEventTitleWidth = iEventWidth - (iEventColorWidth + iMaxWidth + iEventIconWidth) - 25; $(".cListEventTitle").css({"width": iEventTitleWidth}); } }); </script> </head> <body> <div class="calendarContOuter"></div> </body> </html>