fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [9122] property: forward voucher


From: Sigurd Nes
Subject: [Fmsystem-commits] [9122] property: forward voucher
Date: Wed, 11 Apr 2012 12:47:46 +0000

Revision: 9122
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=9122
Author:   sigurdne
Date:     2012-04-11 12:47:42 +0000 (Wed, 11 Apr 2012)
Log Message:
-----------
property: forward voucher

Modified Paths:
--------------
    trunk/property/inc/class.uiinvoice2.inc.php
    trunk/property/js/portico/ajax_invoice.js
    trunk/property/setup/phpgw_no.lang
    trunk/property/templates/base/invoice2.xsl

Modified: trunk/property/inc/class.uiinvoice2.inc.php
===================================================================
--- trunk/property/inc/class.uiinvoice2.inc.php 2012-04-11 12:39:29 UTC (rev 
9121)
+++ trunk/property/inc/class.uiinvoice2.inc.php 2012-04-11 12:47:42 UTC (rev 
9122)
@@ -281,9 +281,100 @@
 
                        $voucher_info['generic']['period_list']['options'] = 
$period_list;
                        
$voucher_info['generic']['periodization_start_list']['options'] = 
$periodization_start_list;
-                       
+
+                       $approved_list = array();
+
+                       $role_check = array
+                       (
+                               'is_janitor'                            => 
lang('janitor'),
+                               'is_supervisor'                         => 
lang('supervisor'),
+                               'is_budget_responsible'         => lang('b - 
responsible')
+                       );
+
                        if(count($voucher))
                        {
+
+//---------start forward
+                               $approve = 
execMethod('property.uiinvoice.get_approve_role');
+ 
+                               $approved_list[] = array
+                               (
+                                       'role'          => 
$role_check['is_janitor'],
+                                       'role_sign'     => 'oppsynsmannid',
+                                       'initials'      => 
$voucher[0]['janitor'] ? $voucher[0]['janitor'] : '',
+                                       'date'          => 
$voucher[0]['oppsynsigndato'] ? $GLOBALS['phpgw']->common->show_date( 
strtotime( $voucher[0]['oppsynsigndato'] ) ) :'',
+                                       'user_list'     => 
!$voucher[0]['oppsynsigndato'] ? array('options' => 
$this->bocommon->get_user_list_right(32,isset($voucher[0]['janitor'])?$voucher[0]['janitor']:'','.invoice'))
 : ''
+                               );
+                               $approved_list[] = array
+                               (
+                                       'role'          => 
$role_check['is_supervisor'],
+                                       'role_sign'     => 'saksbehandlerid',
+                                       'initials'      => 
$voucher[0]['supervisor'] ? $voucher[0]['supervisor'] : '',
+                                       'date'          => 
$voucher[0]['saksigndato'] ? $GLOBALS['phpgw']->common->show_date( strtotime( 
$voucher[0]['saksigndato'] ) ) :'',
+                                       'user_list'     => 
!$voucher[0]['saksigndato'] ? array('options' => 
$this->bocommon->get_user_list_right(64,isset($voucher[0]['supervisor'])?$voucher[0]['supervisor']:'','.invoice'))
 : ''
+                               );
+                               $approved_list[] = array
+                               (
+                                       'role'          => 
$role_check['is_budget_responsible'],
+                                       'role_sign'     => 
'budsjettansvarligid',
+                                       'initials'      => 
$voucher[0]['budget_responsible'] ? $voucher[0]['budget_responsible'] : '',
+                                       'date'          => 
$voucher[0]['budsjettsigndato'] ? $GLOBALS['phpgw']->common->show_date( 
strtotime( $voucher[0]['budsjettsigndato'] ) ) :'',
+                                       'user_list'     => 
!$voucher[0]['budsjettsigndato'] ? array('options' => 
$this->bocommon->get_user_list_right(128,isset($voucher[0]['budget_responsible'])?$voucher[0]['budget_responsible']:'','.invoice'))
 : ''
+                               );
+
+                               $my_initials = 
$GLOBALS['phpgw_info']['user']['account_lid'];
+
+                               foreach($approve as &$_approve)
+                               {
+                                       if($_approve['id'] == 'is_janitor' && 
$my_initials == $voucher[0]['janitor'] && $voucher[0]['oppsynsigndato'])
+                                       {
+                                               $_approve['selected'] = 1;
+                                               $sign_orig = 'is_janitor';
+                                       }
+                                       else if($_approve['id'] == 
'is_supervisor' && $my_initials == $voucher[0]['supervisor'] && 
$voucher[0]['saksigndato'])
+                                       {
+                                               $_approve['selected'] = 1;
+                                               $sign_orig = 'is_supervisor';
+                                       }
+                                       else if($_approve['id'] == 
'is_budget_responsible' && $my_initials == $voucher[0]['budget_responsible'] && 
$voucher[0]['budsjettsigndato'])
+                                       {
+                                               $_approve['selected'] = 1;
+                                               $sign_orig = 
'is_budget_responsible';
+                                       }
+                               }
+
+                               unset($_approve);
+
+                               $approve_list = array();
+                               foreach($approve as $_approve)
+                               {
+                                       if($_approve['id'] == 'is_janitor')
+                                       {
+                                               if(($my_initials == 
$voucher[0]['janitor'] && $voucher[0]['oppsynsigndato']) || 
!$voucher[0]['oppsynsigndato'])
+                                               {
+                                                       $approve_list[] = 
$_approve;
+                                               }
+                                       }
+                                       if($_approve['id'] == 'is_supervisor')
+                                       {
+                                               if(($my_initials == 
$voucher[0]['supervisor'] && $voucher[0]['saksigndato']) || 
!$voucher[0]['saksigndato'])
+                                               {
+                                                       $approve_list[] = 
$_approve;
+                                               }
+                                       }
+                                       if($_approve['id'] == 
'is_budget_responsible')
+                                       {
+                                               if(($my_initials == 
$voucher[0]['budget_responsible'] && $voucher[0]['budsjettsigndato']) || 
!$voucher[0]['budsjettsigndato'])
+                                               {
+                                                       $approve_list[] = 
$_approve;
+                                               }
+                                       }
+                               }
+
+                               $voucher_info['generic']['approve_list'] = 
array('options' => $approve_list);
+                               array_unshift 
($voucher_info['generic']['approve_list']['options'],array 
('id'=>'','name'=>lang('select')));
+//---------end forward
+
                                $voucher_info['generic']['approved_amount'] = 0;
                                $voucher_info['generic']['amount'] = 0;
                                foreach ($voucher as $line)
@@ -333,12 +424,35 @@
                                
$voucher_info['generic']['dimb_list']['options']                = 
$this->bo->select_dimb_list();
                                
$voucher_info['generic']['tax_code_list']['options']    = 
$this->bo->tax_code_list();
                                
$voucher_info['generic']['periodization_list']['options'] = 
execMethod('property.bogeneric.get_list', array('type'=>'periodization'));
+
+                               $approved_list[] = array
+                               (
+                                       'role'          => 
$role_check['is_janitor'],
+                                       'role_sign'     => 'oppsynsmannid',
+                               );
+                               $approved_list[] = array
+                               (
+                                       'role'          => 
$role_check['is_supervisor'],
+                                       'role_sign'     => 'saksbehandlerid',
+                               );
+                               $approved_list[] = array
+                               (
+                                       'role'          => 
$role_check['is_budget_responsible'],
+                                       'role_sign'     => 
'budsjettansvarligid',
+                               );
                        }
+
+                       $voucher_info['generic']['approved_list'] = 
$approved_list;
+                       $voucher_info['generic']['process_code_list'] = 
array('options' => execMethod('property.bogeneric.get_list', array(
+                               'type'          => 'voucher_process_code',
+                               'selected'      => 
isset($voucher[0]['process_code']) ? $voucher[0]['process_code'] : '')));
+
+                       array_unshift 
($voucher_info['generic']['process_code_list']['options'],array 
('id'=>'','name'=>lang('select')));
                        array_unshift 
($voucher_info['generic']['dimb_list']['options'],array 
('id'=>'','name'=>lang('select')));
                        array_unshift 
($voucher_info['generic']['periodization_list']['options'],array('id' => '0', 
'name' => lang('none')));
 
                        $voucher_info['voucher'] = $voucher;
-//_debug_array($voucher_info);
+//_debug_array($voucher_info);die();
 
                        return $voucher_info;
                }

Modified: trunk/property/js/portico/ajax_invoice.js
===================================================================
--- trunk/property/js/portico/ajax_invoice.js   2012-04-11 12:39:29 UTC (rev 
9121)
+++ trunk/property/js/portico/ajax_invoice.js   2012-04-11 12:47:42 UTC (rev 
9122)
@@ -205,9 +205,9 @@
                                        $("#invoice_id").html( 
voucher[0].invoice_id );
                                        $("#kid_nr").html( voucher[0].kid_nr );
                                        $("#vendor").html( voucher[0].vendor );
-                                       $("#janitor").html( voucher[0].janitor 
);
-                                       $("#supervisor").html( 
voucher[0].supervisor );
-                                       $("#budget_responsible").html( 
voucher[0].budget_responsible );
+//                                     $("#janitor").html( voucher[0].janitor 
);
+//                                     $("#supervisor").html( 
voucher[0].supervisor );
+//                                     $("#budget_responsible").html( 
voucher[0].budget_responsible );
                                        $("#invoice_date").html( 
voucher[0].invoice_date );
                                        $("#payment_date").html( 
voucher[0].payment_date );
                                        $("#b_account_id").val( 
voucher[0].b_account_id );
@@ -215,9 +215,9 @@
                                        $("#amount").html( 
data['generic'].amount );
                                        $("#approved_amount").html( 
data['generic'].approved_amount );
                                        $("#currency").html( 
voucher[0].currency );
-                                       $("#oppsynsigndato").html( 
voucher[0].oppsynsigndato );
-                                       $("#saksigndato").html( 
voucher[0].saksigndato );
-                                       $("#budsjettsigndato").html( 
voucher[0].budsjettsigndato );
+               //                      $("#oppsynsigndato").html( 
voucher[0].oppsynsigndato );
+               //                      $("#saksigndato").html( 
voucher[0].saksigndato );
+               //                      $("#budsjettsigndato").html( 
voucher[0].budsjettsigndato );
                                        if(voucher[0].merknad)
                                        {
                                                var oArgs_remark = 
{menuaction:'property.uiinvoice.remark', id: voucher[0].id};
@@ -336,6 +336,73 @@
 
                                                $("#periodization_start").html( 
htmlString );
                                        }
+
+                                       
if(data['generic']['process_code_list']['options'] != 'undefined')
+                                       {
+                                               var htmlString = "";
+
+                                               var obj = 
data['generic']['process_code_list']['options'];
+
+                                               $.each(obj, function(i) {
+                                                       var selected = '';
+                                                       if(obj[i].id == 
voucher[0].periodization)
+                                                       {
+                                                               selected = ' 
selected';
+                                                       }
+                                                       htmlString  += "<option 
value='" + obj[i].id + "'" + selected + ">" + obj[i].name + "</option>";
+                                               });
+
+                                               $("#process_code").html( 
htmlString );
+                                       }
+
+                                       if(data['generic']['approved_list'] != 
'undefined')
+                                       {
+                                               for ( var i = 0; i < 
data['generic']['approved_list'].length; ++i )
+                                               {
+                                                       var role_sign = 
data['generic']['approved_list'][i].role_sign;
+                                                       var role_initials = 
data['generic']['approved_list'][i].initials;
+
+                                                       if( 
data['generic']['approved_list'][i].date )
+                                                       {
+                                                               var htmlString 
= role_initials + ": " + data['generic']['approved_list'][i].date;
+                                                       }
+                                                       else
+                                                       {
+                                                               var htmlString 
= "<select name=\"values[forward][" + role_sign + "]\">";
+                                                               var obj = 
data['generic']['approved_list'][i]['user_list'].options;
+                                                               $.each(obj, 
function(i) {
+                                                                       var 
selected = '';
+                                                                       
if(obj[i].id == role_initials)
+                                                                       {
+                                                                               
selected = ' selected';
+                                                                       }
+                                                                       
htmlString  += "<option value='" + obj[i].id + "'" + selected + ">" + 
obj[i].name + "</option>";
+                                                               });
+
+                                                               htmlString  += 
"</select>";
+                                                       }
+                                                       $("#" + 
role_sign).html( htmlString );
+                                               }
+                                       }
+
+                                       
if(data['generic']['approve_list']['options'] != 'undefined')
+                                       {
+                                               var htmlString = "";
+
+                                               var obj = 
data['generic']['approve_list']['options'];
+
+                                               $.each(obj, function(i) {
+                                                       var selected = '';
+                                                       if(obj[i].id == 
voucher[0].period)
+
+                                                       {
+                                                               selected = ' 
selected';
+                                                       }
+                                                       htmlString  += "<option 
value='" + obj[i].id + "'" + selected + ">" + obj[i].name + "</option>";
+                                               });
+
+                                               $("#approve_as").html( 
htmlString );
+                                       }
                                }
                                else
                                {
@@ -346,25 +413,27 @@
                                        $("#invoice_id").html( '' );
                                        $("#kid_nr").html( '' );
                                        $("#vendor").html('' );
-                                       $("#janitor").html( '' );
-                                       $("#supervisor").html( '' );
-                                       $("#budget_responsible").html( '' );
+//                                     $("#janitor").html( '' );
+//                                     $("#supervisor").html( '' );
+//                                     $("#budget_responsible").html( '' );
                                        $("#invoice_date").html( '' );
                                        $("#payment_date").html( '' );
                                        $("#b_account_id").val( '' );
                                        $("#amount").html( '' );
                                        $("#approved_amount").html( '' );
                                        $("#currency").html( '' );
-                                       $("#oppsynsigndato").html( '' );
-                                       $("#saksigndato").html( '' );
-                                       $("#budsjettsigndato").html( '' );
+                                       $("#oppsynsmannid").html( '' );
+                                       $("#saksbehandlerid").html( '' );
+                                       $("#budsjettansvarligid").html( '' );
                                        $("#remark").html( '' );
                                        $("#dim_a").val('' );
                                        $("#dim_b").html( 
"<option>Velg</option>" );
                                        $("#period").html( 
"<option>Velg</option>" );
                                        $("#periodization").html( 
"<option>Velg</option>" );
                                        $("#periodization_start").html( 
"<option>Velg</option>" );
+                                       $("#process_code").html( 
"<option>Velg</option>" );
                                        $("#tax_code").html( 
"<option>0</option>" );
+                                       $("#approve_as").html( 
"<option>Velg</option>" );
                                        $("#order_text").html( 'Bestilling' );
                                        $("#invoice_id_text").html('FakturaNr');
                                }

Modified: trunk/property/setup/phpgw_no.lang
===================================================================
--- trunk/property/setup/phpgw_no.lang  2012-04-11 12:39:29 UTC (rev 9121)
+++ trunk/property/setup/phpgw_no.lang  2012-04-11 12:47:42 UTC (rev 9122)
@@ -174,6 +174,7 @@
 approval from  property        no      Godkjenning fra
 approval from is updated       property        no      Godkjenning fra er 
oppdatert
 approve        property        no      Godkjenn
+approve as     property        no      Godkjenn som
 approved       property        no      Godkjent
 approved amount        property        no      Godkjent beløp
 archive        property        no      Arkiv

Modified: trunk/property/templates/base/invoice2.xsl
===================================================================
--- trunk/property/templates/base/invoice2.xsl  2012-04-11 12:39:29 UTC (rev 
9121)
+++ trunk/property/templates/base/invoice2.xsl  2012-04-11 12:47:42 UTC (rev 
9122)
@@ -45,6 +45,7 @@
                                <xsl:apply-templates select="filter_form" />
                                <xsl:apply-templates select="filter_invoice" />
                                <xsl:call-template name="voucher_fields" />
+                               <xsl:call-template name="approve"/>
                                <tr>
                                        <td colspan = '6'>
                                                <xsl:apply-templates 
select="paging"/>
@@ -229,6 +230,7 @@
 
                        </td>
                </tr>
+<!--
                <tr>
                        <td>
                                <xsl:value-of select="php:function('lang', 
'janitor')" />
@@ -260,6 +262,7 @@
 
                        </td>
                </tr>
+-->
                <tr>
                        <td>
                                <div id = 'order_text'>
@@ -399,7 +402,7 @@
                                </select>
                        </td>
                </tr>
-
+<!--
                <tr>
                        <td>
                                <xsl:value-of select="php:function('lang', 
'oppsynsigndato')" />
@@ -442,27 +445,90 @@
                                </div>
                        </td>
                </tr>
+-->
+</xsl:template>
 
-<!--
-            merknad
-                    [art] => 1
-                    [type] => 1
-                    [dim_a] => 
-                    [dim_b] => 0
-                    [dim_d] => 441
-                    [tax] => 
 
-                    [project_id] => 
-                    [merknad] => 
-                    [b_account_id] => 12304262
-                    [kostra_id] => 
+       <!-- approve voucher  -->
+       <xsl:template xmlns:php="http://php.net/xsl"; name="approve">
+               <xsl:apply-templates 
select="voucher_info/generic/approved_list"/>
+               <tr>
+                       <td>
+                               <xsl:value-of select="php:function('lang', 
'voucher process code')" />
+                       </td>
+                       <td>
+                               <select id="process_code" name="process_code">
+                                       <xsl:apply-templates 
select="voucher_info/generic/process_code_list/options"/>
+                               </select>
+                       </td>
+               </tr>
+               <tr>
+                       <td class="th_text" align="left" valign="top" 
style="white-space: nowrap;">
+                               <xsl:value-of select="php:function('lang', 
'voucher process log')"/>
+                       </td>
+                       <td align="left">
+                               <textarea cols="60" rows="10" 
name="values[process_log]" wrap="virtual">
+                                       <xsl:attribute name="title">
+                                               <xsl:value-of 
select="php:function('lang', 'voucher process log')"/>
+                                       </xsl:attribute>
+                                       <xsl:value-of 
select="value_process_log"/>
+                               </textarea>
+                       </td>
+               </tr>
+               <tr>
+                       <input type="hidden" name="values[sign_orig]" 
value="{sign_orig}"/>
+                       <input type="hidden" name="values[my_initials]" 
value="{my_initials}"/>
+                       <td class="th_text" align="left" valign="top" 
style="white-space: nowrap;">
+                               <xsl:value-of select="php:function('lang', 
'approve as')"/>
+                       </td>
+                       <td class="th_text" valign="top" align="left">
+                               <select id = "approve_as" 
name="values[approve]">
+                                       <xsl:attribute name="title">
+                                               <xsl:value-of 
select="php:function('lang', 'approve as')"/>
+                                       </xsl:attribute>
+                                       <option value="">
+                                               <xsl:value-of 
select="php:function('lang', 'select')"/>
+                                       </option>
+                                       <xsl:apply-templates 
select="voucher_info/generic/approve_list/options"/>
+                               </select>
+                       </td>
+               </tr>
 
-                    [process_code] => 
-                    [process_log] => 
- 
--->
-</xsl:template>
+       </xsl:template>
 
+
+       <!-- New template-->
+       <xsl:template match="approved_list" xmlns:php="http://php.net/xsl";>
+               <tr>
+                       <td align="left" style="white-space: nowrap;">
+                               <xsl:value-of select="role"/>
+                       </td>
+                       <td align="left" style="white-space: nowrap;">
+                               <div id = "{role_sign}">
+                                       <xsl:choose>
+                                               <xsl:when test="date != ''">
+                                                       <xsl:value-of 
select="initials"/>
+                                                       <xsl:text>: </xsl:text>
+                                                       <xsl:value-of 
select="date"/>
+                                               </xsl:when>
+                                               <xsl:otherwise>
+                                                               <select 
name="values[forward][{role_sign}]">
+                                                                       
<xsl:attribute name="title">
+                                                                               
<xsl:value-of select="role"/>
+                                                                       
</xsl:attribute>
+                                                                       <option 
value="">
+                                                                               
<xsl:value-of select="php:function('lang', 'forward')"/>
+                                                                       
</option>
+                                                                       
<xsl:apply-templates select="user_list/options"/>
+                                                               </select>
+                                               </xsl:otherwise>
+                                       </xsl:choose>
+                               </div>
+                       </td>
+               </tr>
+       </xsl:template>
+
+
 <xsl:template match="datatable" xmlns:php="http://php.net/xsl";>
        <div id="data_paginator"/>
        <div class="error_msg" style="margin-left:20px;">Du må velge bruker for 
godkjenning</div>




reply via email to

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