Skip to content
Snippets Groups Projects
Commit 03453102 authored by Rodolphe Quiedeville's avatar Rodolphe Quiedeville
Browse files

Nouveau fichier

parent 9d8092f3
No related branches found
No related tags found
No related merge requests found
<?php
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
*
* 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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Id$
* $Source$
*
*/
/**
\file htdocs/energie/EnergieCompteur.class.php
\ingroup energie
\brief Fichier des classes de compteur
\version $Revision$
*/
/**
\class Compteur
\brief Classe de gestion des compteurs
*/
class EnergieCompteur
{
var $db ;
var $id ;
var $user;
/** \brief Constructeur
*/
function EnergieCompteur($DB, $user)
{
$this->db = $DB;
$this->user = $user;
$this->energies[1] = "Electricit";
$this->energies[2] = "Eau";
$this->energies[3] = "Gaz naturel";
$this->couleurs[1] = "gray";
$this->couleurs[2] = "blue";
$this->couleurs[3] = "yellow";
}
/**
* Lecture
*
*/
function fetch ($id)
{
$sql = "SELECT c.rowid, c.libelle, fk_energie";
$sql .= " FROM ".MAIN_DB_PREFIX."energie_compteur as c";
$sql .= " WHERE c.rowid = ".$id;
$resql = $this->db->query($sql) ;
if ( $resql )
{
$obj = $this->db->fetch_object($resql);
$this->id = $obj->rowid;
$this->libelle = $obj->libelle;
$this->energie = $obj->fk_energie;
$this->db->free();
return 0;
}
else
{
dolibarr_syslog("");
return -1;
}
}
/**
* Lecture
*
*/
function Create ($libelle, $energie)
{
$sql = "INSERT INTO ".MAIN_DB_PREFIX."energie_compteur";
$sql .= " (libelle, datec, fk_user_author, fk_energie, note)";
$sql .= " VALUES (";
$sql .= "'".trim($libelle)."'";
$sql .= ",now()";
$sql .= ",'".$this->user->id."'";
$sql .= ",'".$energie."'";
$sql .= ",'');";
$resql = $this->db->query($sql) ;
if ( $resql )
{
$this->id = $this->db->last_insert_id(MAIN_DB_PREFIX."energie_compteur");
return 0;
}
else
{
dolibarr_syslog("EnergieCompteur::Create Erreur 1");
dolibarr_syslog($this->db->error());
return -1;
}
}
/**
* Ajout d'une valeur releve
*
*/
function AjoutReleve ($date_releve, $valeur)
{
$sql = "INSERT INTO ".MAIN_DB_PREFIX."energie_compteur_releve";
$sql .= " (fk_compteur, date_releve, valeur, datec, fk_user_author)";
$sql .= " VALUES (";
$sql .= "'".$this->id."'";
$sql .= ",'".$this->db->idate($date_releve)."'";
$sql .= ",'".$valeur."'";
$sql .= ",now()";
$sql .= ",'".$this->user->id."');";
$resql = $this->db->query($sql) ;
if ( $resql )
{
return 0;
}
else
{
dolibarr_syslog("EnergieCompteur::AjoutReleve Erreur 1");
dolibarr_syslog($this->db->error());
return -1;
}
}
/**
* Ajout d'une valeur releve
*
*/
function AddGroup ($groupe)
{
$sql = "INSERT INTO ".MAIN_DB_PREFIX."energie_compteur_groupe";
$sql .= " (fk_energie_compteur, fk_energie_groupe)";
$sql .= " VALUES ('".$this->id."','".$groupe."');";
$resql = $this->db->query($sql);
if ( $resql )
{
return 0;
}
else
{
dolibarr_syslog("EnergieCompteur::AddGroup Erreur 1");
dolibarr_syslog($this->db->error());
return -1;
}
}
/**
*
*
*/
function GroupsAvailable ()
{
$this->groups_available = array();
$sql = "SELECT g.rowid, g.libelle";
$sql .= " FROM ".MAIN_DB_PREFIX."energie_groupe as g";
$resql = $this->db->query($sql) ;
if ( $resql )
{
$num = $this->db->num_rows($resql);
$i = 0;
while ($i < $num)
{
$obj = $this->db->fetch_object($resql);
$this->groups_available[$obj->rowid] = $obj->libelle;
$i++;
}
$this->db->free();
return 0;
}
else
{
dolibarr_syslog("");
return -1;
}
}
}
?>
<?php
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
*
* 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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Id$
* $Source$
*
*/
/**
\file htdocs/energie/compteur.php
\ingroup energie
\brief Fiche compteur
\version $Revision$
*/
require("./pre.inc.php");
/*
*
*/
if ($_POST["action"] == 'add')
{
$compteur = new EnergieCompteur($db, $user);
if ( $compteur->create($_POST["libelle"],$_POST["energie"]) == 0)
{
Header("Location: compteur.php?id=".$compteur->id);
}
else
{
Header("Location: compteur.php?action=create");
}
}
if ($_POST["action"] == 'addvalue')
{
if ($_POST["releve"] > 0)
{
$compteur = new EnergieCompteur($db, $user);
if ( $compteur->fetch($_GET["id"]) == 0)
{
$date = mktime(12,
0 ,
0,
$_POST["remonth"],
$_POST["reday"],
$_POST["reyear"]);
$compteur->AjoutReleve($date, $_POST["releve"]);
Header("Location: compteur.php?id=".$_GET["id"]);
}
}
}
/*
*
*/
llxHeader($langs, '',$langs->trans("Compteur"),"Compteur");
/*********************************************************************
*
* Mode creation
*
*
************************************************************************/
if ($_GET["action"] == 'create')
{
$head[0][0] = DOL_URL_ROOT.'/energie/compteur.php?action=create';
$head[0][1] = "Nouveau compteur";
$h++;
$a = 0;
dolibarr_fiche_head($head, $a, $soc->nom);
$html = new Form($db);
$compteur = new EnergieCompteur($db, $user);
print '<form action="compteur.php" method="post">';
print '<input type="hidden" name="action" value="add">';
print '<table class="border" width="100%">';
print "<tr $bc[$var]>";
print '<td>Libell</td>';
print '<td><input type="text" size="40" maxlength="255" name="libelle"></td></tr>';
print "<tr $bc[$var]>";
print '<td>Energie</td><td>';
print $html->select_array("energie", $compteur->energies);
print '</td></tr>';
print '<tr><td colspan="2" align="center"><input type="submit" value="'.$langs->trans("Add").'"></td></tr>';
print "</table></form><br>";
print '</div>';
}
else
/* *************************************************************************** */
/* */
/* Mode vue */
/* */
/* *************************************************************************** */
{
if ($_GET["id"] > 0)
{
$compteur = new EnergieCompteur($db, $user);
if ( $compteur->fetch($_GET["id"]) == 0)
{
$head[0][0] = DOL_URL_ROOT.'/energie/compteur.php?id='.$compteur->id;
$head[0][1] = "Compteur";
$h++;
$a = 0;
$head[$h][0] = DOL_URL_ROOT.'/energie/compteur_graph.php?id='.$compteur->id;
$head[$h][1] = "Graph";
$h++;
$head[$h][0] = DOL_URL_ROOT.'/energie/compteur_groupe.php?id='.$compteur->id;
$head[$h][1] = "Groupe";
$h++;
dolibarr_fiche_head($head, $a, $soc->nom);
print '<table class="border" width="100%">';
print "<tr><td>".$langs->trans("Compteur")."</td>";
print '<td width="50%">';
print $compteur->libelle;
print "</td></tr>";
print "</table><br>";
$html = new Form($db);
print '<form action="compteur.php?id='.$compteur->id.'" method="post">';
print '<input type="hidden" name="action" value="addvalue">';
print '<table class="border" width="100%">';
$var=!$var;
print "<tr $bc[$var]>";
print '<td>Date</td><td>';
print $html->select_date();
print '</td><td>Valeur releve</td>';
print '<td align="center"><input type="text" size="11" maxlength="10" name="releve"></td>';
print '<td align="center"><input type="submit" value="'.$langs->trans("Add").'"></td></tr>';
print "</table></form><br>";
print '</div>';
print '<table class="noborder" width="100%">';
print '<tr><td align="center">';
$file = "week.".$compteur->id.".png";
print '<img src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=energie&file='.$file.'" alt="" title="">';
print '</td><td align="center">';
$file = "month.".$compteur->id.".png";
print '<img src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=energie&file='.$file.'" alt="" title="">';
print '</td></tr></table><br>';
print '<table class="noborder" width="100%">';
print '<tr class="liste_titre"><td>'.$langs->trans("Date").'</td>';
print '<td>'.$langs->trans("Relev").'</td></tr>';
$sql = "SELECT ".$db->pdate("date_releve")." as date_releve, valeur";
$sql .= " FROM ".MAIN_DB_PREFIX."energie_compteur_releve as ecr";
$sql .= " WHERE ecr.fk_compteur = '".$compteur->id."'";
$sql .= " ORDER BY ecr.date_releve DESC LIMIT 5";
$resql = $db->query($sql);
if ($resql)
{
$num = $db->num_rows($resql);
$i = 0;
$var=True;
while ($i < $num)
{
$obj = $db->fetch_object($resql);
$var=!$var;
print "<tr $bc[$var]><td>";
print strftime("%a %e %B %Y",$obj->date_releve);
print '</td><td>'.$obj->valeur.'</td>';
$i++;
}
}
print '</table>';
print "<br>\n";
}
else
{
/* Commande non trouve */
print "Compteur inexistant";
}
}
else
{
print "Compteur inexistant";
}
}
$db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>");
?>
<?php
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
*
* 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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Id$
* $Source$
*
*/
/**
\file htdocs/energie/compteur_groupe.php
\ingroup energie
\brief Fiche de gestion des groupes des compteurs
\version $Revision$
*/
require("./pre.inc.php");
if ($_POST["action"] == 'addvalue')
{
$compteur = new EnergieCompteur($db, $user);
if ( $compteur->fetch($_GET["id"]) == 0)
{
if ( $compteur->AddGroup($_POST["groupe"]) == 0)
{
Header("Location: compteur.php?id=".$_GET["id"]);
}
}
}
/*
*
*/
llxHeader($langs, '',$langs->trans("Compteur"),"Compteur");
if ($_GET["id"] > 0)
{
$compteur = new EnergieCompteur($db, $user);
if ( $compteur->fetch($_GET["id"]) == 0)
{
$head[0][0] = DOL_URL_ROOT.'/energie/compteur.php?id='.$compteur->id;
$head[0][1] = "Compteur";
$h++;
$head[$h][0] = DOL_URL_ROOT.'/energie/compteur_graph.php?id='.$compteur->id;
$head[$h][1] = "Graph";
$h++;
$head[$h][0] = DOL_URL_ROOT.'/energie/compteur_groupe.php?id='.$compteur->id;
$head[$h][1] = "Groupe";
$h++;
$a = 2;
dolibarr_fiche_head($head, $a, $soc->nom);
print '<table class="border" width="100%">';
print "<tr><td>".$langs->trans("Compteur")."</td>";
print '<td width="50%">';
print $compteur->libelle;
print "</td></tr>";
print "</table><br>";
$html = new Form($db);
print '<form action="compteur_groupe.php?id='.$compteur->id.'" method="post">';
print '<input type="hidden" name="action" value="addvalue">';
print '<table class="border" width="100%">';
$var=!$var;
print "<tr $bc[$var]>";
$compteur->GroupsAvailable();
print '<td>Groupe</td><td>';
print $html->select_array("groupe", $compteur->groups_available);
print '</td>';
print '<td align="center"><input type="submit" value="'.$langs->trans("Add").'"></td></tr>';
print "</table></form><br>";
print '</div>';
print "<br>\n";
}
else
{
/* Commande non trouve */
print "Compteur inexistant";
}
}
else
{
print "Compteur inexistant";
}
$db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>");
?>
<?php
/* Copyright (C) 2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
*
* 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, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Id$
* $Source$
*
*/
/**
\file htdocs/energie/groupe.php
\ingroup energie
\brief Fiche groupe
\version $Revision$
*/
require("./pre.inc.php");
/*
*
*/
if ($_POST["action"] == 'add')
{
$groupe = new EnergieGroupe($db, $user);
if ( $groupe->create($_POST["libelle"]) == 0)
{
Header("Location: groupe.php?id=".$groupe->id);
}
else
{
Header("Location: groupe.php?action=create");
}
}
/*
*
*/
llxHeader($langs, '',$langs->trans("Groupe"),"Groupe");
/*********************************************************************
*
* Mode creation
*
*
************************************************************************/
if ($_GET["action"] == 'create')
{
$head[0][0] = DOL_URL_ROOT.'/energie/groupe.php?action=create';
$head[0][1] = "Nouveau groupe";
$h++;
$a = 0;
dolibarr_fiche_head($head, $a, $soc->nom);
$html = new Form($db);
print '<form action="groupe.php" method="post">';
print '<input type="hidden" name="action" value="add">';
print '<table class="border" width="100%">';
print "<tr $bc[$var]>";
print '<td>Libell</td>';
print '<td><input type="text" size="40" maxlength="255" name="libelle"></td></tr>';
print '<tr><td colspan="2" align="center"><input type="submit" value="'.$langs->trans("Add").'"></td></tr>';
print "</table></form><br>";
print '</div>';
}
else
/* *************************************************************************** */
/* */
/* Mode vue */
/* */
/* *************************************************************************** */
{
if ($_GET["id"] > 0)
{
$groupe = new EnergieGroupe($db, $user);
if ( $groupe->fetch($_GET["id"]) == 0)
{
$head[0][0] = DOL_URL_ROOT.'/energie/groupe.php?id='.$commande->id;
$head[0][1] = "Groupe";
$h++;
$a = 0;
dolibarr_fiche_head($head, $a, $soc->nom);
print '<table class="border" width="100%">';
print "<tr><td>".$langs->trans("Groupe")."</td>";
print '<td width="50%">';
print $groupe->libelle;
print "</td></tr>";
print "</table><br>";
/*
*
*/
print '<table class="noborder" width="100%">';
print '<tr><td align="center">';
$file = "groupe.day.".$groupe->id.".png";
print '<img src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=energie&file='.$file.'" alt="" title="">';
print '</td><td align="center">';
$file = "groupe.week.".$groupe->id.".png";
print '<img src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=energie&file='.$file.'" alt="" title="">';
print '</td></tr>';
print '<tr><td align="center">';
$file = "groupe.month.".$groupe->id.".png";
print '<img src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=energie&file='.$file.'" alt="" title="">';
print '</td><td align="center">';
$file = "groupe.year.".$groupe->id.".png";
print '<img src="'.DOL_URL_ROOT.'/viewimage.php?modulepart=energie&file='.$file.'" alt="" title="">';
print '</td></tr></table><br>';
print '</div>';
print "<br>\n";
}
else
{
/* Commande non trouve */
print "Groupe inexistant";
}
}
else
{
print "Groupe inexistant";
}
}
$db->close();
llxFooter("<em>Derni&egrave;re modification $Date$ r&eacute;vision $Revision$</em>");
?>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment