PDA

View Full Version : E2CS-EventCalendar (v0.0.16)



Pages : [1] 2 3

cmendez21
1 Jun 2008, 6:14 PM
http://www.scimx.net/cms21x/e2cs/e2cs_image_001.jpg

Hi everyone
I'm glad to tell that the first release of E2CS is out but its in alpha version yet..! (And also proud to be the first event calendar on Extjs B) )

Notice:
13-July-2010 Version 0.0.16B and version 0.0.17 are released check them out at

Bug fixes overall
0.0.17 has new properties and refactored event/task drawing method on Day view, also has dayview has a new method to refresh events without refreshing all view

Details at:

English: http://e2cs.mm-mendez.com/?p=198&language=en
Spanish: http://e2cs.mm-mendez.com/?p=198&language=es

07-June-2010 0.0.16 Release Is Available

This is a minor patch & code changes intended to make work e2cs calendar on 3x also
- Documentation does not change

15-June 2009 Release 0.0.14 Is available (released at night of 15-june-2009)

New Online Documentation available (also new Air and printed versions are available)
New Event beforeContextMenuTask added to Calendar object and all views so now you can make a conditional statements to set which menu items to add or remove before show the context menu on each task (it only applies to event tasks)
Menu items (submenus) and separators can now be integrated to the context menus (only applies to Tasks/events)
Menu items (submenus) and separators can now be integrated to the context menus (elements containing tasks such as day body, month day element, week day body , etc..)
Fixes for many bugs on IE6, IE7, IE8
Fixes for LoadMaskText property.
Now the calendar supports to be on a page with DOCTYPE declaration, this was an issue happening on IE explorer mostly of the cases.
Locale files fixed by:
New locale files

Chinese Updated by Feng Gao A.K.A. Sniperdiablo in ext forums
GB Locale File by Claire Knight
Italian Updated


Week view

Fixes for some bugs about handling dates and rendering tasks
Fixes for rendering bugs
load mask fixed for this view , was causing some strange issues when calendar inside containers.
now you can embed custom HTML inside the Event tasks with the property customHTMLinpos.
property forceTaskFit (task width) added
new property startDay to tell the calendar to start on Monday, Sunday or Saturday


Month view

Bug fix, was loading data wrongly if month repeated ex. if month dic-2009 was showing data from dic-2008 , now its repaired.


Day View

now you can embed custom HTML inside the Event tasks with the property customHTMLinpos.
property forceTaskFit (task width) added


Schedule View

Fix minor bugs,and compatibility for context menus on logic and submenu items or separators.


Task.js

Many bug fixes for IE were fixed



04 February 2009 Release 0.0.12 is available

Minor fixes in general and Many fixes for rendering the calendar on IE6, IE7 and FF3
Some adjustments to Schedule view
loadMask property added to calendar (see manual and tutorial on the e2cs calendar blog)
Manual Updated

27 December 2008 Release 0.0.11 is available

Many bug fixes and new features on all views
New revisited manual
Also a new view is on Schedule view
See history log for more details and check the manual cause this version is quite not compatible with previous versions because of the new enhancements.

17 November 2008

Minor bugs reported on the forum.
Fix CSS on IE cause some issues going around on day view (body layout)
Fix Background Image on header thanks to Remy
Dutch locale file added thanks to pcrombach
General

Documentation updated because of the significant changes on Month view
referid property added to all views to be as a flag and identifier for each view (to use on events)
included Apendix-A so you can override Ext.Date.Add function if you have some issues on Safari and Chrome, see thread http://extjs.com/forum/showthread.php?t=51586


Month view

Fixed a Bug on startDay which was causing some issues on some months Thanks to
Added showTaskList property to set the list of events on each day (task list items)
Context menu on each task lit item (FF, IE, Chrome, Opera, Safari works fine)




23 October 2008
Patch for monthview, startDay property added on the monthview object so it will work as the datepicker control and you can choose which day the week starts.

also cause of the patch the e2cs_pack file (compressed) was updated

28 September 2008
released version 0.0.7

Minor changes and Missing documentation on the manual.
Locale files EN and ES were changed on some labels (may the locale files need update)

Everything telling Tasks was changed to Events due to some posts by users who were showing this issue / point on the label(s) tasks does not apply better than events. So we consider this right and change it (although inside the code it says tasks does not affect to the proper labels).


Polish locale file added thanks to Remy
Basic Sample from Sample files Updated
Month view

Changed style on Week (main) Header
Changed Style on Hour / minute display


Week View

Plain style for week view is fully functional now
fixed some issue with event render on plain style
Changed style on Week (main) Header
Changed Style on Hour / minute display
Added headerDayClick property to handle click for change to day view
Added dom tags to more week elements so it can be no cross handling with other calendar instances
Changed hourFormat default value changed G for H
Property alldayTaskTPL previosly was taken the tpl property from the calendar and was not used


Day View

Changed style on Day (main) Header
Changed Style on Hour / minute display
Changed hourFormat default value changed G for H
New property taskAdd_dblclick: true, When set to true if you click on the body of the dayview the event 'taskAdd' will be launched


Task.js File

Minor bugs repaired



16 September 2008
Updated Release file 0.0.6 cause there was missing files (source files and sql file for sample)

09 september 2008
new version released and moving on to Beta stage

Changes:

* Chinese locale file updated to the last version thanks to Sniperdiablo
* Fixed crash or conflicts on some Dom ID�s generated by the code when two or more controls are on the same page (tab sample)
* Fixes minor render issues when The calendar its contained on Ext.Components such as Tabs, Layouts , Panels and so on
* New package (e2cs_pack.js) includes all the code (source files) to make the calendar work on previous releases
* Also the documentation has been updated (minor changes)

20 august 2008

Finally we have published our own blog for e2cs calendar and ext related stuff check it out...!
Also new downloads will be on the download page (Spanish / English)

And many more things to come
http://e2cs.mm-mendez.com


UPDATE 0.0.5 (14 August 2008)
Minor bug fixes for month view, week view, task.js files were displaying wrong dates in some cases but works fine now
Also new db sample included (sql file included)

BIG BIG UPDATE (06 August 2008)
Major Features

1st ever Reference Manual for the E2CS calendar (PDF-english only for the moment)
Tested for Extjs 2.2 and everything went well
May bug and fixes (please see log changes on the manual)
Added more events to the calendar
Context Menu on Week View
Updated Live sample and fixed with dome extra features here (http://scimx.net/cms21x/e2cs/samples/sample.htm)

And many more... Please download the latest version

Warning : if you are developing something with E2CS please test this new version apart so you can see changes and plan all your work and upgrade.

UPDATE (29 JULY 2008)

Updated some context Menu issues for (firefox, IE and Opera)

Also on day view if you right click on event(task) it appears one context menu but if its on days body it will appear it own.

Opera Event(task) display on day view

includes Locale Files up to date (espanish, english, french, german, chinese, portugese/brasil)

UPDATE (15 JULY 2008)
Updated minor bugs and then some tips made by ext forum members also context menu on opera 9x its working (only on month view)
Here is the patch http://extjs.com/forum/showthread.php?p=195608#post195608

UPDATE (01 JULY 2008)

1.- 1st Live sample here (http://scimx.net/cms21x/e2cs/samples/sample.htm) also see last post in this thread

UPDATE (17 JUNE 2008)
1.- Week view is on and kinda stable (there are some few bugs still..!)
2.- Localization files now included (en,es) if someone can translate to another language please attach it to the posts so i can include them in the whole package for next releases..! :D
3.- many properties were deprecated and new on
4.- many events were deprecated and new on

(see log on each file to check)

DOWNLOADS
Moved to its own page :
http://e2cs.mm-mendez.com

Updated Notes:
The control is now on beta version its kind of stable but still more work to do ..!
please report bugs or issues.

Tested only in firefox 2.0, 3.0, IE6 and IE7, opera 9.x and chrome
Note Chrome has some css issues still but averything else works fine and its the fastest

Additional notes
Hope you like the calendar..!
any suggestion will be appreciated to make a better widget :D




http://www.scimx.net/cms21x/e2cs/screen_shots/th_e2cs_ss005.jpg (http://www.scimx.net/cms21x/e2cs/screen_shots/e2cs_ss005.jpg)

http://www.scimx.net/cms21x/e2cs/screen_shots/e2cs_ss001.jpg

kimosabi
2 Jun 2008, 5:39 PM
This looks great so far, excellent work.

The problem with IE on the day view is line 140 where you render each of the tasks.

I have an immediate need for something like this, so I am more than happy to help out in the bug fixing/dev area.

Cheers,

Kim

fadein
2 Jun 2008, 5:49 PM
Wow, what a great job! Thanks for sharing

cmendez21
2 Jun 2008, 7:41 PM
Hi kimosabi ,
IE which version cause i'm testing and debugging on ie7 and works fine so far ?
:-/
but gonna check this issue

kimosabi
2 Jun 2008, 7:41 PM
These are the kinds of changes I'd like to see that would make it better.

- Hook into a jsonstore that only requests the data required. for example in the day view, only retrieve tasks for the selected day. For the month view, only retrieve a summary of tasks for each day in the month.

- when in day view, have a preview window on the top right of the widget (similar to outlook) that show this month and next month with highlighted days where there are tasks.

cmendez21
2 Jun 2008, 7:50 PM
gonna keep in mind this features you said :)

Ytorres
2 Jun 2008, 8:46 PM
Hi cmendez21,

Screen looks wonderfull ! ;)

Any online demo to test it ?

wm003
2 Jun 2008, 10:11 PM
Very good start. Thank you for sharing and keep it up ;)

cmendez21
2 Jun 2008, 11:02 PM
Hi cmendez21,

Screen looks wonderfull ! ;)

Any online demo to test it ?

I'm current working on a blog for the calendar and online Samples, coming soon
:D

Samples are included on ZIP file just fix some paths (for extjs) and ready to test it (paths for the toolbar are relative to the folder (but images are included too)

wasp
3 Jun 2008, 3:21 AM
here's temporary while your setup is ready:

http://dev.drun.net/extjs/e2cs_alpha/sample.htm
http://dev.drun.net/extjs/e2cs_alpha/sample_layout.htm

jerrybrown5
3 Jun 2008, 12:52 PM
Cmendez21,
Wow, I think this has the possibility to be the *best* plug-in on this entire forum. Is there any chance that you will choose to upload the code to Google Code ( http://code.google.com/ ) so that a few of us can help you add features to it?

Best regards,
Jerry Brown

cmendez21
4 Jun 2008, 10:11 AM
Thanks WASP for the live demo (i have to hurry up with the page) ;)



Cmendez21,
Wow, I think this has the possibility to be the *best* plug-in on this entire forum. Is there any chance that you will choose to upload the code to Google Code ( http://code.google.com/ ) so that a few of us can help you add features to it?

Best regards,
Jerry Brown


Hi jerry i'm still thinking about it, honestly i think the forum in google code projects is a bit confusing for me still and could be for me to take a little while to get it, and with 4 EXTJS projects (apps) on my back i couldn't make it right now.

xmatt1
6 Jun 2008, 6:50 AM
Very nice widget.. great Work =].. keep working..
now we can help u finish this widget..

i think this widget should be on next ext3 samples like the desktop sample from qwikoffice

cmendez21
9 Jun 2008, 6:58 PM
sorry for be absent a few days , got a deadline and got sick :">

Here's a first glimpse on the week view im working right now
also other features and corrections about month view and dayview

http://www.scimx.net/cms21x/e2cs/screen_shots/th_001_week.jpg (http://www.scimx.net/cms21x/e2cs/screen_shots/prototype_001_week.jpg)

Hope to get it soon...!

wm003
9 Jun 2008, 9:12 PM
Here's a first glimpse on the week view im working right now
also other features and corrections about month view and dayview

Hope to get it soon...!

Very very promising.... =P~=P~

cmendez21
17 Jun 2008, 8:25 PM
Hi guys check out the last version alpha 0.0.2
Week view is on and many more...!
check details on the first post in this thread..!

hope you like it ;)

mark_l_lewis
18 Jun 2008, 5:51 AM
Hey,

I just checked this out and I am very impressed by the looks. Will download the code and take a look under the hood.

Well done and keep it going.

Cheers,
Mark.

big_vern
20 Jun 2008, 12:35 AM
This is an excellent control. I am following its development closely as it is helping me learn extjs and I plan to use it in an application soon.

You clearly know your stuff. Keep up the good work.

Mark

big_vern
20 Jun 2008, 5:59 AM
When I use the following layout, the calendar control does not show the hours 21:00 and 22:00 on the day and week view. The scrollbars are a little off too. On the month view, the row with the last week on it is thinner than the preceeding weeks.

I am using the test_calendar(obj) function from sample.htm but I have commented out the height and width properties. What do I need to do to get the layout to work? I am using FF 2.0




Ext.onReady(
function(){


Ext.state.Manager.setProvider(new Ext.state.CookieProvider());


var

viewport = new Ext.Viewport({

layout:'border'

,items:[{
region:'north'
,height:50
,contentEl:'north'
},{
region:'center'
,id:




'center-panel'

,layout:'fit'

,items:[{
html: '<div id="calendar"></div>'
}]
},{
region:'west'
,title:'Calendar'
,layout:




'fit'

,width:180

,resizable: false
,split:




true

,collapsible:true

,defaults: {
stateEvents: ["collapse","expand"],
getState:function() {
return {collapsed:this.collapsed};
}
}
,items: [{html: 'I am West'
}]
},{
region:'east'
,title:'East'
,width:120
,split:true
,collapsible:true
,collapsed:true
,hidden:true
},{
region:'south'
,height:80
,hidden:true
}]
});





viewport.doLayout();

}
);

Fabyo
20 Jun 2008, 6:56 AM
I found a bug, if you click repeatedly on the button "Create Calendar," he vai entering the layout and the layout spoil

or if you click on another button several times he also accepts

cmendez21
20 Jun 2008, 10:27 AM
I found a bug, if you click repeatedly on the button "Create Calendar," he vai entering the layout and the layout spoil

or if you click on another button several times he also accepts

the button create calendar in sample.htm its intended to be pressed once still im inted to create more samples that works fine. this file its my starting point to debug and to check the code for the creation of the control.



I am using the test_calendar(obj) function from sample.htm but I have commented out the height and width properties. What do I need to do to get the layout to work? I am using FF 2.0

big_vern can you post or attach the complete code you are using for the layout control to check it out and see whats working bad

still you can check out the second sample samplelayout2.htm for check how the properties goes for the control on layouts

Starfall
22 Jun 2008, 3:37 AM
Bug/misprint, line 210 of calendar.js v0.0.2: autowidth -> autoWidth in call to Ext.apply

Starfall
22 Jun 2008, 3:48 AM
Suggestion, method setCurrentDate of Ext.ECalendar: replace code for this method with


this.setNewDate(Date());

Starfall
22 Jun 2008, 4:08 AM
WTF, code duplication on lines 69,71 of monthview.js:


var updateview = Ext.get(this.calx.body);

Starfall
22 Jun 2008, 4:12 AM
Suggestion, method render of Ext.ECalendar.monthview, lines 69 - 74:


var updateview = Ext.get(this.calx.body);
var monthbase = '<div id="' + this.calx.id + 'main-calendar-header"></div>'
+ '<div id="' + this.calx.id + 'main-calendar-month-body"></div>';
updateview.update(monthbase);

Starfall
22 Jun 2008, 4:14 AM
Suggestion, app design: Change div id's from this.calx.id+'main-whatever' to this.calx.id+'-main-whatever', i.e. separate id from actual div name with a hyphen.

jay@moduscreate.com
22 Jun 2008, 8:54 AM
I found a bug, if you click repeatedly on the button "Create Calendar," he vai entering the layout and the layout spoil

or if you click on another button several times he also accepts
Very very promising! I'll keep an eye on this one!
http://tdg-i.com/img/screencasts/2008-06-22_1254.png

mark_l_lewis
22 Jun 2008, 11:27 AM
Hi

Great work. A few suggestions:

1) It would be nice to see a list of tasks (events) for a day in Month View instead of just Tasks in day (n)

2) Might be worth moving all the code into the Ext.ux namespace

3) This is non code related but it might be worth renaming "tasks" to "events". Tasks means something to be done were as event is something that happens. I know that might sound pedantic, but not all items in my calendar require me to do something. i may have an event like 'Public Holiday', 'Birthday'. It may be worth while adding a category field to the task (event) for things like reminder, birthdays, holiday, a project, etc....

I integrated it into my app and it works just great.

I look forward to future enhancements as and when.

Cheers,
mark.

big_vern
23 Jun 2008, 6:16 AM
I have set up sample_layout2.htm from version 0.0.2 and I have the day view drawing perfectly in the east section of the borderlayout. The month view has no scroll bars so gets trimmed off. The week view has the last bit of 21:00 trimmed off at the bottom though the vertical scrollbars appear to be calculating correctly. Horizontally the controls are behaving perfectly. Vertically it is so close to being right!! FF2.0.

Here is the code for my calendar configuration for the borderlayout I posted in #19. Any pointers for making this work?




Ext.onReady(

function test_calendar(obj){

buttonx1= new Ext.menu.Item({ id: 'buttonx1_task', iconCls:'x-calendar-month-btnmv_task', text: "Custom menu test 1" });

buttonx2= new Ext.menu.Item({ id: 'buttonx2_task',iconCls:'x-calendar-month-btnmv_task', text: "Custom menu test 2" });

boton_daytimertask = new Ext.menu.Item({ id: 'btnTimerTask',iconCls:'task_time', text: "Set Task Alarm...." });

boton_daytimertaskb = new Ext.menu.Item({ id: 'btnTimerOff' ,iconCls:'task_time_off', text: "Delete Task's Alarm...." });

dummyData = [

[45,'Debug task 1','Sample app for test','06/10/2008 08:00:00 am' , '06/10/2008 09:45:00 am' ,'#E0FFA2'],

[46,'Debug task 2','Sample app for test','06/10/2008 09:15:00 am' , '06/10/2008 11:45:00 am','#FFA057'],

[47,'Debug task 3','Sample app for test','06/10/2008 07:45:00 am' , '06/10/2008 10:45:00 am','#FFCDFF'],

[48,'Debug task 4','Sample app for test','06/11/2008 09:45:00 am', '06/11/2008 01:00:00 pm','#BBFFFD'],

[49,'Debug task 5','Sample app for test','06/11/2008 07:00:00 am' , '06/11/2008 09:10:00 am','#E4CDFF'],

[46,'Debug task 6','Sample app for test','06/11/2008 09:15:00 am' , '06/11/2008 11:45:00 am','#FFA057'],

[47,'Debug task 7','Sample app for test','06/11/2008 07:45:00 am' , '06/11/2008 10:45:00 am','#FFCDFF'],

[50,'test 1','Sample app for test<br>Prueba10','06/11/2008 09:00:00 am','06/11/2008 10:45:00 am','#E0FFA2'],

[51,'Test 2','Sample app for test<br>Prueba10 2','06/12/2008 8:00:00 am','06/12/2008 11:30:00 am','#FFA057'],

[52,'Test 3','Sample app for test<br>Prueba10 3<br>Hi','06/12/2008 07:00:00 am','06/12/2008 10:00:00 pm','#FFCDFF'],

[53,'Test 4','Sample app for test<br>Prueba10 4<br>Hi','06/09/2008 07:00:00 am','06/10/2008 10:00:00 pm','#E0FFA2'],

[54,'Test 5 ','Sample app for test<br>Prueba10 5<br>Hi','06/11/2008 07:00:00 am','06/14/2008 10:00:00 pm','#FFA057'],

[55,'test 6','Sample app for test<br>Prueba10 6<br>Hi','06/13/2008 07:00:00 am','06/18/2008 10:00:00 pm','#BBFFFD'],

[56,'Test 7','Sample app for test<br>Prueba10 6<br>Hi','06/13/2008 11:00:00 am','06/13/2008 05:00:00 pm','#FFCDFF'],

[57,'Test 8','Sample app for test<br>Prueba10 6<br>Hi','06/13/2008 1:00:00 pm','06/13/2008 10:00:00 pm','#E0FFA2']

];

var reader = new Ext.data.ArrayReader({}, [

{name: 'recid' , type: 'int'},

{name: 'subject' , type: 'string'}, {name:'description' , type: 'string'},

{name: 'startdate' , type: 'string'}, {name:'enddate' , type: 'string'},

{name: 'color' , type: 'string'}

]);

var calendarstoretest= new Ext.data.Store({reader: reader, data:dummyData });

prueba = new Ext.ECalendar({

id: 'test_calendar', name: 'test_calendar',

//width:900,

//height:400,

showCal_tbar: true,

header: true,

title: 'Calendar sample...',

iconCls: 'x-cmscalendar-icon-main',

dateSelector:true,

dateSelectorText: 'Choose Date',

dateSelectorIcon: 'images/date.png',

dateSelectorIconCls: 'x-cmscalendar-icon-date-selector',

dateSelectorTooltip: "Select new Date...",

dateSelectorTooltip: "Select new Date...",

monthtitles:["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],

daytitles: ["Sunday","Monday","Tuesday", "Wednesday","Thursday","Friday","Saturday"],

todayLabel: 'Today...',

todayToolTip:'Set Today...',

store: calendarstoretest,

currentView: 'month',

tplTaskZoom: new Ext.XTemplate(

'<tpl for=".">',

'<div class="ecal-show-basetasktpl-div"><b>Prueba Tarea:</b>{subject}<br>',

'<b>Inicia:</b>{startdate}<br><b>Termina:</b>{enddate}<br><b>Descripcion:</b><div><hr><div>{description}<div><hr>',

'</tpl>'
),

mview:{

header: true,

headerFormat:'F-Y',

headerButtons: true,

dayAction:'window', //dayAction://viewday,event,window
labelforTasksinMonth: 'Tasks:',

headerTooltips: { prev: 'Previous month..', next: 'Next Month' },

contextMenuLabels: { task: "Add new task for", chgwview: "Change to week view...", chgdview: "Change to day view..."},

moreMenuItems:[buttonx1,buttonx2],

showTaskcount: true,

taskStyle:'margin-top:10px;'
},

wview:{

headerlabel:'Semana #',

headerButtons: true,

dayformatLabel:'D j',

moreMenuItems:[],

style: 'google',

alldayTaksMore:'window',

alldayTasksMaxView:3,

store: null,

tasksOffset:40

},

dview:{

header:true,

headerFormat:'l - d - F - Y',

headerButtons: true,

headerTooltips: { prev: 'Previous month..', next: 'Next Month' },

contextMenuLabels: {

task: "Create Task",

chgwview: "Change to month view.",

chgdview: "Change to week view."
},

moreMenuItems:[],

//dayspecific

hourFormat: 'G',

startTime: '08:00:00 am',

endTime: '06:00:00 pm',

//tasksettings

store: null,

taskBaseColor: '#ffffff',

useMultiColorTasks: false,

multiColorTasks:[],

tasks:[],

moreMenuItems:[

boton_daytimertask,

boton_daytimertaskb

],

contextMenuLabels:{ taskAdd: "New Task",

taskDelete: "Delete task",

taskEdit: "Edit Task:",

NextDay: "Go to next Day",

PreviousDay: "Go to Prev. day"},

fields:{subject:'subject',

description:'description',

startdate:'startdate',

enddate:'enddate',

color:'color'}

},

iconToday:'images/cms_calendar.png',

iconMonthView:'images/calendar_view_month.png',

tooltipMonthView:'See Month view...',

iconWeekView:'images/calendar_view_week.png',

tooltipWeekView:'See Week View...',

iconDayView:'images/calendar_view_day.png',

tooltipDayView:'See Day View...'
});

//dayClickonlyeventonthisobject

prueba.viewmonth.on({

'dayClick':{

fn: function(datex, mviewx, calx) {

alert ("dayclick event for " + datex);

},

scope:this
},

'beforeMonthChange':{

fn: function(currentdate,newdate) {

alert ("gonna change month to " + newdate.format('m/Y') + ' Actual date=' + currentdate.format('m/Y') );

returnfalse;

},

scope:this
},

'afterMonthChange':{

fn: function(newdate) {

alert ("Month changed to " + newdate.format('m/Y') ) ;

},

scope:this
}

});

prueba.viewweek.on({

'dblClickTaskAllDay':{

fn: function(task,dxview,calendar) {

var datatest='Task all day <br>record No:' + task[0] + '<br>';

datatest+='id-task:' + task[1] + ' ' + task[2] + '<br>';

datatest+='starts:' + task[3] + '<br>';

datatest+='ends:' + task[4] + '<br>';

datatest+='contents' + task[5] + '<br>';

datatest+='index' + task[6] + '<br>';

Ext.Msg.alert('Information', datatest);

},

scope:this
}

});

//'beforeDayChange'and'afterDayChange'uniqueeventsondayview

prueba.viewday.on({

'beforeDayChange':{

fn: function(currentdate, newdate) {

alert ("gonna change to " + newdate.format('m/d/Y') + ' Actual date=' + currentdate.format('m/d/Y') );

returnfalse;

},

scope:this
},

'afterDayChange':{

fn: function(newdate) {

alert ("changed to " + newdate.format('m/d/Y'));

},

scope:this
}

});

prueba.on({

'taskAdd':{

fn: function( datex ) {

alert ("Adding Task for " + datex);

},

scope:this
},

'taskDblClick':{

fn: function (task,dxview,calendar,refviewname){

var datatest='Record No:' + task[0] + '<br>';

datatest+='id-task:' + task[1] + ' ' + task[2] + '<br>';

datatest+='starts:' + task[3] + '<br>';

datatest+='ends:' + task[4] + '<br>';

datatest+='contents' + task[5] + '<br>';

datatest+='index' + task[6] + '<br>';

Ext.Msg.alert('Information on Object - ' + refviewname, datatest);

},

scope:this

},

'beforeTaskDelete': {

fn: function (datatask,dxview) {

returnfalse;

}, scope:this
},

'beforeTaskEdit': {

fn: function (datatask,dxview) {

returnfalse;

}, scope:this
},

'afterTaskMove':{

fn: function (datatask,Taskobj,dxview,TaskEl) { //return"true"tocancelor"false"togoon

returnfalse;

}, scope:this
},

'TaskMoved':{

fn: function (newDataTask,Taskobj,dxview,TaskEl) { //dosomestuff

var test=21; //usebreakpointinfirefoxhere

task = newDataTask;

datatest ='Task id:' + task[0] + ' ' + task[2] + '<br>';

datatest+='recid:' + task[1] + '<br>';

datatest+='starts:' + task[3] + '<br>';

datatest+='ends:' + task[4] + '<br>';

datatest+='contents:' + task[5] + '<br>';

datatest+='index:' + task[6] + '<br>';

Ext.Msg.alert('Information Modified task', datatest);

var myrecordtask = prueba.store.getAt( (parseInt(task[6])-1) ); //Alert...!basenumberofindexare1not0

myrecordtask.set('startdate',task[3] );

myrecordtask.set('enddate',task[4] );

prueba.store.commitChanges();

}, scope:this
},

'customMenuAction':{

fn: function (MenuId, Currentview, datatask,objEl,dxview){

var datatest = '';

if (Currentview=='month'){

task = datatask;

datatest ='Day :' + task[0] + '<br>';

datatest+='type:' + task[1] + '<br>';

Ext.Msg.alert('(Month) Information- ' + Currentview, datatest);

} elseif (Currentview=='day'){

task = datatask;

datatest ='Task id:' + task[0] + ' ' + task[1] + '<br>';

datatest+='starts:' + task[2] + '<br>';

datatest+='Ends:' + task[3] + '<br>';

datatest+='contents:' + task[4] + '<br>';

datatest+='index:' + task[5] + '<br>';

datatest+='Test Menu:' + MenuId + '<br>';

Ext.Msg.alert('(Day) Task information' + Currentview, datatest);

}

},scope:this

}

});

prueba.render('calendar');

}

);

cmendez21
23 Jun 2008, 9:26 AM
Very very promising! I'll keep an eye on this one!
http://tdg-i.com/img/screencasts/2008-06-22_1254.png

As the title says its alpha version

it has to be repaired many things yet and the samples for the moment are for debugging purposes

sorry if this its sample annoying for everyone :s

cmendez21
23 Jun 2008, 9:31 AM
Hi

Great work. A few suggestions:

1) It would be nice to see a list of tasks (events) for a day in Month View instead of just Tasks in day (n)

2) Might be worth moving all the code into the Ext.ux namespace

3) This is non code related but it might be worth renaming "tasks" to "events". Tasks means something to be done were as event is something that happens. I know that might sound pedantic, but not all items in my calendar require me to do something. i may have an event like 'Public Holiday', 'Birthday'. It may be worth while adding a category field to the task (event) for things like reminder, birthdays, holiday, a project, etc....

I integrated it into my app and it works just great.

I look forward to future enhancements as and when.

Cheers,
mark.

on point 1 you may use on property dayAction: the next options


'viewday' (set the view in the calendar for that day)
'event' (raise Event dayClick)
'window' (shows a window with a list of day's tasks(events) if theres any...)


on point 2 maybe youre right but i made this as a stand alone cause its a new widget and i took my base checking the code on the widgets from the but gonna check the Ext.ux.namespace

point 3 . yes you're right it has to be events so im gonna check and change the concept for events

thanks for the tips ;)

cmendez21
23 Jun 2008, 9:41 AM
thanks for the observations Starfall
gonna change those observations and integrate them on the next release

xmatt1
26 Jun 2008, 9:54 AM
[PHP]
Ext.namespace('e2cs.cal_locale');
e2cs.cal_locale={
// Calendar locale
dateSelectorText: 'Selecione..',
dateSelectorTooltip: 'Selecione uma data..',
// Why i have my own locale for days and months you will ask ?
// i didn't want to mess with ext locale and prefer the widget will have his own locale
monthtitles:["Janeiro", "Fevereiro", "Mar

cmendez21
27 Jun 2008, 6:40 PM
Thanks xmatt1 for the translation :D

for the moment there are few bug as im testing on a big app i'm currently working on so i expect the next week an update will come out and bug will appear soon

RugWarrior
29 Jun 2008, 5:27 AM
[code]// JavaScript Document


Ext.namespace('e2cs.cal_locale');
e2cs.cal_locale={
// Calendar locale
dateSelectorText: 'W

cmendez21
30 Jun 2008, 11:49 AM
Why is there a comma after alldayTasksMaxLabel in the e2cs_xy.js files?


well i leave it ther intending to put more translations ,
my bad :D

an thanks for the german translation

cmendez21
1 Jul 2008, 11:26 AM
Hi everyone

Here's the first live sample (http://scimx.net/cms21x/e2cs/samples/sample.htm)
is the simple demo the layout demo will come out with php server side and mysql data still on progress

also i want to apologize for the delay of e2cs own site it's been kinda rough with all the work and hosting service but i got an arrangement now and a company its gonna donate a small hosting to set it up :D

also on this weekend will be a new release including the latests language translations
thanks to all

alaska
1 Jul 2008, 1:43 PM
good job!

phpuser
2 Jul 2008, 2:49 AM
Frensh translation

// JavaScript Document

[code]
Ext.namespace('e2cs.cal_locale');
e2cs.cal_locale={
// Calendar locale
dateSelectorText: 'Selectionner',
dateSelectorTooltip: 'Selectionner une date',
// Why i have my own locale for days and months you will ask ?
// i didn't want to mess with ext locale and prefer the widget will have his own locale

monthtitles:["Janvier", "Fevrier", "Mars",
"Avril", "Mai", "Juin",
"Juillet", "Aout", "Septembre",
"Octobre", "Novembre", "Decembre"],
daytitles: ["Dimanche", "Lundi", "Mardi", "Mercredi","Jeudi", "Vendredi", "Samedi"],
todayLabel: 'Aujourd\'hui',
todayToolTip: 'Voir la date d\'aujourd\'hui',

// toolbar buttons tooltips


moisLabel: 'Mois',
tooltipMonthView: 'Vue par mois',

semaineLabel: 'Semaine',
tooltipWeekView: 'Vue par semaine',

jourLabel: 'Jour',
tooltipDayView: 'Vue par jour',

// tpl for zoom tasks general labels
win_tasks_format: 'm-d-Y',
win_tasks_loading: 'Chargement...',
win_tasks_empty: 'Pas de t

phpuser
2 Jul 2008, 3:01 AM
Hi,

There is a display problem in sight a week, if we have several spots in one day, then you can not see all these tasks in the day corresponds in sight a week.

thanks

sniperdiablo
3 Jul 2008, 2:31 AM
great work, Chinese translation


// JavaScript Document


Ext.namespace('e2cs.cal_locale');
e2cs.cal_locale={
// Calendar locale
dateSelectorText: '选择..',
dateSelectorTooltip: '选择日期..',
// Why i have my own locale for days and months you will ask ?
// i didn't want to mess with ext locale and prefer the widget will have his own locale
monthtitles:["一月", "二月", "二月",
"四月", "五月", "六月",
"七月", "八月", "九月",
"十月", "十一月", "十二月"],
daytitles: ["日", "一", "二", "三","四", "五", "六"],
todayLabel: '今天',
todayToolTip: '设置今天日期...',

// toolbar buttons tooltips
tooltipMonthView: '查看月视图...',
tooltipWeekView: '查看周视图...',
tooltipDayView: '查看日视图...',

// tpl for zoom tasks general labels
win_tasks_format: 'm-d-Y',
win_tasks_loading: '载入中...',
win_tasks_empty: '没有活动...',
// Month view locale
win_month_zoomlabel:'日活动',
headerTooltipsMonth: {
prev: '上月..',
next: '下月'
},
contextMenuLabelsMonth: {
task: "添加新活动",
chgwview: "切换到周视图...",
chgdview: "切换到日视图..."
},
labelforTasksinMonth: '日活动:',
// Dayview and daytask locale
task_MoreDaysFromTask: '<br>(+)',
task_LessDaysFromTask: '(-)<br>',
task_qtip_starts: '开始: ',
task_qtip_ends: '结束: ',
headerTooltipsDay: {
prev: '前一日',
next: '下一日'
},
contextMenuLabelsDay: {
taskAdd: "新活动",
taskDelete: "删除活动",
taskEdit: "编辑活动:",
NextDay: "转到下一日",
PreviousDay: "转到前一日"
},
//Week view and weektask locale
labelforTasksinWeek: '更多周活动:',
win_week_zoomlabel:'更多活动...',
weekheaderlabel:'周 #',
weekheaderlabel_from:'从:',
weekheaderlabel_to:' 至:',
alldayTasksMaxLabel:'查看全部日活动..',




}

cmendez21
3 Jul 2008, 10:20 AM
Hi,

There is a display problem in sight a week, if we have several spots in one day, then you can not see all these tasks in the day corresponds in sight a week.

thanks

Well in this case i made it only for one user and its hard for one user to have multiple task on the same time date or crosssing times at most it will have 3 events on my app according to the logic im making on my app

:-? Still im figuring out how i can made scrollable each day view contained on week view cause on my tests extjs css crash with the css i made for the day view and its kinda big trouble to make the events match fine on scrollable situations.

also in the task events i use float:left so if the container is small the event that passes the width if appears below everything and it looks bad also the time to wich has to correspond doest fit, but if use absolute it mades weird things.

if any one has an alternative, glad to hear it meanwhile still on test's ;)

also you can change the task (event) width (property) to fit at least some tasks (events) :D

jx12345
4 Jul 2008, 2:14 PM
First off - great work! I will need something like this in near future so I'd like to contribute my 5 cents.

I took a look at the live demo and I noticed that a right-click does not stop the original event. So - if a user has removed the tick "disable or replace context menus" in Firefox settings he gets two context menus - the Ext menu and the original Firefox menu. Try using {stopEvent: true} instead of {preventDefault : true} when attaching contextmenu listeners. The menu function will still get called (and the Ext menu is shown) but the event will get "killed" and the default browser menu will not be shown regardless of the settings.

One other (minor) thing - users are animals of habit and there is a certain way certain things should work. Context menu should show up at cursor position not aligned with the selected item so I strongly suggest using

this.menu.showAt( [ evx.getPageX(), evx.getPageY() ] );instead of

this.menu.showAt( Ext.get(elx).getXY());

phpuser
7 Jul 2008, 2:13 AM
Hi cmendez21,

I suggest if you can make a view years, for example a calendar with 12 calendar and when click on a calendar on passes directly to me corresponds to that timetable, I think it will be interesting.

I await your version with interaction with the database.

Good day.

phpuser
7 Jul 2008, 2:29 AM
hi,

You've met the first two folder called e2cs_alpha_0.0.2 and the second called _dinamic_columns_101, but
problem is that I come not to integrate with the first second.

Is what you can help me at that level.

Thank you

cmendez21
9 Jul 2008, 1:04 PM
you mean dynamic columns 101 ?

this one its has nothing to do with e2cs calendar but for his file you have to integrate it changing code to make it work for your needs i couldn't have the time to change it to work fine as an example...!

and jx12345 thanks for the tip (gonna make the change)

i'm still checking on the context menu how to make it work fine i have the same problem but if i use IE it doesn't happen the double context menu (calendar's and browser's)
:s

i will request some support for this kind of event(bug) maybe

mystix
9 Jul 2008, 5:56 PM
i'm still checking on the context menu how to make it work fine i have the same problem but if i use IE it doesn't happen the double context menu (calendar's and browser's)
:s

i will request some support for this kind of event(bug) maybe
you're going to have problems with Opera -- it doesn't seem to want to release control of the contextmenu event... :s
(since opera 8+)

boolean
10 Jul 2008, 4:08 AM
Job can't resize in IE,When this bug could be repaired? Thanks:)
And I test it in IE6.0

boolean
11 Jul 2008, 1:17 AM
when scroll the v bar, the job will not go up or down,i think this is a bug
can any body help me out?
in ff3.0 it works very well

boolean
11 Jul 2008, 5:26 AM
I upload the screen capture, please help fix them, I will appreciate very much.

mystix
11 Jul 2008, 6:54 AM
I upload the screen capture, please help fix them, I will appreciate very much.
when developing, use ext-all-debug.js, not ext-all.js.
doing so will result in meaningful error messages.

also, your screenshot with visual studio console errors is useless -- it can't be read at all (even on a 32 inch LCD).
better if you could simply copy and paste the console errors here instead
(be sure to put them between a set of
tags when doing so. see http://extjs.com/forum/misc.php?do=bbcode for more info).

boolean
11 Jul 2008, 8:30 AM
I fixed two simple bug under IE6

monthview.js line 103
if(Ext.isIE){
numrowsbodyskel = mydays.dom.childNodes[0].childNodes[0].rows.length-1 ;
}else{
numrowsbodyskel = mydays.dom.childNodes[1].childNodes[0].rows.length-1 ;
}
task.js line 135
if(Ext.isIE){
this.taskobject.setStyle('z-index' ,'-1');
}else{
this.taskobject.setStyle('z-index' ,'auto');
}


but there still a bug I can't fix.It's the task objects will not scroll with it's parentNode(I mean when I scroll the y bar from 7:00 to 11:00), and it's screen capture as below...

cmendez21
13 Jul 2008, 12:49 AM
HI boolean , seems in someways you're still missing some css
cause i've tested on IE and works fine but :-?
gonna check all the issues you report.

boolean
13 Jul 2008, 5:02 AM
I check all the code again,still not find what I miss
And I also retry the demo you provide
http://scimx.net/cms21x/e2cs/samples/sample.htm
it can't work either, I upload the error screen capture. So I think there must be serval bug you not found.

drunknmunky
15 Jul 2008, 6:35 AM
Cmendez21, e2cs is exactly the thing that I was hoping I'd find when I started my current project. It's been a huge help and I just wanted to let you know you're doing a great job.
For the project I'm working on, I've taken the week view and heavily modified it into a category view. What I mean by this is showing one day's worth of events but giving each different category of event a column. I'm using to create a scheduling webapp for a local organization. I'll post a sample when it's more functional.

Along the way, I've changed a few things aside from making my own view. The first thing that comes to mind is updating the selected value of the date selector when changing days using arrows or the today button. I've simply added:

if (this.dateSelector && this.showCal_tbar) {
this.selector_dateMenu.picker.setValue(this.currentdate);
}to the end of the setNewDate and setCurrentDate functions in calendar.js. I also changed the listeners in the week view (and my own view) to call
this.calx.setNewDate(newdate) instead of
this.calx.currentdate=newdateThis way allows everything to be a little more consistent.

The other thing I've done is modified the week view to display times after midnight and treat them as if they are part of the same day. For example, I've set my startTime to 10:30 am and my endTime to 2:30 am. I added in some logic along the lines of this wherever it was required (it had to be changed elsewhere too):

var m_starttime = new Date (dateval.format('m/d/Y ') + this.startTime) ;
var m_endtime = new Date (dateval.format('m/d/Y ') + this.endTime) ;
if (m_endtime < m_starttime) {
m_endtime.setDate(m_endtime.getDate() + 1);
}I'm sure I've made other modifications and I'll post them as I remember them but these seem like they'd make sense to implement. I'll post a link to the application next week once it's a little more polished and all the features I need are implemented.

Thanks again! I wouldn't have been able to make a decent interface if I hadn't found this.

Colin

cmendez21
15 Jul 2008, 12:21 PM
Thanks for the tips drunknmunky i'm glad you liked it ;)

by the way i've made some corrections about opera and context menu its working now but week view is one big mess on opera 9x (i will have to test and program a special week view for opera cause its one big trouble)

On IE6 still the bug when rendering tasks still have no clue and debugging on IE its an horror :((


http://www.scimx.net/cms21x/e2cs/screen_shots/opera_contextmenu_th.jpg (http://www.scimx.net/cms21x/e2cs/screen_shots/opera_contextmenu.jpg)

one of the things checking to solve the context menu issue on opera was: Not to use contextmenu event..!

Instead i use mouse down and check the button value to send the right function (handler) to achieve this

Here's the attach for the month view corrections for opera

boolean
15 Jul 2008, 3:17 PM
I don't know what's your mean
you mean there is no bug on your IE?
you mean there is no good debug tool?

I use the IE WebDeveloper V2

mystix
15 Jul 2008, 6:11 PM
one of the things checking to solve the context menu issue on opera was: Not to use contextmenu event..!

Instead i use mouse down and check the button value to send the right function (handler) to achieve this

great tip! i'll be sure to keep this in mind when messing with opera.

cmendez21
15 Jul 2008, 6:44 PM
I don't know what's your mean
you mean there is no bug on your IE?
you mean there is no good debug tool?

I use the IE WebDeveloper V2
I mean i have no clue on what is generating the error on IE and debuggieg on IE its terrible thats why i prefer firebug but finding things on IE i cant figure out wich line of code its doing this bug :-?

phpuser
16 Jul 2008, 12:45 AM
Great job,

Can you post the latest version of your calendar.

Thanks,

cmendez21
16 Jul 2008, 8:23 AM
Great job,

Can you post the latest version of your calendar.

Thanks,

Its here http://extjs.com/forum/showthread.php?p=195608#post195608

The changes were only made on monthview.js by the moment
as soon as i fix some week view troubles i will post the next release complete and lang files upgraded ;)

chong
16 Jul 2008, 2:47 PM
I mean i have no clue on what is generating the error on IE and debuggieg on IE its terrible thats why i prefer firebug but finding things on IE i cant figure out wich line of code its doing this bug :-?


Hey.. Great Job with your Extended Calendar... I'm working on it. But the big issue is the Internet Bug Explorer !!! XD. I have fixed the problem with task in dialy View, now they move along the hours they belong. 1 problem... I did it in version 0.0.1 (old version) because I couldn't see (with IE7) any of the examples for version 0.0.2.

However the patch it's simple...

*****************************************************
dayview.js


// Private
render: function(){
var updateview = Ext.get(this.calx.body);
updateview.update('');
var updateview = Ext.get(this.calx.body);
var daycntbase = '<div id="' + this.calx.id + 'main-calendar-header"></div>';
daycntbase+= '<div id="' + this.calx.id + 'main-calendar-day-body"></div>';
updateview.update(daycntbase );
this.datetohandle = this.calx.currentdate;
if (this.header){
var dt = this.datetohandle;
var tmpheader = this.genHeader(this.datetohandle);
var tmpheader = Ext.get(this.calx.id + 'main-calendar-header');
var prueba2 = tmpheader;
var myheaderwrap = prueba2.wrap ({ tag: 'div', cls: 'x-calendar-dayv-header', html:'' });
myheaderwrap.dom.style.zIndex=200;
var prevdclick = myheaderwrap.createChild({ tag: 'div', cls: 'x-calendar-day-previous',html:'' });
var nextdclick = myheaderwrap.createChild({ tag: 'div', cls: 'x-calendar-day-next', html:'' });
var headerdx = myheaderwrap.createChild({ tag: 'div', id: 'header', html:'' + dt.format(this.headerFormat) + '' });

prevdclick.dom['qtip']= this.headerTooltips.prev;
prevdclick.addListener('click', this.onclickprev_day, this);
prevdclick.addClassOnOver('x-calendar-month-previous-over');

nextdclick.dom['qtip']= this.headerTooltips.next;
nextdclick.addListener('click', this.onclicknext_day, this);
nextdclick.addClassOnOver('x-calendar-month-next-over');
}
// creates thebody of the month --------------------------------------------
var htmlday = this.genBody(this.datetohandle);
var tmpdays = Ext.get(this.calx.id + 'main-calendar-day-body');
var myheaderdayswrap = tmpdays.wrap({
tag:'div', cls:'x-calendar-dayv-day', html:''
});

if (!this.calx.height ||this.calx.height=='undefined'){
var tmpheight = this.calx.getEl().dom.offsetParent.clientHeight + this.calx.getFrameHeight() ;
} else{
var tmpheight = this.calx.height;
}
myheaderdayswrap.setStyle({height:'' + tmpheight-76 + 'px' } );
myheaderdayswrap.setStyle({overflow:'auto'});

//Correct the bug in IE7 when you scroll in DayView
myheaderdayswrap.addListener('scroll',function(){
if(document.getElementById('ecaltask-1')){
document.getElementById('ecaltask-1').style.filter='alpha(opacity=100)';
document.getElementById('ecaltask-1').style.filter='';
}
})

var mydays = myheaderdayswrap.createChild({
tag:'div', id: this.calx.id + '-calendar-view-day', html:htmlday
});
// fix for the day grid
var mydaybody = Ext.get('daybody');
mydaybody.setHeight( Ext.get('tdbaseday').getHeight(true) );



// now process the task from the store to display in the grid of the day
this.tasks =[];
var counttasks= this.calx.store.getCount();
if ( counttasks>0 ){
currentindex= 0;
for (var itask=0; itask<counttasks ; itask++){
dateinit = this.calx.store.getAt(itask).data.startdate;
dateend = this.calx.store.getAt(itask).data.enddate;
checkdates = this.datetohandle.between( new Date(dateinit), new Date(dateend) );
chkformat = this.datetohandle.format('m/d/Y');
test = new Date(dateinit);
if (test.format('m/d/Y')==chkformat){ checkdates =true; }
test = new Date(dateend);
if (test.format('m/d/Y')==chkformat){ checkdates =true; }
if (this.calx.store.getAt(itask).data.color){
colortask = this.calx.store.getAt(itask).data.color ;
} else {
colortask = this.taskBaseColor;
}
if ( checkdates ){
this.tasks[currentindex]= new Ext.ECalendar.daytask({
editable: true,
parentview: this, //dayview object
baseBody: mydaybody, //ext element already created
datehandle: this.datetohandle, //date to handle
showQtip: false,
contextMenuLabels: this.contextMenuLabels,
task_index: itask,
task_subject: this.calx.store.getAt(itask).data.subject,
task_starts: this.calx.store.getAt(itask).data.startdate,
task_ends: this.calx.store.getAt(itask).data.enddate,
task_description: this.calx.store.getAt(itask).data.description,
task_clsOver:'',
task_increment:5,
task_width: 80,
bgcolor: this.calx.store.getAt(itask).data.color ,
moreMenuItems: this.moreMenuItems
});
this.tasks[currentindex].init(this.calx,this);
this.tasks[currentindex].render();
currentindex+=1;
}
}
if (this.tasks.length<=0){
mydaybody.update('&nbsp;');
}
} else {
mydaybody.update('&nbsp;');
}
}


***************************************************************

Somehow, when you do assign a filter:alpha(opacity=100) to the task's style, the task's coordinates are refresh and drawn in the screen.... :-?

Well... this is the Internet Bug Explorer's weird world... so it can happen!!

I'm going to continue fixing this version (0.0.1) for Internet Bug Explorer. Every problem solved, I'll post it ...

Thx for all =D>

phpuser
17 Jul 2008, 12:16 AM
ok, Thank you

phpuser
17 Jul 2008, 12:47 AM
Hi cmendez21,

There are bugs in sight by day, because if there is a stain and we try to modify it will automatically create another spot, I do not understand what this happening.

Thanks

cmendez21
18 Jul 2008, 10:09 AM
Hi phpuser

As far as i'm testing the most important bugs (for me) are made by some CSS cause if i made a little change or variation on the CSS (mostly positioning) then comes the trouble i have tested (on the fact how it works and its behavior on the browsers). On opera things work in different ways on some views

The CSS i made as stand alone without Ext panel as a container and works fine and the code i made for testing before integrate it on the calendar works fine but theres some how many rules that change when i integrate it on the panel.

And the funny thing its that if i test on IE6 theres a lot of bug but if i test it on ie7 theres none or changes something for the calendar.

I'm making some tests with friends and family to define behavior and functionality and making some changes unfortunately i cant go as fast as i wish cause of all my clients projects but soon i will give it more time. to make a more stable version and multiple browser functionality

Also i thank to those who have fixed some bugs

in the planning are to make some re-programming to those views which work fine (but gonna give priority to week view cause its the more unstable) to be more precise on functionality and (this was my first heavy widget so in the process of learning on how to make it may be extra code that is not necessary and now a days im in the understanding of ext much better than a few months back)

:D

drunknmunky
21 Jul 2008, 10:48 AM
I found a couple of IE7 (maybe IE6 as well) bugs in weekview.js that are stopping it from loading.

First one: Internet explorer doesn't like z-index: auto.

ExtEl.setStyle('z-index' ,'auto'); at line 446 should be replaced with

if (!(Ext.isIE) && !(Ext.isIE6) && !(Ext.isIE7)) {
ExtEl.setStyle('z-index' ,'auto');
}The tasks still aren't displaying properly for me but the page finishes loading at least. Keep in mind that Internet Explorer and z-indexes so there are bound to be more problems like this.

Second one:

bodydisp.setStyle({height:'' + (tmpheight - styleheaderheight)-morehoffst + 'px' } ); at lines 162 and 255 have given me problems because the calcuation of tmpheight-styleheaderheight-morehoffset have given me negative numbers. IE gives a javascript error and stops loading when it runs into a negative height. The problem is that the DOM isn't being created properly so tmpheight ends up being smaller than styleheaderheight+morehoffst. Anyways, I added this:

bodyheight = tmpheight-styleheaderheight-morehoffst;
if (bodyheight < 0) {bodyheight =0;} //IE ends up with a negative value -> problem
else { bodyheight+='px';}
bodydisp.setStyle('height',bodyheight); and the page loads now.
I also found a couple of extra commas but I can't remember where they were.
I used DebugBar: http://www.debugbar.com/ and Companion.JS: http://www.my-debugbar.com/wiki/CompanionJS/HomePage to find the bugs. The programs are buggy and need you to open and close internet explorer often to get the console to work (with console.log, etc). Firefox/Firebug is definitely a much better option but these help clarify some of those weird IE errors that don't make sense.

Also, I'm not using monthview.js, dayview.js or task.js so I'm able to load my page despite any errors in those files.

Keep up the good work

cmendez21
21 Jul 2008, 4:24 PM
thanks for the tip gonna check it :)

iomanip
22 Jul 2008, 4:57 PM
This the 0.0.1 E2CS's version with some adjustment for working on IE6 and IE7 (The more importants bugs). In addition, in this version you can add task, edit them and eliminate
them. Also, there's a contextual menu for the day view (similar when you left click on a task).

Coming Soon. I'll merge the Internationalization from version 0.0.2. Hope everybody find useful this tool, made it by Carlos Mendez (Thx buddy, this is what I was looking for)

Remember, I'm fixing the IE's bug and making some little improvements
for helping Carlos in his awesome work ;)

cmendez21
22 Jul 2008, 6:12 PM
thank you for the IE version
gonna check it up so i can made some adjustments to the next release for IE

=D>

cmendez21
22 Jul 2008, 10:04 PM
Notice: Heres a tip I've been checking on IE6

On some way the doctype of the page influences how the css works and some behaviors so if i remove every doctype declaration it works fine and no errors on task rendering (well at least the test I've been making)

if anyone can test this issue to check if the same happens i'd be grateful :D
thanks to all

drunknmunky
23 Jul 2008, 11:42 AM
I'm glad you found that! I was going crazy because the tasks weren't scrolling when the rest of the calendar was. My page is working in IE 6/7/8 beta at the moment. IE5.5 can't handle but that's not really surprising.
From what I remember, IE tries to render in standards mode if there's a doctype. Problem is their standards mode isn't really standards mode so it messes everything up.
Otherwise it tries to render in quirks mode which somehow gets things right.
Anyways I added this bit of php code into the start of the page so that the doctype still displays for firefox and other decent browsers.



<?php $nav = ( isset( $_SERVER['HTTP_USER_AGENT'] ) ) ? strtolower( $_SERVER['HTTP_USER_AGENT'] ) : '';

if (stristr($nav, "msie")) {
echo '<html>';
} else {
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
';
}

?>

iomanip
23 Jul 2008, 12:25 PM
Notice: Heres a tip I've been checking on IE6

On some way the doctype of the page influences how the css works and some behaviors so if i remove every doctype declaration it works fine and no errors on task rendering (well at least the test I've been making)

if anyone can test this issue to check if the same happens i'd be grateful :D
thanks to all


I'm glad you found that! I was going crazy because the tasks weren't scrolling when the rest of the calendar was. My page is working in IE 6/7/8 beta at the moment. IE5.5 can't handle but that's not really surprising.
From what I remember, IE tries to render in standards mode if there's a doctype. Problem is their standards mode isn't really standards mode so it messes everything up.
Otherwise it tries to render in quirks mode which somehow gets things right.
Anyways I added this bit of php code into the start of the page so that the doctype still displays for firefox and other decent browsers.



<?php $nav = ( isset( $_SERVER['HTTP_USER_AGENT'] ) ) ? strtolower( $_SERVER['HTTP_USER_AGENT'] ) : '';

if (stristr($nav, "msie")) {
echo '<html>';
} else {
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
';
}

?>

Hey CMendez is right... the doctype helps the document to determine a layout mode, such as "quirks mode (http://en.wikipedia.org/wiki/Quirks_mode)" or "standards mode". So, as drunknmonky said, it's not too standard... In wiki, I found a solution (an alternative to monky's solution)

http://en.wikipedia.org/wiki/Quirks_mode

Quirks mode in IE 6, and in later versions of IE, will also be triggered if anything but whitespace precedes the DOCTYPE. For example, if a hypertext document contains a comment or any tag before the DOCTYPE, quirks mode will be triggered in IE 6 and also in IE 7 and IE 8 beta:

<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/DTD/strict.dtd">

Microsoft's Chris Wilson has indicated that the problem with the XML declaration would be fixed in version 7 of Internet Explorer, in which the XML prolog will simply be ignored,[6] but for maximum compatibility with existing and older web browsers the World Wide Web Consortium, which maintains the XHTML specification, recommends that authors of XHTML documents omit the XML declaration when possible. It can however be forced into quirks mode by including a comment before the DOCTYPE declaration like so:

<!--quirks mode for ie7-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

cking
25 Jul 2008, 11:26 AM
Been looking for something to handle a nice monthly / weekly view like this, was just about to start work on my own when I came across this thread. Unfortunately, I'm getting a "bandwidth exceeded" error when trying to reach the main website. Is there any other place I can fetch the latest code to test/help debug?

cmendez21
25 Jul 2008, 12:03 PM
gonna check to repair bandwidth from the site as soon as possible
DONE..!

cmendez21
29 Jul 2008, 5:28 PM
hi guys heres one new UPDATE

(29 JULY 2008)


Updated some context Menu issues for (firefox, IE and Opera)

Also on day view if you right click on event(task) it appears one context menu but if its on days body it will appear it own.

Opera Event(task) display on day view

includes Locale Files up to date (Spanish, English, French, German, Chinese, Portuguese/Brasil)


Some Issues and strange behaviors

So in running a lot of test we found something quite funny or weird (call it like you want to) but in context menu aspects we found that if you hit the right click fast or normally it does appear the context menu for firefox and so in opera but if you hold it like about 3 or 5 seconds it does not appear and appears quite good calendar's context menu

Also we correct on Events(tasks) how the task was displayed on Opera (X pos)

Doc type its important on IE to display correctly (see previous post to chek this issue)

Also i glad to tell you we got a hosting provider which donated some space for our own E2CS calendar and Extjs samples homepage. (that doesnt means this post will no longer work this will be our starting point for bugs and EXTJS related stuff)

On the works
We are trying to make it happen this week to release


The E2cs home page and extjs related stuff (blog) spanish and english site
user (developer) manual (english only)
More Samples (with mysql data and so on)



Some new features to ADD

Event List VIEW
Full Task Form (capture, edit, delete) with standard fields also the use of custom Form properties (due to requirements of our application we found convenient to make this new view) but it doesn't hurt to add a new view

well thats all about for the moment
hope you like it :D

drunknmunky
29 Jul 2008, 9:01 PM
Hey cmendez,
Did you make any changes to calendar.js or to weekview.js for this update?
Currently those are the only two files I'm using and I'll update those accordingly if you made any changes.
Colin

cmendez21
29 Jul 2008, 9:02 PM
These files got a minor upgrade (month, day)
according the functions for context menu and some new css rules for display,on month view (1 rule)

for the week view and calendar there were nothing yet

mark_l_lewis
30 Jul 2008, 5:27 AM
Hi Carlos,

I upgraded to the latest release, changing none of my code. I had a look through calendar.js but can't quite work out what has changed so that I get an error when trying to create a calendar using lazy instantiation:



//create a config variable
var memberCalendar = {
xtype: 'e2cs_calendar',
id: 'memberCalendar',
name: 'memberCalendar', ...




//create ec2s calendar instance and add it to a tabPanel
tp.add(memberCalendar).show();

ERROR


types[config.xtype || defaultType] is not a constructor
[Break on this error] return new types[config.xtype || defaultType](config);

mystix
30 Jul 2008, 5:38 AM
@mark_l_lewis
that error usually indicates a failure to register a custom xtype.
look for a missing Ext.reg() between the old(er) and new version of this extension.

mark_l_lewis
30 Jul 2008, 5:43 AM
hi mystix,

i checked and the registration is still there - last line of calendar.js


Ext.reg('e2cs_calendar', Ext.ECalendar); // ** added on alpha 0.0.2


version needs to be upgraded though ;-)

iomanip
30 Jul 2008, 6:23 AM
hi guys heres one new UPDATE

(29 JULY 2008)
Updated some context Menu issues for (firefox, IE and Opera)
Also on day view if you right click on event(task) it appears one context menu but if its on days body it will appear it own.
Opera Event(task) display on day view
includes Locale Files up to date (Spanish, English, French, German, Chinese, Portuguese/Brasil)Some Issues and strange behaviors

So in running a lot of test we found something quite funny or weird (call it like you want to) but in context menu aspects we found that if you hit the right click fast or normally it does appear the context menu for firefox and so in opera but if you hold it like about 3 or 5 seconds it does not appear and appears quite good calendar's context menu

Also we correct on Events(tasks) how the task was displayed on Opera (X pos)

Doc type its important on IE to display correctly (see previous post to chek this issue)

Also i glad to tell you we got a hosting provider which donated some space for our own E2CS calendar and Extjs samples homepage. (that doesnt means this post will no longer work this will be our starting point for bugs and EXTJS related stuff)

On the works
We are trying to make it happen this week to release
The E2cs home page and extjs related stuff (blog) spanish and english site
user (developer) manual (english only)
More Samples (with mysql data and so on)Some new features to ADD

Event List VIEW
Full Task Form (capture, edit, delete) with standard fields also the use of custom Form properties (due to requirements of our application we found convenient to make this new view) but it doesn't hurt to add a new view

well thats all about for the moment
hope you like it :D


I think that you forget to add the "fixes/Date.js" file. It was in the "sample.htm". By the way... in the version 0.0.3 it's not posible to change to day view by click on a month view's day anymore, why?? it's easier if you click the day than clicking the button at the top.


And in the day view, you can fix the problem "the grid is not according to the hours limit" by changing the following style



.x-calendar-dayv-body .hour-marker{
font-family: Geneva, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #003366;
background-color: #D9ECFF;
height: 60px;
*height: 59px; /* Cuandos le coloca un * (asterisco) el unico Browser que puede leerlo es IE*/
text-align: center;
font-weight: normal;
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: #003366;
border-right-width: 1px;
border-right-style: solid;
border-right-color: #003366;
}

cmendez21
30 Jul 2008, 6:49 AM
IOMANIP

"fixes/Date.js" file comes from the source folder of EXT so it was an EXT bug for handling dates



I think that you forget to add the "fixes/Date.js" file. It was in the "sample.htm". By the way... in the version 0.0.3 it's not posible to change to day view by click on a month view's day anymore, why?? it's easier if you click the day than clicking the button at the top.


you have to use this property on the mview config
dayAction:'window', //viewday, event, window

in the simple_sample.htm file i changed it so you can see this new feature (window):">



mark_l_lewis


types[config.xtype || defaultType] is not a constructor
[Break on this error] return new types[config.xtype || defaultType](config);


please check if every file nad javascript file its ok and use EXT2x latest version cause i tested it and i got no problems with this issue or send me a copy of the code to
check it and test it on PM if you like ;)

iomanip
30 Jul 2008, 2:02 PM
Hey... Haven't you noticed when dragging a task in day view, and refresh the view, another task appears in the same position you drop the task?? it's because it's been updated the wrong task. I fixed that in 0.0.1_for_IE and it was because you were resetting the task index with the task array's length.

task.js


this.task_index = (this.vday.tasks.length);

:S in the last version, I noticed you add some code for an offset... what is it for?? because you're using the same index in that code.


Another thing... when you click on a month view's day, the date selected is not also selected in the calendar picker. I use this instruction for that

dayview.js


refreshView: function(){
this.render();
},
// Private
render: function(){
//Updates the Calendar button's date from Day view's date
this.calx.selector_dateMenu.picker.setValue(this.calx.currentdate);
var updateview = Ext.get(this.calx.body);
updateview.update('');
^_^' I think that it has to be the same in the month view, when selecting a day or changing a month... both calendars (E2CS and calendar picker) must be in the same day and month... (but for the month view I haven't done, I'll find out how and I'll let you know =D).

phpuser
31 Jul 2008, 7:53 AM
Thank you cmendez21 for the latest version of the calendar, and I hope soon look features on your new versions to come.

very good job.

hello

accmpp
1 Aug 2008, 6:00 AM
Hi,

First off, I want to thank you cmendez21 for this great application.

I don't have any problems rendering your app in FF3, but when I try in IE I get a blank page. I tried your sample.htm example write out of the package. It works in FF, but not in IE. I also am new to extjs, so not sure if I am missing something. The other examples from the extjs site, all render in IE for me, but I can't get your calendar to show. Any suggestions?

Thanks
accmpp

iomanip
1 Aug 2008, 6:05 AM
This the 0.0.1 E2CS's version with some adjustment for working on IE6 and IE7 (The more importants bugs). In addition, in this version you can add task, edit them and eliminate
them. Also, there's a contextual menu for the day view (similar when you left click on a task).

Coming Soon. I'll merge the Internationalization from version 0.0.2. Hope everybody find useful this tool, made it by Carlos Mendez (Thx buddy, this is what I was looking for)

Remember, I'm fixing the IE's bug and making some little improvements
for helping Carlos in his awesome work ;)


Hi,

First off, I want to thank you cmendez21 for this great application.

I don't have any problems rendering your app in FF3, but when I try in IE I get a blank page. I tried your sample.htm example write out of the package. It works in FF, but not in IE. I also am new to extjs, so not sure if I am missing something. The other examples from the extjs site, all render in IE for me, but I can't get your calendar to show. Any suggestions?

Thanks
accmpp

I suggest that read all the messages from this forum!... so you will know how is it going...
http://extjs.com/forum/showthread.php?p=198691#post198691

accmpp
1 Aug 2008, 9:59 AM
I suggest that read all the messages from this forum!... so you will know how is it going...
http://extjs.com/forum/showthread.php?p=198691#post198691

:)Sorry, I've been trying to keep up with all the posts, but I must have missed this link. I see; since I've uploaded your e2cs_alpha_0.0.1_IE version, I can get the calendar to render in IE7. I think I'll wait till you incorporate your changes into version alpha 0.3 (or the newest release), since there have been so many changes made to 0.3 also, since 0.1.

cmendez21
1 Aug 2008, 3:34 PM
gonna check issues on IE7

Couldnt have the time cause i've lost a pc (crashed) so im having it repaired
by the moment the test are on IE6 , opera 9x and firefox 2.0 and 3.0

accmpp: check the doctype cause theres a lot of troubles in IE for rendering the page remove al doc type declaration just leave



<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
........................
</body>
</html>

that could may do the trick :)


And about some issue many are reporting and my be kind of controversy :-?

In the Logic of the selector control in the calendar: if i set the selector date to the current date (in calendar view's day or something) i think the final user could get a little bit confused on the current date (if the today button may not be visible, thats my main flag so the user can not get confused but gonna think of something

cause in the app im making many final users told me, so i'm keeping it this way for the moment, but many other users have this need so i'm thinking about a new property or may be any suggestions how to handle this or may be my logic and my users got it wrong?

please let me know

cmendez21
2 Aug 2008, 5:24 AM
In the Logic of the selector control in the calendar: if i set the selector date to the current date (in calendar view's day or something) i think the final user could get a little bit confused on the current date (if the today button may not be visible, thats my main flag so the user can not get confused but gonna think of something

cause in the app im making many final users told me, so i'm keeping it this way for the moment, but many other users have this need so i'm thinking about a new property or may be any suggestions how to handle this or may be my logic and my users got it wrong?

my bad i misunderstood this concept so it's right what you said so i'm gonna make changes to make it work right the date selections with changing views. also im working more on context menus cause some thigns are quite unussual so fix this also again.

I hope tomorrow night will be a new release with more test and new sample files :D

Frank
2 Aug 2008, 9:50 AM
You did a good job, cmendez21!
I'm going to check out this Ext.ux B)

jnoodle
3 Aug 2008, 11:04 PM
monthview.js

if (icount<7 ){
var datatmp =0;
for (var iday=icount; iday<7; iday++){
datatmp=datatmp+1;
var datenew = new Date(datecreate).add(Date.DAY,datatmp);
mybody+='<td valign="top" class="daybody" height="10px"><div class="noday" id="' + datenew.format('m/d/Y') + '">' + datenew.format('j-M') + '</div>';
if (this.showTaskcount){ // get the count of task for each day
tmptasks = this.getCountTask(datecreate, this.calx.store);
if (tmptasks>0 ){
mybody+='<div class="tasks" style="' + configdata.styletasks + '">' + e2cs.cal_locale.labelforTasksinMonth + ' (' + tmptasks + ')</div>';
}
}
mybody+='</td>';
}
}

line 458: tmptasks = this.getCountTask(datecreate, this.calx.store);


I think it should be

tmptasks = this.getCountTask(datenew, this.calx.store);

cmendez21
4 Aug 2008, 10:59 AM
thanks for the observation

Also in my recent tests i've found new bugs on each view
which are now being modified and also strange behaviors on different browsers.

if anyone sees something strange please let me know so i can include it on the next release 0.0.4 maybe tonight or tomorrow morning

:D

cmendez21
5 Aug 2008, 10:53 PM
Hi everyone, Here's another update 0.0.4 please go to the first page on this thread to download the new version.. :D

News on the BIG BIG UPDATE (06 August 2008) & Major Features


1st ever Reference Manual for the E2CS calendar (PDF-english only for the moment)

Tested for Extjs 2.2 and everything went well

Mayor bugs and fixes (please see log changes on the manual)

Added more events to the calendar

Context Menu on Week View

Updated Live sample and fixed with dome extra features-here (http://scimx.net/cms21x/e2cs/samples/sample.htm)

And many more... Please download the latest version

Warning : if you are developing something with E2CS please test this new version apart so you can see changes and plan all your work and upgrade.

Hope this one wont be such a mess as the previous version
hope you like it

;)

drunknmunky
6 Aug 2008, 5:48 AM
I'm getting an error on the week view of your live sample. It should be a pretty quick fix. Seems like some of the references to the locale files aren't quite right. Here's what Firebug had to say:
e2cs.cal_locale.headerTooltipsWeek is undefined
prevdclick.dom['qtip']= e2cs.cal_lo...ipsWeek.prev; //'Semana anterior xxxxx';
weekview.js (line 87)

cmendez21
6 Aug 2008, 10:22 AM
I'm getting an error on the week view of your live sample. It should be a pretty quick fix. Seems like some of the references to the locale files aren't quite right. Here's what Firebug had to say:
e2cs.cal_locale.headerTooltipsWeek is undefined
prevdclick.dom['qtip']= e2cs.cal_lo...ipsWeek.prev; //'Semana anterior xxxxx';
weekview.js (line 87)

its fixed the locale files werent updated on the live sample :">



I did, however, notice a small bug in the sample as well. The tool tip on the dateselector in the toolbar is pushing the layout outside the viewport. The offset for the tool tip is too far right. I didn't see that anybody mentioned this before so I thought I would let you know.

Gonna check this out to fix it thanks for the observation

phpuser
7 Aug 2008, 6:23 AM
when dragging a task in day view, and refresh the view, another task appears in the same position you drop the task??

iomanip
7 Aug 2008, 6:31 AM
when dragging a task in day view, and refresh the view, another task appears in the same position you drop the task??

Yes, I think it's because of this...



Hey... Haven't you noticed when dragging a task in day view, and refresh the view, another task appears in the same position you drop the task?? it's because it's been updated the wrong task. I fixed that in 0.0.1_for_IE and it was because you were resetting the task index with the task array's length.

task.js


this.task_index = (this.vday.tasks.length);
:S in the last version, I noticed you add some code for an offset... what is it for?? because you're using the same index in that code.


Another thing... when you click on a month view's day, the date selected is not also selected in the calendar picker. I use this instruction for that

dayview.js


refreshView: function(){
this.render();
},
// Private
render: function(){
//Updates the Calendar button's date from Day view's date
this.calx.selector_dateMenu.picker.setValue(this.calx.currentdate);
var updateview = Ext.get(this.calx.body);
updateview.update('');
^_^' I think that it has to be the same in the month view, when selecting a day or changing a month... both calendars (E2CS and calendar picker) must be in the same day and month... (but for the month view I haven't done, I'll find out how and I'll let you know =D).

iomanip
7 Aug 2008, 6:40 AM
where can I download the PDF manual??? :s

drunknmunky
7 Aug 2008, 3:40 PM
First let me say excellent extention. This is truly what ext is missing.

I did, however, notice a small bug in the sample as well. The tool tip on the dateselector in the toolbar is pushing the layout outside the viewport. The offset for the tool tip is too far right. I didn't see that anybody mentioned this before so I thought I would let you know.

I think updating to Ext 2.2 might fix this problem. I haven't tested it yet but they mention that this a problem that they've addressed in the latest release: http://extjs.com/blog/2008/08/04/ext-22-released/. I'll be upgrading to Ext 2.2 today or tomorrow so I'll post my findings.

cmendez21
7 Aug 2008, 4:11 PM
where can I download the PDF manual??? :s
you mean the word version or the pdf version cause the pdf version comes int he latest release

cmendez21
7 Aug 2008, 4:25 PM
when dragging a task in day view, and refresh the view, another task appears in the same position you drop the task??
as fas i've checked this one and it has nothing to do with calendar code it has to do with this code on the sample page:


fn: function (newDataTask,Taskobj,dxview,TaskEl) { // do some stuff
var test=21; // use breakpoint in firefox here
task = newDataTask;
datatest ='Task id:' + task[0] + ' ' + task[2] + '<br>';
datatest+='recid:' + task[1] + '<br>';
datatest+='starts:' + task[3] + '<br>';
datatest+='ends:' + task[4] + '<br>';
datatest+='contents:' + task[5] + '<br>';
datatest+='index:' + task[6] + '<br>';

Ext.Msg.alert('Information Modified task', datatest);
// var myrecordtask = prueba.store.getAt( (parseInt(task[6])-1) ); //Alert...! base number of index are 1 not 0
// myrecordtask.set('startdate',task[3] );
// myrecordtask.set('enddate',task[4] );
// prueba.store.commitChanges();


the commented lines somehow on IE and opera adds a new record on the store maybe the code its wrong gonna fix this sample code. :">

it seems new bugs have appeared so i'm gonna launch a fix release cause there were important thing going on (mostly on event display: which events have to display on each view fine) this bugs are appearing as the development of the DB sample has been created.

xl801026
7 Aug 2008, 10:01 PM
undefined on 220 line var datatask = tmptask.getTaskarray(this.id) in task.js

drunknmunky
8 Aug 2008, 6:21 AM
I think updating to Ext 2.2 might fix this problem. I haven't tested it yet but they mention that this a problem that they've addressed in the latest release: http://extjs.com/blog/2008/08/04/ext-22-released/. I'll be upgrading to Ext 2.2 today or tomorrow so I'll post my findings.

I updated to Ext 2.2 and the datepicker still runs off the edge of the screen on the sample. When I run it in my implementation I don't have the same problem but I'm suspecting that's because my viewport takes up the whole screen. Ext seems to know that it will run off the dge of the screen and the datepicker is right along the edge of the window. I've found that ExtJS generally has much better support for viewports that take up the whole browser window (for stuff like resizing, positioning, etc).
So my guess is that this is an ExtJS bug and should probably be filed as one.

EDIT: Well I looked at it again and it's actually the tooltip going off the screen that cause the datepicker to go off the screen. So somehow the tooltip needs to be forced not to leave the window (not sure how to do that). Disabling the tooltip is another option since the datepicker doesn't really need much clarification as to what it's for.

iomanip
8 Aug 2008, 8:45 AM
as fas i've checked this one and it has nothing to do with calendar code it has to do with this code on the sample page:


fn: function (newDataTask,Taskobj,dxview,TaskEl) { // do some stuff
var test=21; // use breakpoint in firefox here
task = newDataTask;
datatest ='Task id:' + task[0] + ' ' + task[2] + '<br>';
datatest+='recid:' + task[1] + '<br>';
datatest+='starts:' + task[3] + '<br>';
datatest+='ends:' + task[4] + '<br>';
datatest+='contents:' + task[5] + '<br>';
datatest+='index:' + task[6] + '<br>';

Ext.Msg.alert('Information Modified task', datatest);
// var myrecordtask = prueba.store.getAt( (parseInt(task[6])-1) ); //Alert...! base number of index are 1 not 0
// myrecordtask.set('startdate',task[3] );
// myrecordtask.set('enddate',task[4] );
// prueba.store.commitChanges();
the commented lines somehow on IE and opera adds a new record on the store maybe the code its wrong gonna fix this sample code. :">

it seems new bugs have appeared so i'm gonna launch a fix release cause there were important thing going on (mostly on event display: which events have to display on each view fine) this bugs are appearing as the development of the DB sample has been created.



Are you sure??? because when I fixed that bug I found that in task.js (render function, line 78 aprox) you were reseting the index in this sentence :


this.task_index = (this.vday.tasks.length);
this.taskobject = this.baseBody.createChild({ tag: 'div', cls: 'task', html: flagstarttasttext + this.task_subject + flagendtasttext });

this.taskobject.dom.setAttribute('id', 'ecaltask-' + this.task_index + '');Also I found that it were updating the wrong index, because when it extract the index, it's also reduced by one (it shouldn't)



var myrecordtask = prueba.store.getAt( (parseInt(task[6])-1) );
that's the reason why suddenly a new task appears (because take one from another day, and put it in the current day). If you don't believe me, try it and when the new task appears, count all the task loaded and you'll find out that the task's total is the same ;)

P.S.: don't matter what Navigator, the result it's the same.

iomanip
8 Aug 2008, 10:18 AM
Hello:D

In moth's view, if the week it's not completed it presents day from the next month, right?
Have you noticed when you add a task in the month's last day, the others days from the next month also have the same count of task? (when they not necesary have task)

For example. If you take a look to August 2008 (month view), the last week has one day from August (Sunday 31) and the rest from September (1st... 6th). If you add a task from 08/31/2008 10:00 AM to 08/31/2008 01:00 PM, you will notice in the last week (by selecting August in month view) every day has 1 task, and if you check it out, only 31/08/2008 has one task the others has not. then If you move to the next month (September) you'll notice that there's no task.


monthview.js (line 288)


if (icount<7 ){
var datatmp =0;
for (var iday=icount; iday<7; iday++){
datatmp=datatmp+1;
var datenew = new Date(datecreate).add(Date.DAY,datatmp);
mybody+='<td valign="top" class="daybody"><div class="noday" id="' + datenew.format('m/d/Y') + '">' + datenew.format('j-M') + '</div>';
if (this.showTaskcount){ // get the count of task for each day
tmptasks = this.getCountTask(datenew, this.calx.store);
if (tmptasks>0 ){
mybody+='<div class="tasks" style="' + configdata.styletasks + '">' + e2cs.cal_locale.labelforTasksinMonth + ' (' + tmptasks + ')</div>';
}
}
mybody+='</td>';
}
}
mybody+='</tr>';
return mybody;
It seems when you evaluate how many task exists for that date, you pass the wrong date... Just change datecreate for datenew.

Another thing, using the same example, when watching September in month view, you cannot see how many task exists in 31 August 2008.:-?

cmendez21
9 Aug 2008, 6:36 AM
Imanip you're right there are some how many bug around that i've been testing many many dates to make sure all are displayed right

As for the next code

var myrecordtask = prueba.store.getAt( (parseInt(task[6])-1) );

its a matter on how the ID in the store is handled cause it has to store the id of the data and creates a new one but the previous code you mention it has nothing to do with the issue cause the problem comes in the drag drop feature (also checked this the code you mention its part of the creation of the event and the drag drop causes a mess cause of the id)

but still testing to fix it :)

drunknmunky
14 Aug 2008, 8:52 AM
cmendez, not sure if this applies in your situation but I've found in certain situation using getById to access data from a store works better than getAt.
It requires you to set the id when defining the reader. Example:

var reader = new Ext.data.JsonReader({
root:'data',
totalProperty: 'count',
id: 'id',
fields: [...]
});
You can then access the values by using getById(id) instead of getAt(index). Example:

var record = this.calx.store.getById(id).data

In your previous post you included this code:
var myrecordtask = prueba.store.getAt( (parseInt(task[6])-1) ); and you'd be able to use
var myrecordtask = prueba.store.getById((parseInt(task[6]))); instead. This would also allow the code to work even if the tasks weren't in order in the store.
Just a thought.

On another note, the bar/restaurant staff scheduling program that I'm creating based on e2cs/extjs is almost ready and i'll post a link and probably start a new thread when it is. If anyone's interested in using it it'll be released under the GPL so anyone who's interested is welcome to help.

cmendez21
14 Aug 2008, 1:29 PM
Heres a new update 0.0.5

(see first page of the thread for downloading the file)

mostly minor bugs on week view, monthview and calendar and task.js
(major bugs for rendering events on each view and to retrieve the correct events for each day)


drunknmunky as for the notes we are taking on the calendar's tests we have seen on firebug that the store wasn't taking the id correctly from the fields (basic sample array) instead it was taking an auto number (autogenerated id ) wich was causing the troubles with the code so it was happening with the database.

Odd but it was so the value and store functionality was wrong with

var myrecordtask = prueba.store.getAt( (parseInt(task[6])-1) );

so what worked for me in the end was

var myrecordtask = prueba.store.getById( task[1] );

Here it is a new code im using for basic database sample (included in the new release)



<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>E2CS - Database Sample</title>
<link rel="stylesheet" type="text/css" href="../ext-2.1/resources/css/ext-all.css">
<script type="text/javascript" src="../ext-2.1/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="../ext-2.1/ext-all-debug.js"></script>
<link rel="stylesheet" type="text/css" href="calendar.css">

<script type="text/javascript" src="locale/e2cs_en.js"></script>
<script type="text/javascript" src="calendar.js"></script>
<script type="text/javascript" src="monthview.js"></script>
<script type="text/javascript" src="weekview.js"></script>
<script type="text/javascript" src="dayview.js"></script>
<script type="text/javascript" src="task.js"></script>

<script type="text/javascript">
Ext.onReady(function() {
Ext.QuickTips.init();
});


function test_calendar(obj){

buttonx1= new Ext.menu.Item({ id: 'buttonx1_task', iconCls:'x-calendar-month-btnmv_task', text: "Custom menu test 1" });
buttonx2= new Ext.menu.Item({ id: 'buttonx2_task',iconCls:'x-calendar-month-btnmv_task', text: "Custom menu test 2" });

boton_daytimertask = new Ext.menu.Item({ id: 'btnTimerTask', iconCls:'task_time', text: "Set Task Alarm...." });
boton_daytimertaskb = new Ext.menu.Item({ id: 'btnTimerOff' , iconCls:'task_time_off', text: "Delete Task's Alarm...." });

calendarstoretest=new Ext.data.Store({
url:'sample_res/dbcal.php',
baseParams:{ action:'all' },
reader: new Ext.data.JsonReader({
root:'records',
id: 'id',
totalProperty: 'totalCount'
},
[{name:'recid', mapping: 'id', type: 'string'},
{name:'subject', mapping:'subject', type: 'string'},
{name:'description', mapping:'description', type: 'string'},
{name:'startdate', mapping:'startdate', type: 'string'},
{name:'enddate', mapping:'enddate', type: 'string'},
{name:'color', mapping:'color', type: 'string'}
]
)
});
// {name:'startdate', mapping:'startdate', type: 'date',dateFormat:'m/d/Y H:i:s'},
// {name:'enddate', mapping:'enddate', type: 'date',dateFormat:'m/d/Y H:i:s'},
prueba = new Ext.ECalendar({
id: 'test_calendar',
name: 'test_calendar',
title: 'Calendar Sample',
mytitle: ' 001',
// width:750,
height:400,
showCal_tbar: true,
showRefreshbtn:true,
currentView: 'month',
currentdate: new Date(),
dateSelector: true,
dateSelectorIcon: 'images/date.png',
dateSelectorIconCls: 'x-cmscalendar-icon-date-selector',
dateformat :'d-m-Y',
header: true,
title: 'Calendar Sample',
mytitle: ' 001',
iconCls: 'x-cmscalendar-icon-main',
dateSelector:true,
store: calendarstoretest,
widgetsBind: {bindMonth:null,bindDay:null,binWeek:null},
tplTaskZoom: new Ext.XTemplate(
'<tpl for=".">',
'<div class="ecal-show-basetasktpl-div"><b>Subject:</b>{subject}<br>',
'<b>Starts:</b>{startdate}<br><b>Ends:</b>{enddate}',
'<br><b>Details:</b><div><hr><div>{description}<div><hr>',
'</tpl>'
),
iconToday:'images/cms_calendar.png',
iconMonthView:'images/calendar_view_month.png',
iconWeekView:'images/calendar_view_week.png',
iconDayView:'images/calendar_view_day.png',
mview:{
header: true,
headerFormat:'F-Y',
headerButtons: true,
dayAction:'viewday', //dayAction: //viewday , event, window
moreMenuItems:[buttonx1,buttonx2],
showTaskcount: true,
taskStyle:'margin-top:10px;' //Css style for text in day(if it has tasks and showtaskcount:true)
},
wview:{
headerlabel:'Semana #',
headerButtons: true,
dayformatLabel:'D j',
moreMenuItems:[buttonx1,buttonx2],
style: 'google',
alldayTaksMore:'window',
alldayTasksMaxView:4,
store: null,
task_width:30,
tasksOffset:40
},
dview:{
header:true,
headerFormat:'l - d - F - Y',
headerButtons: true,
headerTooltips: { prev: 'Previous month..', next: 'Next Month' },
contextMenuLabels: {
task: "Create Task",
chgwview: "Change to month view.",
chgdview: "Change to week view."
},
moreMenuItems:[],
// day specific
hourFormat: 'G',
startTime: '07:00:00 am',
endTime: '10:00:00 pm',
// task settings
store: null,
taskBaseColor: '#ffffff',
useMultiColorTasks: false,
multiColorTasks:[],
tasks:[],
moreMenuItems:[
boton_daytimertask,
boton_daytimertaskb
],
contextMenuLabels:{ taskAdd: "New Task",
taskDelete: "Delete task",
taskEdit: "Edit Task:",
NextDay: "Go to next Day",
PreviousDay: "Go to Prev. day"},
fields:{subject:'subject',
description:'description',
startdate:'startdate',
enddate:'enddate',
color:'color'}
}

});
//dayClick only event on this object
prueba.viewmonth.on({
'dayClick':{
fn: function(datex, mviewx, calx) {
alert ("dayclick event for " + datex);
},
scope:this
},
'beforeMonthChange':{
fn: function(currentdate,newdate) {
alert ("gonna change month to " + newdate.format('m/Y') + ' Actual date=' + currentdate.format('m/Y') );
return false;
},
scope:this
},
'afterMonthChange':{
fn: function(newdate) {
calendarstoretest.baseParams={ action:'month', displaymonth:'' + newdate.format('m') + ''};
calendarstoretest.reload();
alert ("Month changed to " + newdate.format('F') ) ;
},
scope:this
}
});
prueba.viewweek.on({
'dblClickTaskAllDay':{
fn: function(task,dxview,calendar) {
var datatest='Task all day <br>record No:' + task[0] + '<br>';
datatest+='id-task:' + task[1] + ' ' + task[2] + '<br>';
datatest+='starts:' + task[3] + '<br>';
datatest+='ends:' + task[4] + '<br>';
datatest+='contents' + task[5] + '<br>';
datatest+='index' + task[6] + '<br>';
Ext.Msg.alert('Information', datatest);
},
scope:this
},
'beforeWeekChange':{
fn: function (currentDate, newDate){
return false;
}
},
'afterWeekChange':{
fn: function(newdate){
return false;
}
}
});

//'beforeDayChange' and 'afterDayChange' unique events on day view
prueba.viewday.on({
'beforeDayChange':{
fn: function(currentdate, newdate) {
alert ("gonna change to " + newdate.format('m/d/Y') + ' Actual date=' + currentdate.format('m/d/Y') );
return false;
},
scope:this
},
'afterDayChange':{
fn: function(newdate) {
alert ("changed to " + newdate.format('m/d/Y'));
},
scope:this
}
});


prueba.on({
'beforeChangeDate': {
fn: function( newdate , calobj){
//return true;
}
},
'afterChangeDate':{
fn: function( newdate , calobj){
alert ("Date changed to:" + newdate.format('d-m-Y'));
}
},
'onChangeView':{
fn: function(newView, oldView, calobj){
Ext.get("samplebox_cview").update("<b>Current View:</b> " + newView);
},scope: this
},
'beforeChangeView':{
fn: function (newView,OldView,calendarOBJ){
if (newView==OldView){
return true;
}
var r=confirm("Change from " + OldView + " to " + newView);
return r;
},scope:this
},
'taskAdd':{
fn: function( datex ) {
alert ("Adding Task for " + datex);
}
},
'taskDblClick':{
fn: function (task,dxview,calendar,refviewname){
var datatest='Record No:' + task[0] + '<br>';
datatest+='id-task:' + task[1] + ' ' + task[2] + '<br>';
datatest+='starts:' + task[3] + '<br>';
datatest+='ends:' + task[4] + '<br>';
datatest+='contents' + task[5] + '<br>';
datatest+='index' + task[6] + '<br>';
Ext.Msg.alert('Information on Object - ' + refviewname, datatest);
},
scope:this
},
'beforeTaskDelete': {
fn: function (datatask,dxview) {
return false;
// do your stuff to check if the event/task could be deleted
}, scope:this
},
'onTaskDelete':{
fn:function(datatask){
var r=confirm("Delete event " + datatask[1] + " " + datatask[2] + "...? YES/NO" );
return r;
// do your stuf for deletion and return the value
},scope:this
},
'afterTaskDelete':{
fn: function(datatask,action){
action ? alert("Event: " + datatask[1] + " " + datatask[2] + " Deleted"): alert("Event Delete was canceled..!");
// perform any action after deleting the event/task
},scope:this
},
'beforeTaskEdit': {
fn: function (datatask,dxview) {
return false;
}, scope:this
},
'onTaskEdit':{
fn:function(datatask){
//var r=confirm("Edit event " + datatask[1] + " " + datatask[2] + "...? YES/NO" );
return true;
// do your stuf for editing and return the value
},scope:this
},
'afterTaskEdit':{
fn: function(datatask,action){
// perform any action after deleting the event/task
if (action){
alert("Event: " + datatask[1] + " " + datatask[2] + " Edited");
} else {
alert("Event Edit was canceled..!");
}
return false;
},scope:this
},
'beforeTaskMove':{
fn: function (datatask,Taskobj,dxview,TaskEl) { // return "true" to cancel or "false" to go on
return false;
}, scope:this
},
'TaskMoved':{
fn: function (newDataTask,Taskobj,dxview,TaskEl) { // do some stuff
var test=21; // use breakpoint in firefox here
task = newDataTask;
datatest ='Task id:' + task[0] + ' ' + task[2] + '<br>';
datatest+='recid:' + task[1] + '<br>';
datatest+='starts:' + task[3] + '<br>';
datatest+='ends:' + task[4] + '<br>';
datatest+='contents:' + task[5] + '<br>';
datatest+='index:' + task[6] + '<br>';
Ext.Msg.alert('Information Modified task', datatest);
var myrecordtask = prueba.store.getById( task[1] ); //Alert...! base number of index are 1 not 0
myrecordtask.set('startdate',task[3] );
myrecordtask.set('enddate',task[4] );
prueba.store.commitChanges();
}, scope:this
},
'customMenuAction':{
fn: function (MenuId, Currentview, datatask,objEl,dxview){
var datatest = '';
if (Currentview=='month'){
task = datatask;
datatest ='Day :' + task[0] + '<br>';
datatest+='type:' + task[1] + '<br>';
Ext.Msg.alert('(Month) Information- ' + Currentview, datatest);
} else if (Currentview=='day'){
task = datatask;
datatest ='Task id:' + task[0] + ' ' + task[1] + '<br>';
datatest+='starts:' + task[2] + '<br>';
datatest+='Ends:' + task[3] + '<br>';
datatest+='contents:' + task[4] + '<br>';
datatest+='index:' + task[5] + '<br>';
datatest+='Test Menu:' + MenuId + '<br>';
Ext.Msg.alert('(Day) Task information' + Currentview, datatest);
} else if (Currentview=='week'){

}
},scope:this
}

});
prueba.render('calendar');
calendarstoretest.load();
calendarstoretest.on('load',function(){
prueba.refreshCalendarView(true);
});


}
function testfechas(data) {
var pruebax = Ext.getCmp('test_calendar');
if (data==1) {
alert( pruebax.getCalendarMonth() );
} else if (data==2) {
alert( pruebax.getCalendarYear() );
} else if (data==3) {
alert( pruebax.getCalendarDay() );
} else if (data==4){
alert( pruebax.getCalendayWeekDay('') );
} else {
alert( pruebax.getCalendayWeekDay('str') );
}
}

function samplemonth(data){
switch(data){
case 1:
Ext.get("testsvc1").dom.checked ? prueba.viewmonth.showTaskcount=true : prueba.viewmonth.showTaskcount=false;
prueba.changeView('month',prueba.currentdate);
break;
case 2:
var valtochange = Ext.get("selectmonthaction").getValue();
prueba.viewmonth.dayAction=valtochange;
break;
case 3:
if (prueba.currentView!='month'){
alert ("first Change to month view..!");
return false;
}
if (prueba.viewmonth.ZoomDay(prueba.currentdate.format('m/d/Y'))==false){
alert ("No events for this day...!");
}
break;
default:
return false;
break;
}
}
function sampleday(data){
switch(data){
case 1:
var newval = Ext.get("numtskwidthday").getValue();
var regxpstr = newval;
var pattern = /^[0-9]*$/
if ( pattern.test(regxpstr) == false) {
alert("new width must be an integer..!");
} else{
(newval<20)? prueba.viewday.task_width=20 : prueba.viewday.task_width = newval;
(newval>120)? prueba.viewday.task_width=120 : prueba.viewday.task_width = newval;
prueba.refreshCalendarView(true);
}
break;
default:
return false;
break;
}
}
function sampleweek(data){
switch(data){
case 1:
//alert ("hola");
var newval = Ext.get("numtskwidthweek").getValue();
var regxpstr = newval;
var pattern = /^[0-9]*$/
if ( pattern.test(regxpstr) == false) {
alert("new width must be an integer..!");
} else{
(newval<20)? prueba.viewweek.task_width=20 : prueba.viewweek.task_width = newval;
(newval>120)? prueba.viewweek.task_width=120 : prueba.viewweek.task_width = newval;
prueba.refreshCalendarView(true);
}
//alert ("hola2");
break;
default:
return false;
break;
}
}
</script>
<style type="text/css">
body { margin-left: 10px; margin-top: 10px; margin-right: 10px; margin-bottom: 10px;}
.maintitle {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 18px;
color: #003366;
}
.task_time {background-image: url(imgs/clock.png);}
.task_time_off {background-image:url(imgs/clock_red.png);}
#samplebox #sampleboxtitle {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
color: #FFFFFF;
background-color: #003366;
padding: 3px;
}
#samplebox { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px;}
#samplebox .textsample{ font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px;}
#settings_monthview {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 14px;
color: #FFFFFF;
background-color: #006633;
padding: 4px;
font-weight: bold;
}
</style>
</head>
<body onLoad="test_calendar();">
<p class="maintitle">E2CS calendar - Basic Sample</p>
<hr color="#006600" noshade>
<div>Colors: <span style="background-color:#F7C9F7">pending events</span> |
<span style="background-color:#AAF7A8">In progress</span> |
<span style="background-color:#D77472">Pending</span></div>
<p>&nbsp;</p>
<div id="calendar"></div>
<div id="pruebapanel"></div>
<p>&nbsp;</p>
<div id="samplebox">
<div id="sampleboxtitle">Sample BOX</div>
<div id="newdateselectorsample"></div>

<hr color="#003366" noshade>
<div id="samplebox_cview"><b>Current View</b>: Month</div>
<p>&nbsp;</p>

<div>

<div >
<table width="60%" border="0" align="center">
<tr class="textsample">
<td colspan="2" ><div id="settings_monthview">Calendar</div></td>
</tr>
<tr class="textsample">
<td colspan="2" >
<div align="center">
<input type="button" name="button7" id="button7" value="Year" onClick="testfechas(2);" />
<input type="button" name="button3" id="button3" value="Month" onClick="testfechas(1);" />
<input type="button" name="button3" id="button3" value="Day" onClick="testfechas(3);" />
<input type="button" name="button3" id="button3" value="Week Day" onClick="testfechas(4);" />
<input type="button" name="button3" id="button3" value="Week Day 2" onClick="testfechas(5);" />
</div></td>
</tr>
<tr class="textsample">
<td colspan="2" ><div id="settings_monthview">Month view</div></td>
</tr>
<tr class="textsample">
<td width="47%" ><b>Month - showtask count on each day : </b></td>
<td width="53%">
<form name="formshowtaskcount" id="formshowtaskcount">
<label><input name="showtaskcountval" type="radio" value="1" id="testsvc1" checked>Yes</label>
<label><input name="showtaskcountval" type="radio" value="0" id="testsvc2">No</label>
&nbsp;&nbsp;<input type="button" name="button4" id="button4" value="Refresh Calendar" onClick="samplemonth(1);">
</form></td></tr>
<tr class="textsample">
<td ><b>Month - Select action to Perfom on day click</b> </td>
<td><form name="form1" method="post" action="">
<select name="selectmonthaction" id="selectmonthaction">
<option value="viewday">Change to Day view</option>
<option value="window">Show Window With tasks</option>
<option value="event">Launch Event</option>
</select>
<input type="button" name="button5" id="button5" value="Go" onClick="samplemonth(2);">
</form> </td>
</tr>
<tr class="textsample">
<td ><b>Month - Manually Zoom Day tasks</b></td>
<td><input type="button" name="button6" id="button6" value="Zoom" onClick="samplemonth(3);"></td>
</tr>
<tr class="textsample">
<td colspan="2" ><div id="settings_monthview">Day view</div></td>
</tr>
<tr class="textsample">
<td ><b>Day - Change Event(task) Width </b></td>
<td><input name="numtskwidthday" type="text" id="numtskwidthday" value="50" size="6" maxlength="3">
<input type="submit" name="button" id="button" value="change" onClick="sampleday(1);"></td>
</tr>
<tr class="textsample">
<td colspan="2" ><div id="settings_monthview">Week view</div></td>
</tr>
<tr class="textsample">
<td ><b>Week - Change Event(task) Width</b></td>
<td><input name="numtskwidthweek" type="text" id="numtskwidthweek" value="50" size="6" maxlength="3">
<input type="submit" name="buttonweek" id="buttonweek" value="change" onClick="sampleweek(1);"></td>
</tr>
</table>
</div>
</div>
<div>
</div>
</div>
</body>
</html>





sql code



CREATE TABLE `e2cs_test` (
`id` INTEGER(11) NOT NULL,
`subject` VARCHAR(50) COLLATE latin1_swedish_ci NOT NULL,
`description` VARCHAR(150) COLLATE latin1_swedish_ci NOT NULL,
`startdate` DATETIME DEFAULT NULL,
`enddate` DATETIME DEFAULT NULL,
`finished` TINYINT(4) DEFAULT NULL
)ENGINE=MyISAM COMMENT='' CHECKSUM=0 DELAY_KEY_WRITE=0 PACK_KEYS=0 MIN_ROWS=0 MAX_ROWS=0 ROW_FORMAT=DYNAMIC CHARACTER SET 'latin1'
COLLATE 'latin1_swedish_ci';

COMMIT;



/* Data for the `e2cs_test` table (Records 1 - 30) */

INSERT INTO `e2cs_test` (`id`, `subject`, `description`, `startdate`, `enddate`, `finished`) VALUES
(1, 'Event number 1', 'Description event in tests 6', '2008-08-10 10:02:10', '2008-08-10 11:47:21', 1),
(2, 'Event number 2', 'Description event in tests 5', '2008-08-08 10:02:10', '2008-08-21 09:19:20', 2),
(3, 'Event number 3', 'Description event in tests 6', '2008-08-10 10:02:10', '2008-08-16 09:05:13', 2),
(4, 'Event number 4', 'Description event in tests 8', '2008-08-28 08:00:00', '2008-08-28 09:01:02', 0),
(5, 'Event number 5', 'Description event in tests 7', '2008-08-26 08:15:00', '2008-08-26 09:45:00', 0),
(6, 'Event number 6', 'Description event in tests 2', '2008-08-15 10:02:10', '2008-08-15 14:15:00', 2),
(7, 'Event number 7', 'Description event in tests 7', '2008-08-16 10:00:00', '2008-08-17 09:00:00', 0),
(8, 'Event number 8', 'Description event in tests 9', '2008-08-03 13:00:00', '2008-08-05 09:46:39', 2),
(9, 'Event number 9', 'Description event in tests 3', '2008-08-11 10:02:10', '2008-08-22 08:54:12', 2),
(10, 'Event number 10', 'Description event in tests 5', '2008-08-21 10:02:10', '2008-08-23 09:55:54', 1),
(11, 'Event number 11', 'Description event in tests 0', '2008-08-07 17:00:00', '2008-08-08 09:09:01', 1),
(12, 'Event number 12', 'Description event in tests 3', '2008-08-01 11:00:00', '2008-08-01 12:30:19', 1),
(13, 'Event number 13', 'Description event in tests 8', '2008-08-26 10:02:10', '2008-08-26 21:56:12', 0),
(14, 'Event number 14', 'Description event in tests 0', '2008-07-30 08:30:10', '2008-08-02 10:38:12', 1),
(15, 'Event number 15', 'Description event in tests 2', '2008-07-30 10:02:10', '2008-09-01 09:40:26', 1),
(16, 'Event number 16', 'Description event in tests 3', '2008-07-16 10:02:10', '2008-07-17 09:17:24', 1),
(17, 'Event number 17', 'Description event in tests 7', '2008-07-07 10:00:00', '2008-07-07 10:45:00', 2),
(18, 'Event number 18', 'Description event in tests 5', '2008-07-08 10:02:10', '2008-07-24 09:15:51', 1),
(19, 'Event number 19', 'Description event in tests 1', '2008-07-01 14:00:00', '2008-07-01 17:40:00', 1),
(20, 'Event number 20', 'Description event in tests 9', '2008-07-17 10:02:10', '2008-07-23 08:49:28', 1),
(21, 'Event number 21', 'Description event in tests 5', '2008-07-29 10:02:10', '2008-07-30 10:01:17', 0),
(22, 'Event number 22', 'Description event in tests 7', '2008-07-15 10:02:10', '2008-07-15 11:49:18', 2),
(23, 'Event number 23', 'Description event in tests 0', '2008-07-01 10:02:10', '2008-07-09 08:43:49', 1),
(24, 'Event number 24', 'Description event in tests 2', '2008-07-03 10:02:10', '2008-07-19 09:18:41', 1),
(25, 'Event number 25', 'Description event in tests 8', '2008-07-23 10:02:10', '2008-07-30 08:22:14', 2),
(26, 'Event number 26', 'Description event in tests 4', '2008-07-05 10:02:10', '2008-07-16 08:56:11', 2),
(27, 'Event number 27', 'Description event in tests 0', '2008-07-14 10:00:10', '2008-07-17 08:59:23', 0),
(28, 'Event number 28', 'Description event in tests 1', '2008-07-15 10:02:10', '2008-07-25 08:52:26', 1),
(29, 'Event number 29', 'Description event in tests 5', '2008-07-18 08:00:10', '2008-07-18 11:35:39', 1),
(30, 'Event number 30', 'Description event in tests 7', '2008-07-16 10:02:10', '2008-07-16 18:00:00', 1);


also try the latest update so it can work better this sample (next post) for the update release :">

If theres anything i can help you with the bar/restaurant staff scheduling program i'll be glad to help you in anything i can..! :D

still working on my app so you could be the first to release an app with the calendar, very Nice..!

phpuser
18 Aug 2008, 12:54 AM
Good job,

I come not to operate the calendar with the database

thanks

phpuser
18 Aug 2008, 2:57 AM
I created a database with the name tests-cms I can't recover data in the grid

thanks

cmendez21
20 Aug 2008, 2:55 PM
PHPuser, Check the php file and adjust it to your needs (user, DBname , pass) or check the if the store values are right or does have any records :-?

Also Notice:
20 august 2008
Finally we have published our own blog for e2cs calendar and ext related stuff , also new downloads will be on the download page , And many more new things to come

Spanish / English languages

Still working on some content yet but we are trying to get it as soon as possible.

Check it out here: http://e2cs.mm-mendez.com

:D Hope you like the site

mark_l_lewis
24 Aug 2008, 8:43 AM
Hi,

I think i have found a bug with loading 2 instances of Ext.ECalendar().

Scenario:
1) I create a tab panel
2) I create 2 instances of the calendar widget via the new Ext.ECalendar() and them to seperate tab panels.

The first calendar is loaded and rendered correctly. The second appears to render the month view ok but when switching between dayview and the weekview the tasks do not appear and neither do the lines for that view.

I'll try and dig around see If I can work it out.

M

jimkan
31 Aug 2008, 1:34 AM
I see that this calendar can be used in two ways.
Either 1. As a normal Calendar with your tasks (online calendar)
or 2. As a calendar of booking/rent resources (rooms, items (cars, books)).

Seems like this calendar is easy to use with 1.... Would be nice to see a branch going towards nr 2 :)

Because all online bookings works almost the same all over the world, depending on what kind of thing you want to rent or book.

iomanip
1 Sep 2008, 9:20 AM
Hi,

I think i have found a bug with loading 2 instances of Ext.ECalendar().

Scenario:
1) I create a tab panel
2) I create 2 instances of the calendar widget via the new Ext.ECalendar() and them to seperate tab panels.

The first calendar is loaded and rendered correctly. The second appears to render the month view ok but when switching between dayview and the weekview the tasks do not appear and neither do the lines for that view.

I'll try and dig around see If I can work it out.

M

I think that the problems is the id's. Every component has it's own id, but when you create another calendar it use the same id (for creating div's) and thats the problem because of you cannot create 2 components with same id in the same document (since tab panels are in the same document, not like the frames) So I think it could be the problem.


By the way, I have problems when I try to purge the ECalendar element, it always throws me an exception from ExtJS core... I have no idea... maybe somebody can explain us what is wrong...

mark_l_lewis
1 Sep 2008, 12:01 PM
iomanip,

yes, i think you are right. I used firebug to check the dayview id and both instances share 'daybody'.

I will look to change all the references to this.id + '-daybody'. There are also a few for 'daylayoutbody'

M

cmendez21
1 Sep 2008, 1:52 PM
hi guys,
Gonna check this issue as fast as i can and i will release the upgrade fixing this issues

haven't tried yet 2 calendars on the same page :-?



I have problems when I try to purge the ECalendar element, it always throws me an exception from ExtJS core... I have no idea... maybe somebody can explain us what is wrong...


can you post some code to see what the problem is and fix it
thanks

jimpa911
3 Sep 2008, 2:51 AM
This calendar works even better in http://www.google.com/chrome browser than in
firefox or Internet explorer.... IE have some problem with scrolling in week view.
Firefox have problems with scandinavian characters..... Chrome works like :))

cmendez21
3 Sep 2008, 10:49 AM
that's one big relief :D

cause a big application i'm developing doesn't work fine on Chrome (webkit) :((

but what i like about chrome its that is tooooooooooo fast B)

I'm testing right now and its awesome the speed on the simple sample and the DB sample
although the right click still have the same issue as the other browsers which you have to make the timing of the click so it can show properly but its fine everything else on Chrome

cmendez21
7 Sep 2008, 6:29 PM
Here's some news

Yes if there are 2 instances of calendar controls and the same views these ones conflicts on each other for some ids of DOM elements generated (this issue happens on each view)

Also there are some conflicts with the containers such as tabs, different type-layouts and more cause it renders the height diferently on each container we still repairing this issue

We are still on the works to make this work fine but the work and test are a lot we hope in 2 weeks we release the fixed version and 2 or more calendar are going to work fine.

Also on chrome some css renders quite strange if something has noticed or cheked this issue and have a solution please let us know so we can fix it also (meanwhile the first issues still at works), thanks..!

:D

cmendez21
8 Sep 2008, 10:30 PM
:) Hi everybody the new release alpha 0.0.6 and also its the first beta for the calendar

According to many test Its quite stable for a production development (we have around 3 private apps already in progress and running ) and quite well the performance of each one of them.

Changes:

* Chinese locale file updated to the last version thanks to Sniperdiablo
* Fixed crash or conflicts on some Dom ID’s generated by the code when two or more controls are on the same page (tab sample)
* Fixes minor render issues when The calendar its contained on Ext.Components such as Tabs, Layouts , Panels and so on
* New file (e2cs package - e2cs_pack.js) includes all the code (source files) to make the calendar work on previous releases on one single file :D
* Also the documentation has been updated (minor changes)
* New Sample file (Sample with tab panel)

Note: on Chrome some css issues are around but checking also for fix them.

for more see
download (http://e2cs.mm-mendez.com/?page_id=3&language=en) (english) page
descargas (http://e2cs.mm-mendez.com/?page_id=3&language=es) (spanish) page

Live samples are ready also here (http://e2cs.mm-mendez.com/?page_id=4&language=en)

Still the week view needs more work on some minor issues and rendering issues too.:-? but working hard to make them ready as soon as possible.!

hope you like it.!

pcrombach
11 Sep 2008, 2:13 AM
Hi,

Great work. In 2007 I build a calendar in HTML. Since I am fan of Extjs I switch to e2cs.

I want to report a bug. In weekvieuw. In FF if you shrink the browser window, the dayevent dont shrink proprerly. The result is that de dayevents are not inline withe days.

pcrombach
11 Sep 2008, 2:23 AM
Here is my contribution on locale.js dutch version

Remy
11 Sep 2008, 4:49 AM
Carlos, fantastic work!

Looking forward to dabbling with this, been looking for an integrated ExtJS schedule type component for a LONG time.

Here's a Polish Locale for you, I will email this also as some characters are not translating accurately!

cheers,
R


[CODE]Ext.namespace('e2cs.cal_locale');
e2cs.cal_locale={
// Calendar locale
dateSelectorText: 'Wybierz..',
dateSelectorTooltip: 'Wybierz Dat

cmendez21
11 Sep 2008, 10:07 AM
Carlos, fantastic work!

Looking forward to dabbling with this, been looking for an integrated ExtJS schedule type component for a LONG time.

Here's a Polish Locale for you, I will email this also as some characters are not translating accurately!

cheers,
R

Thanks Remy for the file gonna include it on the next release and documentation ;)



Hi,
Great work. In 2007 I build a calendar in HTML. Since I am fan of Extjs I switch to e2cs.

I want to report a bug. In weekvieuw. In FF if you shrink the browser window, the dayevent dont shrink proprerly. The result is that de dayevents are not inline withe days.


yes the week view still has some rendering bugs but we are working on that for the next release, this view has the most troubles than the others , and thanks for reporting this bug we haven't noticed yet :">

cmendez21
11 Sep 2008, 1:24 PM
Remy i got a message from you about jquery,
for use the e2cs calendar with jquery please check your files order like this:


<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery-plugins.js"></script>
<script type="text/javascript" src="js/ext-jquery-adapter.js"></script>

Heres the basic sample adapted to Jquery



<link rel="stylesheet" type="text/css" href="../ext-2.2/resources/css/ext-all.css">
<script type="text/javascript" src="../ext-2.2/adapter/jquery/jquery.js"></script>
<script type="text/javascript" src="../ext-2.2/adapter/jquery/ext-jquery-adapter.js"></script>
<!--<script type="text/javascript" src="../ext-2.2/adapter/ext/ext-base.js"></script>-->
<script type="text/javascript" src="../ext-2.2/ext-all-debug.js"></script>
<link rel="stylesheet" type="text/css" href="calendar.css">

<script type="text/javascript" src="locale/e2cs_en.js"></script>
<script type="text/javascript" src="e2cs_pack.js"></script>


i've tested and works fine without problems ;)

Remy
11 Sep 2008, 2:33 PM
Sorry Carlos, rechecked and I actually had a typo in there, seems to be working now :D

Not able to get any DB records displayed as yet but its probably a JSON issue, I'm using Classic ASP.

Remy
12 Sep 2008, 7:28 AM
Would there be an obvious reason why I can't seem to use the View buttons? No error when I click them. If I start in month view, neither the week or day view changes when clicking the buttons, if I click the month button while in month view the beforeChangeView and changeView events fire but not for day or week.

If I select a task and enter day view, the beforeChangeView and changeView events fire when Day View button is clicked but nothing for the week or month buttons. Very confusing.

I know this isn't a bug and its something stupid I'm doing, I've cobbled the source from the DB and panel examples so there must be something I've missed :-?

Remy

cmendez21
12 Sep 2008, 7:43 AM
Check the basic sample code (in this file the code is more complete )
and read the manual (pdf)

When changing views the control launch an event when you set the permission to change the view according some settings also in month view you have the property dayAction you can set it like this

dayAction:'viewday',
//dayAction: //viewday,event, window

Remy
12 Sep 2008, 8:51 AM
hmmm, still not working... The dayAction is fine but the buttons on the toolbar and the context menus are not firing the change events (the events fire when I click the button corresponding to the current view), can't seem to see why as the listeners are defined.
-Update-
Just checked again and removed some code, the event does get called but never successfully executes

var r=confirm("Change from " + OldView + " to " + newView);

If I simply "return true;" prior to this then the view changes ok, bizarre, this doesn't happen on your sample pages so its definately a local issue....

So what is happening is the confirm dialog is never displayed, the var is being set to false and returning that.

Remy

xhoch2
15 Sep 2008, 12:50 AM
First thanks for your great work!



* New file (e2cs package - e2cs_pack.js) includes all the code (source files) to make the calendar work on previous releases on one single file :D


Is there the possibility to download a version with a not minified source code for debugging and testing?

mark_l_lewis
15 Sep 2008, 9:47 AM
First thanks for your great work!



Is there the possibility to download a version with a not minified source code for debugging and testing?


you should be able to re-format the e2cs_pack.js file using something like aptana IDE. this file isn't minified

cmendez21
16 Sep 2008, 11:24 AM
Hi,
Great work. In 2007 I build a calendar in HTML. Since I am fan of Extjs I switch to e2cs.

I want to report a bug. In weekvieuw. In FF if you shrink the browser window, the dayevent dont shrink proprerly. The result is that de dayevents are not inline withe days.

I've checked this issue and its cause on the sample Layout isn't properly well coded you have to play with some configurations like layout:'fit' , monitorResize:true on the containers that will contain the calendar to properly redraw week view (gonna update the layout sample )


First thanks for your great work!
Is there the possibility to download a version with a not minified source code for debugging and testing?
Glad you like it

:"> my bad didn't include the files for debugging gonna release an update for the last release version


you should be able to re-format the e2cs_pack.js file using something like aptana IDE. this file isn't minified
I compacted using js builder, i leave it that way cause it could be easier to report bugs or something else that could happen.

cmendez21
16 Sep 2008, 11:53 AM
The update of 0.0.6 file is already on the site
(source files included and .sql file for db sample)

http://e2cs.mm-mendez.com/?page_id=3&language=en

http://e2cs.mm-mendez.com/?page_id=3&language=es

Thanks for reporting this ;)

xhoch2
16 Sep 2008, 12:49 PM
Thanks for reporting this ;)
Thanks for the fast reaction!;)

leeby
17 Sep 2008, 5:47 AM
looks very nice

RugWarrior
17 Sep 2008, 10:37 AM
Hi,

I updated the german translation:

Sorry for the delay but I am currently quite busy. I started the translation of the manual but I will delay it till the final version.

Cu
Sol Neckels

PS: Please change from RugWarrior to Sol Neckels :)

[code]// --------------------------------------------------
// E2CS Extjs-Event-Calendar-Solution alpha(0.0.1)
// @Version E2CS-0.0.1 june 27 2008
// German
// @Author- translation: RugWarrior
// @contact: mateus@mattsoft.eti.br
// --------------------------------------------------
//
// @license E2CS is licensed under the terms of
// the Open Source LGPL 3.0 license. Commercial use is permitted to the extent
// that the code/component(s) do NOT become part of another Open Source or Commercially
// licensed development library or toolkit without explicit permission.
//
// --------------------------------------------------
Ext.namespace('e2cs.cal_locale');
e2cs.cal_locale={
// Calendar locale
dateSelectorText: 'W

cmendez21
17 Sep 2008, 4:32 PM
Thanks for the update..!
:)

Remy
18 Sep 2008, 7:45 AM
Hi,

I wonder if you would consider the following
- could the monthview display X chars of the task subject rather than a group total of the tasks?
- in week and day view, I think a task should take up the entire width of the day unless it shares the same period with another and then all overlapping tasks should span the day (see Google calendar as an example)

I know you are busy on the component and these are merely suggestions but I think they would be beneficial if introduced at some point.

Remy

cmendez21
18 Sep 2008, 10:21 AM
actually those are some issues we want to achieve at some moment , cause we were making many tests on how to accomplish that and the css we have tried does not allows that on many browsers but were gonna make it sooner or later :D

mark_l_lewis
21 Sep 2008, 11:28 PM
hi,

not sure what has changed, but having upgraded to the latest release and changed my path to /source/calendar.js, etc, i keep getting Ext.ECalendar () not a constructor?

i've gone through the code and the Ext.ECalendar() is correctly defined.

any ideas? i even cut and pasted the basic sample into my webpage and that didn't work either. totally lost.

mark

mark_l_lewis
22 Sep 2008, 8:06 AM
got it working in the end. had to restart the Xampp server for some reason and then it started working. very strange.

i am still having problems with the dayview when there are more than one calendars in a tabpanel. presumable there are still some unique ids in use for this view?

cmendez21
23 Sep 2008, 1:13 PM
please, can you describe the issues or where in the day view does conflict? cause i've got no problems on the sample and apps :-?

maybe something i haven't tested :s

tenthcup
24 Sep 2008, 1:09 PM
Why have the functions of genHeader, genDaysHeader, and genBody in monthview.js been called 3 times? It really slows down the performance.

cmendez21
24 Sep 2008, 4:27 PM
gonna check this issue you talk about i didn't notice :s and repair it as soon as possible

cmendez21
25 Sep 2008, 12:17 AM
got it working in the end. had to restart the Xampp server for some reason and then it started working. very strange.

i am still having problems with the dayview when there are more than one calendars in a tabpanel. presumable there are still some unique ids in use for this view?

i've found the bug with dayview its cause of the code on tasks.js file, also some fixes (3 times render on start/creation)

and check out this new look (image- changes on header to look not so bold and Hour labels) also working for Adaptation for Slate theme
:D

The fixes will be updated soon about in 12 hours more or less and the new sub-style for slate on the next release =P~

mark_l_lewis
27 Sep 2008, 11:59 PM
hi,

great news. look forward to downloading and playing with the new release.

i had a couple loew priority requests:


can you add the actual tasks to the month view or atleast make it a config option
inherit the ExtJS theme in use for panels, titles, etc.
add a darker border for each event/task in week, dayview



thanks,
mark.

cmendez21
28 Sep 2008, 12:31 AM
hi,
great news. look forward to downloading and playing with the new release.
i had a couple loew priority requests:

can you add the actual tasks to the month view or at least make it a config option
inherit the ExtJS theme in use for panels, titles, etc.
add a darker border for each event/task in week, dayview thanks,
mark.

About the borders we are still figuring out how to handle this the best as possible cause if we set borders the rigth width of the task expands as an example if we put border 1px the task with width:20px expands 2px so its 22px and we want to style the task also so it looks really cool.

The theme we handle is the default ext theme, but cause we handle many custom drawn elements we create our own css to the default style, slate css for the calendar will be coming soon..!

Sorry for the delay, still testing to compress the files right and still many sintax errors when compressing but gonna have it on a few more hours and some updates to the manual (missing documentation and new properties) and samples too.

:D

cmendez21
28 Sep 2008, 2:35 AM
So yes the new version 0.0.7 was released a few minutes ago, Check the first page of this thread and the web site (http://e2cs.mm-mendez.com) for more details..! :D

Also besides the new release, the new version of the manual was released also new image samples on the site

Hope you like it, like we do...!

Note: some of the locale files needs to be updated so for the authors or other people who would like to update this files will be appreciated ;)

galdaka
28 Sep 2008, 7:37 AM
Hi,

Excellent work!!

http://e2cs.mm-mendez.com/samples/_sample_layout.htm fails in IE6

When you make a stable version I will make the gray extension for your widget.

Thanks in advance,

cmendez21
28 Sep 2008, 12:10 PM
thanks for the bug on the sample, gonna fix it
and looks very nice the gray theme
B)

afandre
22 Oct 2008, 12:41 PM
Congrats to Carlos! E2CS-EventCalendar is very pretty=D>.

Is there anyone who has changed the monthview task number to subject strings?

cmendez21
22 Oct 2008, 5:34 PM
Is there anyone who has changed the month view task number to subject strings?

Hi afandre, this feature is planned on the next release :D

Unfortunately i have some deadlines to deliver so it has to be a month at least for the next release :"> sorry for the inconvenience to all users who need this feature

frank_ash
23 Oct 2008, 5:43 AM
Really very nice E2CS-EventCalendar. Really great.

I have download the E2CS-EventCalendar (v0.0.7) and unzip it and change the user name and password . And also create table from given sql file. i am trying to add New Event i not able to add New Event in that but Go to next Week , Go to previous week etc.. working fine. i m php programmer. i m using mozila firefox . How to add New Event . Please Help me.

cmendez21
23 Oct 2008, 6:04 AM
Really very nice E2CS-EventCalendar. Really great.

I have download the E2CS-EventCalendar (v0.0.7) and unzip it and change the user name and password . And also create table from given sql file. i am trying to add New Event i not able to add New Event in that but Go to next Week , Go to previous week etc.. working fine. i m php programmer. i m using mozila firefox . How to add New Event . Please Help me.

Hi frank to add an event you use the event taskAdd from the calendar object and it passes the parameter (date) which its the date on the day you want to add the event or Task so on this event you have to code all you need to :
generate the form
submit the form and save to the mysql database
finally reload the store to see the new event on the calendarSo i'm using on my apps something like this (note be sure to pass the correct fields or data to your php server file to save data correctly)

Heres a hint on what you can do



prueba.on({
'taskAdd':{
fn: function( datex ) {
alert ("Adding Task for " + datex);
// create your Ext form
myform = new Ext.FormPanel({
// ........ code here for the form and fields in the form
buttons: [{
text: 'Save',
id: 'btnsave',
tooltip:'Save event / Task....!',
handler: function(){
// form submit
var test = myform.form;
if (test.isValid()) {
prueba.submit({
waitTitle:'Processing data' ,
waitMsg:'Saving Task/Event...',
params:{ method:'POST', action:'Submit'},
success: function(response, action) {
Ext.MessageBox.alert('Data Saved', 'Data saved succesfully...!' + action.result.response);
calendarstoretest.reload();
// hide window
},
failure: function(prueba, action){
Ext.MessageBox.alert('Errors on saving task/Event', action.result.errors );
}
});
}else{
Ext.MessageBox.alert('Alert...!', 'Errors on processing data');
}
}
},{
text: 'Cancel',id:'btncancel',tooltip:'Cancel',
handler:function(){
myform.form.reset();
}
},{
text: 'Close', id:'btnclose', tooltip:'close window',
handler:closewindow();
}]
});
// Show window containing form
// .............. code here
// mywindow.show();
}
}
});
hope you find useful this tip ;)

cmendez21
23 Oct 2008, 9:05 AM
Hi everyone we just have released a simple patch for month view due to many requests from many users so her it is :D

Patch for month view , startDay property added on the month view file/object so it will work as the date picker control and you can choose which day the week starts on the month view.

Also cause of the patch the e2cs_pack file (compressed) was updated now its
e2cs_pack_0.0.7_b.js

Download it from here

English : http://e2cs.mm-mendez.com/?page_id=3&language=en
Spanish : http://e2cs.mm-mendez.com/?page_id=3&language=es

Remy
23 Oct 2008, 9:07 AM
Fantastic Carlos, can't wait for the next release as this is the final component for my app. Thanks for the update and hope you get the time to finish your real work ;)

cmendez21
23 Oct 2008, 9:12 AM
Thanks Remy, if you have requests or new features that you could mention so we could consider them for the next release and make thing easier for you and other users..!

Could be nice cause my final users (on our apps) doesn't seem to request any new feature and they work fine for the moment so its complicated for us to look far beyond our own appreciation and needs

(not that we don't have a moderate list of new features that are planned for the next release)

;)

Remy
23 Oct 2008, 9:23 AM
I'm sure I will have a few things to suggest on a couple of days, doing a prototype app just now and hoping to have that finished over the weekend then I will be looking at integrating the calendar component.

I should say that if it wasn't for finding your component I would never have started using Ext in the first place so you've done me a big favour as I'm a huge fan of Ext now!

frank_ash
24 Oct 2008, 2:55 AM
I really thanks to cmendez21. I have created form panel and add event into mysql database it is working nice.

After add new event not display properly in color. i have add new event event start date time 2008-09-26 10:02:10 event end time 2008-09-26 21:56:12 (this date already exist in given sql file E2CS-EventCalendar (v0.0.7) ) and also tool tip display wrong in end date like NNN.NNN.NNN.

How to solve this problem. help me.

cmendez21
24 Oct 2008, 9:19 AM
check on firebug the json response cause i think theres something odd on the response, i've working with the code and its ok or maybe check if the values on the mysql db match according on how the code handles these values on the php file are right, cause i've got no problems.:-?

if you like send me over only the sql for the table you have to test it and check it on.

frank_ash
28 Oct 2008, 9:15 PM
check on firebug the json response cause i think theres something odd on the response, i've working with the code and its ok or maybe check if the values on the mysql db match according on how the code handles these values on the php file are right, cause i've got no problems.:-?

if you like send me over only the sql for the table you have to test it and check it on.



my firebug loading response like this

{success:true,totalCount:3,records:[{"id":"1","subject":"1 - s","description":"s","startdate":"10/28/2008 07:00:00 AM","enddate":"10/28/2008 10:30:00 AM","color":"#AAF7A8"},{"id":"2","subject":"2 - s","description":"s","startdate":"10/28/2008 09:00:00 AM","enddate":"10/28/2008 12:45:00 PM","color":"#AAF7A8"},{"id":"3","subject":"3 - s","description":"s","startdate":"10/28/2008 09:30:00 AM","enddate":"10/28/2008 13:30:00 PM","color":"#AAF7A8"}]}


and my sql data base storing data like this


INSERT INTO `e2cs_test` (`id`, `subject`, `description`, `startdate`, `enddate`, `finished`) VALUES
(1, 's', 's', '2008-10-28 07:00:00', '2008-10-28 10:30:00', 1),
(2, 's', 's', '2008-10-28 09:00:00', '2008-10-28 12:45:00', 1),
(3, 's', 's', '2008-10-28 09:30:00', '2008-10-28 13:30:00', 1);

First two event display with color properly and third event not display properly which showing small size of color and tool tip also showing with error.
I have searching to solve this problem . But i m not able to solve this problem. how to solve this please help me.

cmendez21
29 Oct 2008, 5:54 AM
my firebug loading response like this

{success:true,totalCount:3,records:[{"id":"1","subject":"1 - s","description":"s","startdate":"10/28/2008 07:00:00 AM","enddate":"10/28/2008 10:30:00 AM","color":"#AAF7A8"},{"id":"2","subject":"2 - s","description":"s","startdate":"10/28/2008 09:00:00 AM","enddate":"10/28/2008 12:45:00 PM","color":"#AAF7A8"},{"id":"3","subject":"3 - s","description":"s","startdate":"10/28/2008 09:30:00 AM","enddate":"10/28/2008 13:30:00 PM","color":"#AAF7A8"}]}

and my sql data base storing data like this

INSERT INTO `e2cs_test` (`id`, `subject`, `description`, `startdate`, `enddate`, `finished`) VALUES
(1, 's', 's', '2008-10-28 07:00:00', '2008-10-28 10:30:00', 1),
(2, 's', 's', '2008-10-28 09:00:00', '2008-10-28 12:45:00', 1),
(3, 's', 's', '2008-10-28 09:30:00', '2008-10-28 13:30:00', 1);

First two event display with color properly and third event not display properly which showing small size of color and tool tip also showing with error.
I have searching to solve this problem . But i m not able to solve this problem. how to solve this please help me.

As im checking it seems to be somehow crashing the server response with the javascript on dates (how does js hadles it) cause theres no such thing as 13:30:00 pm :"> and the calendar takes it as an invalid date, if you check on the sample database all the time on the date fields are set on 12 hour format basis not 24.

So on the server file change %H for %h and on day object set the property

task_format:'d-m-Y h:i: s a',
(note remove space on : s cause it displayed emoticon on the forum)

So the formated date should be 01:30:00 pm, test it and it would work ;)


NOTE: the php server file i included was for database testing purposes, it may contain some php errors or may not suit your preferences according on how your handling dates (12 or 24 hour format).

nardhar
29 Oct 2008, 2:12 PM
hey, i just found your extension and i've been testing it, its really great. But, is it possible to hide the body of the weekview? because i only have tasks or events of duration of a day or more, so the body of the weekview(that shows the tasks which last less than a day) is useless. Guess it would look like a gantt diagram.

Thanks in advance.

Nardhar.

Ps. pardon me for my english, if you like we can talk in spanish:)

cmendez21
29 Oct 2008, 4:24 PM
hey, i just found your extension and i've been testing it, its really great. But, is it possible to hide the body of the weekview? because i only have tasks or events of duration of a day or more, so the body of the weekview(that shows the tasks which last less than a day) is useless. Guess it would look like a gantt diagram.

Thanks in advance.
Nardhar.

Ps. pardon me for my english, if you like we can talk in spanish:)

glad you liked it

English answer : to disappear the week view or dont display it just leave wview: null and that will do the trick ;) check the file _sample_layout.htm on the release to see it more clearly


Spanish answer: para que no aparezca la vista semanal usa Null en wview asi como se muestra wview: null y esto lo desaparecera ;) revisa el archivo _sample_layout.htm que viene en el paquete (zip) para verlo mas claro.

nardhar
29 Oct 2008, 4:47 PM
pero esa opcion oculta todo el weekview, yo quisiera conservar la cabecera que muestra los eventos que duran mas de un dia y ocultar el cuerpo (que muestra los eventos de un solo dia)

cmendez21
29 Oct 2008, 4:50 PM
Ok ya te entendi , no no esta implementada pero la considerare para el siguiente release

nardhar
29 Oct 2008, 4:55 PM
ni modo, tendre que modificar el codigo fuente, gracias de todos modos:), mi idea era mostrar una especie de diagrama de gantt.

uygarpe
30 Oct 2008, 11:45 PM
Fantastic plugin cmendez21, I admire your work. =P~

I plan to post the Turkish translation by next week. I've been digging into the code recently. Here are some few marks:

1. In dayview.js you comment that the hour format has to be 'H: s : i a', (added blanks to prevent smileys) but there is no point in displaying AM or PM when you are using 24 hour format. 'H: s: i a' is hard-coded in line 397, so this could be altered through localization.

2. I added some task fields to the store (importance and event type ), by editing the codes in e2cs_pack_0.0.7_b.js file. It would be great to have a custom task reader that you could define like you can define fields in a store.

Thanks again for sharing your work. :)

Remy
31 Oct 2008, 1:34 AM
Good points uygarpe, particularly on the reader =P~

cmendez21
31 Oct 2008, 6:58 AM
glad you liked it

the part of displaying the hor we havent consider it yet but we consider it
on the part of the custom store i agree these both will came on the next version

thanks for your observations ;)

mark_l_lewis
3 Nov 2008, 2:23 PM
Hi,

Found a bug in weekview in genAlldayContainer() function. Basically there was a htmlheader in a for loop and should be htmlcontainer variable.




genAlldayContainer:function(datestart){ // for google calendar style (container with task with +1 day long)
var htmlcontainer='';
htmlcontainer+='<div id="' + this.calx.id + '-alldaycontainer" class="allday-container">'; //to handle //0.0.6
var taskstmp = this.getWeekTasks(this.datetohandle,0);
if (taskstmp.length==0){
htmlcontainer+='&nbsp;';
}else {
if (taskstmp.length<=this.alldayTasksMaxView){
tasktoshow=taskstmp.length;
} else {
tasktoshow=this.alldayTasksMaxView;
}
for (var j=0; j<tasktoshow; j++){
//sample
var fch_starts = new Date(taskstmp[j].startdate);
var fch_ends = new Date(taskstmp[j].enddate);

var datatip = {starxl: e2cs.cal_locale.task_qtip_starts,
startval: fch_starts.format(this.task_format),
endxl: e2cs.cal_locale.task_qtip_ends,
endval: fch_ends.format(this.task_format),
details: taskstmp[j].description};

var newqtip = this.calx.tplTaskTip.apply(datatip);
//0.0.6 id on div
htmlcontainer+= '<div id="' + this.calx.id + '-ecal-alldaytask-' + j + '" class="taskallday-taskbase" style="background-color:' + taskstmp[j].color + '"';
htmlcontainer+= 'ext:qtitle="' + taskstmp[j].subject + '" ext:qtip="' + newqtip + '"';
// changed on 0.0.4
// htmlcontainer+= 'ext:qtitle="' + taskstmp[j].subject + '" ext:qtip="' + e2cs.cal_locale.task_qtip_starts + '';
// htmlcontainer+= fch_starts.format(this.task_format) + '<br>' + e2cs.cal_locale.task_qtip_ends + '';
// htmlcontainer+= fch_ends.format(this.task_format) + '<br>' + taskstmp[j].description + '';
htmlcontainer+= 'ec_id="' + taskstmp[j].recid + '" ec_starts="' + taskstmp[j].startdate + '"';
htmlcontainer+= 'ec_ends="' + taskstmp[j].enddate + '" ec_subject="' + taskstmp[j].subject + '"';
htmlcontainer+= 'ec_cnt="' + taskstmp[j].description + '" ec_storeindex="' + j + '">' + taskstmp[j].subject + '</div>';
//to be processed in render function
}
}
htmlcontainer+='</div>';
htmlcontainer+='<div id="' + this.calx.id + '-allday_w_task" class="allday_w_task">'; //0.0.6
htmlcontainer+='<div id="' + this.calx.id + '-alldaygridbodylayout" class="alldaygridbody">';
//htmlcontainer+='<table width="100%" border="0" cellpadding="0" cellspacing="1" bordercolor="#004E9B" bgcolor="#004E9B"><tr>';
htmlcontainer+='<table id="' + this.calx.id + '-tableallcontainer" width="100%" border="0" cellpadding="0" cellspacing="1" bordercolor="#004E9B" bgcolor="#004E9B"><tr>';
htmlcontainer+='<td class="">&nbsp;</td>';
for (var i=0; i<7;i++){
var daylabel = datestart.add(Date.DAY,i).format(this.dayformatLabel);
var validtd = datestart.add(Date.DAY,i).format('m/d/Y');
htmlcontainer+='<td valign="top" class="x-calendar-weekv-header-days" dayval="' + validtd + '" id="' + this.calx.id + '-weekhdrday-' + (i + 1) + '">' + daylabel + '</td>';
//htmlcontainer+='<td valign="top" class="x-calendar-weekv-header-days" id="' + this.calx.id + '-weekhdrday-' + (i + 1) + '">' + daylabel + '</td>';
}
htmlcontainer+='</tr><tr><td width="50">';
htmlcontainer+='<table width="50" border="0" align="center" cellpadding="0" cellspacing="0">'
htmlcontainer+='<tr><td width="50" class="allday-marker" id="alldayrefer" >'; //to handle
if (taskstmp.length){ // just to set the height for the tasks
if (taskstmp.length<=this.alldayTasksMaxView){
tasktoshow=taskstmp.length;
} else {
tasktoshow=this.alldayTasksMaxView;
}
for (var i=0; i<tasktoshow;i++){
htmlcontainer+='<div class="taskallday-layoutbase">&nbsp;</div>';
}
} else { // minimum if empty
htmlcontainer+='<div class="taskallday-layoutbase">&nbsp;</div>';
htmlcontainer+='<div class="taskallday-layoutbase">&nbsp;</div>';
}
htmlcontainer+='</td></tr></table></td>';
for (var i=0; i<7;i++){
todaytmp = new Date();
gendatetd = datestart.add(Date.DAY,i);
var daylabel = gendatetd.format(this.dayformatLabel);

if (i==0){
htmlcontainer+='<td width="14%" bgcolor="#FFFFFF" valign="top" class="weekstartday" id="' + this.calx.id + '-allday' + (i + 1) + '"><div>&nbsp;</div></td>';
} else if (i==6){
htmlcontainer+='<td width="14%" bgcolor="#FFFFFF" valign="top" class="weekendday" id="' + this.calx.id + '-allday' + (i + 1) + '"><div>&nbsp;</div></td>';
} else {
htmlcontainer+=' <td width="14%" bgcolor="#FFFFFF" valign="top" class="weekmidday" id="' + this.calx.id + '-allday' + (i + 1) + '"><div>&nbsp;</div></td>';
}
}
htmlcontainer+='</tr></table></div></div>';
htmlcontainer+='<div id="alldaylistbutton" class="x-calendar-weekv-header-alldaylist">'; //to handle
htmlcontainer+= e2cs.cal_locale.alldayTasksMaxLabel + ' </div>';
return htmlcontainer;
},

cmendez21
3 Nov 2008, 3:26 PM
hi, can you be more specific on which line number or the variable in specific cause the code you posted, i've cheked it and it seems fine to me (:| even comparing text with the release and source

mark_l_lewis
3 Nov 2008, 11:06 PM
hi,

i should have been clearer. the code i posted i fixed. here here is the line that was broken:


for (var i=0; i<7;i++){
var daylabel = datestart.add(Date.DAY,i).format(this.dayformatLabel);
var validtd = datestart.add(Date.DAY,i).format('m/d/Y');
htmlheader+='<td valign="top" class="x-calendar-weekv-header-days" dayval="' + validtd + '" id="' + this.calx.id + '-weekhdrday-' + (i + 1) + '">' + daylabel + '</td>';
//htmlcontainer+='<td valign="top" class="x-calendar-weekv-header-days" id="' + this.calx.id + '-weekhdrday-' + (i + 1) + '">' + daylabel + '</td>';
}

this was in the latest full download.

cmendez21
4 Nov 2008, 8:59 AM
Now I've found the bug you reported :D thanks a lot...!
gonna update the latest patch on the evening so everyone can have it fixed

:"> an apologize to everyone that i cant spend too much time on the calendar now a days but my deadlines are killing me and we are behind schedule cause we have to re-code many bugs and then some fixes we are doing for GOOGLE CHROME, ADOBE AIR and safari on EXTjs code

Lobos
4 Nov 2008, 9:48 AM
Greetings Cmendez,

First of all I would like to congratulate you on this fine component for Ext, kudos!

I plan to use the extension in a web app i am creating. I currently have a rudimentary system that I designed myself, but I feel yours will be much better to use.

The current system I work with has a default schedule that is set to loop the same events contained in the week of time forever. There are also custom schedules that can be set to override this default weeks content if they should exist.

What I would like to know is if it would be possible to achieve this with your solution. ie can I somehow have this default week be set for every week without the need to include the data configuration for every week from now until the end of eternity LOL

I am guessing I would need to use come kind of onchange event to reload the data for the specific timeframe. Is this how E2CS works? ie it only loads the data for the current timeframe in view, can you do this or do you have to load the entire schedule data at the same time?

Excuse me if I haven't explained properly, please let me know if you need further information!

Once again thanks.

Adam

cmendez21
4 Nov 2008, 6:43 PM
Greetings Cmendez,
The current system I work with has a default schedule that is set to loop the same events contained in the week of time forever. There are also custom schedules that can be set to override this default weeks content if they should exist.

What I would like to know is if it would be possible to achieve this with your solution. ie can I somehow have this default week be set for every week without the need to include the data configuration for every week from now until the end of eternity LOL

I am guessing I would need to use come kind of onchange event to reload the data for the specific timeframe. Is this how E2CS works? ie it only loads the data for the current timeframe in view, can you do this or do you have to load the entire schedule data at the same time?

Excuse me if I haven't explained properly, please let me know if you need further information!

Once again thanks.

Adam

Hi lobos

well you can use the events that are attached to the control so you can get which day, week or month you're gonna work and tell the store to load that part only without an infinite loop but check the manual to see more clearly the use you can give it to the calendar.

I use it that way when the view changes y retrieve the range or date to use and then tell the store to reload with new parameters and then i can work with that part only , also to add new events or tasks it has an event in which i create a form , capture , send data to the server and then reload the store

Hope it works for you ;)

julian_marin
4 Nov 2008, 10:44 PM
Muy bien su trabajo, pero me gustaria ver algun ejemplo que permita agregar eventos, moverlos, borrarlos, etc. O al menos cargarlos de una base de datos, porque lo que ud tiene en la pagina lo unico que hace es mostrar alerts cada vez que uno hace alguna cosa y ya.

Saludos,

Julian Mar

vmoral
5 Nov 2008, 12:31 AM
Antes de nada quisiera felicitarte por este estupendo plugin, la verdad es que te lo has currado.
Ahora viene mi pregunta, desde que incluiste la opci

Lobos
5 Nov 2008, 6:16 AM
Hope it works for you ;)

Thank you very much, that sounds really good!

Now I would like to show you something that could really set your event calendar off, give it something that others lack, a timeline.

http://simile.mit.edu/timeline/

This IMO would be a great addition to E2CS, and I would appreciate it if you could give your consideration to included this output type in a future version. Thanks!

cmendez21
5 Nov 2008, 7:30 AM
Thank you very much, that sounds really good!

Now I would like to show you something that could really set your event calendar off, give it something that others lack, a timeline.

http://simile.mit.edu/timeline/

This IMO would be a great addition to E2CS, and I would appreciate it if you could give your consideration to included this output type in a future version. Thanks!

Hi lobos ,
We are considering an EXTjs Time line VIEW on future versions which is still in design stage
(we lare designing it so it can be very cool) and also a custom view in which you will embed in the calendar body anything you like such as flash, 3th party time lines and many things else :D linked to the calendar store and ranged dates

cmendez21
5 Nov 2008, 7:35 AM
[quote=vmoral;247189]Antes de nada quisiera felicitarte por este estupendo plugin, la verdad es que te lo has currado.
Ahora viene mi pregunta, desde que incluiste la opci

cmendez21
5 Nov 2008, 7:41 AM
[quote=julian_marin;247162]Muy bien su trabajo, pero me gustaria ver algun ejemplo que permita agregar eventos, moverlos, borrarlos, etc. O al menos cargarlos de una base de datos, porque lo que ud tiene en la pagina lo unico que hace es mostrar alerts cada vez que uno hace alguna cosa y ya.
Saludos,
Julian Mar

vmoral
5 Nov 2008, 8:54 AM
Este error sera corregido, tienes razon es un bug , fue mi error
This error its gonna be fixed as soon as possible my bad
:">

TO repair this bug meanwhile chenge this code (bold) inside genBody: function(dateval,configdata){

var mybody='<tr>';
if (initday<0){ initday = 7 + (initday) ; } // fix BUG
if (initday!=0){
for(var iday=(initday); iday>0; iday--){
writedt= new Date( (dateval.getMonth()+ 1) + '/1/' + dateval.getFullYear()).add(Date.DAY,(iday * -1 ));
mybody+='<td valign="top" id="m-td-' + this.calx.id + '-' + writedt.format('m/d/Y') + '" class="daybody">';
mybody+='<div class="noday" id="' + this.calx.id + '-' + writedt.format('m/d/Y') + '">' + writedt.format('j-M') + '</div>';
mybody+='</td>';
}
}

muchas gracias, ya est

Lobos
5 Nov 2008, 10:01 AM
Hi lobos ,
We are considering an EXTjs Time line VIEW on future versions which is still in design stage
(we lare designing it so it can be very cool) and also a custom view in which you will embed in the calendar body anything you like such as flash, 3th party time lines and many things else :D linked to the calendar store and ranged dates

Sounds great, I am very happy that you plan to continue to innovate the calendar and I feel that the end product has the potential to offer a far superior calendar solution to that which is currently available on the net.

I am currently integrating E2CS into a large project and I will be sure to post feedback here on things that I find could improve the product. Thank you for the time you have put into the project and I look forward to talking to you soon.

-Lobos

lombras
6 Nov 2008, 4:02 PM
Hi!!

what file must be changed to read more data from the db? For example, i want to add a field called user in the table and get this data in the task...

I saw the task.js file, and changed some lines, but not works!

ths!!

Ps: Congratulationsss!!

cmendez21
6 Nov 2008, 7:24 PM
hi lombras

check the day view on a loop which render and creates the tasks, and inside the task.js file you will have to add the field ;)

for the moment you will have to code this by yourself on the futures versions we will implement dynamic fields for the tasks/events

lombras
9 Nov 2008, 6:50 AM
Ok!!!

its work!

Thks again!!!

kimosabi
11 Nov 2008, 5:47 AM
Great start to a great widget.

I found that I wanted to force tasks to set the start and end date to the nearest 5 minutes after a task has been dragged around or moved. So I modified the task.js file as below to make sure that start and end dates "snap" to the nearest X minutes. In this case I've just used the task_increment config variable for the dayview.

Applies to lines 299 and 300 in task.js


var newdateTaskstart = new Date(m_starttime).add(Date.MINUTE,Math.round(newposstart/this.task_increment)*this.task_increment);
var newdateTaskEnds = newdateTaskstart.add(Date.MINUTE,Math.round(newposend/this.task_increment)*this.task_increment);

kimosabi
11 Nov 2008, 6:09 AM
Hi there

I added some code to the calendar which changes the color of the text inside the tasks depending on the background color set for that task. This helps if you are using dark bg colors in tasks and you can't see the text.

I used the following class located at http://juicystudio.com/article/javascript-contrast-class.php and added a fgcolor property to the task object based on the best contrasting color.

Maybe this is something you might want to include the base code.

kimosabi
11 Nov 2008, 10:20 PM
The hour markers in dayview do not line up under ie7 or 8

I fixed this by changing the styling in calendar.css to

where I changed the height to 58px from 60px. Still work in firefox since this change.


.x-calendar-dayv-body .hour-marker .minute{
font-family: Geneva, Arial, Helvetica, sans-serif;
font-size: 9px;
/*color: #003366;*/
color: #4B7196;
background-color: #D9ECFF;
height: 58px;
text-align: center;
font-weight: normal;
vertical-align: top;
}

cmendez21
12 Nov 2008, 1:30 PM
;) thanks for the observation,
gonna keep it in mind to fix this issue :">

cmendez21
12 Nov 2008, 2:11 PM
By the way i have something important to tell you guys:

Recently i have been contacted by two companies which is going to use the calendar for some commercial applications but those guys wanted fast support, more code from my part, and significant changes but they keep the position that as the code is free and also all my work i should make it for free, also they will distribute me calendar with their apps, and their position was that my profit will be that they promote my calendar for free use :-?.

So i wasn't very happy, the code for the calendar was meant to be for all of us on certain principles which i agree with almost everybody,and also principles which a lot of users (which post free extensions and very useful extensions) here on the forum have worked with

But the fact that those companies and how they tried to work, i wasnt happy at all, so i'm in contact now a days with Extjs Licencing to see what can we do about the new licensing option of this component cause i don't agree the situation those companies are trying to deal with (also many new companies will come out contacting me on the same position and basis :( ).

In fact thats also the main reason that the newer version has been delayed and it has a lot of new features , some very cooool feature, some not but :(( Oh man i wanted to hit them hard, so angry...!

:D Sharing with you Ext-guys, the EXTjs community, Jack and all the Extjs staff i don't mind and i'm glad to share my code and glad that this calendar is useful on your apps..!

but the way those companies treat me like it was my obligation to give them support, more code and custom code,consultancy, etc... (For freeee....

Lobos
13 Nov 2008, 5:37 AM
Recently i have been contacted by two companies which is going to use the calendar for some commercial applications but those guys wanted fast support, more code from my part, and significant changes but they keep the position that as the code is free and also all my work i should make it for free, also they will distribute me calendar with their apps, and their position was that my profit will be that they promote my calendar for free use :-?.


I don't understand the problem, you are in no way obligated to give "free work" to anyone, you code is licensed under the BSD so people can do what they want with the code:

/*
* e2cs_pack
* Copyright(c) 2006, Carlos Mendez.
*
* This code is licensed under BSD license. Use it as you wish,
* but keep this copyright intact.
*/



So i wasn't very happy, the code for the calendar was meant to be for all of us on certain principles which i agree with almost everybody,and also principles which a lot of users (which post free extensions and very useful extensions) here on the forum have worked with


And this will not change, the "companies" are not taking anyone's rights away.



But the fact that those companies and how they tried to work, i wasnt happy at all, so i'm in contact now a days with Extjs Licencing to see what can we do about the new licensing option of this component cause i don't agree the situation those companies are trying to deal with (also many new companies will come out contacting me on the same position and basis :( ).


You released under the BSD license, you are under do obligation to offer "free work" to companies. JUST SAY NO? easy as that.

[QUOTE=cmendez21;250138]
In fact thats also the main reason that the newer version has been delayed and it has a lot of new features , some very cooool feature, some not but :(( Oh man i wanted to hit them hard, so angry...!

:D Sharing with you Ext-guys, the EXTjs community, Jack and all the Extjs staff i don't mind and i'm glad to share my code and glad that this calendar is useful on your apps..!

but the way those companies treat me like it was my obligation to give them support, more code and custom code,consultancy, etc... (For freeee....

Remy
13 Nov 2008, 8:45 AM
I agree with Lobos, you shouldn't worry about the approaches from these companies, you are not obliged to do anything for them. They are consumers of your generously published component the same as any individual here. You shouldn't let them stress you out.

Just a quick point on the component itself, I was looking at the style of the component and noticed that the header background image is a 279x24px png, unless I am wrong I don't see a reason for the file to be this size, I have modified it to be a simple 1x24px image, reducing the overhead on downloading the file from 46.2kb to 173 bytes.

Remy

Lobos
13 Nov 2008, 9:23 AM
FYI here is a post on slashdot that debates Open Source Project Support that might be interesting for you to read:

http://ask.slashdot.org/askslashdot/08/11/13/1312207.shtml

Just remember you are not obligated to support anyone in anyway in regards to your opensource software. In many ways the moral obligation is reversed from the above, ie users that gain in some way from the use of your software should in someway support you!

At this time it may seem that you are not getting the rewards you deserve, but stick to it, polish your project and the notice will come in many ways.

cmendez21
13 Nov 2008, 10:15 AM
Thanks for your words Lobos you're right, i was so frustrated and stressed these days cause some work and personal issues going around here and it seems i overreacted and Explode very badly (:| my bad.

I just wanted to tell anyone my frustration and release the charge :">

And thanks Remy for the background image and also your words :D

frank_ash
14 Nov 2008, 6:12 AM
how to list first 5 events in month view instead of Events in day 10 events . i have ten(10) events one day . i want list out first five events in month view day.
Now Display like this:
Events in day 10 events

I want like this:
1.event name1
2.event name2
3.event name3
4.event name4
5.event name5
how to bring this . where i include the codings. i am php user and back end mysql. pls help me.

cmendez21
14 Nov 2008, 9:34 AM
how to list first 5 events in month view instead of Events in day 10 events . i have ten(10) events one day . i want list out first five events in month view day.
Now Display like this:
Events in day 10 events

I want like this:
1.event name1
2.event name2
3.event name3
4.event name4
5.event name5
how to bring this . where i include the codings. i am php user and back end mysql. pls help me.

for the moment its not possible , but wait a few days , many replies i had about this feature and we are trying to pull this out as fast as we can ;)

cmendez21
14 Nov 2008, 3:34 PM
here's a small advance on the month view upgrades :)
see the image and hope you like the look :)

frank_ash
14 Nov 2008, 9:22 PM
here's a small advance on the month view upgrades :)
see the image and hope you like the look :)


I need advance on the month view upgrades source code. please give me attachments.

Remy
15 Nov 2008, 12:50 AM
Frank, Carlos has been working his butt off on this and other projects, I think you can show him the courtesy of releasing his component when he is ready, pre-release will only lead to more support questions which will get in the way of his work.

Carlos, looks fantastic, really looking forward to playing with it.

cmendez21
16 Nov 2008, 12:47 AM
Yes as Remy said we are testing it to release something with quality cause there will be more replies on support for the bug's on something made wrong and hurries, but i think on a more few hours will be released the new version (haven't sleep at all) (:|

but the news are that pizza and beers are on frank :D

cmendez21
17 Nov 2008, 12:34 PM
HI everyone here's the new release on the site , hope you like it :D

English users: http://e2cs.mm-mendez.com/?language=en
Spanish users: http://e2cs.mm-mendez.com/?language=es

List of Corrections made:
Minor bugs reported on the forum.
Fix Background Image on header thanks to Remy
Dutch locale file added thanks to pcrombach
General

Documentation updated because of the significant changes on Month view
referid property added to all views to be as a flag and identifier for each view (to use on events)
included Apendix-A so you can override Ext.Date.Add function if you have some issues on Safari and Chrome, see thread http://extjs.com/forum/showthread.php?t=51586
Month view
Fixed a Bug on startDay which was causing some issues on some months

Added showTaskList property to set the list of events on each day (task list items)
Context menu on each task lit item (FF, IE, Chrome, Opera, Safari works fine) The samples are not updated but test the samples that come on the download (also update the js files in the html code) :">

Remy
17 Nov 2008, 12:37 PM
Great stuff Carlos, will have a look tomorrow and get some feedback for you.

frank_ash
18 Nov 2008, 4:31 AM
Hi Cmendez21 Congratulation,:)

I extend Congratulation Remy,:)


I have seen month month_task_list.jpg and month_task_list_menu.jpg. It is look very nice really very good really hard work person step by step developing. i have download Nueva Version 0.0.9 . I have unzip given file and run it. It is running without error. But one missing my system it is display month view Events in day(3). not display list view. Please help me how to bring list events in month view . Where i should adjust codings in which file. :-?.

Remy
18 Nov 2008, 4:36 AM
Frank, the documentation states that you should apply showTaskList: true.

This config option works with showTaskcount, if showTaskcount is set to true, it will use this rather than the showTaskList option, so you should set showTaskcount to false, I think it defaults to true so you can't just remove it from the config.

Lobos
18 Nov 2008, 6:05 AM
sample_basic.htm line 104 missing comma

taskStyle:'margin-top:10px;', //Css style for text in day(if it has tasks and showtaskcount:true)

Lobos
18 Nov 2008, 6:34 AM
Also, I am not sure if it is my setup or not, but I cannot select the first item in an event list in the month view, also soem trouble dragging and droping events in the day view - I made a movie to demonstrate properly:

http://www.screencast.com/users/webvida/folders/Jing/media/05f31a55-d01d-4f8c-a475-4835caacee46

Lobos
18 Nov 2008, 9:29 AM
Another bug with 0.0.9

open e2cs_pack_0.0.9.js and do a search for this string: "test_calendar"

it's like the ids of the sample html calendar objects are hard coded into the main library??? I was scratching my head for ages today because I created a calendar and changed it's id variable and then started to get errors.

so if you have an id other than "test_calendar" you will get errors. I don't usually use ids anyway, i always use item-ids, but with this problem I can't even remove the id, plus it would be impossible to have multiple instances of the calendar object running...

btw, I have been testing the new release today so I am just posting issues as I find them, thanks! :)

cmendez21
18 Nov 2008, 11:17 AM
Hi Cmendez21 Congratulation,:)

I extend Congratulation Remy,:)


I have seen month month_task_list.jpg and month_task_list_menu.jpg. It is look very nice really very good really hard work person step by step developing. i have download Nueva Version 0.0.9 . I have unzip given file and run it. It is running without error. But one missing my system it is display month view Events in day(3). not display list view. Please help me how to bring list events in month view . Where i should adjust codings in which file. :-?.


You have to set up the properties like this

showTaskcount: false,
showTaskList: true,

cmendez21
18 Nov 2008, 11:27 AM
sample_basic.htm line 104 missing comma
taskStyle:'margin-top:10px;', //Css style for text in day(if it has tasks and showtaskcount:true)


Gonna fix this on the sample



Also, I am not sure if it is my setup or not, but I cannot select the first item in an event list in the month view, also soem trouble dragging and droping events in the day view - I made a movie to demonstrate properly:


What happens here is that the second task you intend to drag it's time its greater than the time in the day could handle so this task/event does not allow drag and its normal, you could see cause on the label in the task appears (+) or (-) label


Another bug with 0.0.9
open e2cs_pack_0.0.9.js and do a search for this string: "test_calendar"

it's like the ids of the sample html calendar objects are hard coded into the main library??? I was scratching my head for ages today because I created a calendar and changed it's id variable and then started to get errors.

so if you have an id other than "test_calendar" you will get errors. I don't usually use ids anyway, i always use item-ids, but with this problem I can't even remove the id, plus it would be impossible to have multiple instances of the calendar object running...

btw, I have been testing the new release today so I am just posting issues as I find them, thanks! :)

This one it's my bad, big BAD, Gonna fix it right away :"> and update the release , thanks for the observations

cmendez21
18 Nov 2008, 12:39 PM
The last version has been updated and bugs fixed, thanks Lobos for the report ;)

Lobos
18 Nov 2008, 6:11 PM
No worries mate, thanks for looking into it.

I have also noticed something with the change events, eg if i do soemthing like this:


'beforeMonthChange':{
fn: function(newdate) {

calendar.store.loadData([
[45,'Debug task 1','Sample app for test','12/10/2008 08:00:00 am' , '12/10/2008 09:45:00 am' ,'#E0FFA2']]);
//return false;
return false;
},
scope:this
}

I would expect the changes to be shown in the calendar when I change the month, yet the changes don't show until I click change month again... it's like the store is not refreshed when the new data is loaded.

What I want is for the calendar to load new data whenever the month, etc is changed becuase i am only loading data particular to the month being changed to.

You mentioned that before, how you used the events to load custom data to the new date that was being opened...

Any ideas? Thanks!

cmendez21
18 Nov 2008, 6:21 PM
personally what i do is this, hope this work for you too ;)



mystore.on({ 'load':{ fn:function(){
calendar.refreshCalendarView(); //no need to change view
}}});
'beforeMonthChange':{
fn: function(newdate) {

calendar.store.loadData([[45,'Debug task 1','Sample app for test','12/10/2008 08:00:00 am' , '12/10/2008 09:45:00 am' ,'#E0FFA2']]);
//return false;
return false;
},
scope:this
}

Lobos
18 Nov 2008, 7:00 PM
personally what i do is this, hope this work for you too ;)
calendar.refreshCalendarView();

prefect, thanks... lol wish I knew about this 2 hours ago hahahahhahaha... oh well learned lots fishing around in the code :)

btw i didn't see this in the manual...

frank_ash
18 Nov 2008, 8:29 PM
Frank, the documentation states that you should apply showTaskList: true.

This config option works with showTaskcount, if showTaskcount is set to true, it will use this rather than the showTaskList option, so you should set showTaskcount to false, I think it defaults to true so you can't just remove it from the config.

I got event list in month view it is working fine thanks. i have change in mview: as follows showTaskList:true, showNumTasks:5, showTaskcount: false,:)

Remy
19 Nov 2008, 1:06 AM
Just a small thing Carlos but to keep the naming convention consistent, showTaskcount should really be showTaskCount.

chalu
19 Nov 2008, 6:19 AM
I just downloaded this calendar extension and must say that it looks cool, but I've not been able to do anything with tasks. How do I add a task to a date (say in dayview), edit an existing task or delete it. So far I've been looking at the basic_sample example html file. I noticed that there is a store with records that suggest that they are tasks, but they are not shown anywhere in the example.



var prueba = new Ext.ECalendar({
.....
});

....

prueba.on({
'taskAdd' : {
fn: function(datex){
// I am sure this is where we create and add a new task
// how is it done
}
},
'onTaskDelete' : {
fn: function(datatask){
// ???
}
},
'onTaskEdit' : {
fn: function(datatask){
// ??
}
}
});


Thanks for this great tool.

Lobos
19 Nov 2008, 7:11 AM
Hi Cmendez,

As mentioned before I am attempting to embed a default week into the calendar which will fill out all days of a month. I have this working well, but I have come up against a strange problem.

If I reload the store with less days than are in the month it works fine and will load events for each day. The trouble is if I load the exact amount of days in the month to the store and refresh it shows nothing, if I add more days than in the month it will show the overflow from the last month. it is like the content is loaded from the previous data in the store.

I have uploaded a video that demonstrates the problem:

http://www.screencast.com/users/webvida/folders/Jing/media/edbbdd48-adf3-41d3-aa05-055afccfc6e9

it is weird, everything works fine as long as I don't fill in the last day of the month - I am totally stumped :(

cmendez21
20 Nov 2008, 12:13 AM
I just downloaded this calendar extension and must say that it looks cool, but I've not been able to do anything with tasks. How do I add a task to a date (say in dayview), edit an existing task or delete it. So far I've been looking at the basic_sample example html file. I noticed that there is a store with records that suggest that they are tasks, but they are not shown anywhere in the example.

Take this steps to handle the add, edit, delete events/tasks and remember that datatasks is an array which handles all the data you need for the record operations



var prueba = new Ext.ECalendar({
.....
});
prueba.on({
'taskAdd' : {
fn: function(datex){
//Create an EXtjs form, ina window
//submit your form to the database Or ...
//When submiting handle that the data is saved on the Store Otre.records.add or something like that
}
},
'onTaskDelete' : {
fn: function(datatask){
// Ext Message Are you sure to delete Datatask[1]
// Function that handles the ext message or confirm (btn){
/// code to delete the store or ajax request to delete it form DB
// }
}
},
'onTaskEdit' : {
fn: function(datatask){
// Store.get at index (data task [1] ) and remove or
// Form with the values on the fields to edit the Task
}
}
});

cmendez21
20 Nov 2008, 12:22 AM
Hi Cmendez,

As mentioned before I am attempting to embed a default week into the calendar which will fill out all days of a month. I have this working well, but I have come up against a strange problem.

If I reload the store with less days than are in the month it works fine and will load events for each day. The trouble is if I load the exact amount of days in the month to the store and refresh it shows nothing, if I add more days than in the month it will show the overflow from the last month. it is like the content is loaded from the previous data in the store.

I have uploaded a video that demonstrates the problem:

http://www.screencast.com/users/webvida/folders/Jing/media/edbbdd48-adf3-41d3-aa05-055afccfc6e9

it is weird, everything works fine as long as I don't fill in the last day of the month - I am totally stumped :(

Hi Lobos,

look i have a huge deadline on saturday, gonna present one of my applications (e2cs calendar is included on workers shcedules :D) to 400 people on a conference on saturday and sunday and i cant get a review or update on these days :"> i have to make 7 big modules on 2 days. :((

but i will look at it on monday, i think its a bug cause on a for - loop maybe i'm misssing the last day of the month on the genbody function inside monthview, not sure at all but it can be but if can you please check it out or send me a Json response of the tasks so i can test it right and made the needed changes and upgrade it fast on monday night.

And sorry for not checking it sooner this time :">

Pd. gonna post some images of the conference on the Blog :)

Remy
20 Nov 2008, 3:34 AM
This isn't something for you to look at just now Carlos just reporting an issue for when you have time.

If the showRefreshbtn is set to false (defaults to true) the code produces an error trying to add a click handler:


if(this.header){
this.tools.refresh.addListener('click',
this.refreshCalendarView,
this);

It checks if the header exists but doesn't do a subsequent check if the refresh item exists before trying to add the click handler.

Have changed to:

if(this.header && this.tools.refresh){
this.tools.refresh.addListener('click',
this.refreshCalendarView,
this);

Good luck with your conference!

Lobos
21 Nov 2008, 6:09 AM
Hi Lobos,
i think its a bug cause on a for - loop maybe i'm misssing the last day of the month on the genbody function inside monthview, not sure at all but it can be but if can you please check it out or send me a Json response of the tasks so i can test it right and made the needed changes and upgrade it fast on monday night.

And sorry for not checking it sooner this time :">

Pd. gonna post some images of the conference on the Blog :)

no worries mate, I worked it out, when I was doing the date calculations in my schedule loading routine I was referencing the date object sent to the

'afterMonthChange':{
fn: function(newdate) {

and now copying it... :">

eg var myDate = new Date(newdate);

so whenever I was changing something on the date object it was working directly on the date object being used be E2CS, hence the strange happenings!

i am not sure, but maybe it is a good idea to send a copy of the date object to the event functions as opposed to a referenced date object that can directly influence the functioning of the calendar it's self...

thanks!

Lobos
21 Nov 2008, 9:17 AM
Another bug report - check out the october month, there is something wrong with the day sequecing, somtimes there are days duplicated or missing. Seems only to be the month of october ( co-incidently this happens to be my birthday month!) hahahahhaha

cmendez21
22 Nov 2008, 12:15 AM
Thanks Remy, and thanks Lobos for the reports, gonna check them out, also i have found many bugs on Month view (showing the event lists and the context menus) to be fixed
in a few hours its the conference and I'm still testing my application.
Oh man i cant sleep :((

PTG
23 Nov 2008, 8:59 AM
Here are various little fixes:
(some may have been reported yet, I haven't read all the posts)

calendar.js:
line 262:


if (this.header && this.tools.refresh){
dayview.js:
line 106:


var prevdclick = myheaderwrap.createChild({id:this.calx.id + '-btn-pd', tag: 'div', cls: 'x-calendar-day-previous',html:'' }); //0.0.6 added ID
var nextdclick = myheaderwrap.createChild({id:this.calx.id + '-btn-nd', tag: 'div', cls: 'x-calendar-day-next', html:'' }); //0.0.6 added ID
line 110:


prevdclick.addClassOnOver('x-calendar-day-previous-over');
line 113:


nextdclick.addClassOnOver('x-calendar-day-next-over');
line 318:


{id:this.calx.id + '-day_ctxbtn_task-go-nd', iconCls: 'x-calendar-day-btnmv_nextday', text: e2cs.cal_locale.contextMenuLabelsDay.NextDay, scope:this},
{id:this.calx.id + '-day_ctxbtn_task-go-pd', iconCls: 'x-calendar-day-btnmv_prevday', text: e2cs.cal_locale.contextMenuLabelsDay.PreviousDay, scope:this},
'-',
{id:this.calx.id + '-day_ctxbtn_viewmonth', iconCls: 'x-calendar-month-btnmv_viewmonth', text: e2cs.cal_locale.contextMenuLabelsDay.chgmview, scope:this},
{id:this.calx.id + '-day_ctxbtn_viewweek', iconCls: 'x-calendar-month-btnmv_viewweek', text: e2cs.cal_locale.contextMenuLabelsDay.chgwview, scope:this}
weekview.js
line 98:


var prevdclick = myheaderwrap.createChild({id:this.calx.id + '-btn-pw', tag: 'div', cls: 'x-calendar-week-previous',html:''});
var nextdclick = myheaderwrap.createChild({id:this.calx.id + '-btn-nw', tag: 'div', cls: 'x-calendar-week-next' ,html:''});
line 103:


prevdclick.addClassOnOver('x-calendar-week-previous-over');
line 107:


nextdclick.addClassOnOver('x-calendar-week-next-over');
line 509: (the function getDatesforWeek wasn't working correctly when the day of week is sunday)


var dw = new Date(Dateval).getDay();
dw = ((dw==0)?6:dw-1); // day of week, monday first
var initdate = new Date(Dateval.add(Date.DAY, -dw).format('m/d/Y') + ' ' + this.startTime); // monday always
var enddate = new Date(Dateval.add(Date.DAY, -dw+6).format('m/d/Y') + ' ' + this.endTime);
return [initdate,enddate];
monthview.js:
line 108:


var prevclick = myheaderwrap.createChild({id:this.calx.id + '-btn-pm', tag: 'div', cls: 'x-calendar-month-previous', html:'' }); //0.0.6 added ID
var nextclick = myheaderwrap.createChild({id:this.calx.id + '-btn-nm', tag: 'div', cls: 'x-calendar-month-next', html:'' }); //0.0.6 added ID
line 362: (just to be consistent with the other views, we reorder the menu items)


this.menu.items.items[2].addListener('click', function(){ this.onclicknext_month(); }, this); // added on alpha 0.0.4
this.menu.items.items[3].addListener('click', function(){ this.onclickprev_month(); }, this); // added on alpha 0.0.4
this.menu.items.items[5].addListener('click', function(){ this.changeCalview(Ext.get(elx),this,1); }, this);
this.menu.items.items[6].addListener('click', function(){ this.changeCalview(Ext.get(elx),this,2); }, this);
line 412, 414, 416:
The elx object isn't defined, I suppose that it should be replaced by objx.dom but I'm not sure.

calendar.css:
add "cursor: pointer;" to
.x-calendar-month-header .x-calendar-month-previous
.x-calendar-month-header .x-calendar-month-previous-over
.x-calendar-month-header .x-calendar-month-next
.x-calendar-month-header .x-calendar-month-next-over
.x-calendar-dayv-header .x-calendar-day-previous
.x-calendar-dayv-header .x-calendar-day-previous-over
.x-calendar-dayv-header .x-calendar-day-next
.x-calendar-dayv-header .x-calendar-day-next-over

frank_ash
23 Nov 2008, 11:28 PM
hi,
I have downloaded version 0.0.9 it is very nice.

1. I have using tab sample calendar. In _sample_tabs.htm have two calendar one calendar_one(general calendar ) and another one is calendar_two(other calendar ).
i have set both calendar_one,calendar_two mview: showTaskcount: false, showTaskList:true, showNumTasks:10. In General calendar show list view properly. but on other calendar month view not show properly view it show but view with bug.
how to solve it . when i should change code.

2. How to show public holiday in month view with different background color, like day red background color in month view. where i should add code.

3. when i right click and select add new event in month view and select it i got bug (in 0.0.7 when i right click on month view and select add new event i got alert event add for but in 0.0.9 i got bug )i want add new event in month view where i should add coding add event month view.

i have formpanel using to add event for week view and day view it is working fine already got this from u. But in week and day view it is working very fine can right click and add event. i m php programmer using back end my sql.

how to solve it help me. :-?

sprestel
24 Nov 2008, 2:28 AM
nice work.

how i can use the dayview.js on my side?

i can only use the samples ?!

thanks for your answers

lombras
26 Nov 2008, 9:14 AM
Hello Mendez!!

I get a problem!!

all dates with hours in PM dont display in day view, example:
stardate(hour): 18:00:00 - dont load, display "Nan-Nan-Nan Nan-Nan-Nan pm"
if hour is for example, 11:00:00, its display, no problem!

Any idea? maybe i changed something and dont saw...

ah, json its ok!! and the task array ist ok too!

Remy
26 Nov 2008, 9:18 AM
Hope Carlos is ok, he hasn't been on since the conference....

As far as memory serves, the component handles times in 12 hour format, you'll have to format your times accordingly. So '18:00' will need to be formatted as '6:00 PM'.

Either that or look at the source and modify it to handle 24 hours, I'll probably do this when it comes to using this component as 24 hour is less ambigious IMO.

cmendez21
26 Nov 2008, 9:52 AM
HI everybody, sorry for be absent a few days but the conference was so hard i took off some few days to rest :D (i'm still arriving and checking all my pending tasks)

As for the issues and problems i'm gonna check them out and see also the bug reports to fix them, and also all the doubts in a few hours gonna give a reply, have to check them to give the best solution possible

What its most probably its that tonight i'm gonna release some updates for the calendar cause there are many many bugs :">

Ana Xolalpa
26 Nov 2008, 1:09 PM
Saludos, esta de lujo el calendario, yo he trabajado con Ext y se como funcionan lod grid , estuve haciendo pruebas con tu calendario pero marca un error al hacer un Add Task me manda en firefox un elx is not defined.


Y lo marca en el e2cs_alpha_0.0.9

Podrias ayudarme con eso porfavor


Gracias espero tus comentarios!

cmendez21
26 Nov 2008, 2:03 PM
Saludos, esta de lujo el calendario, yo he trabajado con Ext y se como funcionan lod grid , estuve haciendo pruebas con tu calendario pero marca un error al hacer un Add Task me manda en firefox un elx is not defined.

Y lo marca en el e2cs_alpha_0.0.9
Podrias ayudarme con eso porfavor
Gracias espero tus comentarios!

Espera el update ya que si hay errores todavia de eso , estoy arreglandolos en este momento y creo q en la noche esta listo por las fallas que hubo :">

cmendez21
26 Nov 2008, 6:15 PM
Thanks PTG for the observations


hi,
I have downloaded version 0.0.9 it is very nice.

1. I have using tab sample calendar. In _sample_tabs.htm have two calendar one calendar_one(general calendar ) and another one is calendar_two(other calendar ).
i have set both calendar_one,calendar_two mview: showTaskcount: false, showTaskList:true, showNumTasks:10. In General calendar show list view properly. but on other calendar month view not show properly view it show but view with bug.
how to solve it . when i should change code.

2. How to show public holiday in month view with different background color, like day red background color in month view. where i should add code.

3. when i right click and select add new event in month view and select it i got bug (in 0.0.7 when i right click on month view and select add new event i got alert event add for but in 0.0.9 i got bug )i want add new event in month view where i should add coding add event month view.

i have formpanel using to add event for week view and day view it is
working fine already got this from u.

But in week and day view it is working very fine can right click and add event. i m php programmer using back end my sql.

how to solve it help me.

1.- it seems to be conflicting with other ids from other calendars working on this for the next update (hold on a little bit)
2.- Holidays are not supported yet but gonna keep in mind for the next FEATURES UPGRADE (not update)
3.- The bug may be fixed in the next update

"i have formpanel using to add event for week view and day view it is
working fine already got this from u. But in week and day view it is working very fine can right click and add event."

I dont understand you on this point can you be more specific


nice work.
how i can use the dayview.js on my side?
i can only use the samples ?!
thanks for your answers

I don't get it can you explain a little bit more ?



Hello Mendez!!
I get a problem!!
all dates with hours in PM dont display in day view, example:
stardate(hour): 18:00:00 - dont load, display "Nan-Nan-Nan Nan-Nan-Nan pm"
if hour is for example, 11:00:00, its display, no problem!
Any idea? maybe i changed something and dont saw...
ah, json its ok!! and the task array ist ok too!

Take a look at this reply on the thread
http://extjs.com/forum/showthread.php?p=244717#post244717


Another bug report - check out the october month, there is something wrong with the day
sequecing, somtimes there are days duplicated or missing. Seems only to be the month of october
( co-incidently this happens to be my birthday month!) hahahahhaha

Hi lobos i cant find the problem can you duplicate it so i can see it cause i dont have problems with october Wich is also my birthday month

Well im working on the repairing and some issues like the one frank_ash have explained on a previous reply havent been solved im gonna update it as soon as i get all the issues working


Please be patient ;) it will take a little more of what i expected but im on the works
Don't panic either :D

Lobos
26 Nov 2008, 8:47 PM
Hi lobos i cant find the problem can you duplicate it so i can see it cause i dont have problems with october Wich is also my birthday month

Cheers mate, http://e2cs.mm-mendez.com/samples/_sample_basic_plain.htm when i look at october 2008 in the month view i see that there are two "11" of octobers and no 12 this is also the case on october 2009 but with two 10ths and no 11th

Thanks!

frank_ash
26 Nov 2008, 11:23 PM
Thanks PTG for the observations



1.- it seems to be conflicting with other ids from other calendars working on this for the next update (hold on a little bit)
2.- Holidays are not supported yet but gonna keep in mind for the next FEATURES UPGRADE (not update)
3.- The bug may be fixed in the next update

"i have formpanel using to add event for week view and day view it is
working fine already got this from u. But in week and day view it is working very fine can right click and add event."

I dont understand you on this point can you be more specific



I don't get it can you explain a little bit more ?




Take a look at this reply on the thread
http://extjs.com/forum/showthread.php?p=244717#post244717



Hi lobos i cant find the problem can you duplicate it so i can see it cause i dont have problems with october Wich is also my birthday month

Well im working on the repairing and some issues like the one frank_ash have explained on a previous reply havent been solved im gonna update it as soon as i get all the issues working


Please be patient ;) it will take a little more of what i expected but im on the works
Don't panic either :D




In 0.0.9 when i right click on month view and select add new event after selected add new event I got bug Where this event fire i want add some formpanel coding to add event.

In 0.0.7 when i right click on month view and select add new event after selected add new event i not any error. already I have added some formpanel coding add event for calendar .


I have mention before like "i have formpanel using to add event for week view and day view it is
working fine already got this from u. But in week and day view it is working very fine can right click and add event." :)

cmendez21
27 Nov 2008, 12:57 AM
Hi everyone i've updated the latest release on the site so you can have it now and test it
All the fixed reported and noticed had been fixed and now it works a little better :D (the samples on the site are still on update please check them out in about 12 hours

Here are some bug reports already checked the other previous are fixed and running up:

Lobos: The error is cause I didnt update the samples on the site (sorry :">) , there were some issues on the samples, gonna fix them in a few hours but the samples on the update have to work fine with no problems (bug reported previously) please tell me if theres still the problem to check it out cause i've checked and no problem with the days or duplicates. (start day property on month view)

Frank _ash: the problem its a bug in the month view (task add) now its fixed and running , the tabs problem its also solved it was some conflict with the ids if someone have on more than one calendar on the same page with task/events lists

Ana Xolalpa: La actualizacion esta lista ya no deberas tener problemas de uso con el calendario


;)

lombras
27 Nov 2008, 4:13 AM
hey Mendez and Remy!

thks for answer, i just change my sql:

DATE_FORMAT(date,'%m/%d/%Y %H:%i:%S %p')
for this: DATE_FORMAT(date,'%m/%d/%Y %h:%i:%S %p')

ths and sorry for my english! heauhaeu

now, i get other problem, in IE7, in the dayview, the task stay up the header, see the image...

the calendar is inside a div where i load others panels too...but, just one for time...


<div id="div-centro"><?php echo $this->layout()->content; ?></div>


http://www.bandaentropia.com.br/calendar.JPG

sprestel
27 Nov 2008, 8:00 AM
Is there the possibility to intercept a double click in the weekly view?

I don't find something!!

Lobos
27 Nov 2008, 10:53 AM
Nope still go the problem with october :(( please view the attachment image and you will see the two 11ths... could it be a timezone problem cause i am in Brazil...

cmendez21
27 Nov 2008, 11:01 AM
hey Mendez and Remy!

thks for answer, i just change my sql:

DATE_FORMAT(date,'%m/%d/%Y %H:%i:%S %p')
for this: DATE_FORMAT(date,'%m/%d/%Y %h:%i:%S %p')ths and sorry for my english! heauhaeu

now, i get other problem, in IE7, in the dayview, the task stay up the header, see the image...

the calendar is inside a div where i load others panels too...but, just one for time...


<div id="div-centro"><?php echo $this->layout()->content; ?></div>

Just check this link http://extjs.com/forum/showthread.php?p=198740#post198740
an the next 4 replies it may solve the the problem

cmendez21
27 Nov 2008, 11:01 AM
Is there the possibility to intercept a double click in the weekly view?

I don't find something!!
in which p

cmendez21
27 Nov 2008, 11:13 AM
Nope still go the problem with october :(( please view the attachment image and you will see the two 11ths... could it be a timezone problem cause i am in Brazil...

WOW thats odd,
check if you have the latest version of the calendar (which i think you already have) and please check the function genbody step by step inside the monthview so you can trace where is the error, i've changed to many time zones on my PC and XAMPP and i havent got any problem :-?

Here on these lines check this out 659 to 710 which is the part that creates all the TD's on the month view (current month) (monthview source file):-|

frank_ash
28 Nov 2008, 4:36 AM
1. In month view current date(today) highlight now some different color. But i select next month there also current date(today) highlighted. But only current month today date highlight enough .

2. In month view I right click and select add new task for(2008-11-28). But after select add new task (2008-11-28) there will come alert different date like 20 Nov 2008. I want correct date. it is working 0.0.7 . in day and month view working properly.

how solve where i change code. :)

lombras
28 Nov 2008, 11:27 AM
Fala Lobos, blz??

Cara, estou com o mesmo problema no m

cmendez21
28 Nov 2008, 2:09 PM
1. In month view current date(today) highlight now some different color. But i select next month there also current date(today) highlighted. But only current month today date highlight enough .

2. In month view I right click and select add new task for(2008-11-28). But after select add new task (2008-11-28) there will come alert different date like 20 Nov 2008. I want correct date. it is working 0.0.7 . in day and month view working properly.

how solve where i change code. :)

For point 1: what happens is that when you change the month the calendar adjust a new date (not the current date or actual calendar (pc) date) so it can generate it and handle all the month you are up to

For point 2:
Its a small bug on the month view file

Please replace on line 431 this line after :

} else if (objx.dom.className=="daybody"){ // to check beheavior
var refdate= new Date(this.calx.currentdate);

to this new 2 lines :

} else if (objx.dom.className=="daybody"){ // to check beheavior
tmpdata = objx.id.replace("m-td-" + this.calx.id + "-",'');//m-td-test_calx-11/11/2008
refdate = new Date(tmpdata + "" );

sorry i miss that one :">

efreitasrj
29 Nov 2008, 11:16 AM
Hi Lobos,

I'm also in Brazil and I recently had the same problem you're describing but using Ext's DatePicker. The problem is related to javascript and Daylight Saving Time, so it's not exactly an Ext bug. On the date when the DST starts to take effect, the calendar code can't access the day 11/10/2008 at midnight. Javascript automatically translates this date to 10/10/2008 23:00. It subtracts one hour from the given time because the DST started on midnight, and this date technically doesn't exist.

I had to trace all the datepicker code to find this strange behaviour, and it probably affects the E2CS calendar the same way. Take a look at this thread for more details and possible workarounds: http://extjs.com/forum/showthread.php?t=18555&page=2

I think that this behaviour is really strange, and maybe it's something Windows related. Microsoft is doing a lot of changes on how the DST works because in the past, in the United States, the dates of daylight saving were always fixed. Now, they have changed the pattern, just like Brazil does every year, so they are changing the SO to accomodate one DST definition per year... Maybe they also had the brilliant idea of "fixing" Javascript so that when DST starts the date is automatically "corrected" by an hour.

This problem will probably happen to our american friends when their DST take effect next year. I don't think this is a brazilian-only problem.

cmendez21
30 Nov 2008, 11:15 PM
For what i have investigated efreitasrj is right
:-? there are some issues with DTS on dates Check out this links i've found so far

http://forums.asp.net/t/1165489.aspx
http://support.microsoft.com/kb/931836/en-us

sprestel
1 Dec 2008, 12:23 AM
[quote=cmendez21;256277]in which p

efreitasrj
1 Dec 2008, 6:11 AM
I forgot to mention one more thing about the DST problem. This problem is clearly Windows related because it only happens when the "Observe DST is turned on". If you double click the windows clock on the task-bar, go to the DST tab and uncheck the "observe DST" checkbox the problem disappears ! :)

Javascript starts to behave the way it did, ignoring DST. Nice, huh ? I think this setting is turned off by default, that's the reason why even Ext developers have a hard time reproducing the problem.