Fix: uniformize code

This commit is contained in:
Regis Houssin 2012-07-23 11:01:36 +02:00
parent f07c416f76
commit bf807c27e5
8 changed files with 105 additions and 129 deletions

View File

@ -1,3 +0,0 @@
div.mainmenu.commissions {
background : url('../img/commissions.png') no-repeat 20px 0;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 651 B

View File

@ -1,5 +1,5 @@
<?php
/* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
/* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
*
* 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
@ -16,28 +16,27 @@
*/
/**
* \file htdocs/custom/commissions/index.php
* \file htdocs/commissions/index.php
* \ingroup commissions
* \brief Page des commissions par agent commercial
* \version $Id: facture.php,v 1.84 2011/08/08 16:07:47 eldy Exp $
*/
require("../main.inc.php");
require_once(DOL_DOCUMENT_ROOT."/core/lib/company.lib.php");
require_once(DOL_DOCUMENT_ROOT."/compta/facture/class/facture.class.php");
require_once(DOL_DOCUMENT_ROOT."/product/class/product.class.php");
if ($conf->marges->enabled)
require_once(DOL_DOCUMENT_ROOT."/marges/lib/marges.lib.php");
require_once(DOL_DOCUMENT_ROOT."/product/class/product.class.php");
if (! empty($conf->margin->enabled))
require_once(DOL_DOCUMENT_ROOT."/margin/lib/margins.lib.php");
$langs->load("companies");
$langs->load("bills");
$langs->load("products");
if ($conf->marges->enabled)
$langs->load("marges");
$langs->load("commissions");
if (! empty($conf->margin->enabled))
$langs->load("margins");
// Security check
$agentid = isset($_REQUEST["agentid"])?$_REQUEST["agentid"]:'';
$agentid = GETPOST('agentid','int');
$mesg = '';
@ -57,7 +56,7 @@ if (!empty($_POST['enddatemonth']))
/*
* View
*/
$userstatic = new User($db);
$companystatic = new Societe($db);
$invoicestatic=new Facture($db);
@ -65,10 +64,10 @@ $invoicestatic=new Facture($db);
$form = new Form($db);
llxHeader('',$langs->trans("Commissions"));
$text=$langs->trans("Commissions");
print_fiche_titre($text);
print '<form method="post" name="sel">';
print '<table class="border" width="100%">';
@ -78,7 +77,7 @@ if ($agentid > 0) {
print '<td colspan="4">';
print $form->select_dolusers($selected=$agentid,$htmlname='agentid',$show_empty=1,$exclude='',$disabled=0,$include='',$enableonly='');
print '</td></tr>';
if (! $sortorder) $sortorder="ASC";
if (! $sortfield) $sortfield="s.nom";
}
@ -91,7 +90,7 @@ else {
if (! $sortfield) $sortfield="u.login";
}
// Date début
// Date d<EFBFBD>but
print '<td>'.$langs->trans('StartDate').'</td>';
print '<td width="20%">';
$form->select_date($startdate,'startdate','','',1,"sel",1,1);
@ -181,25 +180,25 @@ if ($result)
print '<br>';
print_barre_liste($langs->trans("CommissionDetails"),$page,$_SERVER["PHP_SELF"],"&amp;socid=$societe->id",$sortfield,$sortorder,'',$num,0,'');
$i = 0;
print "<table class=\"noborder\" width=\"100%\">";
print '<tr class="liste_titre">';
if ($agentid > 0)
if ($agentid > 0)
print_liste_field_titre($langs->trans("Customer"),$_SERVER["PHP_SELF"],"s.nom","","&amp;agentid=".$_REQUEST["agentid"],'align="center"',$sortfield,$sortorder);
else
print_liste_field_titre($langs->trans("CommercialAgent"),$_SERVER["PHP_SELF"],"u.login","","&amp;agentid=".$_REQUEST["agentid"],'align="center"',$sortfield,$sortorder);
// product commission
if ($conf->global->COMMISSION_BASE == "MARGES")
print_liste_field_titre($langs->trans("ProductMargin"),$_SERVER["PHP_SELF"],"productBase","","&amp;agentid=".$_REQUEST["agentid"],'align="right"',$sortfield,$sortorder);
elseif ($conf->global->COMMISSION_BASE == "CA")
print_liste_field_titre($langs->trans("ProductCA"),$_SERVER["PHP_SELF"],"productBase","","&amp;agentid=".$_REQUEST["agentid"],'align="right"',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("CommissionRate"),$_SERVER["PHP_SELF"],"","","&amp;agentid=".$_REQUEST["agentid"],'align="right"',$sortfield,$sortorder);
print_liste_field_titre($langs->trans("ProductCommission"),$_SERVER["PHP_SELF"],"","","&amp;agentid=".$_REQUEST["agentid"],'align="right"',$sortfield,$sortorder);
// service commission
if ($conf->global->COMMISSION_BASE == "MARGES")
print_liste_field_titre($langs->trans("ServiceMargin"),$_SERVER["PHP_SELF"],"serviceBase","","&amp;agentid=".$_REQUEST["agentid"],'align="right"',$sortfield,$sortorder);
@ -210,7 +209,7 @@ if ($result)
print_liste_field_titre($langs->trans("ServiceCommission"),$_SERVER["PHP_SELF"],"","","&amp;agentid=".$_REQUEST["agentid"],'align="right"',$sortfield,$sortorder);
// total commission
print_liste_field_titre($langs->trans("TotalCommission"),$_SERVER["PHP_SELF"],"","","&amp;agentid=".$_REQUEST["agentid"],'align="right"',$sortfield,$sortorder);
print "</tr>\n";
$cumul_base_produit = 0;
@ -222,7 +221,7 @@ if ($result)
$var=True;
while ($i < $num && $i < $conf->liste_limit)
{
$objp = $db->fetch_object($result);
$objp = $db->fetch_object($result);
$var=!$var;
@ -288,25 +287,23 @@ else
}
$db->free($result);
llxFooter();
$db->close();
llxFooter('$Date: 2011/08/08 16:07:47 $ - $Revision: 1.84 $');
?>
<script type="text/javascript">
$(document).ready(function() {
$("#agentid").change(function() {
$("#agentid").change(function() {
$("div.fiche form").submit();
});
$("#selIncluded").change(function() {
$("#selIncluded").change(function() {
$("div.fiche form").submit();
});
$("#totalBase").html("<?php echo price($cumul_base_produit + $cumul_base_service); ?>");
$("#totalCommission").html("<?php echo price($cumul_commission_produit + $cumul_commission_service); ?>");
});
</script>

View File

@ -1,5 +1,5 @@
<?php
/* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
/* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
*
* 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
@ -12,16 +12,13 @@
* 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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
* or see http://www.gnu.org/
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/**
* \file /marges/lib/commissions.lib.php
* \ingroup marges
* \file /htdocs/commissions/lib/commissions.lib.php
* \ingroup commissions
* \brief Library for common commissions functions
* \version $Id:$
*/
/**
@ -31,20 +28,20 @@
function commissions_admin_prepare_head()
{
global $langs, $conf;
$h = 0;
$head = array();
$head[$h][0] = dol_buildpath("/commissions/admin/commissions.php",1);
$head[$h][0] = DOL_URL_ROOT.'/commissions/admin/commissions.php';
$head[$h][1] = $langs->trans("Parameters");
$head[$h][2] = 'parameters';
$h++;
// Show more tabs from modules
// Entries must be declared in modules descriptor with line
// $this->tabs = array('entity:+tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to add new tab
// $this->tabs = array('entity:-tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to remove a tab
complete_head_from_modules($conf,$langs,$object,$head,$h,'margesadmin');
complete_head_from_modules($conf,$langs,$object,$head,$h,'commissionsadmin');
return $head;
}

View File

@ -78,10 +78,10 @@ abstract class CommonDocGenerator
{
$mysoc->country=$outputlangs->transnoentitiesnoconv("Country".$mysoc->country_code);
}
if (empty($mysoc->state) && ! empty($mysoc->state_code))
{
$mysoc->state=getState($mysoc->state_code,0);
}
if (empty($mysoc->state) && ! empty($mysoc->state_code))
{
$mysoc->state=getState($mysoc->state_code,0);
}
$logotouse=$conf->mycompany->dir_output.'/logos/thumbs/'.$mysoc->logo_small;

View File

@ -1,5 +1,5 @@
<?php
/* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
/* Copyright (C) 2012 Christophe Battarel <christophe.battarel@altairis.fr>
*
* 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
@ -16,99 +16,81 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
/** \defgroup mymodule Module MyModule
* \brief Example of a module descriptor.
* Such a file must be copied into htdocs/includes/module directory.
*/
/**
* \file htdocs/includes/modules/modMyModule.class.php
* \ingroup mymodule
* \brief Description and activation file for module MyModule
* \version $Id: modMyModule.class.php,v 1.26 2008/12/15 18:27:00 eldy Exp $
* \defgroup commissions Module Commissions
* \brief Example of a module descriptor.
* \file htdocs/core/modules/modCommissions.class.php
* \ingroup commissions
* \brief Description and activation file for module Commissions
*/
include_once(DOL_DOCUMENT_ROOT ."/core/modules/DolibarrModules.class.php");
/** \class modMyModule
* \brief Description and activation class for module MyModule
/**
* \class modCommissions
* \brief Description and activation class for module Commissions
*/
class modCommissions extends DolibarrModules
{
/**
* \brief Constructor. Define names, constants, directories, boxes, permissions
* \param DB Database handler
*/
function modCommissions($DB)
* Constructor
*
* @param DoliDB $db Database handler
*/
function modCommissions($db)
{
$this->db = $DB;
$this->db = $db;
// Id for module (must be unique).
// Use here a free id (See in Home -> System information -> Dolibarr for list of used modules id).
$this->numero = 60000;
// Key text used to identify module (for permissions, menus, etc...)
$this->rights_class = 'Commissions';
// Family can be 'crm','financial','hr','projects','products','ecm','technic','other'
// It is used to group modules in module setup page
$this->family = "financial";
// It is used to group modules in module setup page
$this->family = "financial";
// Module label (no space allowed), used if translation string 'ModuleXXXName' not found (where XXX is value of numeric property 'numero' of module)
$this->name = mb_ereg_replace('^mod','',get_class($this), "i");
$this->name = preg_replace('/^mod/i','',get_class($this));
// Module description, used if translation string 'ModuleXXXDesc' not found (where XXX is value of numeric property 'numero' of module)
$this->description = "Gestion des commissions";
$this->description = "Commissions management";
// Possible values for version are: 'development', 'experimental', 'dolibarr' or version
$this->version = '1.0';
$this->version = 'dolibarr';
// Key used in llx_const table to save module status enabled/disabled (where MYMODULE is value of property name of module in uppercase)
$this->const_name = 'MAIN_MODULE_'.strtoupper($this->name);
// Where to store the module in setup page (0=common,1=interface,2=other)
$this->special = 0;
// Name of png file (without png) used for this module.
// Png file must be in theme/yourtheme/img directory under name object_pictovalue.png.
$this->picto='commissions@commissions';
// Png file must be in theme/yourtheme/img directory under name object_pictovalue.png.
$this->picto='commissions';
// Data directories to create when module is enabled.
$this->dirs = array();
//$this->dirs[0] = DOL_DATA_ROOT.'/Marges';
//$this->dirs[1] = DOL_DATA_ROOT.'/mymodule/temp;
// Relative path to module style sheet if exists. Example: '/mymodule/mycss.css'.
$this->style_sheet = '/commissions/css/commissions.css';
// Config pages. Put here list of php page names stored in admmin directory used to setup module.
$this->config_page_url = array("commissions.php");
// Dependencies
$this->depends = array("modFacture", "modMarges"); // List of modules id that must be enabled if this module is enabled
$this->depends = array("modFacture", "modMargin"); // List of modules id that must be enabled if this module is enabled
$this->requiredby = array(); // List of modules id to disable if this one is disabled
$this->phpmin = array(4,1); // Minimum version of PHP required by module
$this->need_dolibarr_version = array(3,1); // Minimum version of Dolibarr required by module
$this->phpmin = array(5,1); // Minimum version of PHP required by module
$this->need_dolibarr_version = array(3,2); // Minimum version of Dolibarr required by module
$this->langfiles = array("commissions");
// Constants
$this->const = array(); // List of particular constants to add when module is enabled
//$this->const = array( 0=>array('MAIN_MODULE_MARGES_HOOKS', 'chaine', 'propalcard', 'Hooks list for displaying Marges data on entity lists', 0, 'current', 1) );
// New pages on tabs
$this->tabs = array(
);
// Boxes
$this->boxes = array(); // List of boxes
$r=0;
// Add here list of php file(s) stored in includes/boxes that contains class to show a box.
// Example:
//$this->boxes[$r][1] = "myboxa.php";
//$r++;
//$this->boxes[$r][1] = "myboxb.php";
//$r++;
// New pages on tabs
$this->tabs = array();
// Boxes
$this->boxes = array(); // List of boxes
$r=0;
// Permissions
$this->rights = array(); // Permission array used by this module
$r=0;
// Add here list of permission defined by an id, a label, a boolean and two constant strings.
// Example:
// $this->rights[$r][0] = 2000; // Permission id (must not be already used)
@ -118,13 +100,14 @@ class modCommissions extends DolibarrModules
// $this->rights[$r][5] = 'level2'; // In php code, permission will be checked by test if ($user->rights->permkey->level1->level2)
// $r++;
// Main menu entries
$this->menu = array(); // List of menus to add
$r = 0;
// left menu entry
$this->menu[$r]=array( 'fk_menu'=>0, // Put 0 if this is a top menu
// left menu entry
$this->menu[$r]=array(
'fk_menu'=>0, // Put 0 if this is a top menu
'type'=>'top', // This is a Top menu entry
'titre'=>'Commissions',
'mainmenu'=>'commissions',
@ -136,30 +119,31 @@ class modCommissions extends DolibarrModules
'perms'=>'1', // Use 'perms'=>'$user->rights->monmodule->level1->level2' if you want your menu with a permission rules
'target'=>'',
'user'=>2); // 0=Menu for internal users, 1=external users, 2=both
$r++;
$r++;
}
/**
* \brief Function called when module is enabled.
* The init function add constants, boxes, permissions and menus (defined in constructor) into Dolibarr database.
* It also creates data directories.
* \return int 1 if OK, 0 if KO
* Function called when module is enabled.
* The init function add constants, boxes, permissions and menus (defined in constructor) into Dolibarr database.
* It also creates data directories.
*
* @return int 1 if OK, 0 if KO
*/
function init()
{
$sql = array();
$result=$this->load_tables();
return $this->_init($sql);
}
/**
* \brief Function called when module is disabled.
* Remove from database constants, boxes and permissions from Dolibarr database.
* Data directories are not deleted.
* \return int 1 if OK, 0 if KO
* Function called when module is disabled.
* Remove from database constants, boxes and permissions from Dolibarr database.
* Data directories are not deleted.
*
* @return int 1 if OK, 0 if KO
*/
function remove()
{
@ -168,15 +152,16 @@ class modCommissions extends DolibarrModules
return $this->_remove($sql);
}
/**
* \brief Create tables and keys required by module
* Files mymodule.sql and mymodule.key.sql with create table and create keys
* commands must be stored in directory /mymodule/sql/
* This function is called by this->init.
* \return int <=0 if KO, >0 if OK
*/
function load_tables()
* Create tables and keys required by module
* Files mymodule.sql and mymodule.key.sql with create table and create keys
* commands must be stored in directory /mymodule/sql/
* This function is called by this->init.
*
* @return int <=0 if KO, >0 if OK
*/
function load_tables()
{
return;
}

View File

@ -1,4 +1,4 @@
# Dolibarr language file - fr_FR - marges
# Dolibarr language file - fr_FR - commissions
CHARSET=UTF-8
commissionsSetup=Paramétrage de la gestion des commissions