.&1|?" {}:+dt 4BEn!3_${Eڞtڹċ.5[o/6d ǂ :InwO/}mV-:) |x^B rްtA<dzAT=Y5h]Ծhp#sKbͅ ΗN$O_ީz ?_w%={ve1mnZxRE`Ҵpz&-sЀTIEa$.h#ղQ=KB,+?gs;(Yw2m *])6"Jֻ 5Ay\c"i(eȦ9 bS>ů*vT@hE _K#ضe%5^ĴM[:;,{*Op318cg1m$H u~>^g5l o:hREa^=e\% p@I#{wc,C߷&P8FP("d= =a~vK&&,$DY6wt_Md-f (E LfiB)=S]+93-@M(uHmn?- 1QM𗁠O{wP3a^g5l o:hREa^=e\% p@I#{wc,C4Zׂ<ҳ}k+2;e9ٖ~y6\2KȘ  jJH87]':6"Y[[ݕbAQiTbUC0(!jJCcYiuDv_/A|#4/]]qmU/ͳTK=8֓}r7= Yjx,ZԏgBoǿ?etve1mnZxRE`Ҵpz=ۼ<M꣊Tx|IGŌ6[W{y=75}#EA"7a|+Lsہ~YT+aJ_+h0h~ B^n.D6*d?]aU j:KEeiK&%l%$WIqI N?xVI7I<2_{";:-9fK# W7T^}wpH}`* +aJ_+h0ƦJIaq9tjMfigvc p<[8 fYKF RQwrπ0{g۲x[h#~0Hˠyɞf.6cAB i}`\I'oLJgY>G{@"T pl<Q>Grp|m:өJM$:V@|qo;;)>Fd>p2jRl^woT^ewyM_jUw%jPtDQP^NΆ* h4AC["65VSa[B%U9j|(8nn&,`\fqi)y@3\˕+ZKZ9RmRCSz@ClGx׏.-oCSOSϛ]_GA nͻ&v+3گL݈1CS1}s*/<$MCϛ]_GA nͻL=E1{c\ {qQD 5hvk 1Yn+ \ꉗ7N|[(yp݊ǚ5ji052o1#I}AjU06Q}=^QHզwI0#&[P3Uϛ]_GA nͻorϰDPZ|~QN{3p0ŖDѻA 6kntfX ZckK:S\¦} ;Y$7ֱTbd3LuP߻]\|מN&>ກ J6~sDl/*nQB/VN)(pXx@ ƴ4"-cFCĶ|ӧd,²X#:.IX}cIKb(Q#M&6ib$p~LtC=BNŰbm)޶tKH,HzA2KS{{%2Fx[X58F9tjMfigvz|RR{^T40% D<2b}fBW>~9YS/׼3\|` calendar: "East Coast Events", start: new Date(2016, 10, 13, 14, 0, 0), end: new Date(2016, 10, 20, 16, 0, 0) } appointments.push(appointment1); appointments.push(appointment2); appointments.push(appointment3); appointments.push(appointment4); appointments.push(appointment5); appointments.push(appointment6); // prepare the data var source = { dataType: "array", dataFields: [ { name: 'id', type: 'string' }, { name: 'description', type: 'string' }, { name: 'location', type: 'string' }, { name: 'subject', type: 'string' }, { name: 'calendar', type: 'string' }, { name: 'start', type: 'date' }, { name: 'end', type: 'date' } ], id: 'id', localData: appointments }; var adapter = new $.jqx.dataAdapter(source); var printButton = null; $("#scheduler").jqxScheduler({ date: new $.jqx.date(2016, 11, 23), width: 850, height: 600, source: adapter, showLegend: true, // called when the dialog is craeted. editDialogCreate: function (dialog, fields, editAppointment) { // hide repeat option fields.repeatContainer.hide(); // hide status option fields.statusContainer.hide(); // hide timeZone option fields.timeZoneContainer.hide(); // hide color option fields.colorContainer.hide(); fields.subjectLabel.html("Title"); fields.locationLabel.html("Where"); fields.fromLabel.html("Start"); fields.toLabel.html("End"); fields.resourceLabel.html("Calendar"); // add custom print button. printButton = $(""); fields.buttons.append(printButton); printButton.jqxButton({ theme: this.theme }); printButton.click(function () { var appointment = editAppointment; if (!appointment) return; var appointmentContent = "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "" + "
Title" + fields.subject.val() + "
Start" + fields.from.val() + "
End" + fields.to.val() + "
Where" + fields.location.val() + "
Calendar" + fields.resource.val() + "
"; var newWindow = window.open('', '', 'width=800, height=500'), document = newWindow.document.open(), pageContent = '\n' + '\n' + '\n' + '\n' + 'jQWidgets Scheduler\n' + '' + '\n' + '\n' + appointmentContent + '\n\n'; try { document.write(pageContent); document.close(); } catch (error) { } newWindow.print(); }); }, /** * called when the dialog is opened. Returning true as a result disables the built-in handler. * @param {Object} dialog - jqxWindow's jQuery object. * @param {Object} fields - Object with all widgets inside the dialog. * @param {Object} the selected appointment instance or NULL when the dialog is opened from cells selection. */ editDialogOpen: function (dialog, fields, editAppointment) { if (!editAppointment && printButton) { printButton.jqxButton({ disabled: true }); } else if (editAppointment && printButton) { printButton.jqxButton({ disabled: false }); } }, /** * called when the dialog is closed. * @param {Object} dialog - jqxWindow's jQuery object. * @param {Object} fields - Object with all widgets inside the dialog. * @param {Object} the selected appointment instance or NULL when the dialog is opened from cells selection. */ editDialogClose: function (dialog, fields, editAppointment) { }, /** * called when a key is pressed while the dialog is on focus. Returning true or false as a result disables the built-in keyDown handler. * @param {Object} dialog - jqxWindow's jQuery object. * @param {Object} fields - Object with all widgets inside the dialog. * @param {Object} the selected appointment instance or NULL when the dialog is opened from cells selection. * @param {jQuery.Event Object} the keyDown event. */ editDialogKeyDown: function (dialog, fields, editAppointment, event) { }, resources: { colorScheme: "scheme01", dataField: "calendar", source: new $.jqx.dataAdapter(source) }, appointmentDataFields: { from: "start", to: "end", id: "id", description: "description", location: "place", subject: "subject", resourceId: "calendar" }, view: "monthView", views: [ 'dayView', 'weekView', 'monthView' ] }); });