Author: sevein
Date: Tue Jul  5 17:56:54 2011
New Revision: 9248

Log:
Add calendar helper to {de}accession date field

Added:
   trunk/images/calendar.png   (contents, props changed)
Modified:
   trunk/js/date.js
   
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/actions/editAction.class.php
   
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/actions/editDeaccessionAction.class.php
   trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/config/view.yml
   
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/templates/editDeaccessionSuccess.php
   
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/templates/editSuccess.php

Added: trunk/images/calendar.png
==============================================================================
Binary file. No diff available.

Modified: trunk/js/date.js
==============================================================================
--- trunk/js/date.js    Tue Jul  5 15:56:23 2011        (r9247)
+++ trunk/js/date.js    Tue Jul  5 17:56:54 2011        (r9248)
@@ -78,5 +78,47 @@
                   })
                 .val());
             });
+
+          $('input.date-widget', context).each(function ()
+            {
+              var self = this;
+
+              $(self)
+                .css({'float': 'left', 'width': 'auto'})
+                .after('&nbsp;<button><img src="' + self.getAttribute('icon') 
+ '" /></button>').next()
+                .click(function(event)
+                {
+                  event.preventDefault();
+
+                  if (self.calendar)
+                  {
+                    self.calendar.show();
+
+                    return false;
+                  }
+
+                  self.element = $(document.createElement('div'))
+                    .css({
+                      'position': 'absolute',
+                      'left': parseInt($(self).width() + 60) + 'px',
+                      'z-index': 4})
+                    .insertAfter(self);
+
+                  self.calendar = new 
YAHOO.widget.Calendar(self.element.get(0), { close: true });
+
+                  self.calendar.selectEvent.subscribe(function(type, args, obj)
+                    {
+                      var year = args[0][0][0],
+                          month = args[0][0][1],
+                          day = args[0][0][2];
+
+                      self.value = year + '-' + month + '-' + day;
+
+                      self.calendar.hide();
+                    })
+
+                  self.calendar.render();
+                })
+            });
         } };
   })(jQuery);

Modified: 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/actions/editAction.class.php
==============================================================================
--- 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/actions/editAction.class.php
      Tue Jul  5 15:56:23 2011        (r9247)
+++ 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/actions/editAction.class.php
      Tue Jul  5 17:56:54 2011        (r9248)
@@ -142,7 +142,7 @@
         break;
 
       case 'date':
-        // If it is a *new* accession, set 
+        // If it is a *new* accession, set current date as default
         if (!isset($this->resource->id))
         {
           $dt = new DateTime;

Modified: 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/actions/editDeaccessionAction.class.php
==============================================================================
--- 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/actions/editDeaccessionAction.class.php
   Tue Jul  5 15:56:23 2011        (r9247)
+++ 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/actions/editDeaccessionAction.class.php
   Tue Jul  5 17:56:54 2011        (r9248)
@@ -103,7 +103,7 @@
         break;
 
       case 'date':
-        // If it is a *new* accession, set 
+        // If it is a *new* deaccession, set current date as default
         if (!isset($this->resource->id))
         {
           $dt = new DateTime;

Modified: 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/config/view.yml
==============================================================================
--- trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/config/view.yml   
Tue Jul  5 15:56:23 2011        (r9247)
+++ trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/config/view.yml   
Tue Jul  5 17:56:54 2011        (r9248)
@@ -1,22 +1,24 @@
 editSuccess:
   stylesheets:
-    /vendor/yui/autocomplete/assets/skins/sam/autocomplete: { position: first }
+    /vendor/yui/calendar/assets/skins/sam/calendar: { position: first }
     edit:
   javascripts:
     /plugins/sfDrupalPlugin/vendor/drupal/misc/jquery.once.js:
     /plugins/sfDrupalPlugin/vendor/drupal/misc/collapse:
     /plugins/sfDrupalPlugin/vendor/drupal/misc/form:
-    /plugins/sfDrupalPlugin/vendor/drupal/misc/textarea:
+    /vendor/yui/calendar/calendar-min:
+    date:
 
 editDeaccessionSuccess:
   stylesheets:
-    /vendor/yui/autocomplete/assets/skins/sam/autocomplete: { position: first }
+    /vendor/yui/calendar/assets/skins/sam/calendar: { position: first }
     edit:
   javascripts:
     /plugins/sfDrupalPlugin/vendor/drupal/misc/jquery.once.js:
     /plugins/sfDrupalPlugin/vendor/drupal/misc/collapse:
     /plugins/sfDrupalPlugin/vendor/drupal/misc/form:
-    /plugins/sfDrupalPlugin/vendor/drupal/misc/textarea:
+    /vendor/yui/calendar/calendar-min:
+    date:
 
 indexSuccess:
   javascripts:

Modified: 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/templates/editDeaccessionSuccess.php
==============================================================================
--- 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/templates/editDeaccessionSuccess.php
      Tue Jul  5 15:56:23 2011        (r9247)
+++ 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/templates/editDeaccessionSuccess.php
      Tue Jul  5 17:56:54 2011        (r9248)
@@ -22,8 +22,7 @@
 
   <?php echo $form->date
     ->label(__('Date').' <span class="form-required" title="'.__('This is a 
mandatory element.').'">*</span>')
-    ->help(__('Use YYYY-MM-DD format.'))
-    ->renderRow() ?>
+    ->renderRow(array('class' => 'date-widget', 'icon' => 
image_path('calendar.png'))) ?>
 
   <?php echo render_field($form->description
     ->label(__('Description').' <span class="form-required" title="'.__('This 
is a mandatory element.').'">*</span>'), $resource, array('class' => 
'resizable')) ?>

Modified: 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/templates/editSuccess.php
==============================================================================
--- 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/templates/editSuccess.php
 Tue Jul  5 15:56:23 2011        (r9247)
+++ 
trunk/plugins/qtAccessionPlugin/modules/qtAccessionPlugin/templates/editSuccess.php
 Tue Jul  5 17:56:54 2011        (r9248)
@@ -18,8 +18,7 @@
     
   <?php echo $form->date
     ->label(__('Acquisition date').' <span class="form-required" 
title="'.__('This is a mandatory element.').'">*</span>')
-    ->help(__('Use YYYY-MM-DD format.'))
-    ->renderRow() ?>
+    ->renderRow(array('class' => 'date-widget', 'icon' => 
image_path('calendar.png'))) ?>
 
   <?php echo render_field($form->sourceOfAcquisition
     ->label(__('Source of acquisition').' <span class="form-required" 
title="'.__('This is a mandatory element.').'">*</span>'), $resource, 
array('class' => 'resizable')) ?>

-- 
You received this message because you are subscribed to the Google Groups 
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/qubit-commits?hl=en.

Reply via email to