fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [10312] Merge 10302:10311 from trunk


From: Sigurd Nes
Subject: [Fmsystem-commits] [10312] Merge 10302:10311 from trunk
Date: Tue, 23 Oct 2012 10:41:18 +0000

Revision: 10312
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=10312
Author:   sigurdne
Date:     2012-10-23 10:41:18 +0000 (Tue, 23 Oct 2012)
Log Message:
-----------
Merge 10302:10311 from trunk

Modified Paths:
--------------
    branches/Version-1_0-branch/controller/inc/class.uicontrol.inc.php
    branches/Version-1_0-branch/logistic/inc/class.uiactivity.inc.php
    branches/Version-1_0-branch/logistic/inc/class.uirequirement.inc.php
    branches/Version-1_0-branch/logistic/js/logistic/requirement.js
    branches/Version-1_0-branch/logistic/setup/phpgw_no.lang
    
branches/Version-1_0-branch/logistic/templates/base/activity/activity_item.xsl
    
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_item.xsl
    
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_tabs.xsl
    
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_values.xsl

Property Changed:
----------------
    branches/Version-1_0-branch/


Property changes on: branches/Version-1_0-branch
___________________________________________________________________
Modified: svn:mergeinfo
   - 
/trunk:6439-6441,6443,6445-6447,6449-6464,6466-6468,6470-6474,6476-6477,6479-6480,6483-6488,6490-6491,6493-6494,6496-6501,6503-6504,6506,6508,6510-6511,6513,6515-6516,6518,6520-6524,6526-6528,6533-6534,6536-6541,6543-6565,6567,6569,6571-6576,6578,6580-6586,6588-6596,6598-6600,6602-6604,6606-6607,6609-6611,6613-6625,6629-6639,6641-6643,6645-6646,6648,6650-6654,6656-6659,6661-6663,6665-6666,6668-6669,6672-6673,6675,6677-6678,6680,6682-6686,6688-6717,6719,6721-6722,6724-6728,6730,6732-6734,6736-6739,6741,6743,6745-6746,6748-6756,6758-6762,6764,6766-6788,6790,6792-6798,6800-6814,6816-6819,6821-6822,6824-6826,6828-6837,6839,6841,6843-6849,6851,6853-6869,6871-6874,6876-6877,6879,6881,6883,6885-6886,6888-6893,6895-6897,6899-6901,6903,6905-6907,6909,6911-6929,6931-6936,6938-6947,6949,6951,6953,6955-6956,6958-6959,6961-6968,6970-6971,6973-6974,6976-6978,6980,6982-7017,7019-7025,7027-7035,7037-7039,7041-7045,7047-7055,7057,7059-7065,7067-7069,7071,7073,7075-7076,7078,7080-7081,7083,7085,7087,7089-7097,7099-7102,7104-7105,7107-7111,7113-7120,7122-7124,7126-7129,7131,7133-7141,7143,7145-7146,7148-7150,7152-7153,7155-7158,7160-7164,7166-7167,7169-7170,7172,7174,7176,7178,7180-7181,7183,7185,7187-7188,7190,7192-7196,7198-7199,7201-7203,7205,7207,7209-7210,7212,7214,7216-7217,7219-7222,7224-7226,7228-7229,7231,7233-7234,7236-7238,7240-7241,7243-7244,7246,7248,7250,7252-7256,7258-7259,7261-7264,7266-7273,7275-7279,7281-7332,7334-7338,7340-7348,7350,7352-7353,7355-7361,7363-7366,7368-7370,7372,7374,7376,7378,7380-7386,7388-7400,7402,7404-7433,7435-7439,7441-7446,7448-7458,7460-7469,7471-7483,7485-7487,7489-7490,7492,7494,7496-7497,7499,7501-7502,7504,7506-7507,7509-7511,7513-7517,7519-7521,7523,7525,7527-7529,7531,7533,7535-7538,7540-7542,7544-7549,7551-7552,7554-7561,7563,7565,7567-7573,7575-7578,7580-7584,7586-7591,7593-7624,7627-7636,7638-7656,7658-7718,7720-7732,7734,7736,7738-7750,7754-7759,7761-7767,7769-7780,7782,7784-7809,7811-7812,7814-7835,7837-7847,7849-7887,7889-7895,7897,7899,7901,7903-7905,7907-7921,7923-7925,7927-7933,7935,7937-7952,7954-7968,7970-7974,7976,7978-7979,7981-7982,7984-7988,7990-7992,7994-8041,8043-8066,8068-8087,8089,8091-8108,8110-8124,8126-8129,8131,8133-8150,8152-8154,8156-8162,8164-8167,8169-8170,8172-8179,8181,8183-8196,8198-8207,8209-8211,8213-8214,8216-8217,8219-8220,8222,8224-8225,8227-8247,8249,8251,8253-8282,8284-8352,8354-8368,8370-8396,8398-8430,8432,8434-8440,8442-8445,8447-8453,8455-8456,8458,8460,8462-8464,8466-8473,8475-8479,8481,8483-8501,8503-8523,8525,8527-8531,8533,8535-8536,8538-8550,8552-8554,8556-8557,8559-8579,8581-8587,8589,8591-8592,8594-8595,8597-8601,8603-8610,8612-8613,8615,8617,8619-8645,8647-8650,8652-8661,8663-8666,8668-8669,8671-8683,8685-8691,8693-8730,8732-8737,8739,8741-8767,8769,8771-8772,8774,8776-8797,8799-8812,8814-8819,8821,8823-8833,8835-8837,8839,8841,8843-8849,8852-8858,8860-8867,8869-8870,8872,8874-8877,8879,8881,8883-8888,8890,8892-8901,8903-8911,8913-8917,8920-8923,8925-8933,8935-8938,8940-8943,8945,8947-8948,8950,8952-8953,8955-8962,8964,8966,8968-8970,8972-8975,8977-8983,8985-8993,8995-9001,9003,9005,9007,9009,9011-9019,9021-9023,9025,9027-9028,9030-9044,9046-9047,9049-9050,9052-9056,9058-9059,9061,9063-9064,9066-9068,9071-9092,9094-9112,9114-9117,9119,9121-9160,9162-9166,9169-9207,9209-9211,9213-9215,9217,9219,9221-9253,9255,9257,9259-9260,9262,9264-9269,9271-9273,9275,9277-9278,9280,9282-9283,9285-9289,9291-9299,9301-9310,9312-9313,9315-9320,9322-9324,9326-9338,9340-9342,9344,9346-9348,9350-9358,9360-9362,9364-9366,9368-9374,9376-9382,9384,9386,9388-9390,9392-9396,9398-9402,9404-9410,9412,9414,9416-9417,9419-9425,9427,9429-9430,9432,9434-9463,9465-9502,9504-9506,9508-9521,9523-9526,9528,9530-9537,9539,9541-9551,9553,9555-9556,9558-9578,9580-9581,9583,9585,9587,9589,9591-9624,9626-9655,9657-9700,9702-9726,9728-9729,9731-9749,9751,9753-9754,9756-9832,9834-9836,9838-9839,9841-9846,9848-9850,9852-9858,9860-9863,9865,9867,9869-9871,9873-9893,9895,9897-9912,9914-9919,9921-9928,9930-9952,9954,9956,9958-9963,9965-9993,9995-9997,9999-10001,10003-10004,10006-10007,10009-10012,10014-10031,10033-10073,10075-10107,10109-10165,10167-10210,10222-10226,10228-10301
   + 
/trunk:6439-6441,6443,6445-6447,6449-6464,6466-6468,6470-6474,6476-6477,6479-6480,6483-6488,6490-6491,6493-6494,6496-6501,6503-6504,6506,6508,6510-6511,6513,6515-6516,6518,6520-6524,6526-6528,6533-6534,6536-6541,6543-6565,6567,6569,6571-6576,6578,6580-6586,6588-6596,6598-6600,6602-6604,6606-6607,6609-6611,6613-6625,6629-6639,6641-6643,6645-6646,6648,6650-6654,6656-6659,6661-6663,6665-6666,6668-6669,6672-6673,6675,6677-6678,6680,6682-6686,6688-6717,6719,6721-6722,6724-6728,6730,6732-6734,6736-6739,6741,6743,6745-6746,6748-6756,6758-6762,6764,6766-6788,6790,6792-6798,6800-6814,6816-6819,6821-6822,6824-6826,6828-6837,6839,6841,6843-6849,6851,6853-6869,6871-6874,6876-6877,6879,6881,6883,6885-6886,6888-6893,6895-6897,6899-6901,6903,6905-6907,6909,6911-6929,6931-6936,6938-6947,6949,6951,6953,6955-6956,6958-6959,6961-6968,6970-6971,6973-6974,6976-6978,6980,6982-7017,7019-7025,7027-7035,7037-7039,7041-7045,7047-7055,7057,7059-7065,7067-7069,7071,7073,7075-7076,7078,7080-7081,7083,7085,7087,7089-7097,7099-7102,7104-7105,7107-7111,7113-7120,7122-7124,7126-7129,7131,7133-7141,7143,7145-7146,7148-7150,7152-7153,7155-7158,7160-7164,7166-7167,7169-7170,7172,7174,7176,7178,7180-7181,7183,7185,7187-7188,7190,7192-7196,7198-7199,7201-7203,7205,7207,7209-7210,7212,7214,7216-7217,7219-7222,7224-7226,7228-7229,7231,7233-7234,7236-7238,7240-7241,7243-7244,7246,7248,7250,7252-7256,7258-7259,7261-7264,7266-7273,7275-7279,7281-7332,7334-7338,7340-7348,7350,7352-7353,7355-7361,7363-7366,7368-7370,7372,7374,7376,7378,7380-7386,7388-7400,7402,7404-7433,7435-7439,7441-7446,7448-7458,7460-7469,7471-7483,7485-7487,7489-7490,7492,7494,7496-7497,7499,7501-7502,7504,7506-7507,7509-7511,7513-7517,7519-7521,7523,7525,7527-7529,7531,7533,7535-7538,7540-7542,7544-7549,7551-7552,7554-7561,7563,7565,7567-7573,7575-7578,7580-7584,7586-7591,7593-7624,7627-7636,7638-7656,7658-7718,7720-7732,7734,7736,7738-7750,7754-7759,7761-7767,7769-7780,7782,7784-7809,7811-7812,7814-7835,7837-7847,7849-7887,7889-7895,7897,7899,7901,7903-7905,7907-7921,7923-7925,7927-7933,7935,7937-7952,7954-7968,7970-7974,7976,7978-7979,7981-7982,7984-7988,7990-7992,7994-8041,8043-8066,8068-8087,8089,8091-8108,8110-8124,8126-8129,8131,8133-8150,8152-8154,8156-8162,8164-8167,8169-8170,8172-8179,8181,8183-8196,8198-8207,8209-8211,8213-8214,8216-8217,8219-8220,8222,8224-8225,8227-8247,8249,8251,8253-8282,8284-8352,8354-8368,8370-8396,8398-8430,8432,8434-8440,8442-8445,8447-8453,8455-8456,8458,8460,8462-8464,8466-8473,8475-8479,8481,8483-8501,8503-8523,8525,8527-8531,8533,8535-8536,8538-8550,8552-8554,8556-8557,8559-8579,8581-8587,8589,8591-8592,8594-8595,8597-8601,8603-8610,8612-8613,8615,8617,8619-8645,8647-8650,8652-8661,8663-8666,8668-8669,8671-8683,8685-8691,8693-8730,8732-8737,8739,8741-8767,8769,8771-8772,8774,8776-8797,8799-8812,8814-8819,8821,8823-8833,8835-8837,8839,8841,8843-8849,8852-8858,8860-8867,8869-8870,8872,8874-8877,8879,8881,8883-8888,8890,8892-8901,8903-8911,8913-8917,8920-8923,8925-8933,8935-8938,8940-8943,8945,8947-8948,8950,8952-8953,8955-8962,8964,8966,8968-8970,8972-8975,8977-8983,8985-8993,8995-9001,9003,9005,9007,9009,9011-9019,9021-9023,9025,9027-9028,9030-9044,9046-9047,9049-9050,9052-9056,9058-9059,9061,9063-9064,9066-9068,9071-9092,9094-9112,9114-9117,9119,9121-9160,9162-9166,9169-9207,9209-9211,9213-9215,9217,9219,9221-9253,9255,9257,9259-9260,9262,9264-9269,9271-9273,9275,9277-9278,9280,9282-9283,9285-9289,9291-9299,9301-9310,9312-9313,9315-9320,9322-9324,9326-9338,9340-9342,9344,9346-9348,9350-9358,9360-9362,9364-9366,9368-9374,9376-9382,9384,9386,9388-9390,9392-9396,9398-9402,9404-9410,9412,9414,9416-9417,9419-9425,9427,9429-9430,9432,9434-9463,9465-9502,9504-9506,9508-9521,9523-9526,9528,9530-9537,9539,9541-9551,9553,9555-9556,9558-9578,9580-9581,9583,9585,9587,9589,9591-9624,9626-9655,9657-9700,9702-9726,9728-9729,9731-9749,9751,9753-9754,9756-9832,9834-9836,9838-9839,9841-9846,9848-9850,9852-9858,9860-9863,9865,9867,9869-9871,9873-9893,9895,9897-9912,9914-9919,9921-9928,9930-9952,9954,9956,9958-9963,9965-9993,9995-9997,9999-10001,10003-10004,10006-10007,10009-10012,10014-10031,10033-10073,10075-10107,10109-10165,10167-10210,10222-10226,10228-10311

Modified: branches/Version-1_0-branch/controller/inc/class.uicontrol.inc.php
===================================================================
--- branches/Version-1_0-branch/controller/inc/class.uicontrol.inc.php  
2012-10-23 10:37:39 UTC (rev 10311)
+++ branches/Version-1_0-branch/controller/inc/class.uicontrol.inc.php  
2012-10-23 10:41:18 UTC (rev 10312)
@@ -424,25 +424,27 @@
                 * @param HTTP::id      the control_id, and a comma seperated 
list of group ids
                 * @return redirect to function view_control_items
                 */
-               public function save_control_groups(){
+               public function save_control_groups()
+               {
                        $control_id = phpgw::get_var('control_id');
-                       $control_group_ids = 
phpgw::get_var('control_group_ids');               
+                       $control_group_ids = 
phpgw::get_var('control_group_ids');
 
                        // Fetches saved control groups 
                        $saved_control_groups = 
$this->so_control_group_list->get_control_groups_by_control($control_id);
                        
                        // Deletes groups from control that's not among the 
chosen groups
+
                        foreach($saved_control_groups as $group)
                        {
                                // If saved group id not among chosen control 
ids, delete the group for the control    
-                               if( !in_array($group->get_id(), 
$saved_control_groups) ){
-                                               
$this->so_control_group_list->delete($control_id, $group->get_id());
-                                               
-                                               // Deletes control items for 
group
-                                               
$this->so_control_item_list->delete_control_items_for_group_list($control_id, 
$group->get_id());
+                               if( !in_array($group->get_id(), 
$control_group_ids) )
+                               {
+                                       
$this->so_control_group_list->delete($control_id, $group->get_id());
+                                       // Deletes control items for group
+                                       
$this->so_control_item_list->delete_control_items_for_group_list($control_id, 
$group->get_id());
                                }
                        }
-                       
+
                        $group_order_nr = 1;
 
                        // Saving control groups 

Modified: branches/Version-1_0-branch/logistic/inc/class.uiactivity.inc.php
===================================================================
--- branches/Version-1_0-branch/logistic/inc/class.uiactivity.inc.php   
2012-10-23 10:37:39 UTC (rev 10311)
+++ branches/Version-1_0-branch/logistic/inc/class.uiactivity.inc.php   
2012-10-23 10:41:18 UTC (rev 10312)
@@ -309,37 +309,39 @@
 
                public function edit($activity = null)
                {
-                       
                        $activity_id = phpgw::get_var('id');
                        $parent_activity_id = phpgw::get_var('parent_id');
                        $project_id = phpgw::get_var('project_id');
                        
-                       if( !$activity && $activity_id && 
is_numeric($activity_id) )
+                       if($activity == null)
                        {
-                               $activity = $this->so->get_single($activity_id);
-                       }
-                       else
-                       {
-                               if($activity == null)
+                               if( $activity_id && is_numeric($activity_id) )
                                {
+                                       $activity = 
$this->so->get_single($activity_id);
+                               }
+                               else
+                               {
                                        $activity = new logistic_activity();    
                                }
+                               
+                               if($activity->get_project_id() == '')
+                               {
+                                       $activity->set_project_id( $project_id 
);
+                               }
+                               
+                               if($parent_activity_id > 0)
+                               {
+                                       $activity->set_parent_id( 
$parent_activity_id );
+                                       $parent_activity = 
$this->so->get_single( $parent_activity_id );
+                                       $activity->set_project_id( 
$parent_activity->get_project_id() );
+                               }
                        }
 
-                       $activity->set_project_id( $project_id );
-                       
-                       if($parent_activity_id > 0)
-                       {
-                               $activity->set_parent_id( $parent_activity_id );
-                               $parent_activity = $this->so->get_single( 
$parent_activity_id );
-                               $activity->set_project_id( 
$parent_activity->get_project_id() );
-                       }
-                       
                        if($activity->get_parent_id() > 0)
                        {
                                $parent_activity = $this->so->get_single( 
$activity->get_parent_id() );
                        }
-       
+                       
                        $accounts = 
$GLOBALS['phpgw']->acl->get_user_list_right(PHPGW_ACL_READ, 'run', 'logistic');
                        
                  $activities = $this->so->get();

Modified: branches/Version-1_0-branch/logistic/inc/class.uirequirement.inc.php
===================================================================
--- branches/Version-1_0-branch/logistic/inc/class.uirequirement.inc.php        
2012-10-23 10:37:39 UTC (rev 10311)
+++ branches/Version-1_0-branch/logistic/inc/class.uirequirement.inc.php        
2012-10-23 10:41:18 UTC (rev 10312)
@@ -57,6 +57,7 @@
                        'save'                                                  
                        => true,
                        'add_requirement_values'        => true,
                        'view_requirement_values' => true,
+                       'save_requirement_values' => true,
                        'get_custom_attributes'         => true
                );
 
@@ -436,130 +437,100 @@
                                $GLOBALS['phpgw']->redirect_link('/index.php', 
array('menuaction' => 'logistic.uirequirement.edit'));
                        }
 
-                       if (isset($_POST['save_requirement_values']))
-                       {
-                               $attributes_array = array();
-                               $attributes_array = 
phpgw::get_var('cust_attributes');
+                       $location_id = $requirement->get_location_id();
+                       $activity_id = $requirement->get_activity_id();
 
-                               
$this->so_requirement_value->delete_values($requirement_id);
+                       $custom_attributes_array = array();
+                       $custom_attributes_array = 
$this->get_custom_attributes($location_id, $activity_id);
 
-                               foreach($attributes_array as $attribute)
-                               {
-                                       $attribute_array = explode ( ":", 
$attribute );
-                                       $cust_attribute_id = 
$attribute_array[0];
-                                       $operator = $attribute_array[1];
-                                       $attrib_value = $attribute_array[2];
+                       $filters = array('requirement_id' => $requirement_id);
+                       $requirement_values_array = 
$this->so_requirement_value->get($start_index, $num_of_objects, $sort_field, 
$sort_ascending, $search_for, $search_type, $filters);
 
-                                       $requirement_value = new 
logistic_requirement_value();
-                                       $requirement_value->set_requirement_id( 
$requirement_id );
-                                       $requirement_value->set_value( 
$attrib_value );
-                                       $requirement_value->set_operator( 
$operator );
-                                       
$requirement_value->set_cust_attribute_id( $cust_attribute_id );
-                                       $user_id = 
$GLOBALS['phpgw_info']['user']['id'];
-                                       
$requirement_value->set_create_user($user_id);
+                       $custom = createObject('phpgwapi.custom_fields');
 
-                                       
$this->so_requirement_value->store($requirement_value);
-                               }
-
-                               $GLOBALS['phpgw']->redirect_link('/index.php', 
array('menuaction' => 'logistic.uirequirement.view_requirement_values', 
'requirement_id' => $requirement_id));
-                       }
-                       else
+                       if( count( $requirement_values_array ) > 0 )
                        {
-                               $location_id = $requirement->get_location_id();
-                               $activity_id = $requirement->get_activity_id();
-
-                               $custom_attributes_array = array();
-                               $custom_attributes_array = 
$this->get_custom_attributes($location_id, $activity_id);
-
-                               $filters = array('requirement_id' => 
$requirement_id);
-                               $requirement_values_array = 
$this->so_requirement_value->get($start_index, $num_of_objects, $sort_field, 
$sort_ascending, $search_for, $search_type, $filters);
-
-                               $custom = 
createObject('phpgwapi.custom_fields');
-
-                               if( count( $requirement_values_array ) > 0 )
+                               foreach($requirement_values_array as 
$requirement_value)
                                {
-                                       foreach($requirement_values_array as 
$requirement_value)
-                                       {
-                                               $location_id = 
$requirement->get_location_id();
+                                       $location_id = 
$requirement->get_location_id();
 
-                                               $loc_arr = 
$GLOBALS['phpgw']->locations->get_name($location_id);
-                                               $entity_arr = 
explode('.',$loc_arr['location']);
+                                       $loc_arr = 
$GLOBALS['phpgw']->locations->get_name($location_id);
+                                       $entity_arr = 
explode('.',$loc_arr['location']);
 
-                                               $entity_id = $entity_arr[2];
-                                               $cat_id = $entity_arr[3];
-                                               $cust_attribute_id = 
$requirement_value->get_cust_attribute_id();
+                                       $entity_id = $entity_arr[2];
+                                       $cat_id = $entity_arr[3];
+                                       $cust_attribute_id = 
$requirement_value->get_cust_attribute_id();
 
-                                               $attrib_data = 
$custom->get('property', ".entity.{$entity_id}.{$cat_id}", $cust_attribute_id);
+                                       $attrib_data = $custom->get('property', 
".entity.{$entity_id}.{$cat_id}", $cust_attribute_id);
 
-                                               
$temp_requirement_attributes_array[$cust_attribute_id][] = array(
-                                                       "id"                    
                                => $requirement_value->get_id(),
-                                                       "attrib_value"          
=> $requirement_value->get_value(),
-                                                       "operator"              
                => $requirement_value->get_operator(),
-                                                       "cust_attribute"        
=> $attrib_data
-                                               );
-                                       }
+                                       
$temp_requirement_attributes_array[$cust_attribute_id][] = array(
+                                               "id"                            
                        => $requirement_value->get_id(),
+                                               "attrib_value"          => 
$requirement_value->get_value(),
+                                               "operator"                      
        => $requirement_value->get_operator(),
+                                               "cust_attribute"        => 
$attrib_data
+                                       );
+                               }
 
 
-                                       
foreach($temp_requirement_attributes_array as $req_attrib)
+                               foreach($temp_requirement_attributes_array as 
$req_attrib)
+                               {
+                                       if( count( $req_attrib ) > 1 )
                                        {
-                                               if( count( $req_attrib ) > 1 )
+                                               if( $req_attrib[0]['operator'] 
== 'gt' )
                                                {
-                                                       if( 
$req_attrib[0]['operator'] == 'gt' )
-                                                       {
-                                                               $constraint_1 = 
$req_attrib[0];
-                                                               $constraint_2 = 
$req_attrib[1];
-                                                       }
-                                                       else
-                                                       {
-                                                               $constraint_1 = 
$req_attrib[1];
-                                                               $constraint_2 = 
$req_attrib[0];
-                                                       }
-
-                                                       
$req_attrib[0]['operator'] = 'btw';
-                                                       
$req_attrib[0]['attrib_value'] = $constraint_1['attrib_value'] . ":" . 
$constraint_2['attrib_value'];
-                                                       
$requirement_attributes_array[] = $req_attrib[0];
+                                                       $constraint_1 = 
$req_attrib[0];
+                                                       $constraint_2 = 
$req_attrib[1];
                                                }
                                                else
                                                {
-                                                       
$requirement_attributes_array[] = $req_attrib[0];
+                                                       $constraint_1 = 
$req_attrib[1];
+                                                       $constraint_2 = 
$req_attrib[0];
                                                }
+
+                                               $req_attrib[0]['operator'] = 
'btw';
+                                               $req_attrib[0]['attrib_value'] 
= $constraint_1['attrib_value'] . ":" . $constraint_2['attrib_value'];
+                                               $requirement_attributes_array[] 
= $req_attrib[0];
                                        }
-                               }
-                               else
-                               {
-                                       foreach($custom_attributes_array as 
$cust_attrib)
+                                       else
                                        {
-                                               $requirement_attributes_array[] 
= array(
-                                                       "id"                    
                                => "",
-                                                       "attrib_value"          
=> "",
-                                                       "operator"              
                => "",
-                                                       "cust_attribute"        
=> $cust_attrib
-                                               );
+                                               $requirement_attributes_array[] 
= $req_attrib[0];
                                        }
                                }
+                       }
+                       else
+                       {
+                               foreach($custom_attributes_array as 
$cust_attrib)
+                               {
+                                       $requirement_attributes_array[] = array(
+                                               "id"                            
                        => "",
+                                               "attrib_value"          => "",
+                                               "operator"                      
        => "",
+                                               "cust_attribute"        => 
$cust_attrib
+                                       );
+                               }
+                       }
 
-                               $tabs = $this->make_tab_menu($requirement_id);
+                       $tabs = $this->make_tab_menu($requirement_id);
 
-                               $data = array
-                               (
-                                       'tabs'                                  
                                                                => 
$GLOBALS['phpgw']->common->create_tabs($tabs, 1),
-                                       'view'                                  
                                                                => 
"requirement_values",
-                                       'requirement'                           
                                        => $requirement,
-                                       'requirement_attributes_array'  => 
$requirement_attributes_array,
-                                       'distict_locations'                     
                        => $distict_locations_array,
-                                       'editable'                              
                                                        => true,
-                               );
+                       $data = array
+                       (
+                               'tabs'                                          
                                                        => 
$GLOBALS['phpgw']->common->create_tabs($tabs, 1),
+                               'view'                                          
                                                        => "requirement_values",
+                               'requirement'                                   
                                => $requirement,
+                               'requirement_attributes_array'  => 
$requirement_attributes_array,
+                               'distict_locations'                             
                => $distict_locations_array,
+                               'editable'                                      
                                                => true,
+                       );
 
-                               if($activity_id > 0)
-                               {
-                                       $data['activity'] = $activity;
-                               }
+                       if($activity_id > 0)
+                       {
+                               $data['activity'] = $activity;
+                       }
 
-                               phpgwapi_jquery::load_widget('core');
+                       phpgwapi_jquery::load_widget('core');
 
-                               self::add_javascript('logistic', 'logistic', 
'requirement.js');
-                               
self::render_template_xsl(array('requirement/requirement_tabs', 
'requirement/requirement_values'), $data);
-                       }
+                       self::add_javascript('logistic', 'logistic', 
'requirement.js');
+                       
self::render_template_xsl(array('requirement/requirement_tabs', 
'requirement/requirement_values'), $data);
                }
 
                public function view_requirement_values()
@@ -644,6 +615,35 @@
                        
self::render_template_xsl(array('requirement/requirement_tabs', 
'requirement/requirement_values'), $data);
                }
 
+               public function save_requirement_values()
+               {               
+                               $requirement_id = 
phpgw::get_var('requirement_id');     
+                               $attributes_array = array();
+                               $attributes_array = 
phpgw::get_var('cust_attributes');
+
+                               
$this->so_requirement_value->delete_values($requirement_id);
+
+                               foreach($attributes_array as $attribute)
+                               {
+                                       $attribute_array = explode ( ":", 
$attribute );
+                                       $cust_attribute_id = 
$attribute_array[0];
+                                       $operator = $attribute_array[1];
+                                       $attrib_value = $attribute_array[2];
+
+                                       $requirement_value = new 
logistic_requirement_value();
+                                       $requirement_value->set_requirement_id( 
$requirement_id );
+                                       $requirement_value->set_value( 
$attrib_value );
+                                       $requirement_value->set_operator( 
$operator );
+                                       
$requirement_value->set_cust_attribute_id( $cust_attribute_id );
+                                       $user_id = 
$GLOBALS['phpgw_info']['user']['id'];
+                                       
$requirement_value->set_create_user($user_id);
+
+                                       
$this->so_requirement_value->store($requirement_value);
+                               }
+
+                               $GLOBALS['phpgw']->redirect_link('/index.php', 
array('menuaction' => 'logistic.uirequirement.view_requirement_values', 
'requirement_id' => $requirement_id));
+               }               
+               
                public function get_custom_attributes($location_id, 
$activity_id){
 
                                if($location_id == "")
@@ -696,11 +696,11 @@
                                $tabs = array(
                                                   array(
                                                        'label' => "1: " . 
lang('Requirement details'),
-                                                  'link'  => 
$GLOBALS['phpgw']->link('/index.php', array('menuaction' => 
'logistic.uirequirement.edit',
+                                                  'link'  => 
$GLOBALS['phpgw']->link('/index.php', array('menuaction' => 
'logistic.uirequirement.view',
                                                                                
                                                                                
                                                                                
                         'id' => $requirement->get_id()))
                                                ), array(
                                                        'label' => "2: " . 
lang('Add constraints'),
-                                                       'link'  => 
$GLOBALS['phpgw']->link('/index.php', array('menuaction' => 
'logistic.uirequirement.add_requirement_values',
+                                                       'link'  => 
$GLOBALS['phpgw']->link('/index.php', array('menuaction' => 
'logistic.uirequirement.view_requirement_values',
                                                                                
                                                                                
                                                                                
                         'requirement_id' => $requirement->get_id()))
                                                ));
                        }else{

Modified: branches/Version-1_0-branch/logistic/js/logistic/requirement.js
===================================================================
--- branches/Version-1_0-branch/logistic/js/logistic/requirement.js     
2012-10-23 10:37:39 UTC (rev 10311)
+++ branches/Version-1_0-branch/logistic/js/logistic/requirement.js     
2012-10-23 10:41:18 UTC (rev 10312)
@@ -87,31 +87,40 @@
         });
         
         $("#frm-requirement-values").submit(function (event) {
-                        
+                
+                $('#attributes .attribute').find('.input_error_msg').hide();
+                
                 $('#attributes .attribute').each(function(index) {
-                        var operator = $(this).find('.operator').val();
-                        var cust_attribute_id = 
$(this).find('.cust_attribute_id').val();
+                       var operator = $(this).find('.operator').val();
+                       var cust_attribute_id = 
$(this).find('.cust_attribute_id').val();
+                       var attrib_value = $(this).find('.attrib_info').val();
                         
-                        if(operator == "btw")
-                        {
-                                var constraint_1 = 
$(this).find('.constraint_1').val();
-                                var constraint_2 = 
$(this).find('.constraint_2').val();
-                                var constraint_1_str = cust_attribute_id + 
":gt:" + constraint_1;
-                                var constraint_2_str = cust_attribute_id + 
":lt:" + constraint_2;
+                       if(attrib_value == "")
+                       {
+                               $(this).find('.input_error_msg').show();
+                               event.preventDefault();
+                       }
+                        
+                       if(operator == "btw")
+                       {
+                               var constraint_1 = 
$(this).find('.constraint_1').val();
+                               var constraint_2 = 
$(this).find('.constraint_2').val();
+                               var constraint_1_str = cust_attribute_id + 
":gt:" + constraint_1;
+                               var constraint_2_str = cust_attribute_id + 
":lt:" + constraint_2;
                                 
-                                var new_cust_attrib_arr = 
$(this).find('.cust_attributes').clone();
-                                
$(new_cust_attrib_arr).addClass("constraint_2");
-                                
$(this).find('.cust_attributes').val(constraint_1_str);
-                                
-                                $(this).append(new_cust_attrib_arr);
-                                $(new_cust_attrib_arr).val(constraint_2_str);
-                        }
-                        else
-                        {
-                                var attrib_value = 
$(this).find('.attrib_info').val();
-                                var str = cust_attribute_id + ":" + operator + 
":" + attrib_value;
-                                $(this).find('.cust_attributes').val(str);
-                        }
+                               var new_cust_attrib_arr = 
$(this).find('.cust_attributes').clone();
+                               $(new_cust_attrib_arr).addClass("constraint_2");
+                               
$(this).find('.cust_attributes').val(constraint_1_str);
+                               
+                               $(this).append(new_cust_attrib_arr);
+                               $(new_cust_attrib_arr).val(constraint_2_str);
+                       }
+                       else
+                       {
+                               var attrib_value = 
$(this).find('.attrib_info').val();
+                               var str = cust_attribute_id + ":" + operator + 
":" + attrib_value;
+                               $(this).find('.cust_attributes').val(str);
+                       }
                 });
         });            
 });
\ No newline at end of file

Modified: branches/Version-1_0-branch/logistic/setup/phpgw_no.lang
===================================================================
--- branches/Version-1_0-branch/logistic/setup/phpgw_no.lang    2012-10-23 
10:37:39 UTC (rev 10311)
+++ branches/Version-1_0-branch/logistic/setup/phpgw_no.lang    2012-10-23 
10:41:18 UTC (rev 10312)
@@ -59,4 +59,6 @@
 t_view_booking_allocations     logistic        no      Vis registrerte 
bookinger på dette behovet
 error_msg_1    logistic        no      Vennligst fyll inn dette feltet
 error_msg_2    logistic        no      Vennligst velg en verdi i listen
-error_msg_3    logistic        no      Vennligst angi sluttdato etter startdato
\ No newline at end of file
+error_msg_3    logistic        no      Vennligst angi sluttdato etter startdato
+Criterias      logistic        no      Kriterier
+Add criterias  logistic        no      Legg til kriterier
\ No newline at end of file

Modified: 
branches/Version-1_0-branch/logistic/templates/base/activity/activity_item.xsl
===================================================================
--- 
branches/Version-1_0-branch/logistic/templates/base/activity/activity_item.xsl  
    2012-10-23 10:37:39 UTC (rev 10311)
+++ 
branches/Version-1_0-branch/logistic/templates/base/activity/activity_item.xsl  
    2012-10-23 10:41:18 UTC (rev 10312)
@@ -182,8 +182,14 @@
                                                        <input type="submit" 
name="cancel_activity" value="{$lang_cancel}" title = "{$lang_cancel}" />
                                                </xsl:when>
                                                <xsl:otherwise>
-                                                       <xsl:variable 
name="lang_edit"><xsl:value-of select="php:function('lang', 'edit')" 
/></xsl:variable>
-                                                       <input type="submit" 
name="edit_activity" value="{$lang_edit}" title = "{$lang_edit}" />
+                                                       <xsl:variable 
name="params">
+                                                               
<xsl:text>menuaction:logistic.uiactivity.edit, id:</xsl:text>
+                                                               <xsl:value-of 
select="activity/id" />
+                                                       </xsl:variable>
+                                                       <xsl:variable 
name="edit_url">
+                                                               <xsl:value-of 
select="php:function('get_phpgw_link', '/index.php', $params )" />
+                                                       </xsl:variable>
+                                                       <a class="btn" 
href="{$edit_url}"><xsl:value-of select="php:function('lang', 'edit')" /></a>
                                                </xsl:otherwise>
                                        </xsl:choose>
                                </div>

Modified: 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_item.xsl
===================================================================
--- 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_item.xsl
        2012-10-23 10:37:39 UTC (rev 10311)
+++ 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_item.xsl
        2012-10-23 10:41:18 UTC (rev 10312)
@@ -109,7 +109,12 @@
                                                </dd>                           
        
                                        </xsl:when>
                                        <xsl:otherwise>
-                                               <xsl:value-of 
select="location/descr" />
+                                               <dt>
+                                                       <label>Kategori</label>
+                                               </dt>
+                                               <dd>
+                                                       <xsl:value-of 
select="location/descr" />
+                                               </dd>           
                                        </xsl:otherwise>
                                </xsl:choose>
                        </dl>

Modified: 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_tabs.xsl
===================================================================
--- 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_tabs.xsl
        2012-10-23 10:37:39 UTC (rev 10311)
+++ 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_tabs.xsl
        2012-10-23 10:41:18 UTC (rev 10312)
@@ -35,7 +35,7 @@
                                <xsl:when test="activity/id != '' or 
activity/id != 0">
                                        <h1 style="float:left;"> 
                                                <span>
-                                                       <xsl:value-of 
select="php:function('lang', 'Add requirement to activity')" />
+                                                       <xsl:value-of 
select="php:function('lang', 'Add criterias')" />
                                                </span>
                                                <span style="margin-left:5px;">
                                                        <xsl:value-of 
select="activity/name" />
@@ -44,7 +44,7 @@
                                </xsl:when>
                                <xsl:otherwise>
                                        <h1 style="float:left;"> 
-                                               <xsl:value-of 
select="php:function('lang', 'Add requirement')" />
+                                               <xsl:value-of 
select="php:function('lang', 'Add criterias')" />
                                        </h1>
                                </xsl:otherwise>
                        </xsl:choose>

Modified: 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_values.xsl
===================================================================
--- 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_values.xsl
      2012-10-23 10:37:39 UTC (rev 10311)
+++ 
branches/Version-1_0-branch/logistic/templates/base/requirement/requirement_values.xsl
      2012-10-23 10:41:18 UTC (rev 10312)
@@ -5,19 +5,22 @@
 <xsl:variable name="date_format"><xsl:value-of 
select="php:function('get_phpgw_info', 
'user|preferences|common|dateformat')"/></xsl:variable>
 
 <div class="yui-content" style="padding: 20px;">
-               <form id="frm-requirement-values" action="#" method="post">
+               <h2><xsl:value-of select="php:function('lang', 'Criterias')" 
/></h2>
+               
+               <xsl:variable name="action_url">
+                       <xsl:value-of select="php:function('get_phpgw_link', 
'/index.php', 'menuaction:logistic.uirequirement.save_requirement_values')" />
+               </xsl:variable>
+               <form id="frm-requirement-values" action="{$action_url}" 
method="post">
                        <input type="hidden" name="requirement_id" value = 
"{requirement/id}" />
                                                                                
                        <dl class="proplist-col">
+                       <dd>
                                <xsl:choose>
                                        <xsl:when test="editable">
-                                       <dt>
-                                               <h2>Legg til kriterier</h2>
-                                       </dt>
-                                               <dd>
                                                <div id="attributes">
                                                        <xsl:for-each 
select="requirement_attributes_array">
                                                                <div 
class="attribute">
+                                                                       <div 
style="display:none;" class='input_error_msg'><xsl:value-of 
select="php:function('lang', 'error_msg_1')" /></div>
                                                                        
<xsl:choose>
                                                                                
<xsl:when test="cust_attribute/column_info/type = 'T'">
                                                                                
                <label><xsl:value-of 
select="cust_attribute/input_text"/></label>
@@ -109,62 +112,64 @@
                                                                </div>
                                                        </xsl:for-each>
                                                </div>
-                                               </dd>                           
        
                                        </xsl:when>
                                        <xsl:otherwise>
-                                       <dt>
-                                               <label>Kriterier for 
behovet</label>
-                                       </dt>
-                                               <dd>
-                                               <div id="attributes">
-                                                       <xsl:for-each 
select="requirement_attributes_array">
-                                                               <div 
class="attribute">
-                                                                       <label 
style="margin-left:10px;"><xsl:value-of select="cust_attribute/input_text" 
/></label>
-                                                                       
<xsl:choose>
-                                                                               
<xsl:when test="cust_attribute/column_info/type = 'T'">
-                                                                               
        <span style="margin-left:10px;"><xsl:value-of select="attrib_value" 
/></span>
-                                                                               
</xsl:when>
-                                                                               
<xsl:when test="cust_attribute/column_info/type = 'V' or 
cust_attribute/column_info/type = 'I'">
-                                        
-                                                                               
                <xsl:if test="operator = 'btw'">
-                                                                               
                        <span style="margin-left:10px;"><xsl:value-of 
select="substring-before(attrib_value, ':')" /></span>
-                                                                               
                </xsl:if>
-                                                                               
-                                                                               
                <xsl:choose>
-                                                                               
                        <xsl:when test="operator = 'eq'">
-                                                                               
                                <span style="margin-left:10px;">Lik</span>
-                                                                               
                        </xsl:when>
-                                                                               
                        <xsl:when test="operator = 'gt'">
-                                                                               
                                <span style="margin-left:10px;">Større 
enn</span>
-                                                                               
                        </xsl:when>
-                                                                               
                        <xsl:when test="operator = 'lt'">
-                                                                               
                                <span style="margin-left:10px;">Mindre 
enn</span>
-                                                                               
                        </xsl:when>
-                                                                               
                        <xsl:when test="operator = 'btw'">
-                                                                               
                                <span style="margin-left:10px;">Mellom</span>
-                                                                               
                        </xsl:when>
-                                                                               
                </xsl:choose>
-                                                                               
                
+                                                       <xsl:choose>
+                                                               <xsl:when 
test="requirement_attributes_array/child::node()">
+                                                                       <div 
id="attributes">
+                                                                               
<xsl:for-each select="requirement_attributes_array">
+                                                                               
<div class="attribute">
+                                                                               
        <label style="margin-left:10px;"><xsl:value-of 
select="cust_attribute/input_text" /></label>
                                                                                
        <xsl:choose>
-                                                                               
                <xsl:when test="operator = 'btw'">
-                                                                               
                <span style="margin-left:10px;"><xsl:value-of 
select="substring-after(attrib_value, ':')" /></span>
+                                                                               
                <xsl:when test="cust_attribute/column_info/type = 'T'">
+                                                                               
                        <span style="margin-left:10px;"><xsl:value-of 
select="attrib_value" /></span>
                                                                                
                </xsl:when>
-                                                                               
                <xsl:otherwise>
-                                                                               
                                <span style="margin-left:10px;"><xsl:value-of 
select="attrib_value" /></span>
-                                                                               
                </xsl:otherwise>
+                                                                               
                <xsl:when test="cust_attribute/column_info/type = 'V' or 
cust_attribute/column_info/type = 'I'">
+                                                        
+                                                                               
                                <xsl:if test="operator = 'btw'">
+                                                                               
                                        <span 
style="margin-left:10px;"><xsl:value-of select="substring-before(attrib_value, 
':')" /></span>
+                                                                               
                                </xsl:if>
+                                                                               
                
+                                                                               
                                <xsl:choose>
+                                                                               
                                        <xsl:when test="operator = 'eq'">
+                                                                               
                                                <span 
style="margin-left:10px;">Lik</span>
+                                                                               
                                        </xsl:when>
+                                                                               
                                        <xsl:when test="operator = 'gt'">
+                                                                               
                                                <span 
style="margin-left:10px;">Større enn</span>
+                                                                               
                                        </xsl:when>
+                                                                               
                                        <xsl:when test="operator = 'lt'">
+                                                                               
                                                <span 
style="margin-left:10px;">Mindre enn</span>
+                                                                               
                                        </xsl:when>
+                                                                               
                                        <xsl:when test="operator = 'btw'">
+                                                                               
                                                <span 
style="margin-left:10px;">Mellom</span>
+                                                                               
                                        </xsl:when>
+                                                                               
                                </xsl:choose>
+                                                                               
                                
+                                                                               
                        <xsl:choose>
+                                                                               
                                <xsl:when test="operator = 'btw'">
+                                                                               
                                <span style="margin-left:10px;"><xsl:value-of 
select="substring-after(attrib_value, ':')" /></span>
+                                                                               
                                </xsl:when>
+                                                                               
                                <xsl:otherwise>
+                                                                               
                                                <span 
style="margin-left:10px;"><xsl:value-of select="attrib_value" /></span>
+                                                                               
                                </xsl:otherwise>
+                                                                               
                        </xsl:choose>
+                                                       
+                                                                               
                </xsl:when>
+                                                                               
                <xsl:when test="cust_attribute/column_info/type = 'LB'">
+                                                                               
                        <span style="margin-left:10px;"><xsl:value-of 
select="attrib_value" /></span>
+                                                                               
                </xsl:when>
                                                                                
        </xsl:choose>
-                                       
-                                                                               
</xsl:when>
-                                                                               
<xsl:when test="cust_attribute/column_info/type = 'LB'">
-                                                                               
        <span style="margin-left:10px;"><xsl:value-of select="attrib_value" 
/></span>
-                                                                               
</xsl:when>
-                                                                       
</xsl:choose>
+                                                                               
</div>
+                                                                       
</xsl:for-each>
                                                                </div>
-                                                       </xsl:for-each>
-                                               </div>
-                                               </dd>   
+                                                               </xsl:when>
+                                                               <xsl:otherwise>
+                                                                       
<p>Ingen kriterier lagt til</p>
+                                                               </xsl:otherwise>
+                                                       </xsl:choose>
                                        </xsl:otherwise>
                                </xsl:choose>
+                               </dd>   
                        </dl>
                        
                        <div class="form-buttons">
@@ -176,8 +181,14 @@
                                                <input type="submit" 
name="cancel_requirement_values" value="{$lang_cancel}" title = 
"{$lang_cancel}" />
                                        </xsl:when>
                                        <xsl:otherwise>
-                                               <xsl:variable 
name="lang_edit"><xsl:value-of select="php:function('lang', 'edit')" 
/></xsl:variable>
-                                               <input type="submit" 
name="edit_requirement_values" value="{$lang_edit}" title = "{$lang_edit}" />
+                                               <xsl:variable name="params">
+                                                               
<xsl:text>menuaction:logistic.uirequirement.add_requirement_values, 
requirement_id:</xsl:text>
+                                                               <xsl:value-of 
select="requirement/id" />
+                                                       </xsl:variable>
+                                                       <xsl:variable 
name="edit_url">
+                                                               <xsl:value-of 
select="php:function('get_phpgw_link', '/index.php', $params )" />
+                                                       </xsl:variable>
+                                                       <a class="btn" 
href="{$edit_url}"><xsl:value-of select="php:function('lang', 'edit')" /></a>
                                        </xsl:otherwise>
                                </xsl:choose>
                        </div>




reply via email to

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