phpgroupware-cvs
[Top][All Lists]
Advanced

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

[Phpgroupware-cvs] [19005] feature: switched to 3 levels for versions nu


From: Pascal Vilarem
Subject: [Phpgroupware-cvs] [19005] feature: switched to 3 levels for versions numbering
Date: Fri, 28 Nov 2008 15:56:44 +0000

Revision: 19005
          
http://svn.sv.gnu.org/viewvc/?view=rev&root=phpgroupware&revision=19005
Author:   maat
Date:     2008-11-28 15:56:43 +0000 (Fri, 28 Nov 2008)

Log Message:
-----------
feature: switched to 3 levels for versions numbering

Modified Paths:
--------------
    modules/ged/trunk/inc/class.flow_client.inc.php
    modules/ged/trunk/inc/class.ged_dm.inc.php
    modules/ged/trunk/inc/class.ged_ui.inc.php
    modules/ged/trunk/inc/hook_home.inc.php
    modules/ged/trunk/setup/tables_current.inc.php
    modules/ged/trunk/setup/tables_update.inc.php
    modules/ged/trunk/templates/base/add_file.tpl
    modules/ged/trunk/templates/base/update_file.tpl

Modified: modules/ged/trunk/inc/class.flow_client.inc.php
===================================================================
--- modules/ged/trunk/inc/class.flow_client.inc.php     2008-11-28 14:28:02 UTC 
(rev 19004)
+++ modules/ged/trunk/inc/class.flow_client.inc.php     2008-11-28 15:56:43 UTC 
(rev 19005)
@@ -165,8 +165,10 @@
                                
$new_file['name']=$this->ged_dm->get_type_desc($new_file['doc_type'])." / 
".$element['name'];
                                $new_file['description']=$comment;
                                
$new_file['reference']=$next_reference_for_review_file;
-                               $new_file['major']=1;
+                               $new_file['major']=0;
                                $new_file['minor']=0;
+                               $new_file['draft']=1;
+                               
                                $new_file['validity_period']=0;
                                
                                $new_place=null;
@@ -253,6 +255,7 @@
                $new_version_description=$this->get_var('version_description', 
array('POST', 'GET'));
                $new_major_value=$this->get_var('major', array('POST', 'GET'));
                $new_minor_value=$this->get_var('minor', array('POST', 'GET'));
+               $new_draft_value=$this->get_var('draft', array('POST', 'GET'));
                                        
                // TODO : version numbering
                $new_version_type=$this->get_var('version_type', array('POST', 
'GET'));
@@ -292,6 +295,7 @@
       // TODO : version numbering
       $new_version['major']=$new_major_value;
       $new_version['minor']=$new_minor_value;
+      $new_version['draft']=$new_draft_value;
        
       $new_version['description']=$new_version_description;
                
@@ -319,6 +323,7 @@
       // TODO : version numbering
       $amended_version['major']=$new_major_value;
       $amended_version['minor']=$new_minor_value;
+      $amended_version['draft']=$new_draft_value;
              
       if ( is_array($new_relations))
       {
@@ -418,6 +423,7 @@
                                
$version_relations[$version_relations_next_index]['name']=$new_version_to_add['name'];
                                
$version_relations[$version_relations_next_index]['major']=$new_version_to_add['major'];
                                
$version_relations[$version_relations_next_index]['minor']=$new_version_to_add['minor'];
+                               
$version_relations[$version_relations_next_index]['draft']=$new_version_to_add['draft'];
                                
$version_relations[$version_relations_next_index]['status']=$new_version_to_add['status'];
                                
$version_relations[$version_relations_next_index]['reference']=$new_version_to_add['reference'];
                        }
@@ -448,6 +454,7 @@
                                
$new_relations[$nri]['name']=$version_relation['name'];
                                
$new_relations[$nri]['major']=$the_new_relations['major'];
                                
$new_relations[$nri]['minor']=$the_new_relations['minor'];
+                               
$new_relations[$nri]['draft']=$the_new_relations['draft'];
                                
$new_relations[$nri]['status']=$the_new_relations['status'];
                                
                                // TODO : use real value
@@ -463,6 +470,7 @@
                                
$new_relations[$nri]['linked_version_id']=$version_relation['version_id'];
                                
$new_relations[$nri]['major']=$version_relation['major'];
                                
$new_relations[$nri]['minor']=$version_relation['minor'];
+                               
$new_relations[$nri]['draft']=$version_relation['draft'];
                                
$new_relations[$nri]['status']=$version_relation['status'];
                                
$new_relations[$nri]['reference']=$version_relation['reference'];
                                
$new_relations[$nri]['name']=$version_relation['name'];
@@ -477,6 +485,7 @@
                                
$new_relations[$nri]['linked_version_id']=$version_relation['version_id'];
                                
$new_relations[$nri]['major']=$version_relation['major'];
                                
$new_relations[$nri]['minor']=$version_relation['minor'];
+                               
$new_relations[$nri]['draft']=$version_relation['draft'];
                                
$new_relations[$nri]['status']=$version_relation['status'];
                                
$new_relations[$nri]['reference']=$version_relation['reference'];
                                
$new_relations[$nri]['name']=$version_relation['name'];
@@ -512,13 +521,22 @@
                        }
                        else
                        {
+                               $minor=$version['minor'];
+                       }
+                       
+                       if ( (int)$new_draft_value != 0 )
+                       {
+                               $draft=$new_draft_value;
+                       }
+                       else
+                       {
                                if ( $context['custom_fields']['update_mode'] 
== 'update')
                                {
-                                       $minor=$version['minor'];
+                                       $draft=$version['draft'];
                                }
                                else
                                {
-                                       $minor=$version['minor']+1;
+                                       $draft=$version['draft']+1;
                                }
                        }
                        
@@ -553,8 +571,10 @@
                        
                        $this->t->set_var('major_field', 'major');
                        $this->t->set_var('minor_field', 'minor');
+                       $this->t->set_var('draft_field', 'draft');
                        $this->t->set_var('major_value', $major);
                        $this->t->set_var('minor_value', $minor);
+                       $this->t->set_var('draft_value', $draft);
                                        
                        $this->t->set_var('file_description_field', 
'file_description');
                        $this->t->set_var('version_description_field', 
'version_description');
@@ -649,6 +669,7 @@
                                
$this->t->set_var('relations_element_reference', $new_relation['reference']);
                                $this->t->set_var('relations_element_major', 
$new_relation['major']);
                                $this->t->set_var('relations_element_minor', 
$new_relation['minor']);
+                               $this->t->set_var('relations_element_draft', 
$new_relation['draft']);
                                
$this->t->set_var('relations_element_status_image', 
$GLOBALS['phpgw']->common->image('ged', $new_relation['status']."-16"));
                                $this->t->set_var('relations_element_name', 
$new_relation['name']);
                                
@@ -696,7 +717,7 @@
                                $this->t->set_var('version_id', 
$search_result['version_id']);
                                $this->t->set_var('name', 
$search_result['name']);
                                $this->t->set_var('reference', 
$search_result['reference']);
-                               $this->t->set_var('version', 
"v".$search_result['major'].".".$search_result['minor']);
+                               $this->t->set_var('version', 
"v".$search_result['major'].".".$search_result['minor'].".".$search_result['draft']);
                                $this->t->set_var('status', 
$search_result['status']);
                                
                                

Modified: modules/ged/trunk/inc/class.ged_dm.inc.php
===================================================================
--- modules/ged/trunk/inc/class.ged_dm.inc.php  2008-11-28 14:28:02 UTC (rev 
19004)
+++ modules/ged/trunk/inc/class.ged_dm.inc.php  2008-11-28 15:56:43 UTC (rev 
19005)
@@ -231,13 +231,14 @@
 
                        // DONE gestion des slashes
 
-                       $sql_model1="INSERT INTO %s ( size, file_name, 
stored_name, file_extension, creator_id, creation_date, status, element_id, 
description, major, minor ) VALUES ";
-                       $sql_model1.=" (  %d, '%s', '%s', '%s', %d, %d, '%s', 
%d, '%s', %d, %d ) ";
+                       $sql_model1="INSERT INTO %s ( size, file_name, 
stored_name, file_extension, creator_id, creation_date, status, element_id, 
description, major, minor, draft ) VALUES ";
+                       $sql_model1.=" (  %d, '%s', '%s', '%s', %d, %d, '%s', 
%d, '%s', %d, %d, %d ) ";
                        
                        $major=(int)$new_file['major'];
                        $minor=(int)$new_file['minor'];
+                       $draft=(int)$new_file['draft'];
 
-                       $sql1=sprintf($sql_model1, $this->tables['versions'], 
$new_file['file_size'], addslashes($new_file['file_name']), 
addslashes($candidate_name), $extension, 
$GLOBALS['phpgw_info']['user']['account_id'], time(), 'working', 
$new_element_id, lang("First version"), $major, $minor);
+                       $sql1=sprintf($sql_model1, $this->tables['versions'], 
$new_file['file_size'], addslashes($new_file['file_name']), 
addslashes($candidate_name), $extension, 
$GLOBALS['phpgw_info']['user']['account_id'], time(), 'working', 
$new_element_id, lang("First version"), $major, $minor, $draft);
 
                        //print ("<br/>".$sql1);
 
@@ -457,11 +458,15 @@
                // MEMO gestion des numeros de versions
                $major=$new_version['major'];
                $minor=$new_version['minor'];
+               $draft=$new_version['draft'];
                
-               if ( $major < $last_version['major'] || $major == 
$last_version['major'] && $minor < $last_version['minor'] )
+               if ( ($major < $last_version['major']) ||  
+               ($major == $last_version['major'] && $minor < 
$last_version['minor']) || 
+               ($major == $last_version['major'] && $minor == 
$last_version['minor'] && $draft < $last_version['draft']) )
                {
                        $major=$last_version['major'];
-                       $minor=$last_version['minor']+1;
+                       $minor=$last_version['minor'];
+                       $draft=$last_version['draft']+1;
                }
                
                // MEMO gestion du stored_name pour eviter les ecrasements.
@@ -495,10 +500,10 @@
                if ($download_result=='OK')
                {
 
-                       $sql_model1="INSERT INTO %s ( size, file_name, 
stored_name, file_extension, creator_id, creation_date, status, element_id, 
description, major, minor ) VALUES ";
-                       $sql_model1.=" (  %d, '%s', '%s', '%s', %d, %d, '%s', 
%d, '%s', %d, %d ) ";
+                       $sql_model1="INSERT INTO %s ( size, file_name, 
stored_name, file_extension, creator_id, creation_date, status, element_id, 
description, major, minor, draft ) VALUES ";
+                       $sql_model1.=" (  %d, '%s', '%s', '%s', %d, %d, '%s', 
%d, '%s', %d, %d, %d ) ";
 
-                       $sql1=sprintf($sql_model1, $this->tables['versions'], 
$new_version['file_size'], addslashes($new_version['file_name']), 
addslashes($candidate_name), $extension, 
$GLOBALS['phpgw_info']['user']['account_id'], time(), 'working', 
$new_version['element_id'], $this->cleanstr($new_version['description']), 
$major, $minor);
+                       $sql1=sprintf($sql_model1, $this->tables['versions'], 
$new_version['file_size'], addslashes($new_version['file_name']), 
addslashes($candidate_name), $extension, 
$GLOBALS['phpgw_info']['user']['account_id'], time(), 'working', 
$new_version['element_id'], $this->cleanstr($new_version['description']), 
$major, $minor, $draft);
 
                        //print ("<br/>".$sql1);
 
@@ -539,6 +544,7 @@
                // MEMO gestion des numeros de versions
                $major=$amended_version['major'];
                $minor=$amended_version['minor'];
+               $draft=$amended_version['draft'];
                
                if ( $me_version['version_id'] != $first_version['version_id'] )
                {
@@ -549,10 +555,13 @@
                        //_debug_array($previous_version);
                        //die();
                                                
-                       if ( $major < $previous_version['major'] || ($major == 
$previous_version['major'] && $minor <= $previous_version['minor']))
+                       if ( ($major < $previous_version['major']) ||  
+                       ($major == $previous_version['major'] && $minor < 
$previous_version['minor']) || 
+                       ($major == $previous_version['major'] && $minor == 
$previous_version['minor'] && $draft < $previous_version['draft']) )
                        {
                                $major=$previous_version['major'];
-                               $minor=$previous_version['minor']+1;
+                               $minor=$previous_version['minor'];
+                               $draft=$previous_version['draft']+1;
                        }
                }
                
@@ -599,18 +608,18 @@
                if ($download_result=='OK')
                {
                        $sql_model1="UPDATE %s  set size=%d, file_name='%s', 
stored_name='%s', file_extension='%s', ";
-                       $sql_model1.="status='%s', description='%s', major=%d, 
minor=%d ";
+                       $sql_model1.="status='%s', description='%s', major=%d, 
minor=%d, draft=%d ";
                        $sql_model1.="WHERE version_id=%d";
 
-                       $sql1=sprintf($sql_model1, $this->tables['versions'], 
$amended_version['file_size'], $amended_version['file_name'], 
$this->cleanstr($candidate_name), $extension, $me_version['status'], 
$this->cleanstr($amended_version['description']), $major, $minor, 
$amended_version['version_id']);
+                       $sql1=sprintf($sql_model1, $this->tables['versions'], 
$amended_version['file_size'], $amended_version['file_name'], 
$this->cleanstr($candidate_name), $extension, $me_version['status'], 
$this->cleanstr($amended_version['description']), $major, $minor, $draft, 
$amended_version['version_id']);
                }
                else
                {
                        $sql_model1="UPDATE %s  set  ";
-                       $sql_model1.="status='%s', description='%s', major=%d, 
minor=%d ";
+                       $sql_model1.="status='%s', description='%s', major=%d, 
minor=%d, draft=%d ";
                        $sql_model1.="WHERE version_id=%d";
 
-                       $sql1=sprintf($sql_model1, $this->tables['versions'], 
$me_version['status'], $this->cleanstr($amended_version['description']), 
$major, $minor, $amended_version['version_id']);
+                       $sql1=sprintf($sql_model1, $this->tables['versions'], 
$me_version['status'], $this->cleanstr($amended_version['description']), 
$major, $minor, $draft, $amended_version['version_id']);
                }
 
                $this->db->query($sql1, __LINE__, __FILE__);
@@ -805,6 +814,7 @@
                        $version['name']=$this->db->f('name');
                        $version['reference']=$this->db->f('reference');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
+                       $version['draft']=$this->db->f('draft');
                }
 
                $this->db->unlock();
@@ -865,6 +875,7 @@
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
+                       $version['draft']=$this->db->f('draft');
                        
$version['validation_date']=$this->db->f('validation_date');
                }
 
@@ -924,6 +935,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
$version['validation_date']=$this->db->f('validation_date');
                }
@@ -969,6 +981,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
$version['validation_date']=$this->db->f('validation_date');
                }
@@ -1023,6 +1036,7 @@
                        $version['file_name']=$db2->f('file_name');
                        $version['stored_name']=$db2->f('stored_name');
                        $version['major']=$db2->f('major');
+                       $version['draft']=$db2->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1179,6 +1193,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1229,6 +1244,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1281,6 +1297,7 @@
                        $version['file_name']=$db2->f('file_name');
                        $version['stored_name']=$db2->f('stored_name');
                        $version['major']=$db2->f('major');
+                       $version['draft']=$db2->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1331,6 +1348,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1381,6 +1399,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1429,6 +1448,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1477,6 +1497,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1525,6 +1546,7 @@
                        $version['file_name']=$this->db->f('file_name');
                        $version['stored_name']=$this->db->f('stored_name');
                        $version['major']=$this->db->f('major');
+                       $version['draft']=$this->db->f('draft');
                        
$version['file_full_path']=$this->datadir.'/'.$version['stored_name'];
                        
                        
$version['mime_type']=$this->get_mime_type($version['file_extension']);
@@ -1744,7 +1766,7 @@
 
                $sql1="SELECT ALL ";
                $sql1.="version_id, element_id, description, creation_date, ";
-               $sql1.="status, major, minor, size, ";
+               $sql1.="status, major, minor, draft, size, ";
                $sql1.="creator_id, validation_date, file_extension, ";
                $sql1.="file_name, stored_name ";
 
@@ -1781,6 +1803,7 @@
                                
$versions[$the_version_id]['status']=$the_status;
                                
$versions[$the_version_id]['major']=$this->db->f('major');
                                
$versions[$the_version_id]['minor']=$this->db->f('minor');
+                               
$versions[$the_version_id]['draft']=$this->db->f('draft');
                                
$versions[$the_version_id]['creator_id']=$this->db->f('creator_id');
                                
$versions[$the_version_id]['creation_date']=$this->db->f('creation_date');
                                
$versions[$the_version_id]['size']=$this->db->f('size');
@@ -2309,6 +2332,7 @@
                                        
$relations[$i]['reference']=$this->db->f('reference');
                                        
$relations[$i]['major']=$this->db->f('major');
                                        
$relations[$i]['minor']=$this->db->f('minor');
+                                       
$relations[$i]['draft']=$this->db->f('draft');
                                        
$relations[$i]['relation_type']=$this->db->f('relation_type');
                                        $i ++;
                                }
@@ -2347,6 +2371,7 @@
                                        
$relations[$i]['reference']=$this->db->f('reference');
                                        
$relations[$i]['major']=$this->db->f('major');
                                        
$relations[$i]['minor']=$this->db->f('minor');
+                                       
$relations[$i]['draft']=$this->db->f('draft');
                                        $i ++;
                                }
                        }
@@ -2384,6 +2409,7 @@
                                        
$relations[$i]['reference']=$this->db->f('reference');
                                        
$relations[$i]['major']=$this->db->f('major');
                                        
$relations[$i]['minor']=$this->db->f('minor');
+                                       
$relations[$i]['draft']=$this->db->f('draft');
                                        $i ++;
                                }
                        }
@@ -2538,6 +2564,7 @@
                                
$docs[$i]['reference']=$this->db->f('reference');
                                $docs[$i]['minor']=$this->db->f('minor');
                                $docs[$i]['major']=$this->db->f('major');
+                               $docs[$i]['draft']=$this->db->f('draft');
                                
$docs[$i]['description']=$this->db->f('description');
                                $i ++;
                        }
@@ -2665,6 +2692,7 @@
                                        
$docs[$i]['reference']=$this->db->f('reference');
                                        
$docs[$i]['minor']=$this->db->f('minor');
                                        
$docs[$i]['major']=$this->db->f('major');
+                                       
$docs[$i]['draft']=$this->db->f('draft');
                                        
$docs[$i]['description']=$this->db->f('description');
                                        $i ++;
                                }
@@ -2742,6 +2770,7 @@
                                         
$docs[$i]['reference']=$this->db->f('reference');
                                         
$docs[$i]['minor']=$this->db->f('minor');
                                         
$docs[$i]['major']=$this->db->f('major');
+                                        
$docs[$i]['draft']=$this->db->f('draft');
                                         
$docs[$i]['description']=$this->db->f('description');
                                         $i ++;
                                 }
@@ -2820,6 +2849,7 @@
                                         
$docs[$i]['reference']=$this->db->f('reference');
                                         
$docs[$i]['minor']=$this->db->f('minor');
                                         
$docs[$i]['major']=$this->db->f('major');
+                                        
$docs[$i]['draft']=$this->db->f('draft');
                                         
$docs[$i]['description']=$this->db->f('description');
                                         $i ++;
                                 }
@@ -2901,6 +2931,7 @@
                                         
$docs[$i]['reference']=$this->db->f('reference');
                                         
$docs[$i]['minor']=$this->db->f('minor');
                                         
$docs[$i]['major']=$this->db->f('major');
+                                        
$docs[$i]['draft']=$this->db->f('draft');
                                         
$docs[$i]['description']=$this->db->f('description');
                                         $i ++;
                                 }
@@ -2922,7 +2953,7 @@
        {
                if ( $this->can_read($element_id))
                {
-                       $sql="SELECT ".$this->tables['history'].".*, 
".$this->tables['versions'].".status finalstatus, 
".$this->tables['versions'].".major, ".$this->tables['versions'].".minor FROM 
".$this->tables['history']." INNER JOIN ".$this->tables['versions']." ";
+                       $sql="SELECT ".$this->tables['history'].".*, 
".$this->tables['versions'].".status finalstatus, 
".$this->tables['versions'].".major, ".$this->tables['versions'].".minor, 
".$this->tables['versions'].".draft FROM ".$this->tables['history']." INNER 
JOIN ".$this->tables['versions']." ";
                        $sql.="ON ".$this->tables['history'].".version_id = 
".$this->tables['versions'].".version_id ";
                        $sql.="WHERE 
".$this->tables['history'].".element_id=".$element_id." ";
                        $sql.="ORDER BY ".$this->tables['history'].".logdate 
ASC";                      
@@ -2948,6 +2979,7 @@
                                        
$history[$i]['agent']=$this->db->f('agent');
                                        
$history[$i]['major']=$this->db->f('major');
                                        
$history[$i]['minor']=$this->db->f('minor');
+                                       
$history[$i]['draft']=$this->db->f('draft');
                                        
                                        $i++;
                                }       
@@ -3001,6 +3033,7 @@
                                $docs[$i]['status']=$version_status;
                                $docs[$i]['major']=$this->db->f('major');
                                $docs[$i]['minor']=$this->db->f('minor');
+                               $docs[$i]['draft']=$this->db->f('draft');
                                
$docs[$i]['reference']=$this->db->f('reference');
                                
                                
$docs[$i]['reference']=$this->db->f('reference');
@@ -3021,7 +3054,7 @@
   function get_stats ($start_date=null, $end_date=null, $status=null, 
$project_root_id=null)
   {
                $sql="SELECT ged_history.*, ged_elements.name, 
ged_elements.reference, ged_elements.description descriptione, ";
-               $sql.="ged_versions.major, ged_versions.minor, 
ged_versions.description descriptionv ";
+               $sql.="ged_versions.major, ged_versions.minor, 
ged_versions.draft, ged_versions.description descriptionv ";
                $sql.="FROM (ged_history JOIN ged_elements on 
ged_history.element_id = ged_elements.element_id) ";
                $sql.="JOIN ged_versions on ged_history.version_id = 
ged_versions.version_id ";
                $sql.="WHERE ged_history.logdate >= ".$start_date." AND 
ged_history.logdate <= ".$end_date." ";
@@ -3050,6 +3083,7 @@
                                $docs[$i]['name']=$this->db->f('name');
                                $docs[$i]['major']=$this->db->f('major');
                                $docs[$i]['minor']=$this->db->f('minor');
+                               $docs[$i]['draft']=$this->db->f('draft');
                                
$docs[$i]['reference']=$this->db->f('reference');
                                
                                
$docs[$i]['reference']=$this->db->f('reference');
@@ -3469,7 +3503,8 @@
                        
$out[$doc_type][$i]['date']=$doc_version['creation_date'];
                        $major=$doc_version['major'];
                        $minor=$doc_version['minor'];
-                       $out[$doc_type][$i]['version_label']=$major.".".$minor;
+                       $draft=$doc_version['draft'];
+                       
$out[$doc_type][$i]['version_label']=$major.".".$minor.".".$draft;
                        
                        $i++;
                }
@@ -3519,7 +3554,8 @@
                        $out[$doc_type][$i]['status']=$this->db->f('status');
                        $major=$this->db->f('major');
                        $minor=$this->db->f('minor');
-                       $out[$doc_type][$i]['version_label']=$major.".".$minor;
+                       $draft=$this->db->f('draft');
+                       
$out[$doc_type][$i]['version_label']=$major.".".$minor.".".$draft;
 
                        
$out[$doc_type][$i]['reference']=$this->db->f('reference');
                        

Modified: modules/ged/trunk/inc/class.ged_ui.inc.php
===================================================================
--- modules/ged/trunk/inc/class.ged_ui.inc.php  2008-11-28 14:28:02 UTC (rev 
19004)
+++ modules/ged/trunk/inc/class.ged_ui.inc.php  2008-11-28 15:56:43 UTC (rev 
19005)
@@ -201,6 +201,7 @@
                $this->t->set_var('lang_current_version', lang('Current 
version'));
                $this->t->set_var('major_field', 'major');
                $this->t->set_var('minor_field','minor');
+               $this->t->set_var('draft_field','draft');
                
                $this->t->set_var('project_name_field', 'project_name');
                
@@ -597,7 +598,7 @@
 
                        $this->t->set_var('relation_name', 
$list_relation['name']);
                        $this->t->set_var('relation_reference', 
$list_relation['reference']);
-                       $this->t->set_var('relation_version', 
$list_relation['major'].".".$list_relation['minor']);
+                       $this->t->set_var('relation_version', 
$list_relation['major'].".".$list_relation['minor'].".".$list_relation['draft']);
                        $this->t->set_var('relation_status_value', 
$list_relation['status']);
                        $this->t->set_var('relation_status_image', 
$GLOBALS['phpgw']->common->image('ged', $list_relation['status']."-16"));
                        
@@ -639,7 +640,7 @@
 
                        $this->t->set_var('relation_name', 
$list_relation['name']);
                        $this->t->set_var('relation_reference', 
$list_relation['reference']);
-                       $this->t->set_var('relation_version', 
$list_relation['major'].".".$list_relation['minor']);
+                       $this->t->set_var('relation_version', 
$list_relation['major'].".".$list_relation['minor'].".".$list_relation['draft']);
                        $this->t->set_var('relation_status_value', 
$list_relation['status']);
                        $this->t->set_var('relation_status_image', 
$GLOBALS['phpgw']->common->image('ged', $list_relation['status']."-16"));
                        
@@ -670,7 +671,7 @@
                                else
                                        $file_version_odd_even='odd';
                                                                
-                               $this->t->set_var('version', 
$version_info['major'].".".$version_info['minor']);
+                               $this->t->set_var('version', 
$version_info['major'].".".$version_info['minor'].".".$version_info['draft']);
                                $this->t->set_var('version_creation_date', 
$GLOBALS['phpgw']->common->show_date($version_info['creation_date']));
                                $this->t->set_var('version_description', 
$version_info['description']);
                                $this->t->set_var('version_creator', 
$GLOBALS['phpgw']->common->grab_owner_name($version_info['creator_id']));
@@ -762,7 +763,7 @@
                }
                        
                        
-               $file_array_vars=Array('versions_numcol'=>$versions_numcol, 
'owner'=>$GLOBALS['phpgw']->common->grab_owner_name($element_info['owner_id']), 
'description'=>$element_info['description'], 
'reference'=>$element_info['reference'], 'name'=>$element_info['name'], 
'creation_date'=>$GLOBALS['phpgw']->common->show_date($element_info['creation_date']),
 
'current_version_date'=>$GLOBALS['phpgw']->common->show_date($current_version['creation_date']),
 'current_version'=>$current_version['major'].".".$current_version['minor'], 
'current_version_description'=>$current_version['description'], 
'current_version_creator'=>$GLOBALS['phpgw']->common->grab_owner_name($current_version['creator_id']),
 'current_version_file_size'=>$current_version['size'], 
'current_version_img_mime_type'=>$GLOBALS['phpgw']->common->image('ged', 
$this->icons[$extension]), 'current_version_expiration_date'=>$expiration_date, 
'current_version_mime_type'=>$current_version['mime_type']);
+               $file_array_vars=Array('versions_numcol'=>$versions_numcol, 
'owner'=>$GLOBALS['phpgw']->common->grab_owner_name($element_info['owner_id']), 
'description'=>$element_info['description'], 
'reference'=>$element_info['reference'], 'name'=>$element_info['name'], 
'creation_date'=>$GLOBALS['phpgw']->common->show_date($element_info['creation_date']),
 
'current_version_date'=>$GLOBALS['phpgw']->common->show_date($current_version['creation_date']),
 
'current_version'=>$current_version['major'].".".$current_version['minor'].".".$current_version['draft'],
 'current_version_description'=>$current_version['description'], 
'current_version_creator'=>$GLOBALS['phpgw']->common->grab_owner_name($current_version['creator_id']),
 'current_version_file_size'=>$current_version['size'], 
'current_version_img_mime_type'=>$GLOBALS['phpgw']->common->image('ged', 
$this->icons[$extension]), 'current_version_expiration_date'=>$expiration_date, 
'current_version_mime_type'=>$current_version['mime_type']);
 
                $this->t->set_var($file_array_vars);
 
@@ -852,7 +853,7 @@
                                $this->t->set_var('file_name', 
$this->truncate($file['name']));
                                $this->t->set_var('file_reference', 
$file['reference']);
                                $this->t->set_var('file_description', 
$file['description']);
-                               $this->t->set_var('file_version', 
"v".$file_version['major'].".".$file_version['minor']);
+                               $this->t->set_var('file_version', 
"v".$file_version['major'].".".$file_version['minor'].".".$file_version['draft']);
                                $this->t->set_var('file_status_image', 
$GLOBALS['phpgw']->common->image('ged', $file_version['status']."-16"));
 
                                $link_data=null;
@@ -892,7 +893,7 @@
                                $this->t->set_var('event_status_oe', 
'event_'.$event_odd_even);
                                
                                $this->t->set_var('icon', 
$GLOBALS['phpgw']->common->image('ged', $event['status']."-16"));
-                               $this->t->set_var('version', 
$event['major'].".".$event['minor']);
+                               $this->t->set_var('version', 
$event['major'].".".$event['minor'].".".$event['draft']);
                                $this->t->set_var('action', $event['action']);
                                $this->t->set_var('actor', 
$GLOBALS['phpgw']->common->grab_owner_name($event['account_id']));
                                $this->t->set_var('comment', $event['comment']);
@@ -1159,6 +1160,7 @@
                
$referenceq=addslashes($this->get_var('referenceq',array('GET','POST')));
                $major=addslashes($this->get_var('major',array('GET','POST')));
                $minor=addslashes($this->get_var('minor',array('GET','POST')));
+               $draft=addslashes($this->get_var('draft',array('GET','POST')));
                $description=addslashes($this->get_var('description', 
array('GET', 'POST')));
                $doc_type=addslashes($this->get_var('document_type', 
array('GET', 'POST')));
                $validity_period=$this->get_var('validity_period', array('GET', 
'POST'));
@@ -1180,6 +1182,7 @@
                        $new_file['reference']=$referenceq;
                        $new_file['major']=$major;
                        $new_file['minor']=$minor;
+                       $new_file['draft']=$draft;
                        $new_file['description']=$description;
                        $new_file['doc_type']=$doc_type;
                        $new_file['validity_period']=$validity_period;
@@ -1234,8 +1237,8 @@
                $this->t->set_var('name_value', $name);
                $this->t->set_var('description_value', $description);
                $this->t->set_var('major_reference', 0);
-               $this->t->set_var('minor_reference', 1);
-               
+               $this->t->set_var('minor_reference', 0);
+               $this->t->set_var('draft_reference', 1);
 
                $add_link_data['menuaction']='ged.ged_ui.add_file';
                $this->t->set_var('action_add', 
$GLOBALS['phpgw']->link('/index.php', $add_link_data));
@@ -2017,7 +2020,7 @@
                $this->t->set_var('version_id', $result_query['version_id']);
                $this->t->set_var('name', $result_query['name']);
                $this->t->set_var('reference', $result_query['reference']);
-               $this->t->set_var('version', 
"v".$result_query['major'].".".$result_query['minor']);
+               $this->t->set_var('version', 
"v".$result_query['major'].".".$result_query['minor'].".".$result_query['draft']);
                $this->t->set_var('status', $result_query['status']);
                $this->t->set_var('description', $result_query['description']);
                $this->t->set_var('descriptionv', 
$result_query['descriptionv']);
@@ -2120,7 +2123,7 @@
                        $this->t->set_var('version_id', $element['version_id']);
                        $this->t->set_var('name', $element['name']);
                        $this->t->set_var('reference', $element['reference']);
-                       $this->t->set_var('version', 
"v".$element['major'].".".$element['minor']);
+                       $this->t->set_var('version', 
"v".$element['major'].".".$element['minor'].".".$element['draft']);
                        $this->t->set_var('status', $element['status']);
                        $this->t->set_var('description', 
$element['description']);
                        $this->t->set_var('descriptionv', 
$element['descriptionv']);
@@ -2154,7 +2157,7 @@
                        $this->t->set_var('version_id', $element['version_id']);
                        $this->t->set_var('name', $element['name']);
                        $this->t->set_var('reference', $element['reference']);
-                       $this->t->set_var('version', 
"v".$element['major'].".".$element['minor']);
+                       $this->t->set_var('version', 
"v".$element['major'].".".$element['minor'].".".$element['draft']);
                        $this->t->set_var('status', $element['status']);
                        $this->t->set_var('description', 
$element['description']);
                        $this->t->set_var('descriptionv', 
$element['descriptionv']);
@@ -2188,7 +2191,7 @@
                        $this->t->set_var('version_id', $element['version_id']);
                        $this->t->set_var('name', $element['name']);
                        $this->t->set_var('reference', $element['reference']);
-                       $this->t->set_var('version', 
"v".$element['major'].".".$element['minor']);
+                       $this->t->set_var('version', 
"v".$element['major'].".".$element['minor'].".".$element['draft']);
                        $this->t->set_var('status', $element['status']);
                        $this->t->set_var('description', 
$element['description']);
                        $this->t->set_var('descriptionv', 
$element['descriptionv']);

Modified: modules/ged/trunk/inc/hook_home.inc.php
===================================================================
--- modules/ged/trunk/inc/hook_home.inc.php     2008-11-28 14:28:02 UTC (rev 
19004)
+++ modules/ged/trunk/inc/hook_home.inc.php     2008-11-28 15:56:43 UTC (rev 
19005)
@@ -114,7 +114,7 @@
                                        $template->set_var('tr_class', 
$tr_class);
                                        
                                        $template->set_var('status_image', 
$GLOBALS['phpgw']->common->image('ged', $new_doc['status']."-16"));
-                                       $template->set_var('version', 
$new_doc['major'].".".$new_doc['minor']);
+                                       $template->set_var('version', 
$new_doc['major'].".".$new_doc['minor'].".".$new_doc['draft']);
                                        $template->set_var('doc_name', 
$new_doc['name']);
                                        $template->set_var('doc_reference', 
$new_doc['reference']);
                                        
@@ -142,7 +142,7 @@
                                        $template->set_var('tr_class', 
$tr_class);
                                        
                                        $template->set_var('status_image', 
$GLOBALS['phpgw']->common->image('ged', $working_doc['status']."-16"));
-                                       $template->set_var('version', 
$working_doc['major'].".".$working_doc['minor']);
+                                       $template->set_var('version', 
$working_doc['major'].".".$working_doc['minor'].".".$working_doc['draft']);
                                        $template->set_var('doc_name', 
$working_doc['name']);
                                        $template->set_var('doc_reference', 
$working_doc['reference']);
                                        
@@ -170,7 +170,7 @@
                                        $template->set_var('tr_class', 
$tr_class);
                                        
                                        $template->set_var('status_image', 
$GLOBALS['phpgw']->common->image('ged', $pending_doc['status']."-16"));
-                                       $template->set_var('version', 
$pending_doc['major'].".".$pending_doc['minor']);
+                                       $template->set_var('version', 
$pending_doc['major'].".".$pending_doc['minor'].".".$pending_doc['draft']);
                                        $template->set_var('doc_name', 
$pending_doc['name']);
                                        $template->set_var('doc_reference', 
$pending_doc['reference']);
                                        
@@ -198,7 +198,7 @@
                                        $template->set_var('tr_class', 
$tr_class);
                                        
                                        $template->set_var('status_image', 
$GLOBALS['phpgw']->common->image('ged', $alert_doc['status']."-16"));
-                                       $template->set_var('version', 
$alert_doc['major'].".".$alert_doc['minor']);
+                                       $template->set_var('version', 
$alert_doc['major'].".".$alert_doc['minor'].".".$alert_doc['draft']);
                                        $template->set_var('doc_name', 
$alert_doc['name']);
                                        $template->set_var('doc_reference', 
$alert_doc['reference']);
                                        
@@ -226,7 +226,7 @@
                                        $template->set_var('tr_class', 
$tr_class);
                                        
                                        $template->set_var('status_image', 
$GLOBALS['phpgw']->common->image('ged', $refused_doc['status']."-16"));
-                                       $template->set_var('version', 
$refused_doc['major'].".".$refused_doc['minor']);
+                                       $template->set_var('version', 
$refused_doc['major'].".".$refused_doc['minor'].".".$refused_doc['draft']);
                                        $template->set_var('doc_name', 
$refused_doc['name']);
                                        $template->set_var('doc_reference', 
$refused_doc['reference']);
                                        

Modified: modules/ged/trunk/setup/tables_current.inc.php
===================================================================
--- modules/ged/trunk/setup/tables_current.inc.php      2008-11-28 14:28:02 UTC 
(rev 19004)
+++ modules/ged/trunk/setup/tables_current.inc.php      2008-11-28 15:56:43 UTC 
(rev 19005)
@@ -109,6 +109,7 @@
                                'description' => array('type' => 'varchar', 
'precision' => 255,'nullable' => False),
                                'file_extension' => array('type' => 'varchar', 
'precision' => 100,'nullable' => False),
                                'file_name' => array('type' => 'varchar', 
'precision' => 255,'nullable' => False,'default' => '0'),
+                               'draft' => array('type' => 'int', 'precision' 
=> 4,'nullable' => False,'default' => '0'),
                                'major' => array('type' => 'int', 'precision' 
=> 4,'nullable' => False,'default' => '0'),
                                'stored_name' => array('type' => 'varchar', 
'precision' => 255,'nullable' => False)
                        ),

Modified: modules/ged/trunk/setup/tables_update.inc.php
===================================================================
--- modules/ged/trunk/setup/tables_update.inc.php       2008-11-28 14:28:02 UTC 
(rev 19004)
+++ modules/ged/trunk/setup/tables_update.inc.php       2008-11-28 15:56:43 UTC 
(rev 19005)
@@ -19,7 +19,8 @@
        $test[]='0.9.18.004';
        $test[]='0.9.18.005';
        $test[]='0.9.18.006';
-       $test[]='0.9.18.007';   
+       $test[]='0.9.18.007';
+       $test[]='0.9.18.008';   
                                        
        function ged_upgrade0_9_16_000()
        {
@@ -499,4 +500,15 @@
                
        }       
        
-?>
+       function ged_upgrade0_9_18_008()
+       {
+
+               
$GLOBALS['phpgw_setup']->oProc->AddColumn('ged_versions','draft',
+               array('type'=>'int', 
'precision'=>4,'nullable'=>False,'default'=>'0')
+               
+               
+               
+               );
+                               
+       }       
+       

Modified: modules/ged/trunk/templates/base/add_file.tpl
===================================================================
--- modules/ged/trunk/templates/base/add_file.tpl       2008-11-28 14:28:02 UTC 
(rev 19004)
+++ modules/ged/trunk/templates/base/add_file.tpl       2008-11-28 15:56:43 UTC 
(rev 19005)
@@ -33,7 +33,7 @@
   {lang_version} : 
 </td>
 <td>  
-  <input type="text" default_class="{input_default_class}"  
focused_class="{input_active_class}" name="{major_field}" 
value="{major_reference}" size="2" maxlength="2"/> . <input type="text" 
default_class="{input_default_class}"  focused_class="{input_active_class}" 
name="{minor_field}" value="{minor_reference}" size="2" maxlength="2"/>
+  <input type="text" default_class="{input_default_class}"  
focused_class="{input_active_class}" name="{major_field}" 
value="{major_reference}" size="2" maxlength="2"/> . <input type="text" 
default_class="{input_default_class}"  focused_class="{input_active_class}" 
name="{minor_field}" value="{minor_reference}" size="2" maxlength="2"/> . 
<input type="text" default_class="{input_default_class}"  
focused_class="{input_active_class}" name="{draft_field}" 
value="{draft_reference}" size="2" maxlength="2"/>
 </td>
 </tr>
 <tr>

Modified: modules/ged/trunk/templates/base/update_file.tpl
===================================================================
--- modules/ged/trunk/templates/base/update_file.tpl    2008-11-28 14:28:02 UTC 
(rev 19004)
+++ modules/ged/trunk/templates/base/update_file.tpl    2008-11-28 15:56:43 UTC 
(rev 19005)
@@ -76,7 +76,7 @@
   {lang_version} :
 </td>
 <td>  
-  <input type="text" default_class="{input_default_class}"  
focused_class="{input_active_class}" name="{major_field}" value="{major_value}" 
size="2" maxlength="2"/> . <input type="text" 
default_class="{input_default_class}"  focused_class="{input_active_class}" 
name="{minor_field}" value="{minor_value}" size="2" maxlength="2"/>
+  <input type="text" default_class="{input_default_class}"  
focused_class="{input_active_class}" name="{major_field}" value="{major_value}" 
size="2" maxlength="2"/> . <input type="text" 
default_class="{input_default_class}"  focused_class="{input_active_class}" 
name="{minor_field}" value="{minor_value}" size="2" maxlength="2"/> . <input 
type="text" default_class="{input_default_class}"  
focused_class="{input_active_class}" name="{draft_field}" value="{draft_value}" 
size="2" maxlength="2"/>
 </td>
 </tr>
 <tr>
@@ -121,7 +121,7 @@
   <tr>
   <td><img src="{relations_element_status_image}" />
   </td>
-  <td>{relations_element_name} [{relations_element_reference}] 
v{relations_element_major}.{relations_element_minor}
+  <td>{relations_element_name} [{relations_element_reference}] 
v{relations_element_major}.{relations_element_minor}.{relations_element_draft}
   <input name="{relations_id_field}" type="hidden" 
value="{relations_id_value}"/>
   </td>
   <td>






reply via email to

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