fmsystem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Fmsystem-commits] [10039] registration: generic approach


From: Sigurd Nes
Subject: [Fmsystem-commits] [10039] registration: generic approach
Date: Thu, 27 Sep 2012 09:07:13 +0000

Revision: 10039
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=10039
Author:   sigurdne
Date:     2012-09-27 09:07:12 +0000 (Thu, 27 Sep 2012)
Log Message:
-----------
registration: generic approach

Modified Paths:
--------------
    trunk/registration/inc/class.uipending.inc.php

Added Paths:
-----------
    trunk/registration/js/yahoo/pending.index2.js

Modified: trunk/registration/inc/class.uipending.inc.php
===================================================================
--- trunk/registration/inc/class.uipending.inc.php      2012-09-27 09:06:00 UTC 
(rev 10038)
+++ trunk/registration/inc/class.uipending.inc.php      2012-09-27 09:07:12 UTC 
(rev 10039)
@@ -203,7 +203,7 @@
                        }
 
                        self::add_javascript('phpgwapi', 'yahoo', 
'datatable.js');
-                       self::add_javascript('registration', 'yahoo', 
'pending.index.js');
+                       self::add_javascript('registration', 'yahoo', 
'pending.index2.js');
 
                        phpgwapi_yui::load_widget('datatable');
                        phpgwapi_yui::load_widget('paginator');
@@ -295,25 +295,68 @@
                                                array(
                                                        'key' => 
'location_code',
                                                        'label' => 
lang('location'),
-                                                       'sortable'      => false
+                                                       'sortable'      => 
false,
+       //                                              'editor' => 'new 
YAHOO.widget.CheckboxCellEditor({checkboxOptions:[{label:"ja", 
value:true},{label:"nei", value:false}],disableBtns:true})'
                                                ),
                                                array(
                                                                'key' => 
'checked',
                                                                'label' => 
lang('approve'),
                                                                'sortable' => 
false,
                                                                'formatter' => 
'formatterCheckPending',
-                                                               'className' => 
'mychecks'
+                                                               'className' => 
'mychecks',
                                                ),
-                                       )
+/*
+                                               array(
+                                                               'key' => 
'actions',
+                                                               'hidden' => true
+                                                       ),
+                                                       array(
+                                                               'key' => 
'labels',
+                                                               'hidden' => true
+                                                       ),
+                                                       array(
+                                                               'key' => 'ajax',
+                                                               'hidden' => true
+                                                       ),array(
+                                                               'key' => 
'parameters',
+                                                               'hidden' => true
+                                                       )                       
                
+*/
+                                       ),
                                ),
                        );
+
+                       $parameters = array
+                               (
+                                       'parameter' => array
+                                       (
+                                               array
+                                               (
+                                                       'name'          => 'id',
+                                                       'source'        => 'id'
+                                               ),
+                                       )
+                               );
+
+                       $data['datatable']['actions'][] = array
+                                       (
+                                               'my_name'               => 
'edit',
+                                               'text'                  => 
lang('edit'),
+                                               'action'                => 
$GLOBALS['phpgw']->link('/index.php',array
+                                               (
+                                                       'menuaction'    => 
'registration.uipending.edit'
+                                               )),
+                                               'parameters'    => 
json_encode($parameters)
+                                       );
+                                       
+       //              $data['datatable']['editor_action'] = 
'rental.uiprice_item.set_value';
+
 //_debug_array($data);die();
 
                        self::render_template_xsl(array('datatable_common'), 
$data);
                }
 
 
-
                public function edit()
                {
                        $id = phpgw::get_var('id', 'string');
@@ -546,8 +589,24 @@
                        $results['sort'] = 'reg_lid';
                        $results['dir'] = $this->bo->sort ? $this->bo->sort : 
'ASC';
                                        
-//                     array_walk($results['results'], array($this, 
'add_links'), array($type));
-                                               
+                       array_walk($results['results'], array($this, 
'add_actions'), array($type));
+//_debug_array($results);                                              
                        return $this->yui_results($results);
                }
+
+               public function add_actions(&$value, $key, $params)
+               {
+                       //Defining new columns
+                       $value['ajax'] = array();
+                       $value['actions'] = array();
+                       $value['labels'] = array();
+       
+                       $value['ajax'][] = true;
+                       $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental._uibilling.delete', 
'id' => $value['id'])));
+                       $value['labels'][] = lang('delete');
+                       $value['ajax'][] = true;
+                       $value['actions'][] = 
html_entity_decode(self::link(array('menuaction' => 'rental._uibilling.commit', 
'id' => $value['id'])));
+                       $value['labels'][] = lang('commit');
+           }
+
        }

Added: trunk/registration/js/yahoo/pending.index2.js
===================================================================
--- trunk/registration/js/yahoo/pending.index2.js                               
(rev 0)
+++ trunk/registration/js/yahoo/pending.index2.js       2012-09-27 09:07:12 UTC 
(rev 10039)
@@ -0,0 +1,98 @@
+       var main_source;
+       var oArgs_edit = {menuaction:'registration.uipending.edit'};
+       var edit_Url = phpGWLink('index.php', oArgs_edit);
+
+       formatLinkPending = function(elCell, oRecord, oColumn, oData)
+       {
+               var id = oRecord.getData(oColumn.key);
+               elCell.innerHTML = '<a href="' + edit_Url + '&id=' + id + '">' 
+ lang['edit'] + '</a>'; 
+       };
+
+
+       var formatterCheckPending = function(elCell, oRecord, oColumn, oData)
+       {
+               var checked = '';
+               var hidden = '';
+               if(oRecord.getData('reg_approved'))
+               {
+                       checked = "checked = 'checked'";
+                       hidden = "<input type=\"hidden\" class=\"orig_check\"  
name=\"values[pending_users_orig][]\" 
value=\""+oRecord.getData('reg_id')+"\"/>";
+               }
+               elCell.innerHTML = hidden + "<center><input type=\"checkbox\" 
class=\"mychecks\"" + checked + "value=\""+oRecord.getData('reg_id')+"\" 
name=\"values[pending_users][]\"/></center>";
+       }
+
+       var FormatterCenter = function(elCell, oRecord, oColumn, oData)
+       {
+               elCell.innerHTML = "<center>"+oData+"</center>";
+       }
+
+       function checkAll(myclass)
+       {
+               controls = YAHOO.util.Dom.getElementsByClassName(myclass);
+               for(i=0;i<controls.length;i++)
+               {
+                       if(!controls[i].disabled)
+                       {
+                               //for class=transfer_idClass, they have to be 
interchanged
+                               if(myclass=="mychecks")
+                               {
+                                       if(controls[i].checked)
+                                       {
+                                               controls[i].checked = false;
+                                       }
+                                       else
+                                       {
+                                               controls[i].checked = true;
+                                       }
+                               }
+                               //for the rest, always id checked
+                               else
+                               {
+                                       controls[i].checked = true;
+                               }
+                       }
+               }
+       }
+       
+       function onSave()
+       {
+               var divs = YAHOO.util.Dom.getElementsByClassName('user_submit');
+               var mydiv = divs[divs.length-1];
+
+               // styles for dont show
+
+               valuesForPHP            = 
YAHOO.util.Dom.getElementsByClassName('mychecks');                    
+               valuesForPHP_orig       = 
YAHOO.util.Dom.getElementsByClassName('orig_check');
+
+               var myclone = null;
+               //add all control to form
+               for(i=0;i<valuesForPHP.length;i++)
+               {
+                       myclone = valuesForPHP[i].cloneNode(true);
+                       mydiv.appendChild(myclone);
+               }
+               
+               for(i=0;i<valuesForPHP_orig.length;i++)
+               {
+                       myclone = valuesForPHP_orig[i].cloneNode(true);
+                       mydiv.appendChild(myclone);
+               }
+
+               if( !(true) )
+               {
+                       var datatable_container_elem = 
document.getElementById('datatable-container');
+                       var error_elem = 
YAHOO.util.Dom.getElementsByClassName('error_msg')[0];
+
+                       error_elem.style.display = 'block';
+
+                       return false;
+               }
+               else
+               {
+                       var error_elem = 
YAHOO.util.Dom.getElementsByClassName('error_msg')[0];
+                       error_elem.style.display = 'none';
+               }
+
+               mydiv.style.display = "none";
+       }
+




reply via email to

[Prev in Thread] Current Thread [Next in Thread]