[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpcompta-dev] r481 - in trunk/rapport_avance: . include include/templa
From: |
phpcompta-dev |
Subject: |
[Phpcompta-dev] r481 - in trunk/rapport_avance: . include include/template sql |
Date: |
Sat, 27 Apr 2013 00:02:55 +0200 (CEST) |
Author: danydb
Date: 2013-04-27 00:02:54 +0200 (Sat, 27 Apr 2013)
New Revision: 481
Added:
trunk/rapport_avance/sql/upgrade3.sql
Modified:
trunk/rapport_avance/ajax.php
trunk/rapport_avance/include/class_rapav_formulaire.php
trunk/rapport_avance/include/class_rapport_avance_sql.php
trunk/rapport_avance/include/template/formulaire_definition.php
trunk/rapport_avance/rapav_javascript.js
Log:
0000739: G?\195?\169n?\195?\169ration de d?\195?\169claration
- Chargement du mod?\195?\168le et sauvegarde dans la DB
Modified: trunk/rapport_avance/ajax.php
===================================================================
--- trunk/rapport_avance/ajax.php 2013-04-05 13:59:37 UTC (rev 480)
+++ trunk/rapport_avance/ajax.php 2013-04-26 22:02:54 UTC (rev 481)
@@ -14,7 +14,7 @@
echo '<h1>Définition </h1>';
$form = new RAPAV_formulaire($_REQUEST['f_id']);
$form->load_definition();
- echo '<form method="POST" class="print">';
+ echo '<form method="POST" enctype="multipart/form-data"
class="print">';
$form->input_formulaire();
$form->input_definition();
echo '<p>';
@@ -128,7 +128,14 @@
case 'rapav_declaration_delete':
$cn->exec_sql("delete from rapport_advanced.declaration where
d_id=$1", array($_GET['d_id']));
break;
- default:
+
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ // Remove a template
+
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+ case 'rapav_remove_doc_template':
+ require_once 'include/class_rapav_formulaire.php';
+ $rapav=new Rapav_Formulaire($_GET['f_id']);
+ $rapav->remove_doc_template();
+ defaut:
break;
}
?>
Modified: trunk/rapport_avance/include/class_rapav_formulaire.php
===================================================================
--- trunk/rapport_avance/include/class_rapav_formulaire.php 2013-04-05
13:59:37 UTC (rev 480)
+++ trunk/rapport_avance/include/class_rapav_formulaire.php 2013-04-26
22:02:54 UTC (rev 481)
@@ -43,7 +43,8 @@
* show a list of all existing declaration
* @global type $cn database connection
*/
- static function listing()
+ static
+ function listing()
{
global $cn;
$alist = $cn->get_array("select f_id,f_title,f_description from
rapport_advanced.formulaire order by 2");
@@ -56,7 +57,7 @@
function load_definition()
{
$f = new Formulaire_Param_Sql();
- $ret = $f->seek(" where f_id=".sql_string($this->f_id) ." order
by p_order ");
+ $ret = $f->seek(" where f_id=" . sql_string($this->f_id) . "
order by p_order ");
$max = Database::num_row($ret);
for ($i = 0; $i < $max; $i++)
@@ -100,16 +101,8 @@
*/
static function save_definition($p_array)
{
- if ($p_array['f_id'] == -1)
- {
- self::insert_definition($p_array);
- return;
- }
- else
- {
- self::update_definition($p_array);
- return;
- }
+ self::update_definition($p_array);
+ return;
}
/**
@@ -131,7 +124,7 @@
$form_param->p_code = $p_array['p_code'][$i];
$form_param->p_libelle = $p_array['p_libelle'][$i];
$form_param->p_type = $p_array['p_type'][$i];
- $form_param->p_order =
(isNumber($p_array['p_order'][$i])==0)?$i*10:$p_array['p_order'][$i];
+ $form_param->p_order =
(isNumber($p_array['p_order'][$i]) == 0) ? $i * 10 : $p_array['p_order'][$i];
$form_param->t_id = $p_array['t_id'][$i];
$form_param->f_id = $p_array['f_id'];
// update or insert the row
@@ -140,8 +133,48 @@
else
$form_param->update();
}
+ self::load_file($rapav);
}
+ static function load_file(RAPAV_Formulaire $p_rapav)
+ {
+ global $cn;
+ var_dump($p_rapav);
+ var_dump($_FILES);
+ // nothing to save
+ if (sizeof($_FILES) == 0)
+ return;
+
+ // Start Transaction
+ $cn->start();
+ $name = $_FILES['rapav_template']['name'];
+ $new_name = tempnam($_ENV['TMP'], 'rapav_template');
+ // check if a file is submitted
+ if (strlen($_FILES['rapav_template']['tmp_name']) != 0)
+ {
+ // upload the file and move it to temp directory
+ if
(move_uploaded_file($_FILES['rapav_template']['tmp_name'], $new_name))
+ {
+ $oid = $cn->lo_import($new_name);
+ // check if the lob is in the database
+ if ($oid == false)
+ {
+ $cn->rollback();
+ return 1;
+ }
+ }
+ // the upload in the database is successfull
+ $p_rapav->f_lob = $oid;
+ $p_rapav->f_filename =
$_FILES['rapav_template']['name'];
+ $p_rapav->f_mimetype =
$_FILES['rapav_template']['type'];
+ $p_rapav->f_size= $_FILES['rapav_template']['size'];
+
+ // update rapav
+ $p_rapav->update();
+ }
+ $cn->commit();
+ }
+
function echo_formulaire()
{
echo '<h2>' . h($this->f_title) . '</h2>';
@@ -158,8 +191,19 @@
$obj->input();
}
}
-
-
+ /**
+ * @brief remove a doc template
+ */
+ function remove_doc_template()
+ {
+ global $cn;
+ $cn->lo_unlink($this->f_lob);
+ $this->f_filename=null;
+ $this->f_size=null;
+ $this->f_mimetype=null;
+ $this->f_lob=null;
+ $this->update();
+ }
}
?>
Modified: trunk/rapport_avance/include/class_rapport_avance_sql.php
===================================================================
--- trunk/rapport_avance/include/class_rapport_avance_sql.php 2013-04-05
13:59:37 UTC (rev 480)
+++ trunk/rapport_avance/include/class_rapport_avance_sql.php 2013-04-26
22:02:54 UTC (rev 481)
@@ -81,13 +81,21 @@
$this->name = array(
"f_id" => "f_id",
"f_title" => "f_title",
- "f_description" => "f_description"
+ "f_description" => "f_description",
+ "f_lob"=>"f_lob",
+ "f_mimetype"=>"f_mimetype",
+ "f_filename"=>"f_filename",
+ "f_size"=>"f_size"
);
$this->type = array(
"f_id" => "numeric",
"f_title" => "text",
- "f_description" => "text"
+ "f_description" => "text",
+ "f_lob"=>"oid",
+ "f_mimetype"=>"text",
+ "f_filename"=>"text",
+ "f_size"=>"numeric"
);
$this->default = array(
Modified: trunk/rapport_avance/include/template/formulaire_definition.php
===================================================================
--- trunk/rapport_avance/include/template/formulaire_definition.php
2013-04-05 13:59:37 UTC (rev 480)
+++ trunk/rapport_avance/include/template/formulaire_definition.php
2013-04-26 22:02:54 UTC (rev 481)
@@ -113,4 +113,26 @@
<p>
<?=HtmlInput::button_anchor("Ajout d'une ligne","javascript:void(0)","add_def",
sprintf('onclick="add_row_definition(\'%s\',\'%s\',\'%s\')"',$_REQUEST['plugin_code'],$_REQUEST['ac'],$_REQUEST['gDossier']))?>
+</p>
+<p>
+ <?php
+ $file=new IFile('rapav_template');
+ ?>
+ Modèle :
+ <?php
+ if ( $this->f_filename == "")
+ echo $file->input();
+ else {
+ $remove_doc= HtmlInput::anchor("Efface", "",
+
sprintf("onclick=\"rapav_remove_doc_template('%s','%s','%s','%s')\"",
+ $_REQUEST['plugin_code'],
+ $_REQUEST['ac'],
+ $_REQUEST['gDossier'],
+ $this->f_id
+ ));
+ echo '<span id="rapav_template"> '.$this->f_filename.'</span>';
+ echo '<span id="rapav_template_ctl"> '.$remove_doc.'</span>';
+ echo '<span id="rapav_new_file" style="display:none">
'.$file->input().'</span>';
+ }
+ ?>
</p>
\ No newline at end of file
Modified: trunk/rapport_avance/rapav_javascript.js
===================================================================
--- trunk/rapport_avance/rapav_javascript.js 2013-04-05 13:59:37 UTC (rev
480)
+++ trunk/rapport_avance/rapav_javascript.js 2013-04-26 22:02:54 UTC (rev
481)
@@ -375,4 +375,41 @@
{
alert(e.message);
}
+}
+/**
+ * @brief Remove a template
+ *
+ * @note sprintf("rapav_remove_doc_template('%s','%s','%s','%s')",
+ $_REQUEST['plugin_code'],
+ $_REQUEST['ac'],
+ $_REQUEST['gDossier'],
+ $this->f_id
+*/
+function rapav_remove_doc_template(plugin_code,ac,dossier,f_id)
+{
+ if ( ! confirm ("Confirmez-vous l'effacement de ce modèle ?"))
+ {
+ return;
+ }
+ try {
+ var
querystring='plugin_code='+plugin_code+'&ac='+ac+'&gDossier='+dossier+'&act=rapav_remove_doc_template'+"&f_id="+f_id;
+ var action=new Ajax.Request(
+ "ajax.php",
+ {
+ method:'get',
+ parameters:querystring,
+ onFailure:error_get_predef,
+ onSuccess:function() {
+
$('rapav_template').style.textDecoration='line-through';
+ $('rapav_template').style.color='red';
+ $('rapav_template_ctl').innerHTML='';
+
$('rapav_new_file').style.display='block';
+ }
+ }
+ );
+
+ }catch (e)
+ {
+ alert(e.message);
+ }
}
\ No newline at end of file
Added: trunk/rapport_avance/sql/upgrade3.sql
===================================================================
--- trunk/rapport_avance/sql/upgrade3.sql (rev 0)
+++ trunk/rapport_avance/sql/upgrade3.sql 2013-04-26 22:02:54 UTC (rev
481)
@@ -0,0 +1,12 @@
+ALTER TABLE rapport_advanced.formulaire ADD COLUMN f_lob oid;
+COMMENT ON COLUMN rapport_advanced.formulaire.f_lob IS 'OID for file';
+
+ALTER TABLE rapport_advanced.formulaire ADD COLUMN f_filename text;
+COMMENT ON COLUMN rapport_advanced.formulaire.f_filename IS 'filename';
+
+ALTER TABLE rapport_advanced.formulaire ADD COLUMN f_mimetype text;
+COMMENT ON COLUMN rapport_advanced.formulaire.f_mimetype IS 'Mimetype of the
file';
+
+ALTER TABLE rapport_advanced.formulaire ADD COLUMN f_size bigint;
+COMMENT ON COLUMN rapport_advanced.formulaire.f_size IS 'Size of the file';
+
---
PhpCompta est un logiciel de comptabilité libre en ligne (full web)
Projet opensource http://www.phpcompta.eu
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpcompta-dev] r481 - in trunk/rapport_avance: . include include/template sql,
phpcompta-dev <=