[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Noalyss-commit] [noalyss] 04/13: Change Tool_Uos by Single_Record
From: |
Dany De Bontridder |
Subject: |
[Noalyss-commit] [noalyss] 04/13: Change Tool_Uos by Single_Record |
Date: |
Wed, 14 Oct 2015 21:38:31 +0000 |
sparkyx pushed a commit to branch master
in repository noalyss.
commit 382ca9537ef67d1fc6950a3a50893e9f1fb9c2f9
Author: Dany De Bontridder <address@hidden>
Date: Mon Oct 12 15:36:07 2015 +0200
Change Tool_Uos by Single_Record
---
include/lib/class_single_record.php.php | 107 +++++++++++++++++++++++++++++++
1 files changed, 107 insertions(+), 0 deletions(-)
diff --git a/include/lib/class_single_record.php.php
b/include/lib/class_single_record.php.php
new file mode 100644
index 0000000..4db8d80
--- /dev/null
+++ b/include/lib/class_single_record.php.php
@@ -0,0 +1,107 @@
+<?php
+/*
+ * This file is part of NOALYSS.
+ *
+ * NOALYSS 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.
+ *
+ * NOALYSS 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 NOALYSS; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+*/
+/**
+ * @file
+ * @brief Objec to check a double insert into the database, this duplicate
occurs after
+ * a refresh of the web page
+ */
+// Copyright Author Dany De Bontridder address@hidden
+
+require_once NOALYSS_INCLUDE.'/lib/class_database.php';
+define ('CODE_EXCP_DUPLICATE',901);
+/**
+ * @brief Objec to check a double insert into the database, this duplicate
occurs after
+ * a refresh of the web page
+ * in
+ */
+
+class Single_Record
+{
+ /**
+ * Constructor $p_name will be set to $this->name, it is also the name
+ * of the tag hidden in a form
+ * @global $cn Db connxion
+ * @param $p_name
+ */
+ function __construct($p_name)
+ {
+ $this->name=$p_name;
+ }
+ /**
+ * @brief return a string with a tag hidden and a uniq value
+ * @param $hHidden is the name of the tag hidden
+ * @return string : tag hidden
+ */
+ function hidden()
+ {
+ global $cn;
+ $this->id=$cn->get_next_seq('uos_pk_seq');
+ return HtmlInput::hidden($this->name,$this->id);
+ }
+ /**
+ * @brief Try to insert into the table Single_Record
+ * @global $cn Database connx
+ * @throws Exception if the value $p_id is not unique
+ */
+ function save($p_array=null)
+ {
+ global $cn;
+ if ( $p_array == null ) $p_array=$_POST;
+ $this->id=$p_array[$this->name];
+ $sql="insert into tool_uos(uos_value) values ($1)";
+ try {
+ $cn->exec_sql($sql,array($this->id));
+ } catch (Exception $e)
+ {
+ throw new Exception('Duplicate value');
+ }
+ }
+ /**
+ * Count how many time we have this->id into the table tool_uos
+ * @global $cn Database connx
+ * @param $p_array is the array where to find the key name, usually it is
+ * $_POST. The default value is $_POST
+ * @return integer : 0 or 1
+ */
+ function get_count($p_array=null)
+ {
+ global $cn;
+ if ( $p_array == null ) $p_array=$_POST;
+ $this->id=$p_array[$this->name];
+ $count=$cn->get_value('select count(*) from tool_uos where
uos_value=$1',
+ array($this->id));
+ return $count;
+ }
+ function check ($p_array=null)
+ {
+ global $cn;
+ if ( $p_array == null ) $p_array=$_POST;
+ $this->id=$p_array[$this->name];
+ try
+ {
+ $count=$cn->get_value('select count(*) from tool_uos where
uos_value=$1',
+ array($this->id));
+ if ($count != 0 ) throw new Exception
('DUPLICATE',CODE_EXCP_DUPLICATE);
+ }catch (Exception $e)
+ {
+ throw $e;
+ }
+ }
+}
+?>
- [Noalyss-commit] [noalyss] 10/13: Reduce the number of file in HTML folder, move ajax_poste.php to include/ajax called from ajax_misc.php, (continued)
- [Noalyss-commit] [noalyss] 10/13: Reduce the number of file in HTML folder, move ajax_poste.php to include/ajax called from ajax_misc.php, Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 08/13: Reduce the number of file in HTML folder, move ajax_card.php to include/ajax called from ajax_misc.php, Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 01/13: translate, Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 13/13: Ajax : misc. bugs due to files reorganizing, Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 09/13: Reduce the number of file in HTML folder, move ajax_ledger.php to include/ajax called from ajax_misc.php, Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 02/13: Merge branch 'dev_6900', Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 05/13: Reduce the number of file in HTML folder, move ajax_todo_list to include/ajax called from ajax_misc.php, Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 07/13: Reduce the number of file in HTML folder, move ajax_history to include/ajax called from ajax_misc.php, Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 03/13: Change Tool_Uos by Single_Record, Dany De Bontridder, 2015/10/14
- [Noalyss-commit] [noalyss] 06/13: documentation, Dany De Bontridder, 2015/10/15
- [Noalyss-commit] [noalyss] 04/13: Change Tool_Uos by Single_Record,
Dany De Bontridder <=
- [Noalyss-commit] [noalyss] 12/13: Correct ; rename file class_single_record , detail-action : 2 fields for contact instead of 1 Ajax : misc. bugs, Dany De Bontridder, 2015/10/15