| Autor | Zpráva | ||
|---|---|---|---|
| mackopu Profil |
#1 · Zasláno: 3. 11. 2005, 14:46:11
Rád bych dvěma kolegům v práci trochu usnadnil plánování volného a pracovního času. Střídají se v turnusech -
Honza: Po - St > ranní Čt, Pá > odpolední So, Ne > volno Jirka: Po - St > odpolední Čt, Pá > ranní So, Ne > práce Výsledkem by měla být stránka, která pomocí JS obrazí např. měsíční kalendář, pod nímž se po kliknutí na datum zobrazí text třeba "Honza ranní, Jirka odpolední" nebo "Honza volno, Jirka práce". Sám jsem spíše PHP a možná bych to v potu myši zvládl napsat, ale zdá se mi zbytečné se kvůli provedení skriptu připojovat na server. JS by to jako klientský skript jistě zvládl elegantněji, rychleji a bez znovunačítání stránky. Neznáte (nemáte) někdo podobný skript? |
||
| Oswald Profil |
#2 · Zasláno: 3. 11. 2005, 17:22:41 · Upravil/a: Oswald
Zrovna pracuju na jednom vetším AJAX kalendáři, tak jsem z toho použil nejaké části a udělal kostru, na kterou můžeš navázat zobrazování infa o tom, kdo má pracovat. Stači implementovat fci whoWorks(), která se volá po clicku na den a nastylovat si to. Tady je fukční ukázka, mělo by to fungovat všude.
UPDATE: Ještě dodám, že tam není ošetřený přestupný rok, k tomu jsem se nějak nedostal :) |
||
| mackopu Profil |
#3 · Zasláno: 4. 11. 2005, 03:42:30
Oswald
Dobré. Jen musím konstatovat, že problém nemám s kalendářem, nýbrž s výpočtem toho turnusu. Kalendář není v zásadě problém implementovat, např. http://www.dynarch.com/projects/calendar/. Onclickem už snad nějak ošetřím volání funkce, která mi např. přes document write nebo innerhtml vypíše kýžený verdikt Přesto díky za reakci, protože to podle poměru zobrazení a odpovědí vypadá, že je to sakra tvrdý oříšek. I když jak se to vezme - v podstatě by stačilo třeba zjistit, zda je víkend sudý nebo lichý a přes zjištění angl. názvu dne konstatovat, že ten či onen člověk má právě tu a tu šichtu, přičemž někde na začátku skriptu by muselo být definováno, od koho se to začíná počítat. Já si to vlastně umím představit, jen to nedokážu převést do JS... |
||
|
Časová prodleva: 3 dny
|
|||
| mackopu Profil |
#4 · Zasláno: 7. 11. 2005, 11:43:11
Tak jsem to jakžtakž rozchodil a výsledek je k nahlédnutí zde.
Jen nemohu přijít na to, jak zajistit, aby nebylo nutné před přechodem na jiný měsíc stránku refrešovat. Pravděpodobně tam někde dochází ke kolizi se samotným výpisem turnusu. Poradíte? |
||
| Fred Profil |
#5 · Zasláno: 7. 11. 2005, 14:26:23
Blbne to na tý funkci whoWorks() , když nastavíš do toho renderování day.onclick=alertoid; a funkce alertoid je nějaké získání času, přestane to chodit např. function alertoid(){alert(this.date.getWeek())}
pokud je to normální alert, funguje to normálně. Ta funkce přepisuje čas tomu renderování, je to dost dlouhý script na dohledání přesné příčiny chyby, zkouším to :-( |
||
| Fred Profil |
#6 · Zasláno: 7. 11. 2005, 15:16:57
Hodně jsem tam toho přepisoval, takže si to stáhni http://xy.wz.cz/mackopu.htm a já to smáznu, budeš si muset převést zpátky na utf-8 nějak mi to tu blbne :-(
|
||
| Fred Profil |
#7 · Zasláno: 7. 11. 2005, 15:28:00
Hm, měl jsem tam blbou chybu, už je to v utf :-)
|
||
| mackopu Profil |
#8 · Zasláno: 7. 11. 2005, 15:33:04
Zatím velice děkuji, později budu studovat rozdíly v mé a tvojí verzi.
Výborná práce ;-) |
||
| Fred Profil |
#9 · Zasláno: 7. 11. 2005, 16:06:53
NZ, potřebuju se učit na příkladech, staženo ;-)
|
||
| Fred Profil |
#10 · Zasláno: 8. 11. 2005, 12:47:02
mackopu To si taky mohl říct, že tam stejně byla chyba, renderovalo to vždy aktuální měsíc, takže opravená verze http://xy.wz.cz/mackopu.htm
|
||
| Fred Profil |
#11 · Zasláno: 8. 11. 2005, 12:50:12
Ale stejně tam je něco shnilého co nemůžu najít, totálně mi to sestřeluje IE5. Možná jestli sem nakoukne ještě jednou Oswald, nebo Leo.
|
||
| mackopu Profil |
#12 · Zasláno: 8. 11. 2005, 13:09:15 · Upravil/a: mackopu
Frede, té chyby jsem si nestačil všimnout, promiň. Jinak koukám, že ses do toho tedy pěkně pustil ;-) nádhera. Tam už fakt chybí k dokonalosti jenom to, aby byl aktuální den nějak zvýrazněný.
Já mám v práci IE6 a FF, na těch je to v pohodě. |
||
| Fred Profil |
#13 · Zasláno: 8. 11. 2005, 15:19:18
V Opeře taky, ten dnešek tam zkouším přidat, jen se mi nedaří ho odebrat pro jiné měsíce, teď to označuje každého osmého, nedaří se mi dodat tomu info co máme za měsíc :(
|
||
| mackopu Profil |
#14 · Zasláno: 8. 11. 2005, 15:25:12
Já už jsem to právě dodělal - do fce renderCalendar (na konec) jsem přidal:
// zvýrazní dnešní den a chodí to. jen jsem si ještě nadefinoval day.onmouseover=green. |
||
| Fred Profil |
#15 · Zasláno: 8. 11. 2005, 15:45:13
Super, tak já to tam stáhnu, až na tu IE5 to šlape pěkně, tam pokud chci přejít na další měsíc tak zavolá doktora Watsona a jde do kopru.
|
||
| mackopu Profil |
#16 · Zasláno: 8. 11. 2005, 15:51:40
Hele Frede, když už jsme se tak hezky rozepsali, co kdyby to umělo ještě vypsat DNEŠNÍ datum a turnus, pokud nevyberu den? Tzn. že se to tam bude vypisovat při vstupu i při prostém listování kalendářem ;-)
Zkouším to a zatím nic. |
||
| Fred Profil |
#17 · Zasláno: 8. 11. 2005, 16:17:38
Zkouším to, ale musím teď za drahou polovičkou, nebo bude sekec mazec ;-)
|
||
| Fred Profil |
#18 · Zasláno: 8. 11. 2005, 21:03:36
Přidal jsem tam tlačítko dnes, ale chtělo by to zkrátit a vyčistit, hodně věcí se tam zbytečně opakuje, nicméně to funguje.
|
||
|
Časová prodleva: 21 let
|
|||
Toto téma je uzamčeno. Odpověď nelze zaslat.
0