[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [9250] property: invoice: more on ACL based on dime
From: |
Sigurd Nes |
Subject: |
[Fmsystem-commits] [9250] property: invoice: more on ACL based on dime |
Date: |
Tue, 01 May 2012 15:40:38 +0000 |
Revision: 9250
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=9250
Author: sigurdne
Date: 2012-05-01 15:40:37 +0000 (Tue, 01 May 2012)
Log Message:
-----------
property: invoice: more on ACL based on dime
Modified Paths:
--------------
trunk/property/inc/class.uiwo_hour.inc.php
trunk/property/inc/class.uiworkorder.inc.php
trunk/property/js/portico/ajax_workorder_edit.js
trunk/property/setup/phpgw_no.lang
trunk/property/templates/base/workorder.xsl
Modified: trunk/property/inc/class.uiwo_hour.inc.php
===================================================================
--- trunk/property/inc/class.uiwo_hour.inc.php 2012-05-01 09:54:46 UTC (rev
9249)
+++ trunk/property/inc/class.uiwo_hour.inc.php 2012-05-01 15:40:37 UTC (rev
9250)
@@ -1445,11 +1445,17 @@
{
if(isset($this->config->config_data['invoice_acl']) &&
$this->config->config_data['invoice_acl'] == 'dimb')
{
-
if(!execMethod('property.boinvoice.get_approve_role', $project['ecodimb'] ?
$project['ecodimb'] : $workorder['ecodimb']))
+ $approve_role =
execMethod('property.boinvoice.check_role', $project['ecodimb'] ?
$project['ecodimb'] : $workorder['ecodimb']);
+ if(!$approve_role['is_supervisor'] && !
$approve_role['budget_responsible'] && !$workorder['approved'])
{
phpgwapi_cache::message_set(
lang('you are not approved for this dimb: %1', $project['ecodimb'] ?
$project['ecodimb'] : $workorder['ecodimb'] ), 'error' );
$GLOBALS['phpgw']->redirect_link('/index.php',array('menuaction'=>
'property.uiwo_hour.view', 'workorder_id'=> $workorder_id, 'from' =>
phpgw::get_var('from')));
}
+ if(!$workorder['approved'])
+ {
+ phpgwapi_cache::message_set(
lang('order is not approved'), 'error' );
+
$GLOBALS['phpgw']->redirect_link('/index.php',array('menuaction'=>
'property.uiwo_hour.view', 'workorder_id'=> $workorder_id, 'from' =>
phpgw::get_var('from')));
+ }
}
$_to = isset($workorder['mail_recipients'][0])
&& $workorder['mail_recipients'][0] ? implode(';',
$workorder['mail_recipients']) : $to_email;
@@ -1880,11 +1886,17 @@
if(isset($this->config->config_data['invoice_acl']) &&
$this->config->config_data['invoice_acl'] == 'dimb')
{
-
if(!execMethod('property.boinvoice.get_approve_role', $project['ecodimb'] ?
$project['ecodimb'] : $common_data['workorder']['ecodimb']))
+ $approve_role =
execMethod('property.boinvoice.check_role', $project['ecodimb'] ?
$project['ecodimb'] : $common_data['workorder']['ecodimb']);
+ if(!$approve_role['is_supervisor'] && !
$approve_role['budget_responsible'] && !$workorder['approved'])
{
- phpgwapi_cache::message_set( lang('you
are not approved for this dimb: %1', $project['ecodimb'] ? $project['ecodimb']
: $common_data['workorder']['ecodimb'] ), 'error' );
+ phpgwapi_cache::message_set( lang('you
are not approved for this dimb: %1', $project['ecodimb'] ? $project['ecodimb']
: $workorder['ecodimb'] ), 'error' );
$GLOBALS['phpgw']->redirect_link('/index.php',array('menuaction'=>
'property.uiwo_hour.view', 'workorder_id'=> $workorder_id, 'from' =>
phpgw::get_var('from')));
}
+ if(!$workorder['approved'])
+ {
+ phpgwapi_cache::message_set(
lang('order is not approved'), 'error' );
+
$GLOBALS['phpgw']->redirect_link('/index.php',array('menuaction'=>
'property.uiwo_hour.view', 'workorder_id'=> $workorder_id, 'from' =>
phpgw::get_var('from')));
+ }
}
$content =
$this->_get_order_details($common_data['content'], $show_cost);
Modified: trunk/property/inc/class.uiworkorder.inc.php
===================================================================
--- trunk/property/inc/class.uiworkorder.inc.php 2012-05-01 09:54:46 UTC
(rev 9249)
+++ trunk/property/inc/class.uiworkorder.inc.php 2012-05-01 15:40:37 UTC
(rev 9250)
@@ -971,11 +971,21 @@
if(isset($config->config_data['invoice_acl'])
&& $config->config_data['invoice_acl'] == 'dimb')
{
-
if(!execMethod('property.boinvoice.get_approve_role', $project['ecodimb'] ?
$project['ecodimb'] : $values['ecodimb']))
+ $approve_role =
execMethod('property.boinvoice.check_role', $project['ecodimb'] ?
$project['ecodimb'] : $values['ecodimb']);
+ if(!$approve_role['is_janitor'] &&
!$approve_role['is_supervisor'] && ! $approve_role['budget_responsible'])
{
$receipt['error'][]=array('msg'=>lang('you are not approved for this dimb: %1',
$project['ecodimb'] ? $project['ecodimb'] : $values['ecodimb'] ));
$error_id=true;
}
+
+ if(isset($values['approved']) &&
$values['approved'] && (!isset($values['approved_orig']) || !
$values['approved_orig']))
+ {
+
if(!$approve_role['is_supervisor'] && ! $approve_role['budget_responsible'])
+ {
+
$receipt['error'][]=array('msg'=>lang('you do not have permission to approve
this order') );
+ $error_id=true;
+ }
+ }
}
$insert_record =
$GLOBALS['phpgw']->session->appsession('insert_record','property');
Modified: trunk/property/js/portico/ajax_workorder_edit.js
===================================================================
--- trunk/property/js/portico/ajax_workorder_edit.js 2012-05-01 09:54:46 UTC
(rev 9249)
+++ trunk/property/js/portico/ajax_workorder_edit.js 2012-05-01 15:40:37 UTC
(rev 9250)
@@ -2,7 +2,7 @@
$("#workorder_edit").live("submit", function(e){
- if( ! $("#workorder_id").val() )
+ if($("#lean").val() == 0)
{
return;
}
Modified: trunk/property/setup/phpgw_no.lang
===================================================================
--- trunk/property/setup/phpgw_no.lang 2012-05-01 09:54:46 UTC (rev 9249)
+++ trunk/property/setup/phpgw_no.lang 2012-05-01 15:40:37 UTC (rev 9250)
@@ -1151,6 +1151,7 @@
order property no Bestilling
order approval revoked property no Bestillingsgodkjenning opphevet
order approved property no Bestilling godkjent
+order is not approved property no Bestilling er ikke godkjent
order_dim1 property no Aktivitet
order id property no BestillingsNr
order_id property no BestillingsNr
Modified: trunk/property/templates/base/workorder.xsl
===================================================================
--- trunk/property/templates/base/workorder.xsl 2012-05-01 09:54:46 UTC (rev
9249)
+++ trunk/property/templates/base/workorder.xsl 2012-05-01 15:40:37 UTC (rev
9250)
@@ -89,7 +89,7 @@
</xsl:choose>
<div id="receipt"></div>
-
+ <input type="hidden" id = "lean" name="lean"
value="{lean}"/>
<xsl:choose>
<xsl:when test="value_workorder_id!='' and
mode='edit' and lean = 0">
<td>
@@ -295,7 +295,6 @@
</td>
<td>
<xsl:value-of select="value_workorder_id"/>
-
<input type="hidden" id="workorder_id" name="test_for_new"
value="{value_workorder_id}"/>
</td>
</tr>
<xsl:choose>
@@ -389,6 +388,7 @@
<xsl:value-of select="php:function('lang', 'approved')"/>
</td>
<td>
+
<input type="hidden" name="values[approved_orig]"
value="{value_approved}"/>
<input type="checkbox" name="values[approved]" value="1">
<xsl:attribute name="title">
<xsl:value-of select="php:function('lang',
'approved')"/>
@@ -667,9 +667,8 @@
<table>
<tr>
<td>
-
<input type="hidden" id="notify_contact"
name="notify_contact" value="" title="{$lang_contact_statustext}">
-
</input>
-
<input type="hidden" name="notify_contact_name"
value="" onClick="notify_contact_lookup();" readonly="readonly"
title="{$lang_contact_statustext}"/>
+
<input type="hidden" id="notify_contact"
name="notify_contact" value=""/>
+
<input type="hidden" name="notify_contact_name"
value=""/>
</td>
</tr>
</table>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [9250] property: invoice: more on ACL based on dime,
Sigurd Nes <=