Reduce size of form.class

This commit is contained in:
Laurent Destailleur 2012-02-20 12:31:01 +01:00
parent 1bfca1d9b3
commit 8c0ad673e8
3 changed files with 573 additions and 526 deletions

View File

@ -28,6 +28,7 @@ require("./pre.inc.php");
require_once(DOL_DOCUMENT_ROOT."/core/lib/bank.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/bank.lib.php");
require_once(DOL_DOCUMENT_ROOT."/core/lib/company.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/company.lib.php");
require_once(DOL_DOCUMENT_ROOT."/core/class/html.formcompany.class.php"); require_once(DOL_DOCUMENT_ROOT."/core/class/html.formcompany.class.php");
require_once(DOL_DOCUMENT_ROOT."/core/class/html.formbank.class.php");
$langs->load("banks"); $langs->load("banks");
$langs->load("companies"); $langs->load("companies");
@ -187,18 +188,16 @@ if ($_POST["action"] == 'confirm_delete' && $_POST["confirm"] == "yes" && $user-
* View * View
*/ */
$form = new Form($db);
$formbank = new FormBank($db);
$formcompany = new FormCompany($db);
$countrynotdefined=$langs->trans("ErrorSetACountryFirst").' ('.$langs->trans("SeeAbove").')'; $countrynotdefined=$langs->trans("ErrorSetACountryFirst").' ('.$langs->trans("SeeAbove").')';
llxHeader(); llxHeader();
$form = new Form($db);
$formcompany = new FormCompany($db);
/* ************************************************************************** */ // Creation
/* */
/* Affichage page en mode creation */
/* */
/* ************************************************************************** */
if ($action == 'create') if ($action == 'create')
{ {
@ -238,7 +237,7 @@ if ($action == 'create')
// Type // Type
print '<tr><td valign="top" class="fieldrequired">'.$langs->trans("AccountType").'</td>'; print '<tr><td valign="top" class="fieldrequired">'.$langs->trans("AccountType").'</td>';
print '<td colspan="3">'; print '<td colspan="3">';
print $form->select_type_comptes_financiers(isset($_POST["type"])?$_POST["type"]:1,"type"); print $formbank->select_type_comptes_financiers(isset($_POST["type"])?$_POST["type"]:1,"type");
print '</td></tr>'; print '</td></tr>';
// Currency // Currency

View File

@ -371,7 +371,8 @@ class Form
if (empty($conf->use_javascript_ajax)) if (empty($conf->use_javascript_ajax))
{ {
if ($type == 'info' || $type == 'help') return $text; if ($type == 'info' || $type == 'help') return $text;
else { $alt=$htmltext; $htmltext=''; } else { $alt=$htmltext; $htmltext='';
}
} }
// If info or help with smartphone, show only text // If info or help with smartphone, show only text
if (! empty($conf->browser->phone)) if (! empty($conf->browser->phone))
@ -475,42 +476,6 @@ class Form
return $out; return $out;
} }
/**
* Retourne la liste des types de comptes financiers
*
* @param string $selected Type pre-selectionne
* @param string $htmlname Nom champ formulaire
* @return void
*/
function select_type_comptes_financiers($selected=1,$htmlname='type')
{
global $langs;
$langs->load("banks");
$type_available=array(0,1,2);
print '<select class="flat" name="'.$htmlname.'">';
$num = count($type_available);
$i = 0;
if ($num)
{
while ($i < $num)
{
if ($selected == $type_available[$i])
{
print '<option value="'.$type_available[$i].'" selected="selected">'.$langs->trans("BankType".$type_available[$i]).'</option>';
}
else
{
print '<option value="'.$type_available[$i].'">'.$langs->trans("BankType".$type_available[$i]).'</option>';
}
$i++;
}
}
print '</select>';
}
/** /**
* Return list of types of lines (product or service) * Return list of types of lines (product or service)
* Example: 0=product, 1=service, 9=other (for external module) * Example: 0=product, 1=service, 9=other (for external module)
@ -2384,10 +2349,10 @@ class Form
/** /**
* Show a form to select a delivery delay * Show a form to select a delivery delay
* *
* @param page Page * @param int $page Page
* @param selected Id condition pre-selectionne * @param string $selected Id condition pre-selectionne
* @param htmlname Name of select html field * @param string $htmlname Name of select html field
* @param addempty Ajoute entree vide * @param int $addempty Ajoute entree vide
* @return void * @return void
*/ */
function form_availability($page, $selected='', $htmlname='availability', $addempty=0) function form_availability($page, $selected='', $htmlname='availability', $addempty=0)
@ -2683,7 +2648,7 @@ class Form
} }
} }
/** /**
* Affiche formulaire de selection des tiers * Affiche formulaire de selection des tiers
* *
* @param page Page * @param page Page
@ -3341,7 +3306,9 @@ class Form
{ {
$newval=($translate?$langs->trans($value):$value); $newval=($translate?$langs->trans($value):$value);
$selectOptionValue = dol_htmlentitiesbr($maxlen?dol_trunc($newval,$maxlen):$newval); $selectOptionValue = dol_htmlentitiesbr($maxlen?dol_trunc($newval,$maxlen):$newval);
if ($value == '' || $value == '-') { $selectOptionValue='&nbsp;'; } if ($value == '' || $value == '-') {
$selectOptionValue='&nbsp;';
}
$out.=$selectOptionValue; $out.=$selectOptionValue;
} }
$out.="</option>\n"; $out.="</option>\n";

View File

@ -0,0 +1,81 @@
<?php
/* Copyright (C) 2012 Laurent Destailleur <eldy@users.sourceforge.net>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/**
* \file htdocs/core/class/html.formbank.class.php
* \ingroup core
* \brief File of class with all html predefined components
*/
/**
* Class to manage generation of HTML components for bank module
*/
class FormBank
{
var $db;
var $error;
/**
* Constructor
*
* @param DoliDB $db Database handler
*/
public function __construct($db)
{
$this->db = $db;
}
/**
* Retourne la liste des types de comptes financiers
*
* @param string $selected Type pre-selectionne
* @param string $htmlname Nom champ formulaire
* @return void
*/
function select_type_comptes_financiers($selected=1,$htmlname='type')
{
global $langs;
$langs->load("banks");
$type_available=array(0,1,2);
print '<select class="flat" name="'.$htmlname.'">';
$num = count($type_available);
$i = 0;
if ($num)
{
while ($i < $num)
{
if ($selected == $type_available[$i])
{
print '<option value="'.$type_available[$i].'" selected="selected">'.$langs->trans("BankType".$type_available[$i]).'</option>';
}
else
{
print '<option value="'.$type_available[$i].'">'.$langs->trans("BankType".$type_available[$i]).'</option>';
}
$i++;
}
}
print '</select>';
}
}
?>