Code

Added kolab folder type to trunk.
authorhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Mon, 24 Sep 2007 11:19:28 +0000 (11:19 +0000)
committerhickert <hickert@594d385d-05f5-0310-b6e9-bd551577e9d8>
Mon, 24 Sep 2007 11:19:28 +0000 (11:19 +0000)
It wasn't implemented in trunk currently.

git-svn-id: https://oss.gonicus.de/repositories/gosa/trunk@7390 594d385d-05f5-0310-b6e9-bd551577e9d8

plugins/admin/groups/class_groupMail.inc
plugins/admin/groups/mail.tpl

index f62805de9272d145f0842232c9fc1890dbe587aa..46a521a8aa2a6a0e5b3ab7d23ce4c5fc31bfc5f2 100644 (file)
@@ -28,6 +28,8 @@ class mailgroup extends plugin
       '%members%' => 'lrswp',  // %members% are all group-members
       ''          => 'p');    // Every user added gets this right
 
+  var $kolabFolderType_SubType = "";
+  var $kolabFolderType_Type = "";
 
   var $gosaSpamSortLevel          = "";     
   var $gosaSpamMailbox            = "";
@@ -93,6 +95,14 @@ class mailgroup extends plugin
       $this->uid= $this->attrs['cn'][0];
     }
 
+    /* Get folder type */
+    if(isset($this->config->current['MAILMETHOD'])&&preg_match("/olab/i",$this->config->current['MAILMETHOD'])){
+      if(isset($this->attrs['kolabFolderType'])){
+        $tmp = split("\.",$this->attrs['kolabFolderType'][0]);
+        $this->kolabFolderType_Type = $tmp[0];
+        $this->kolabFolderType_SubType = $tmp[1];
+      }
+    }
 
     /* If this ins't new mailgroup, read all required data from ldap
      */
@@ -643,6 +653,29 @@ class mailgroup extends plugin
       $smarty->assign("quotadefined", "false");
     }
 
+    if(isset($this->config->current['MAILMETHOD'])&&preg_match("/olab/i",$this->config->current['MAILMETHOD'])){
+
+      $smarty->assign("kolab", TRUE);
+      $smarty->assign("JS",$_SESSION['js']);
+      $smarty->assign("kolabFolderType_Types",    array (   ''      => _('Unspecified'),  'mail' => _('Mails'),
+                                                            'task'  => _('Tasks') ,       'journal' => _('Journals'),
+                                                            'calendar' => _('Calendar'),       'contact' => _('Contacts'), 
+                                                            'note'  => _('Notes')));
+      if($this->kolabFolderType_Type == "mail"){
+        $smarty->assign("kolabFolderType_SubTypes", array(    
+              ''          => _('Unspecified'),  'inbox'     => _("Inbox")   , 
+              'drafts'    => _("Drafts"),       'sentitems' => _("Sent items"),
+              'junkemail' => _("Junk mail")));
+      }else{
+        $smarty->assign("kolabFolderType_SubTypes", array(  'default' => _("Default")));
+      }
+      $smarty->assign("kolabFolderType_Type",     $this->kolabFolderType_Type);
+      $smarty->assign("kolabFolderType_SubType",  $this->kolabFolderType_SubType);
+    }else{
+      $smarty->assign("kolab", FALSE);
+    }
+
+
     $display.= $smarty->fetch (get_template_path('mail.tpl', TRUE));
     return ($display);
   }
@@ -704,6 +737,14 @@ class mailgroup extends plugin
   function save_object()
   {
 
+    /* Add special kolab attributes */    
+    if(isset($this->config->current['MAILMETHOD'])&&preg_match("/olab/i",$this->config->current['MAILMETHOD'])){
+      if(isset($_POST['kolabFolderType_Type'])){
+        $this->kolabFolderType_Type = get_post("kolabFolderType_Type");
+        $this->kolabFolderType_SubType = get_post("kolabFolderType_SubType");
+      }
+    }
+  
     /* Check if user wants to remove the shared folder from imap too */
     if($this->initially_was_account && !$this->is_account){
       if(isset($_POST['remove_folder_from_imap'])){
@@ -816,6 +857,12 @@ I: Only insider delivery */
           $this->attrs['acl'][]= "$user $acl";
         }
       }
+   
+      if(!empty($this->kolabFolderType_Type)){ 
+        $this->attrs['kolabFolderType'] = $this->kolabFolderType_Type.".".$this->kolabFolderType_SubType;
+      }else{
+        $this->attrs['kolabFolderType'] = array();
+      }
     }else{
       /* Save acl's */
       $this->attrs['acl']= array();
index b162fc345a013fe97d85a48c680446a8f708347b..e7eb7083a107238d09331080f58f3744cacdb2ff 100644 (file)
  {t}MB{/t}
 </td>
     </tr>
+       {if $kolab}
+       <tr>
+               <td>
+                       {t}Folder type{/t}
+               </td>
+               <td>
+                       <select name="kolabFolderType_Type" onChange="document.mainform.submit();">
+                               {html_options options=$kolabFolderType_Types selected=$kolabFolderType_Type}
+                       </select>
+                       <select name="kolabFolderType_SubType" onChange="document.mainform.submit();">
+                               {html_options options=$kolabFolderType_SubTypes selected=$kolabFolderType_SubType}
+                       </select>
+                       {if !$JS}
+                               <input type='image' src='images/list_reload.png' class='center' alt='{t}Reload{/t}'>
+                       {/if}
+               </td>
+       </tr>
+       {/if}
    </table>
      
   </td>