Add a nice JavaScript popup calendar to some forms
authorJoey Schulze <joey@infodrom.org>
Mon, 15 Sep 2008 11:02:18 +0000 (11:02 +0000)
committerJoey Schulze <joey@infodrom.org>
Mon, 15 Sep 2008 11:02:18 +0000 (11:02 +0000)
Makefile
Styles/service.style
src/InfoCon/account/edit.wml
src/InfoCon/account/query.wml
src/Infodrom/events/edit.wml
src/Infodrom/events/show.wml
src/pix/arrowleftmonth.gif [new file with mode: 0644]
src/pix/arrowrightmonth.gif [new file with mode: 0644]
src/pix/calendar.gif [new file with mode: 0644]
src/pix/close.gif [new file with mode: 0644]

index 5ce70bb..30f0dc8 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -15,6 +15,7 @@ endif
 FILES = --exclude "CVS/" --exclude "*imgdot-1x1-transp.gif" --include "*/"
 FILES+= --include "*.html" --include "*.shtml" --include "*.php"
 FILES+= --include "*.png" --include "*.gif" --include "*.jpg"
+FILES+= --include "*.js"
 FILES+= --include infodrom.css
 FILES+= --include favicon.ico
 ifeq ($(hostname),luonnotar)
index 3d5a8b2..b9d97ac 100644 (file)
 
 <restore title function pagetitle>
 </define-tag>
+
+<define-tag calendar_init>
+<script type="text/javascript" src="<root_prefix>calendar.js"></script>
+<script type="text/javascript">
+caldays = new Array('S','M','D','M','D','F','S');
+mn = new Array('Jan','Feb','Mär','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez');
+var opts ={past: true, startat: 1, close: true, delim: '.', imgpath: '<root_prefix>pix/'};
+calendar(opts);
+</script>
+<style type="text/css">
+img.calendar {
+  margin-bottom: %0px;
+}
+</style>
+</define-tag>
+
+<define-tag calendar>
+<img class="calendar" src="<root_prefix>pix/calendar.gif" onclick="event.cancelBubble=true;popcalendar('%0');">
+</define-tag>
index a6a7d5c..2ad69d6 100644 (file)
@@ -2,6 +2,7 @@
 #include "account.inc"
 
 <page func=InfoCon title="Kontoführung">
+<calendar_init 5>
 
 <?
   $table = "account";
@@ -50,7 +51,6 @@ label {
   color: white;
 }
 input {
-  display: block;
   width: 400px;
   margin-bottom: 10px;
   border: solid #1aa2fe;
@@ -95,6 +95,7 @@ input.submit:hover {
 <br class="none">
 <label for=datum>Datum</label>
 <input id=datum name=datum size=15 maxlength=10 value="<?=$date?>" tabindex=2>
+<calendar "datum">
 
 <br class="none">
 <label for=category>Kategorie</label>
index 9119e28..2de89bc 100644 (file)
@@ -2,6 +2,7 @@
 #include "account.inc"
 
 <page func=InfoCon title="Kontoführung">
+<calendar_init 5>
 
 <account_heading>
 
@@ -19,7 +20,6 @@ label {
   color: white;
 }
 input {
-  display: block;
   width: 300px;
   margin-bottom: 10px;
   border: solid #1aa2fe;
@@ -89,6 +89,7 @@ input.submit:hover {
 <br class="none">
 <label for=deadline>Stichtag</label>
 <input id=deadline name=deadline size=25 maxlength=10>
+<calendar "deadline">
 
 <? if (!isset($_GET["cur"]) || $_GET["cur"] != "dm") { ?>
 
index 89f7185..aaa6c9d 100644 (file)
@@ -1,6 +1,7 @@
 #include <infodrom.style>
 
 <page func="Infodrom Oldenburg" title="Events">
+<calendar_init 0>
 
 <?
   if ($_GET[id] > 0) {
@@ -35,7 +36,7 @@
 <b>City:</b> <input name=city size=60 maxlength=80 value="<? echo $row['city']; ?>"><br>
 <b>Country:</b> <input name=country size=60 maxlength=30 value="<? echo $row['country']; ?>"><br>
 
-<b>Date:</b> <input name=date size=10 maxlength=10 value="<? echo $date; ?>"><br>
+<b>Date:</b> <input name=date id=date size=10 maxlength=10 value="<? echo $date; ?>"> <calendar "date"><br>
 <b>Days:</b> <input name=days size=5 maxlength=2 value="<? echo $days; ?>"><br>
 
 <b>Conference:</b> <input name=conference type=checkbox value=1 <? if ($row['conference']==1) { echo "checked";} ?>><br>
index efc384e..cbba365 100644 (file)
@@ -1,6 +1,7 @@
 #include <infodrom.style>
 
 <page func="Infodrom Oldenburg" title="Events">
+<calendar_init 5>
 
 <?
   $row = false;
@@ -73,7 +74,7 @@ input.submit:hover {
 </style>
 <p><form method=post action="update.php">
 <input type=hidden name=id value="<? echo $_GET[id]; ?>">
-<b>New date:</b> <input name=date size=10 maxlength=10 value="" tabindex=1> &nbsp;
+<b>New date:</b> <input name=date id=date size=10 maxlength=10 value="" tabindex=1> <calendar "date"> &nbsp;
 <input class=submit type=submit name=clone value="Clone">
 </form></p>
 <?
diff --git a/src/pix/arrowleftmonth.gif b/src/pix/arrowleftmonth.gif
new file mode 100644 (file)
index 0000000..313b627
Binary files /dev/null and b/src/pix/arrowleftmonth.gif differ
diff --git a/src/pix/arrowrightmonth.gif b/src/pix/arrowrightmonth.gif
new file mode 100644 (file)
index 0000000..0ad2aa1
Binary files /dev/null and b/src/pix/arrowrightmonth.gif differ
diff --git a/src/pix/calendar.gif b/src/pix/calendar.gif
new file mode 100644 (file)
index 0000000..dc1f31c
Binary files /dev/null and b/src/pix/calendar.gif differ
diff --git a/src/pix/close.gif b/src/pix/close.gif
new file mode 100644 (file)
index 0000000..91d6c8d
Binary files /dev/null and b/src/pix/close.gif differ