Changeset 3120
- Timestamp:
- 08/15/08 17:14:24 (3 months ago)
- Files:
-
- trunk/project/modules/devel/tools/repository/actiongroups/ajax.actiongroup.php (added)
- trunk/project/modules/devel/tools/repository/actiongroups/default.actiongroup.php (added)
- trunk/project/modules/devel/tools/repository/actiongroups/file.actiongroup.php (added)
- trunk/project/modules/devel/tools/repository/actiongroups/repository.actiongroup.php (deleted)
- trunk/project/modules/devel/tools/repository/install/scripts/delete.mysql.sql (added)
- trunk/project/modules/devel/tools/repository/install/scripts/install.mysql.sql (added)
- trunk/project/modules/devel/tools/repository/install/scripts/install.pdo_mysql.sql (modified) (1 diff)
- trunk/project/modules/devel/tools/repository/install/scripts/install.pdo_pgsql.sql (modified) (1 diff)
- trunk/project/modules/devel/tools/repository/install/scripts/install.pdo_sqlite.sql (modified) (1 diff)
- trunk/project/modules/devel/tools/repository/module.xml (modified) (1 diff)
- trunk/project/modules/devel/tools/repository/resources/repository_fr.properties (modified) (2 diffs)
- trunk/project/modules/devel/tools/repository/templates/default.tpl (deleted)
- trunk/project/modules/devel/tools/repository/templates/file.list.php (added)
- trunk/project/modules/devel/tools/repository/templates/file.page.php (added)
- trunk/project/modules/devel/tools/repository/templates/repository.addform.php (deleted)
- trunk/project/modules/devel/tools/repository/templates/repository.list.php (deleted)
- trunk/project/modules/devel/tools/repository/templates/upload.form.php (modified) (1 diff)
- trunk/project/modules/devel/tools/repository/templates/upload.page.php (added)
- trunk/project/modules/devel/tools/repository/templates/user.login.php (added)
- trunk/project/modules/devel/tools/repository/templates/welcome.php (added)
- trunk/project/modules/devel/tools/repository/zones/filelist.zone.php (added)
- trunk/project/modules/devel/tools/repository/zones/uploadform.zone.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/project/modules/devel/tools/repository/install/scripts/install.pdo_mysql.sql
r602 r3120 1 2 1 DROP TABLE IF EXISTS storedfile; 3 2 4 3 CREATE TABLE storedfile ( 5 storedfile_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 6 storedfile_name VARCHAR (255), 7 storedfile_path VARCHAR (255), 8 storedfile_description TEXT, 9 storedfile_uploader VARCHAR(255), 10 storedfile_uploaddate DATETIME, 11 storedfile_nbdownload INT 4 id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 5 name VARCHAR (255), 6 title VARCHAR (255), 7 path VARCHAR (255), 8 description TEXT, 9 uploader VARCHAR(255), 10 uploaddate DATETIME, 11 nbdownload INT, 12 category_id INT, 13 subcategory_id INT 12 14 ) CHARACTER SET utf8; trunk/project/modules/devel/tools/repository/install/scripts/install.pdo_pgsql.sql
r602 r3120 1 1 CREATE TABLE storedfile ( 2 storedfile_id SERIAL, 3 storedfile_name VARCHAR (255) NOT NULL, 4 storedfile_path VARCHAR (255) NOT NULL, 5 storedfile_description TEXT, 6 storedfile_uploader VARCHAR(255), 7 storedfile_uploaddate TIMESTAMP, 8 storedfile_nbdownload INT, 2 id SERIAL, 3 name VARCHAR (255) NOT NULL, 4 title VARCHAR (255) NOT NULL, 5 path VARCHAR (255) NOT NULL, 6 description TEXT, 7 uploader VARCHAR(255), 8 uploaddate TIMESTAMP, 9 nbdownload INT, 10 category_id INT, 11 subcategory_id INT, 9 12 PRIMARY KEY (storedfile_id) 10 13 ); trunk/project/modules/devel/tools/repository/install/scripts/install.pdo_sqlite.sql
r602 r3120 3 3 4 4 CREATE TABLE storedfile ( 5 storedfile_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 6 storedfile_name VARCHAR (255), 7 storedfile_path VARCHAR (255), 8 storedfile_description TEXT, 9 storedfile_uploader VARCHAR(255), 10 storedfile_uploaddate DATETIME, 11 storedfile_nbdownload INT 12 ) ENGINE = INNODB; 5 id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 6 name VARCHAR (255), 7 path VARCHAR (255), 8 description TEXT, 9 uploader VARCHAR(255), 10 uploaddate DATETIME, 11 nbdownload INT, 12 category_id INT, 13 subcategory_id INT 14 ) ; trunk/project/modules/devel/tools/repository/module.xml
r602 r3120 6 6 <parameters> 7 7 <parameter name="repositorypath" captioni18n="repository.parameter.repositorypath" default="repository" /> 8 <!--<parameter name="enableTag" captioni18n="repository.parameter.enabletag" default="0"/>-->9 8 </parameters> 10 9 <admin> 11 <link url="repository| repository|addfile" captioni18n="repository.admin.description" credentials="basic:registered"></link>10 <link url="repository|file|upload" captioni18n="repository.admin.description" credentials="basic:registered"></link> 12 11 </admin> 13 12 </moduledefinition> trunk/project/modules/devel/tools/repository/resources/repository_fr.properties
r3075 r3120 1 1 # Descriptio et titres du modules 2 repository.description = Module de d épôt2 repository.description = Module de d�t 3 3 repository.admin.description = Ajouter un fichier 4 repository.longdescription = Module permettant de mettre en place un d épôt de fichiers. Ce module permet de tester et pr�senter des nouveaut�sde Copix 3.0 et Copix 3.14 repository.longdescription = Module permettant de mettre en place un d�t de fichiers. Ce module permet de tester et pr�nter des nouveaut�de Copix 3.0 et Copix 3.1 5 5 # Titre des pages 6 repository.title.welcome = Bienvenue sur vore espace de dépôt 7 repository.title.list = Liste des fichiers déposés 8 repository.title.repository = Dépôt de fichier Copix 9 repository.title.upload = Chargement d'un fichier sur l'espace de dépôt 6 repository.title.welcome = Bienvenue sur vore espace de d�t 7 repository.title.list = Liste des fichiers d�s�repository.title.repository = D�t de fichier Copix 8 repository.title.upload = Chargement d'un fichier sur l'espace de d�t 10 9 # Champs du fomulaire 11 10 repository.form.titlefile = Titre du document 12 repository.form.fileupload = Fichier à déposer11 repository.form.fileupload = Fichier ��ser 13 12 repository.form.uploader = Contributeur 14 repository.form.comment = Informations compl émentaires15 repository.form.category = Cat égorie du fichier16 repository.form.subcategory = Sous-cat égorie du fichier13 repository.form.comment = Informations compl�ntaires 14 repository.form.category = Cat�rie du fichier 15 repository.form.subcategory = Sous-cat�rie du fichier 17 16 repository.form.save = Ajouter un fichier 18 17 repository.form.title = Ajouter un document 19 18 repository.form.submit = Soumettre le document 20 # Param ètres du modules21 repository.parameter.enabletag = G érer les tags (nécessite le module Tag)22 repository.parameter.repositorypath = Repertoire du d épôt19 # Param�es du modules 20 repository.parameter.enabletag = G�r les tags (n�ssite le module Tag) 21 repository.parameter.repositorypath = Repertoire du d�t 23 22 #Messages d'erreur 24 23 repository.error.upload = Erreur de chargement … … 27 26 repository.list.filename = Nom du fichier 28 27 repository.list.uploader = Contributeur 29 repository.list.nbdownload = Nb de t éléchargements28 repository.list.nbdownload = Nb de t�chargements 30 29 repository.list.uploaddate = Date d'ajout 31 repository.list.category = Cat égorie32 repository.list.subcategory = Sous-cat égorie33 repository.list.nofile = Pas de fichier dans le d épôt34 repository.list.download = T élécharger30 repository.list.category = Cat�rie 31 repository.list.subcategory = Sous-cat�rie 32 repository.list.nofile = Pas de fichier dans le d�t 33 repository.list.download = T�charger 35 34 # Message d'informations 36 repository.upload.successful = Chargement du fichier "%s" r éussi35 repository.upload.successful = Chargement du fichier "%s" r�si trunk/project/modules/devel/tools/repository/templates/upload.form.php
r3009 r3120 1 <form action="<?php _url('repository|default|Add');?>" method="POST" enctype="multipart/form-data"> 2 <input type="hidden" name="confirm" value="1"> 3 <fieldset> 4 <table class="CopixVerticalTable"> 5 <tr> 6 <th><?php _etag ('i18n', 'repository.form.fileupload');?></th> 7 <td><input type="file" name="uploadfile"></td> 8 </tr> 9 <tr class="alternate"> 10 <th><?php _etag ('i18n', 'repository.form.uploader');?></th> 11 <td><?php echo $ppo->uploader ;?></td> 12 </tr> 13 <tr> 14 <th><?php _etag ('i18n', 'repository.form.comment');?></th> 15 <td><textarea cols="50" rows="5" name="comment"></textarea></td> 16 </tr> 17 <tr> 18 <td colspan="2"><input type="image" src="<?php CopixUrl::getResource ('img/tools/add.png') ;?>" alt="<?php _etag ('i18n', 'repository.form.save');?>"></td> 19 </table> 20 </form> 1 <form id="uploadform" action="<?php echo _url ('repository|file|validform');?>" enctype="multipart/form-data" method="post"> 2 <div class="content"> 3 <fieldset > 4 <legend><?php _etag ('i18n', 'repository.form.title'); ?></legend> 5 <table style="vertical-align:top;"> 6 <tr> 7 <td> 8 <?php _etag ('i18n', 'repository.form.titlefile'); ?> 9 </td> 10 <td> 11 <input name="file_title" id="file_title" type="text" style="width: 200px" /> 12 </td> 13 </tr> 14 <tr> 15 <td> 16 <?php _etag ('i18n', 'repository.form.fileupload'); ?> 17 </td> 18 <td> 19 <input type="file" name="resume_degraded" id="resume_degraded" /> (2 MB max)<br/> 20 </td> 21 </tr> 22 <tr> 23 <td> 24 <?php _etag ('i18n', 'repository.form.category'); ?> 25 </td> 26 <td> 27 <?php // @todo Utiliser le système générique de categories ?> 28 <select name="file_category" id="file_category" style="width: 200px" /> 29 <option value="">---</option> 30 <option value="1">Categorie 1</option> 31 </select> 32 </td> 33 </tr> 34 <tr> 35 <td> 36 Sous catégorie 37 </td> 38 <td> 39 <?php // @todo Idem précedemment ?> 40 <select name="file_subcategory" id="file_subcategory" style="width: 200px" /> 41 <option value="">---</option> 42 <option value="1">Sous catégorie 1</option> 43 </select> 44 </td> 45 </tr> 46 <tr> 47 <td> 48 <?php _etag ('i18n', 'repository.form.comment');?> 49 </td> 50 <td> 51 <textarea name="file_comment" id="file_comment" cols="0" rows="0" style="width: 400px; height: 100px;"></textarea> 52 </td> 53 </tr> 54 </table> 55 <br /> 56 <input type="submit" value="<?php _etag ('i18n', 'repository.form.submit');?>" id="btnSubmit" /> 57 </fieldset> 58 </div> 59 </form> trunk/project/modules/devel/tools/repository/zones/uploadform.zone.php
r3009 r3120 10 10 11 11 /** 12 * Zone d'affichage du formulaire d'upload 13 * @todo : Ajouter un 12 * Zone d'affichage du formulaire d'upload 13 * @todo : Ajouter un 14 14 * @package tools 15 * @subpackage repository 15 * @subpackage repository 16 16 */ 17 17 class ZoneUploadForm extends CopixZone{ 18 18 19 19 /** 20 20 * Crééation du contenu … … 22 22 * @param boolean $toReturn 23 23 */ 24 pr ivatefunction _createContent (& $toReturn){24 protected function _createContent (& $toReturn){ 25 25 $tpl = new CopixTpl (); 26 $tpl-> assign ('uploader', 'Test'); 26 27 $jsCode = $this->_getJsCode (); 27 28 CopixHTMLHeader::addJsCode ($jsCode); 29 CopixHTMLHeader::addJSLink(_resource ('js/swfupload/swfupload.js')); 30 CopixHTMLHeader::addJSLink(_resource ('js/swfupload/swfupload.graceful_degradation.js')); 31 // CopixHTMLHeader::addJSLink(_resource ('js/swfupload/swfupload.queue.js')); 32 CopixHTMLHeader::addJSLink(_resource ('js/swfupload/handlers.js')); 28 33 $toReturn = $tpl->fetch ('upload.form.php'); 29 34 return true; 30 35 } 31 36 32 37 /** 33 38 * Retourner le code JS nécessaire à l'upload … … 35 40 */ 36 41 private function _getJsCode (){ 37 return ''; 42 $upload_url = _url ('repository|ajax|upload'); 43 $flash_url = '../../..//swf/swfupload_f9.swf'; 44 45 $upload_script = <<<EOF 46 var swf_upload_control; 47 48 window.onload = function(){ 49 swf_upload_control = new SWFUpload({ 50 // Backend settings 51 upload_url: "$upload_url", // Relative to the SWF file, you can use an absolute URL as well. 52 file_post_name: "resume_file", 53 54 // Flash file settings 55 file_size_limit: "10240", // 10 MB 56 file_types: "*.*", // or you could use something like: "*.doc;*.wpd;*.pdf", 57 file_types_description: "All Files", 58 file_upload_limit: "0", // Even though I only want one file I want the user to be able to try again if an upload fails 59 file_queue_limit: "1", // this isn't needed because the upload_limit will automatically place a queue limit 60 // Event handler settings 61 swfupload_loaded_handler: myShowUI, 62 63 //file_dialog_start_handler : fileDialogStart, // I don't need to override this handler 64 file_queued_handler: fileQueued, 65 file_queue_error_handler: fileQueueError, 66 file_dialog_complete_handler: fileDialogComplete, 67 68 //upload_start_handler : uploadStart, // I could do some client/JavaScript validation here, but I don't need to. 69 upload_progress_handler: uploadProgress, 70 upload_error_handler: uploadError, 71 upload_success_handler: uploadSuccess, 72 upload_complete_handler: uploadComplete, 73 74 // Flash Settings 75 flash_url: "$flash_url", // Relative to this file 76 // UI settings 77 swfupload_element_id: "flashUI", // setting for the graceful degradation plugin 78 degraded_element_id: "degradedUI", 79 80 custom_settings: { 81 progress_target: "fsUploadProgress", 82 upload_successful: false 83 }, 84 85 // Debug settings 86 debug: false 87 }); 88 } 89 90 function myShowUI(){ 91 var btnSubmit = document.getElementById("btnSubmit"); 92 var txtFileTitle = document.getElementById("file_title"); 93 var selectFileCategory = document.getElementById("file_category"); 94 var selectFileSubCategory = document.getElementById("file_subcategory"); 95 96 btnSubmit.onclick = doSubmit; 97 btnSubmit.disabled = true; 98 99 txtFileTitle.onchange = validateForm; 100 selectFileCategory.onchange = validateForm; 101 selectFileSubCategory.onchange = validateForm; 102 103 SWFUpload.swfUploadLoaded.apply(this); // Let SWFUpload finish loading the UI. 104 validateForm(); 105 106 } 107 108 function validateForm() { 109 var txtFileTitle = document.getElementById("file_title"); 110 var selectFileCategory = document.getElementById("file_category"); 111 var selectFileSubCategory = document.getElementById("file_subcategory"); 112 var txtFileName = document.getElementById("txtFileName"); 113 114 var is_valid = true; 115 if (txtFileTitle.value === "") is_valid = false; 116 if (selectFileCategory.value === "") is_valid = false; 117 if (selectFileSubCategory.value === "") is_valid = false; 118 if (txtFileName.value === "") is_valid = false; 119 120 document.getElementById("btnSubmit").disabled = !is_valid; 121 122 } 123 124 function fileBrowse(){ 125 var txtFileName = document.getElementById("txtFileName"); 126 txtFileName.value = ""; 127 128 this.cancelUpload(); 129 this.selectFile(); 130 } 131 132 133 // Called by the submit button to start the upload 134 function doSubmit(e){ 135 e = e || window.event; 136 if (e.stopPropagation) 137 e.stopPropagation(); 138 e.cancelBubble = true; 139 140 try { 141 swf_upload_control.startUpload(); 142 } 143 catch (ex) { 144 145 } 146 return false; 147 } 148 149 // Called by the queue complete handler to submit the form 150 function uploadDone(){ 151 try { 152 document.getElementById("uploadform").submit(); 153 } 154 catch (ex) { 155 alert("Error submitting form"); 156 } 157 } 158 159 EOF; 160 return $upload_script; 38 161 } 39 162 40 163 }
