fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [8573]


From: Torstein
Subject: [Fmsystem-commits] [8573]
Date: Sun, 15 Jan 2012 16:10:31 +0000

Revision: 8573
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=8573
Author:   vator
Date:     2012-01-15 16:10:31 +0000 (Sun, 15 Jan 2012)
Log Message:
-----------


Modified Paths:
--------------
    trunk/controller/inc/class.socheck_list.inc.php
    trunk/controller/inc/class.socontrol.inc.php
    trunk/controller/inc/class.uicalendar.inc.php
    trunk/controller/inc/component/class.date_generator.inc.php
    trunk/controller/inc/model/class.control.inc.php
    trunk/controller/templates/base/case/create_case_message.xsl
    trunk/controller/templates/base/check_list/edit_check_list.xsl
    trunk/controller/templates/base/check_list/view_errors_for_check_list.xsl
    trunk/controller/templates/base/css/base.css

Modified: trunk/controller/inc/class.socheck_list.inc.php
===================================================================
--- trunk/controller/inc/class.socheck_list.inc.php     2012-01-15 14:16:40 UTC 
(rev 8572)
+++ trunk/controller/inc/class.socheck_list.inc.php     2012-01-15 16:10:31 UTC 
(rev 8573)
@@ -321,7 +321,7 @@
                $sql .= "AND c.repeat_type = $repeat_type ";
                $sql .= "AND deadline BETWEEN $from_date AND $to_date ";
                $sql .= "ORDER BY c.id;";
-               echo $sql; 
+
                $this->db->query($sql);
                
                $control_id = 0;
@@ -372,6 +372,59 @@
                return $controls_array;
        }
        
+       function get_check_lists_for_location_2( $location_code, $from_date, 
$to_date, $repeat_type ){
+               $sql =  "SELECT c.id as c_id, ";
+               $sql .= "cl.id as cl_id, cl.status as cl_status, cl.comment as 
cl_comment, deadline, planned_date, completed_date, ";
+               $sql .= "cl.component_id as cl_component_id, cl.location_code 
as cl_location_code, num_open_cases "; 
+               $sql .= "FROM controller_control c ";
+               $sql .= "LEFT JOIN controller_check_list cl on cl.control_id = 
c.id ";
+               $sql .= "WHERE cl.location_code = $location_code ";
+               $sql .= "AND c.repeat_type = $repeat_type ";
+               $sql .= "AND deadline BETWEEN $from_date AND $to_date ";
+               $sql .= "ORDER BY c.id;";
+
+               $this->db->query($sql);
+               
+               $control_id = 0;
+               $control = null;
+               $controls_array = array();
+               while ($this->db->next_record()) {
+                       
+                       if( $this->db->f('c_id', true) != $control_id ){
+                               
+                               if($control_id != 0){
+                                       
$control->set_check_lists_array($check_lists_array);
+                                       $controls_array[] = $control;
+                               }
+                       
+                               $control = new 
controller_control($this->unmarshal($this->db->f('c_id', true), 'int'));
+                                                                               
                
+                               $check_lists_array = array();
+                       }
+
+                       $check_list = new 
controller_check_list($this->unmarshal($this->db->f('cl_id', true), 'int'));
+                       
$check_list->set_status($this->unmarshal($this->db->f('cl_status', true), 
'int'));
+                       
$check_list->set_comment($this->unmarshal($this->db->f('cl_comment', true), 
'string'));
+                       
$check_list->set_deadline($this->unmarshal($this->db->f('deadline', true), 
'int'));
+                       
$check_list->set_planned_date($this->unmarshal($this->db->f('planned_date', 
true), 'int'));
+                       
$check_list->set_completed_date($this->unmarshal($this->db->f('completed_date', 
true), 'int')); 
+                       
$check_list->set_component_id($this->unmarshal($this->db->f('cl_component_id', 
true), 'int'));
+                       
$check_list->set_location_code($this->unmarshal($this->db->f('cl_location_code',
 true), 'int'));
+                       
$check_list->set_num_open_cases($this->unmarshal($this->db->f('num_open_cases', 
true), 'int'));
+                       
+                       $check_lists_array[] = $check_list;
+
+                       $control_id =  $control->get_id();
+               }
+               
+               if($control != null){
+                       $control->set_check_lists_array($check_lists_array);
+                       $controls_array[] = $control;
+               }       
+               
+               return $controls_array;
+       }
+       
        function get_query(string $sort_field, boolean $ascending, string 
$search_for, string $search_type, array $filters, boolean $return_count)
        {
                $current_time = time();

Modified: trunk/controller/inc/class.socontrol.inc.php
===================================================================
--- trunk/controller/inc/class.socontrol.inc.php        2012-01-15 14:16:40 UTC 
(rev 8572)
+++ trunk/controller/inc/class.socontrol.inc.php        2012-01-15 16:10:31 UTC 
(rev 8573)
@@ -112,11 +112,17 @@
                        //return isset($result);
                }
 
-               public function get_controls_by_location($location_code)
+               public function get_controls_by_location($location_code, 
$from_date, $to_date, $repeat_type, $return_type = "return_object")
                {
                        $controls_array = array();
                        
-                       $sql = "SELECT * FROM controller_control_location_list 
WHERE location_code = $location_code";
+                       $sql  = "SELECT distinct c.* FROM 
controller_control_location_list cll "; 
+                       $sql .= "LEFT JOIN controller_control c on 
cll.control_id=c.id ";
+                       $sql .= "WHERE cll.location_code = $location_code ";
+                       $sql .= "AND c.repeat_type = $repeat_type ";
+                       $sql .= "AND c.start_date >= $from_date ";
+                       $sql .= "AND (c.end_date < $to_date OR c.end_date IS 
NULL)";
+                       
                        $this->db->query($sql);
 
                        while($this->db->next_record()) {
@@ -126,19 +132,20 @@
                                
$control->set_start_date($this->unmarshal($this->db->f('start_date', true), 
'int'));
                                
$control->set_end_date($this->unmarshal($this->db->f('end_date', true), 'int'));
                                
$control->set_procedure_id($this->unmarshal($this->db->f('procedure_id', true), 
'int'));
-                               
$control->set_procedure_name($this->unmarshal($this->db->f('procedure_name', 
true), 'string'));
                                
$control->set_requirement_id($this->unmarshal($this->db->f('requirement_id', 
true), 'int'));
                                
$control->set_costresponsibility_id($this->unmarshal($this->db->f('costresponsibility_id',
 true), 'int'));
                                
$control->set_responsibility_id($this->unmarshal($this->db->f('responsibility_id',
 true), 'int'));
                                
$control->set_control_area_id($this->unmarshal($this->db->f('control_area_id', 
true), 'int'));
-                               
$control->set_control_area_name($this->unmarshal($this->db->f('control_area_name',
 true), 'string'));
                                
$control->set_component_type_id($this->unmarshal($this->db->f('component_type_id',
 true), 'int'));
                                
$control->set_component_id($this->unmarshal($this->db->f('component_id', true), 
'int'));
                                
$control->set_location_code($this->unmarshal($this->db->f('location_code', 
true), 'int'));
                                
$control->set_repeat_type($this->unmarshal($this->db->f('repeat_type', true), 
'int'));
                                
$control->set_repeat_interval($this->unmarshal($this->db->f('repeat_interval', 
true), 'int'));
-
-                               $controls_array[] = $control->toArray();
+                               
+                               if($return_type == "return_object")
+                                       $controls_array[] = $control;
+                               else
+                                       $controls_array[] = $control->toArray();
                        }
 
                        if( count( $controls_array ) > 0 ){

Modified: trunk/controller/inc/class.uicalendar.inc.php
===================================================================
--- trunk/controller/inc/class.uicalendar.inc.php       2012-01-15 14:16:40 UTC 
(rev 8572)
+++ trunk/controller/inc/class.uicalendar.inc.php       2012-01-15 16:10:31 UTC 
(rev 8573)
@@ -96,12 +96,14 @@
                        
                        $repeat_type = 0;
                        
-                       $controls_for_location_array = 
$this->so_control->get_controls_by_location( $location_code );
+                       $controls_for_location_array = 
$this->so_control->get_controls_by_location($location_code, $from_date, 
$to_date, $repeat_type);
                        
-                       $check_list_array = 
$this->so->get_check_lists_for_location_2( $location_code, $from_date, 
$to_date, $repeat_type);
+                       $control_id_with_check_list_array = 
$this->so->get_check_lists_for_location_2($location_code, $from_date, $to_date, 
$repeat_type);
+                       
+                       $controls_with_check_list = 
$this->populate_controls_with_check_lists($controls_for_location_array, 
$control_id_with_check_list_array);
+                       
+                       $controls_calendar_array = 
$this->calendar_builder->build_calendar_array( $controls_with_check_list, null, 
31, "view_days" );
 
-                       $controls_calendar_array = 
$this->calendar_builder->build_calendar_array( $check_list_array, null, 31, 
"view_days" );
-
                        $location_array = 
execMethod('property.bolocation.read_single', array('location_code' => 
$location_code));
                        
                        $month_array = array("Januar", "Februar", "Mars", 
"April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", 
"Desember");
@@ -126,6 +128,20 @@
                        
self::render_template_xsl('calendar/view_calendar_month', $data);
                }
                
+               public function 
populate_controls_with_check_lists($controls_for_location_array, 
$control_id_with_check_list_array){
+                       $controls_with_check_list = array();
+                       
+                       foreach($controls_for_location_array as $control){
+                               foreach($control_id_with_check_list_array as 
$control_id){
+                                       if($control->get_id() == 
$control_id->get_id())
+                                               
$control->set_check_lists_array($control_id->get_check_lists_array());          
                                
+                               }       
+                               $controls_with_check_list[] = $control;
+                       }
+                       
+                       return $controls_with_check_list;
+               }
+               
                public function view_calendar_for_year()
                {
                        $location_code = phpgw::get_var('location_code');

Modified: trunk/controller/inc/component/class.date_generator.inc.php
===================================================================
--- trunk/controller/inc/component/class.date_generator.inc.php 2012-01-15 
14:16:40 UTC (rev 8572)
+++ trunk/controller/inc/component/class.date_generator.inc.php 2012-01-15 
16:10:31 UTC (rev 8573)
@@ -25,11 +25,9 @@
        function generate_calendar(){
        
                $control_start_date = $this->find_control_start_date();
-               echo " control_start_date: " . date("d/m-Y", 
$control_start_date);
+               
                $period_start_date = $this->find_start_date_for_period( 
$control_start_date );
        
-               echo " period_start_date: " . date("d/m-Y", 
$period_start_date); 
-               
                $interval_date = $period_start_date;
                
                while($interval_date <= $this->period_end_date){

Modified: trunk/controller/inc/model/class.control.inc.php
===================================================================
--- trunk/controller/inc/model/class.control.inc.php    2012-01-15 14:16:40 UTC 
(rev 8572)
+++ trunk/controller/inc/model/class.control.inc.php    2012-01-15 16:10:31 UTC 
(rev 8573)
@@ -54,6 +54,7 @@
                protected $control_area_id;
                protected $control_area_name;
 
+               // Objects
                protected $check_lists_array = array();
                
                

Modified: trunk/controller/templates/base/case/create_case_message.xsl
===================================================================
--- trunk/controller/templates/base/case/create_case_message.xsl        
2012-01-15 14:16:40 UTC (rev 8572)
+++ trunk/controller/templates/base/case/create_case_message.xsl        
2012-01-15 16:10:31 UTC (rev 8573)
@@ -104,7 +104,7 @@
                                        
                                        <div class="form-buttons">
                                                <xsl:variable 
name="lang_save"><xsl:value-of select="php:function('lang', 'save')" 
/></xsl:variable>
-                                               <input class="btn focus" 
type="submit" name="save_control" value="Registrer avviksmelding" 
title="{$lang_save}" />
+                                               <input class="btn focus" 
type="submit" name="save_control" value="Registrer melding" 
title="{$lang_save}" />
                                        </div>
                                </form>                 
                                </xsl:when>

Modified: trunk/controller/templates/base/check_list/edit_check_list.xsl
===================================================================
--- trunk/controller/templates/base/check_list/edit_check_list.xsl      
2012-01-15 14:16:40 UTC (rev 8572)
+++ trunk/controller/templates/base/check_list/edit_check_list.xsl      
2012-01-15 16:10:31 UTC (rev 8573)
@@ -52,15 +52,24 @@
                                </xsl:attribute>
                                Vis info om kontroll
                        </a>
-                       
-                       <a style="background:#DD624B;border-bottom: 1px solid 
#CB563F;border-top: 1px solid #EE836F;box-shadow: 0 1px 0 #A9422E, 0 -1px 0 
#A9422E;color: #FFFFFF;height: 18px;margin-left: 75px;margin-top: 1px;">
-                               <xsl:attribute name="href">
-                                       
<xsl:text>index.php?menuaction=controller.uicheck_list_for_location.register_error</xsl:text>
-                                       <xsl:text>&amp;check_list_id=</xsl:text>
-                                       <xsl:value-of select="check_list/id"/>
-                               </xsl:attribute>
-                               Registrere sak
-                       </a>
+                       <div>
+                               <a class="btn focus first">
+                                       <xsl:attribute name="href">
+                                               
<xsl:text>index.php?menuaction=controller.uicheck_list_for_location.register_error</xsl:text>
+                                               
<xsl:text>&amp;check_list_id=</xsl:text>
+                                               <xsl:value-of 
select="check_list/id"/>
+                                       </xsl:attribute>
+                                       Registrer sak
+                               </a>
+                               <a class="btn focus">
+                                       <xsl:attribute name="href">
+                                               
<xsl:text>index.php?menuaction=controller.uicheck_list_for_location.register_error</xsl:text>
+                                               
<xsl:text>&amp;check_list_id=</xsl:text>
+                                               <xsl:value-of 
select="check_list/id"/>
+                                       </xsl:attribute>
+                                       Registrer melding
+                               </a>
+                       </div>
                </div>
                
                <h3 class="box_header">Sjekklistedetaljer</h3>

Modified: 
trunk/controller/templates/base/check_list/view_errors_for_check_list.xsl
===================================================================
--- trunk/controller/templates/base/check_list/view_errors_for_check_list.xsl   
2012-01-15 14:16:40 UTC (rev 8572)
+++ trunk/controller/templates/base/check_list/view_errors_for_check_list.xsl   
2012-01-15 16:10:31 UTC (rev 8573)
@@ -89,8 +89,16 @@
                                        <xsl:text>&amp;check_list_id=</xsl:text>
                                        <xsl:value-of select="check_list/id"/>
                                </xsl:attribute>
-                               Registrer avvik/sak
+                               Registrer sak
                        </a>
+                       <a style="background:#DD624B;border-bottom: 1px solid 
#CB563F;border-top: 1px solid #EE836F;box-shadow: 0 1px 0 #A9422E, 0 -1px 0 
#A9422E;color: #FFFFFF;height: 18px;margin-left: 75px;margin-top: 1px;">
+                               <xsl:attribute name="href">
+                                       
<xsl:text>index.php?menuaction=controller.uicheck_list_for_location.register_error</xsl:text>
+                                       <xsl:text>&amp;check_list_id=</xsl:text>
+                                       <xsl:value-of select="check_list/id"/>
+                               </xsl:attribute>
+                               Registrer avviksmelding
+                       </a>
                </div>
                
                

Modified: trunk/controller/templates/base/css/base.css
===================================================================
--- trunk/controller/templates/base/css/base.css        2012-01-15 14:16:40 UTC 
(rev 8572)
+++ trunk/controller/templates/base/css/base.css        2012-01-15 16:10:31 UTC 
(rev 8573)
@@ -1158,7 +1158,22 @@
     margin-top: 1px;   
 }
 
+#edit_check_list_menu div{
+       float:left;
+       margin-left: 75px;
+}
 
+#edit_check_list_menu a.focus {
+    float: none;
+    font-size: 12px;
+    margin-top: 3px;
+    padding: 2px 0;
+}
+
+#edit_check_list_menu a.focus.first{
+    margin-top: 0;
+}
+
 #frm_update_check_list input[type="submit"]{
        width: 140px;   
 }
@@ -1183,14 +1198,13 @@
 }
 #edit_check_list_menu a {
     float: left;
-    height: 20px;
-    padding-top: 10px;
+    padding: 14px 0;
     text-align: center;
     width: 185px;
 }
-#edit_check_list_menu{
-               height:30px;
-               margin:0 0 20px 0;
+#edit_check_list_menu {
+    margin: 0 0 20px;
+    overflow: hidden;
 }
 .content_wrp {
        background: none repeat scroll 0 0 #EDF5FF;
@@ -1230,4 +1244,4 @@
     height: 13px;
     text-decoration: none;
     width: 24px;       
-}
\ No newline at end of file
+}




reply via email to

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