redray
2008-10-25 0ef490b4ce268b51e7b63127fedff7c8a0c39ecc
interface/lib/classes/tform_tpl_generator.inc.php
@@ -35,74 +35,115 @@
      
      global $app;
      
      $html = '<table width="500" border="0" cellspacing="0" cellpadding="2">';
      $module = $_SESSION["s"]["module"]["name"];
      $html = '<h2><tmpl_var name="list_head_txt"></h2>
<div class="panel panel_'.$formDef['name'].'">
  <div class="pnl_formsarea">
    <fieldset id="wf_area_'.$formDef['name'].'"><legend>'.$formDef['tabs'][$tab]['title'].'</legend>';
      $lang = array();
      
      foreach($formDef['tabs'][$tab]['fields'] as $key => $field) {
         switch ($field['formtype']) {
            case 'TEXT':
               $html .= "
  <tr>
    <td width=\"126\" class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
    <td width=\"366\" class=\"frmText11\"><input name=\"".$key."\" type=\"text\" class=\"text\" value=\"{tmpl_var name='".$key."'}\" size=\"".$field['width']."\" maxlength=\"".$field['maxlength']."\"></td>
  </tr>";
               $html .= "\r\n      <span class=\"wf_oneField\">
        <label for=\"".$key."\" class=\"wf_preField\">{tmpl_var name='".$key."_txt'}</label>
        <input type=\"text\" id=\"".$key."\" name=\"".$key."\" value=\"{tmpl_var name='".$key."'}\" size=\"".$field['width']."\" maxlength=\"".$field['maxlength']."\"";
          if ($field['required'] == true ) {
                 $html .= " class=\"wf_required\"><span class=\"wf_reqMark\">*</span><br>";
          } else {
                  $html .= ">";
          }
               $html .= "\r\n      </span>";
            break;
            case 'TEXTAREA':
               $html .= "
  <tr>
    <td width=\"126\" class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
    <td width=\"366\" class=\"frmText11\"><textarea name='$key' cols='".$field['cols']."' rows='".$field['rows']."'>{tmpl_var name='".$key."'}</textarea></td>
  </tr>";
               $html .= "\r\n      <span class=\"wf_oneField\">
        <label for=\"".$key."\" class=\"wf_preField\">{tmpl_var name='".$key."_txt'}</label>
        <textarea id=\"".$key."\" name=\"".$key."\" cols='".$field['cols']."' rows='".$field['rows']."'";
          if ($field['required'] == true ) {
                 $html .= " class=\"wf_required\">";
          } else {
                  $html .= ">";
          }
               $html .= "{tmpl_var name='".$key."'}</textarea>";
          if ($field['required'] == true ) {
                 $html .= "<span class=\"wf_reqMark\">*</span><br>";
          }
               $html .= "\r\n      </span>";
            break;
            case 'SELECT':
            $html .= "
  <tr>
    <td width=\"126\" class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
    <td width=\"366\" class=\"frmText11\">
      <select name=\"".$key."\" class=\"text\">
         {tmpl_var name='".$key."'}
      </select>
   </td>
  </tr>";
               $html .= "\r\n      <span class=\"wf_oneField\">
        <label for=\"".$key."\" class=\"wf_preField\">{tmpl_var name='".$key."_txt'}</label>
        <select id=\"".$key."\" name=\"".$key."\"";
          if ($field['required'] == true ) {
                 $html .= " class=\"wf_required\">";
          } else {
                  $html .= ">";
          }
               $html .= "{tmpl_var name='".$key."'}</select>";
          if ($field['required'] == true ) {
                 $html .= "<span class=\"wf_reqMark\">*</span><br>";
          }
               $html .= "\r\n      </span>";
            break;
            case 'MULTIPLE':
            $html .= "
  <tr>
    <td width=\"126\" class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
    <td width=\"366\" class=\"frmText11\">
      <select name=\"".$key."\" class=\"text\" size=\"".$field['rows']."\" multiple>
         {tmpl_var name='".$key."'}
      </select>
   </td>
  </tr>";
               $html .= "\r\n      <span class=\"wf_oneField\">
        <label for=\"".$key."\" class=\"wf_preField\">{tmpl_var name='".$key."_txt'}</label>
        <select multiple id=\"".$key."\" name=\"".$key."\"";
          if ($field['required'] == true ) {
                 $html .= " class=\"wf_required\">";
          } else {
                  $html .= ">";
          }
               $html .= "{tmpl_var name='".$key."'}</select>";
          if ($field['required'] == true ) {
                 $html .= "<span class=\"wf_reqMark\">*</span><br>";
          }
               $html .= "\r\n      </span>";
            break;
            case 'PASSWORD':
            $html .= "
  <tr>
    <td width=\"126\" class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
    <td width=\"366\" class=\"frmText11\"><input name=\"".$key."\" type=\"password\" class=\"text\" value=\"{tmpl_var name='".$key."'}\" size=\"".$field['width']."\" maxlength=\"".$field['maxlength']."\"></td>
  </tr>";
               $html .= "\r\n      <span class=\"wf_oneField\">
        <label for=\"".$key."\" class=\"wf_preField\">{tmpl_var name='".$key."_txt'}</label>
        <input type=\"password\" id=\"".$key."\" name=\"".$key."\" value=\"{tmpl_var name='".$key."'}\" size=\"".$field['width']."\" maxlength=\"".$field['maxlength']."\"";
          if ($field['required'] == true ) {
                 $html .= " class=\"wf_required\"><span class=\"wf_reqMark\">*</span><br>";
          } else {
                  $html .= ">";
          }
               $html .= "\r\n      </span>";
            break;
            case 'CHECKBOX':
            $html .= "
  <tr>
    <td width=\"126\" class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
    <td width=\"366\" class=\"frmText11\">{tmpl_var name='".$key."'}</td>
  </tr>";
               $html .= "\r\n      <span class=\"wf_oneField\">
        <label for=\"".$key."\" class=\"wf_preField\">{tmpl_var name='".$key."_txt'}</label>";
          if ($field['required'] == true ) {
                 $html .= "                    <span class=\"wf_required\">
                      {tmpl_var name='".$key."'}
                    </span>
                    <span class=\"wf_reqMark\">*</span><br>";
          } else {
                 $html .= "                    <span class=\"\">
                      {tmpl_var name='".$key."'}
                    </span>";
          }
          $html .= "\r\n      </span>";
            break;
            case 'CHECKBOXARRAY':
            $html .= "
  <tr>
    <td width=\"126\" class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
    <td width=\"366\" class=\"frmText11\">{tmpl_var name='".$key."'}</td>
  </tr>";
               $html .= "\r\n      <span class=\"wf_oneField\">
        <span class=\"wf_label wf_preField\">{tmpl_var name='".$key."_txt'}</span>";
                 $html .= "                    <fieldset>
                      {tmpl_var name='".$key."'}
                    </fieldset>";
            $html .= "\r\n      </span>";
            break;
            case 'RADIO':
            $html .= "
  <tr>
    <td width=\"126\" class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
    <td width=\"366\" class=\"frmText11\">{tmpl_var name='".$key."'}</td>
  </tr>";
               $html .= "      <span class=\"wf_oneField\">
        <span class=\"wf_label wf_preField\">{tmpl_var name='".$key."_txt'}</span>";
                 $html .= "                    <fieldset>
                      {tmpl_var name='".$key."'}
                    </fieldset>";
            $html .= "\r\n      </span>";
            break;
         }
         
@@ -110,30 +151,30 @@
         $lang[$key."_txt"] = $key;
         
         // language File Eintrag, für error-Text anlegen
         if($field["errmsg"] != '') {
         if(isset($field["errmsg"]) && $field["errmsg"] != '') {
            $errmsg = $field["errmsg"];
            $lang[$errmsg] = $errmsg;
         }
         
      }
      
      $html .= "  <tr>
    <td class=\"frmText11\">&nbsp;</td>
    <td class=\"frmText11\">&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><input name=\"btn_save\" type=\"submit\" class=\"button\" value=\"{tmpl_var name='btn_save_txt'}\">
      <input name=\"btn_cancel\" type=\"button\" class=\"button\" value=\"{tmpl_var name='btn_cancel_txt'}\" onClick=\"self.location.href='".$formDef["list_default"]."';\">
    </td>
  </tr>";
      $html .= "
    </fieldset>
    <input type=\"hidden\" name=\"id\" value=\"{tmpl_var name='id'}\">
    <div class=\"wf_actions buttons\">
      <button class=\"positive iconstxt icoPositive\" type=\"button\" value=\"{tmpl_var name='btn_save_txt'}\" onClick=\"submitForm('pageForm','".$module."/".$formDef["action"]."');\"><span>{tmpl_var name='btn_save_txt'}</span></button>
      <button class=\"negative iconstxt icoNegative\" type=\"button\" value=\"{tmpl_var name='btn_cancel_txt'}\" onClick=\"loadContent('".$module."/".$formDef["list_default"]."');\"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
    </div>
  </div>
</div>
";
      $lang['btn_save_txt'] = "Save";
      $lang['btn_cancel_txt'] = "Cancel";
      $html .= "\r\n</table>\r\n<input type=\"hidden\" name=\"id\" value=\"{tmpl_var name='id'}\">";
      // speichere Template
      if (!$handle = fopen($formDef['tabs'][$tab]['template'], 'w')) { 
           print "Cannot open file ($filename)"; 
@@ -163,7 +204,7 @@
                     'name'         => $formDef["db_table_idx"],
                     'type'         => 'int64',
                     'typeValue'      => '',
                     'defaultValue'   => '',
                     'defaultValue'   => false,
                     'notNull'      => true,
                     'autoInc'      => true,
                     'option'      => 'primary'
@@ -178,7 +219,7 @@
                        'name'         => 'sys_userid',
                        'type'         => 'int32',
                        'typeValue'      => '',
                        'defaultValue'   => '',
                        'defaultValue'   => '0',
                        'notNull'      => true
                     );
            $columns[] = $col;
@@ -186,7 +227,7 @@
                        'name'         => 'sys_groupid',
                        'type'         => 'int32',
                        'typeValue'      => '',
                        'defaultValue'   => '',
                        'defaultValue'   => '0',
                        'notNull'      => true
                     );
            $columns[] = $col;
@@ -194,7 +235,7 @@
                        'name'         => 'sys_perm_user',
                        'type'         => 'varchar',
                        'typeValue'      => '5',
                        'defaultValue'   => '',
                        'defaultValue'   => 'NULL',
                        'notNull'      => true
                     );
            $columns[] = $col;
@@ -202,7 +243,7 @@
                        'name'         => 'sys_perm_group',
                        'type'         => 'varchar',
                        'typeValue'      => '5',
                        'defaultValue'   => '',
                        'defaultValue'   => 'NULL',
                        'notNull'      => true
                     );
            $columns[] = $col;
@@ -210,7 +251,7 @@
                        'name'         => 'sys_perm_other',
                        'type'         => 'varchar',
                        'typeValue'      => '5',
                        'defaultValue'   => '',
                        'defaultValue'   => 'NULL',
                        'notNull'      => true
                     );
            $columns[] = $col;
@@ -237,26 +278,33 @@
                  case 'INTEGER':
                     $type = 'int32';
                     $typevalue = '';
                     $defaultValue   = ($field["default"] != '')?$field["default"]:'0';
                  break;
                  case 'DOUBLE':
                     $type = 'double';
                     $typevalue = '';
                     $defaultValue   = ($field["default"] != '')?$field["default"]:'0';
                  break;
                  case 'CURRENCY':
                     $type = 'double';
                     $typevalue = '';
                     $defaultValue   = ($field["default"] != '')?$field["default"]:'0';
                  break;
                  case 'VARCHAR':
                     $type = 'varchar';
                     $typeValue = ($field["maxlength"] > 0 and $field["maxlength"] <= 256)?$field["maxlength"]:255;
                     // $defaultValue   = ($field["default"] != '')?$field["default"]:'NOT NULL';
                     $defaultValue   = ($field["default"] != '')?$field["default"]:'NULL';
                  break;
                  case 'TEXT':
                     $type = 'text';
                     $typevalue = '';
                     $defaultValue = 'NULL';
                  break;
                  case 'DATE':
                     $type = 'int64';
                     $typevalue = '';
                     $defaultValue   = ($field["default"] != '')?$field["default"]:'0';
                  break;
               }
               
@@ -265,7 +313,7 @@
                           'name'         => $name,
                           'type'         => $type,
                           'typeValue'      => $typeValue,
                           'defaultValue'   => $field["default"],
                           'defaultValue'   => $defaultValue,
                           'notNull'      => true
                           );
               
@@ -279,16 +327,16 @@
    }
   
   function lng_add($lang,$formDef) {
      global $go_api, $go_info;
      global $go_api, $go_info,$conf;
      
      $lng_file = "lib/lang/en_".$formDef['name'].".lng";
      $lng_file = "lib/lang/".$conf["language"]."_".$formDef['name'].".lng";
      if(is_file($lng_file)) {
         include($lng_file);
      } else {
         $wb = array();
      }
      
      $wb_out = array_merge($wb,$lang);
      $wb_out = array_merge($lang,$wb);
      
      if(is_array($wb_out)) {
         $fp = fopen ($lng_file, "w");