Re-add dragging handlers.
authorJan Schneider <jan@horde.org>
Wed, 1 Apr 2009 19:54:41 +0000 (21:54 +0200)
committerJan Schneider <jan@horde.org>
Thu, 2 Apr 2009 22:50:55 +0000 (00:50 +0200)
kronolith/js/src/kronolith.js
kronolith/themes/screen.css

index 94b8ee8..ef27f64 100644 (file)
@@ -648,17 +648,6 @@ KronolithCore = {
             'class': 'kronolithEvent',
             'style': 'background-color:' + event.value.bg + ';color:' + event.value.fg
         });
-        div.setText(event.value.t)
-            .observe('mouseover', div.addClassName.curry('kronolithSelected'))
-            .observe('mouseout', div.removeClassName.curry('kronolithSelected'));
-        if (event.value.a) {
-            div.insert(' ')
-                .insert(new Element('IMG', { 'src': Kronolith.conf.URI_IMG + 'alarm-' + event.value.fg.substr(1) + '.png', 'title': Kronolith.text.alarm + ' ' + event.value.a }));
-        }
-        if (event.value.r) {
-            div.insert(' ')
-                .insert(new Element('IMG', { 'src': Kronolith.conf.URI_IMG + 'recur-' + event.value.fg.substr(1) + '.png', 'title': Kronolith.text.recur[event.value.r] }));
-        }
 
         switch (view) {
         case 'day':
@@ -666,6 +655,7 @@ KronolithCore = {
             var midnight = Date.parseExact(date, 'yyyyMMdd'),
                 start = Date.parse(event.value.s),
                 end = Date.parse(event.value.e),
+                innerDiv = new Element('DIV', { 'class': 'kronolithEventInfo' }),
                 container = $('kronolithViewDay'),
                 tr = container.down('tbody tr').next('tr'),
                 td = tr.down('td'),
@@ -677,8 +667,12 @@ KronolithCore = {
                 'top': ((midnight.getElapsed(start) / 60000 | 0) * height / 60 + offset | 0) + 'px',
                 'height': ((start.getElapsed(end) / 60000 | 0) * height / 60 - spacing | 0) + 'px',
                 'width': '100%'
-            });
+            })
+                .insert(new Element('DIV', { 'class': 'kronolithDragger kronolithDraggerTop' }))
+                .insert(innerDiv)
+                .insert(new Element('DIV', { 'class': 'kronolithDragger kronolithDraggerBottom' }));
             $('kronolithEventsDay').insert(div);
+            div = innerDiv;
             break;
 
         case 'month':
@@ -690,6 +684,18 @@ KronolithCore = {
             }
             break;
         }
+
+        div.setText(event.value.t)
+            .observe('mouseover', div.addClassName.curry('kronolithSelected'))
+            .observe('mouseout', div.removeClassName.curry('kronolithSelected'));
+        if (event.value.a) {
+            div.insert(' ')
+                .insert(new Element('IMG', { 'src': Kronolith.conf.URI_IMG + 'alarm-' + event.value.fg.substr(1) + '.png', 'title': Kronolith.text.alarm + ' ' + event.value.a }));
+        }
+        if (event.value.r) {
+            div.insert(' ')
+                .insert(new Element('IMG', { 'src': Kronolith.conf.URI_IMG + 'recur-' + event.value.fg.substr(1) + '.png', 'title': Kronolith.text.recur[event.value.r] }));
+        }
     },
 
     _removeEvent: function(event, calendar)
index 610fc85..1971a34 100644 (file)
@@ -1165,30 +1165,30 @@ div.kronolithView div.kronolithViewBody div.kronolithRow div .kronolithEvent.kro
 div.kronolithViewWeek .kronolithEvents .kronolithEvent {
     width: 11%;
 }
-div.kronolithView .kronolithEvents .kronolithEvent .kronolithDragger {
+.kronolithEvent .kronolithDragger {
     position: absolute;
     width: 100%;
     height: 12px;
     background: transparent url("graphics/drag-handle.png") center center no-repeat;
 }
-div.kronolithView .kronolithEvents .kronolithEvent.kronolithSelected .kronolithDragger {
+.kronolithEvent:hover .kronolithDragger, .kronolithEvent.kronolithSelected .kronolithDragger {
     background-color: #202020;
 }
-div.kronolithView .kronolithEvents .kronolithEvent .kronolithDragger.kronolithDraggerTop {
+.kronolithEvent .kronolithDragger.kronolithDraggerTop {
     top: 0;
     -moz-border-radius: 5px 5px 0 0;
     -webkit-border-top-left-radius: 5px;
     -webkit-border-top-right-radius: 5px;
     cursor: n-resize;
 }
-div.kronolithView .kronolithEvents .kronolithEvent .kronolithDragger.kronolithDraggerBottom {
+.kronolithEvent .kronolithDragger.kronolithDraggerBottom {
     bottom: 0;
     -moz-border-radius: 0 0 5px 5px;
     -webkit-border-bottom-left-radius: 5px;
     -webkit-border-bottom-right-radius: 5px;
     cursor: s-resize;
 }
-div.kronolithView .kronolithEvents .kronolithEvent .kronolithEventInfo {
+.kronolithEvent .kronolithEventInfo {
     margin: 10px 0;
     padding: 5px;
 }