Code

Partially revert commit 12758, because ACL evaluation does not work properly when...
authorpsc <psc@594d385d-05f5-0310-b6e9-bd551577e9d8>
Fri, 20 Mar 2009 15:25:45 +0000 (15:25 +0000)
committerpsc <psc@594d385d-05f5-0310-b6e9-bd551577e9d8>
Fri, 20 Mar 2009 15:25:45 +0000 (15:25 +0000)
git-svn-id: https://oss.gonicus.de/repositories/gosa/branches/2.6-lhm@13556 594d385d-05f5-0310-b6e9-bd551577e9d8

trunk/gosa-plugins/goto/admin/systems/ppd/class_printerPPDDialog.inc
trunk/gosa-plugins/goto/admin/systems/ppd/printerPPDDialog.tpl

index 149dc8608b377ece7d070b905b882666bf0ed878..85e23f1e4625c3e0ce3acc9c756a8540740cef2a 100644 (file)
@@ -20,7 +20,6 @@ class printerPPDDialog extends plugin
       
   /* Object Info */
   var $cn                   = "" ;          // Used to tag the ppds modified by the printer object, 
-  var $ui;
 
   /* If there is already a ppd file for the same type of printer, 
    *  remember the path to ppd file and display a dialog which allows 
@@ -34,8 +33,6 @@ class printerPPDDialog extends plugin
     plugin::plugin ($config, $dn);
     $this->depselect = $this->config->current['BASE'];
 
-    $this->ui = get_userinfo();
-
     /* Get PPD path and remove double //, and add trailing /  */
     $config = session::get('config');
     if($config->get_cfg_value("ppdPath") != ""){
@@ -96,9 +93,6 @@ class printerPPDDialog extends plugin
     $smarty->assign("ppdString", _("Can't get ppd informations."));
     $smarty->assign("showOptions", "");
     $smarty->assign("path_valid", TRUE);
-    $smarty->assign("acl",$this->ui->get_permissions($this->dn,"printer/printgeneric","gotoPrinterPPD"));
-
-    $acl = $this->ui->get_permissions($this->dn,"printer/printgeneric","gotoPrinterPPD");
 
     if(empty($this->pathToPPD)){
 
@@ -113,12 +107,11 @@ class printerPPDDialog extends plugin
 
     /* If one of our required paths is not available, stop here and display some info */
     foreach($paths as $path){
-
+    
       /* Check if path is write/readable*/
       $is_r = @is_readable($path);  
       if(((!is_dir($path))||(empty($path)) || (!$is_r)) && (!@mkdir($path))){
-        msg_dialog::display(_("Configuration error"), 
-            sprintf(_("Cannot open PPD path '%s' for reading and writing!"), $path), ERROR_DIALOG);
+        msg_dialog::display(_("Configuration error"), sprintf(_("Cannot open PPD path '%s' for reading and writing!"), $path), ERROR_DIALOG);
 
         /* Print out template */
         $display.= $smarty->fetch(get_template_path('printerPPDDialog.tpl', TRUE,dirname(__FILE__)));
@@ -129,16 +122,14 @@ class printerPPDDialog extends plugin
     // PPD selection / upload / dialog handling 
 
     /* Is there a new PPD file uploaded ? */
-    if(preg_match("/w/",$acl)){
-      if((isset($_FILES['NewPPDFile']))&&(isset($_POST['SubmitNewPPDFile']))){
-        $file = ($_FILES['NewPPDFile']);
-        if($file['size'] != 0 ){
-          if($name = $this->AddPPD($file['tmp_name'])){
-            $this->SelectPPD($name); 
-          }
-        }else{
-          msg_dialog::display(_("PPD error"), msgPool::incorrectUpload(_("file is empty")), ERROR_DIALOG);
+    if((isset($_FILES['NewPPDFile']))&&(isset($_POST['SubmitNewPPDFile']))){
+      $file = ($_FILES['NewPPDFile']);
+      if($file['size'] != 0 ){
+        if($name = $this->AddPPD($file['tmp_name'])){
+          $this->SelectPPD($name); 
         }
+      }else{
+        msg_dialog::display(_("PPD error"), msgPool::incorrectUpload(_("file is empty")), ERROR_DIALOG);
       }
     }
 
@@ -152,10 +143,8 @@ class printerPPDDialog extends plugin
     } 
 
     /* Open a dialog that allow us to select different PPDs */
-    if(preg_match("/w/",$acl)){
-      if(isset($_POST['SelectPPD'])){
-        $this->dialog= new printerPPDSelectionDialog($this->config,$this->dn,$this->ppdList,$this->ppdListHeader,$this->selectedPPD);
-      }
+    if(isset($_POST['SelectPPD'])){
+      $this->dialog= new printerPPDSelectionDialog($this->config,$this->dn,$this->ppdList,$this->ppdListHeader,$this->selectedPPD);
     }
 
     /* The selection dialog fpr PPDs is canceled */
@@ -389,12 +378,10 @@ class printerPPDDialog extends plugin
       return;
     }
 
-    if(preg_match("/w/",$this->ui->get_permissions($this->dn,"printer/printgeneric","gotoPrinterPPD"))){
-      foreach($this->ppdConfig as $cat => $obj){
-        foreach($obj as $attr => $attributes){
-          if(isset($_POST[base64_encode($attributes['_name'])])){
-            $this->ppdConfig[$cat][$attr]['_default'] = $_POST[base64_encode($attributes['_name'])];
-          }
+    foreach($this->ppdConfig as $cat => $obj){
+      foreach($obj as $attr => $attributes){
+        if(isset($_POST[base64_encode($attributes['_name'])])){
+          $this->ppdConfig[$cat][$attr]['_default'] = $_POST[base64_encode($attributes['_name'])];
         }
       }
     }
@@ -492,11 +479,6 @@ class printerPPDDialog extends plugin
             }
           }
 
-          $acl ="";
-          if(!preg_match("/w/",$this->ui->get_permissions($this->dn,"printer/printgeneric","gotoPrinterPPD"))){
-            $acl = "disabled";
-          }
-
           /* preparing Html output
            * Supported types are PickOne/Boolean
            */
@@ -504,7 +486,7 @@ class printerPPDDialog extends plugin
           /* If type is PickOne, create a select box */
           if(($type == "PickOne")||(($type=="Boolean")&&(count($values)>1))){
 
-            $str  .=  "<select name='".base64_encode($name)."' $acl >\n";
+            $str  .=  "<select name='".base64_encode($name)."'>\n";
             foreach($values as $optionKey => $value){
               $selected = "";
               if($optionKey == $default){
@@ -517,7 +499,7 @@ class printerPPDDialog extends plugin
           }elseif($type == "Boolean"){
 
             /* If type is Boolean & no values are given */
-            $str  .=  "<select name='".base64_encode($name)."' $acl>\n";
+            $str  .=  "<select name='".base64_encode($name)."'>\n";
             if($default == "False"){
               $str  .=    "<option value='True' >"._("True")."</option>\n";
               $str  .=    "<option value='False' selected>"._("False")."</option>\n";
index e1845673d05cb2f6f60883b91c4d2238d34712aa..8cafc3b26323dc540a825f1da90a2d6b2b0c028d 100644 (file)
@@ -8,18 +8,12 @@
                <tr>
                        <td width="50%" style="vertical-align:top">
                                {t}Model{/t}: <i>{$ppdString}</i>&nbsp;
-                               {render acl=$acl}
                                <input type="submit" name="SelectPPD" value="{t}Select{/t}">
-                               {/render}
                        </td>
                        <td style="border-left: 1px solid rgb(160, 160, 160);padding-left:10px;">
                                {t}New driver{/t}&nbsp;
-                               {render acl=$acl}
                                <input type="file" value="" name="NewPPDFile">
-                               {/render}
-                               {render acl=$acl}
                                <input type="submit" name="SubmitNewPPDFile" value="{t}Upload{/t}">
-                               {/render}
                        </td>
                </tr>
        </table>
@@ -32,9 +26,7 @@
 <p class="plugbottom">
        <input type="hidden" name="PPDDisSubmitted" value="1">
        {if $path_valid}
-       {render acl=$acl}
        <input type="submit" name="SavePPD" value="{msgPool type=applyButton}">
-       {/render}
        {/if}
        <input type="submit" name="ClosePPD" value="{msgPool type=cancelButton}">
 </p>