[evolvis-commits] r16638: docman new feature : monitoring document↵ - missing delete notice↵ - directory =?UTF-8?Q?=20monitoring=20under=20pre?==?UTF-8?Q?paration=20?=(db ready)
mirabilos at evolvis.org
mirabilos at evolvis.org
Tue Mar 1 01:29:17 CET 2011
Author: mirabilos
Date: 2011-03-01 01:29:16 +0100 (Tue, 01 Mar 2011)
New Revision: 16638
Added:
trunk/gforge_base/evolvisforge-5.1/src/common/docman/actions/monitorfile.php
trunk/gforge_base/evolvisforge-5.1/src/db/20101029-docman-monitoring.sql
trunk/gforge_base/evolvisforge-5.1/src/www/themes/funky/images/docman/monitor-adddocument.png
trunk/gforge_base/evolvisforge-5.1/src/www/themes/funky/images/docman/monitor-removedocument.png
trunk/gforge_base/evolvisforge-5.1/src/www/themes/gforge/images/docman/monitor-adddocument.png
trunk/gforge_base/evolvisforge-5.1/src/www/themes/gforge/images/docman/monitor-removedocument.png
Modified:
trunk/gforge_base/evolvisforge-5.1/src/common/docman/Document.class.php
trunk/gforge_base/evolvisforge-5.1/src/common/docman/views/listfile.php
trunk/gforge_base/evolvisforge-5.1/src/www/docman/index.php
Log:
docman new feature : monitoring document
- missing delete notice
- directory monitoring under preparation (db ready)
Modified: trunk/gforge_base/evolvisforge-5.1/src/common/docman/Document.class.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/common/docman/Document.class.php 2011-03-01 00:29:14 UTC (rev 16637)
+++ trunk/gforge_base/evolvisforge-5.1/src/common/docman/Document.class.php 2011-03-01 00:29:16 UTC (rev 16638)
@@ -479,6 +479,90 @@
}
/**
+ * getMonitoredUserEmailAddress - get the email addresses of users who monitor this file
+ *
+ * @return string The list of emails comma separated
+ */
+ function getMonitoredUserEmailAddress() {
+ $result = db_query_params('select users.email from users,docdata_monitored_docman where users.user_id = docdata_monitored_docman.user_id and docdata_monitored_docman.doc_id = $1', array ($this->getID()));
+ if (!$result || db_numrows($result) < 1) {
+ return NULL;
+ } else {
+ $values = '';
+ $comma = '';
+ $i = 0;
+ while ($arr = db_fetch_array($result)) {
+ if ( $i > 0 )
+ $comma = ',';
+
+ $values .=$comma.$arr['email'];
+ $i++;
+ }
+ }
+ return $values;
+ }
+
+ /**
+ * isMonitoredBy - get the monitored status of this document for a specific user id.
+ *
+ * @param int User ID
+ * @return bool true if monitored by this user
+ */
+ function isMonitoredBy($userid = 'ALL') {
+ if ( $userid == 'ALL' ) {
+ $condition = '';
+ } else {
+ $condition = 'user_id='.$userid.' AND';
+ }
+ $result = db_query_params('SELECT * FROM docdata_monitored_docman WHERE '.$condition.' doc_id=$1',
+ array ($this->getID()));
+
+ if (!$result || db_numrows($result) < 1)
+ return false;
+
+ return true;
+ }
+
+ /**
+ * removeMonitoredBy - remove this document for a specific user id for monitoring.
+ *
+ * @param int User ID
+ * @return bool true if success
+ */
+ function removeMonitoredBy($userid) {
+ $result = db_query_params('DELETE FROM docdata_monitored_docman WHERE doc_id=$1 AND user_id=$2',
+ array ($this->getID(), $userid));
+
+ if (!$result) {
+ $this->setError(_('Unable To Remove Monitor').' : '.db_error());
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * addMonitoredBy - add this document for a specific user id for monitoring.
+ *
+ * @param int User ID
+ * @return bool true if success
+ */
+ function addMonitoredBy($userid) {
+ $result = db_query_params('SELECT * FROM docdata_monitored_docman WHERE user_id=$1 AND doc_id=$2',
+ array ($userid, $this->getID()));
+
+ if (!$result || db_numrows($result) < 1) {
+ $result = db_query_params('INSERT INTO docdata_monitored_docman (doc_id,user_id) VALUES ($1,$2)',
+ array ($this->getID(), $userid));
+
+ if (!$result) {
+ $this->setError(_('Unable To Add Monitor').' : '.db_error());
+ return false;
+ }
+ }
+ return true;
+ }
+
+ /**
* setState - set the stateid of the document.
*
* @param int The state id of the doc_states table.
@@ -671,16 +755,19 @@
return false;
}
}
-
+
$this->sendNotice(false);
return true;
}
/**
- * sendNotice - Notifies of document submissions
- */
+ * sendNotice - Notifies of document submissions
+ */
function sendNotice ($new=true) {
$BCC = $this->Group->getDocEmailAddress();
+ if ($this->isMonitoredBy('ALL')) {
+ $BCC .= $this->getMonitoredUserEmailAddress();
+ }
if (strlen($BCC) > 0) {
$subject = '['.$this->Group->getPublicName().'] New document - '.$this->getName();
$body = "Project: ".$this->Group->getPublicName()."\n";
@@ -698,6 +785,9 @@
return true;
}
+ /**
+ * delete - Delete this file
+ */
function delete() {
$perm =& $this->Group->getPermission ();
if (!$perm || !is_object($perm) || !$perm->isDocEditor()) {
@@ -715,12 +805,15 @@
switch ($this->Group->getStorageAPI()) {
case 'DB':
- break;
+ break;
default:
$this->setError(_('Error Deleting Document: No Storage API'));
db_rollback();
return false;
- }
+ }
+
+ // we should be able to send a notice that this doc has been deleted .... but we need to rewrite sendNotice
+ //$this->sendNotice(false);
return true;
}
}
Added: trunk/gforge_base/evolvisforge-5.1/src/common/docman/actions/monitorfile.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/common/docman/actions/monitorfile.php (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/src/common/docman/actions/monitorfile.php 2011-03-01 00:29:16 UTC (rev 16638)
@@ -0,0 +1,65 @@
+<?php
+/**
+ * FusionForge Documentation Manager
+ *
+ * Copyright 2010, Franck Villaume - Capgemini
+ * http://fusionforge.org
+ *
+ * This file is part of FusionForge.
+ *
+ * FusionForge 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.
+ *
+ * FusionForge 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 FusionForge; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/* please do not add require here : use www/docman/index.php to add require */
+/* global variables used */
+global $dirid; //id of doc_group
+global $group_id; // id of group
+global $LUSER; // User object
+
+if (!forge_check_perm ('docman', $group_id, 'approve')) {
+ $return_msg = _('Document Action Denied');
+ session_redirect('/docman/?group_id='.$group_id.'&view=listfile&dirid='.$dirid.'&warning_msg='.urlencode($return_msg));
+} else {
+
+ $fileid = getIntFromRequest('fileid');
+ $option = getStringFromRequest('option');
+ $d= new Document($g,$fileid);
+
+ if ($d->isError())
+ session_redirect('/docman/?group_id='.$group_id.'&view=listfile&dirid='.$dirid.'&error_msg='.urlencode($d->getErrorMessage()));
+
+ switch ($option) {
+ case "add":
+ if (!$d->addMonitoredBy($LUSER->getID())) {
+ session_redirect('/docman/?group_id='.$group_id.'&view=listfile&dirid='.$dirid.'&error_msg='.urlencode($d->getErrorMessage()));
+ } else {
+ $feedback = _('Monitoring started');
+ }
+ break;
+ case "remove":
+ if (!$d->removeMonitoredBy($LUSER->getID())) {
+ session_redirect('/docman/?group_id='.$group_id.'&view=listfile&dirid='.$dirid.'&error_msg='.urlencode($d->getErrorMessage()));
+ } else {
+ $feedback = _('Monitoring stopped');
+ }
+ break;
+ default:
+ $error_msg = _('Docman : monitoring action unknown');
+ session_redirect('/docman/?group_id='.$group_id.'&view=listfile&dirid='.$dirid.'&error_msg='.urlencode($error_msg));
+ }
+
+ session_redirect('/docman/?group_id='.$group_id.'&view=listfile&dirid='.$dirid.'&feedback='.urlencode($feedback));
+}
+?>
Modified: trunk/gforge_base/evolvisforge-5.1/src/common/docman/views/listfile.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/common/docman/views/listfile.php 2011-03-01 00:29:14 UTC (rev 16637)
+++ trunk/gforge_base/evolvisforge-5.1/src/common/docman/views/listfile.php 2011-03-01 00:29:16 UTC (rev 16638)
@@ -48,16 +48,17 @@
controller = new DocManListFileController({
groupId: <?php echo $group_id ?>,
tipsyElements: [
- {selector: '#docman-addnewfile', options:{delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '#docman-addsubdirectory', options:{delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '#docman-editdirectory', options:{delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '#docman-deletedirectory', options:{delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '.docman-viewfile', options:{gravity: 'nw', delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '.docman-reserveddocument', options:{delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '.docman-movetotrash', options:{gravity: 'ne', delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '.docman-editfile', options:{gravity: 'ne', delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '.docman-releasereservation', options:{gravity: 'ne',delayIn: 1000, delayOut: 500, fade: true}},
- {selector: '.docman-reservefile', options:{gravity: 'ne', delayIn: 1000, delayOut: 500, fade: true}}
+ {selector: '#docman-addnewfile', options:{delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '#docman-addsubdirectory', options:{delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '#docman-editdirectory', options:{delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '#docman-deletedirectory', options:{delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '.docman-viewfile', options:{gravity: 'nw', delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '.docman-reserveddocument', options:{delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '.docman-movetotrash', options:{gravity: 'ne', delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '.docman-editfile', options:{gravity: 'ne', delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '.docman-releasereservation', options:{gravity: 'ne',delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '.docman-reservefile', options:{gravity: 'ne', delayIn: 500, delayOut: 0, fade: true}},
+ {selector: '.docman-monitorfile', options:{gravity: 'ne', delayIn: 500, delayOut: 0, fade: true}}
],
divAddDirectory: jQuery('#addsubdocgroup'),
@@ -67,7 +68,7 @@
buttonAddNewFile: jQuery('#docman-addnewfile'),
buttonEditDirectory: jQuery('#docman-editdirectory'),
docManURL: '<?php util_make_url("docman") ?>',
- lockIntervalDelay: 60000 //ms
+ lockIntervalDelay: 60000 //in microsecond and if you change this value, please update the check value 600
});
});
@@ -84,7 +85,7 @@
}
if (forge_check_perm ('docman', $group_id, 'submit')) {
- echo '<a href="#" id="docman-addnewfile" title="'. _('Add a new file') . '" >'. html_image('docman/insert-file.png',22,22,array('alt'=>'addfile')). '</a>';
+ echo '<a href="#" id="docman-addnewfile" title="'. _('Add a new document') . '" >'. html_image('docman/insert-file.png',22,22,array('alt'=>'addfile')). '</a>';
}
echo '</h3>';
@@ -119,12 +120,14 @@
default:
$docurl=util_make_url ('/docman/view.php/'.$group_id.'/'.$d->getID().'/'.urlencode($d->getFileName()));
}
- echo '<td><a href="'.$docurl.'" class="docman-viewfile" title="'._('View this file').'" >';
+ echo '<td><a href="'.$docurl.'" class="docman-viewfile" title="'._('View this document').'" >';
switch ($d->getFileType()) {
case "image/png":
case "image/jpeg":
case "image/gif":
case "image/tiff":
+ case "image/vnd.microsoft.icon":
+ case "image/svg+xml":
echo html_image('docman/file_type_image.png',22,22,array('alt'=>$d->getFileType()));
break;
case "application/pdf":
@@ -138,11 +141,13 @@
echo html_image('docman/file_type_plain.png',22,22,array('alt'=>$d->getFileType()));
break;
case "application/msword":
+ case "application/vnd.openxmlformats-officedocument.wordprocessingml.document":
case "application/vnd.oasis.opendocument.text":
echo html_image('docman/file_type_writer.png',22,22,array('alt'=>$d->getFileType()));
break;
case "application/vnd.ms-excel":
case "application/vnd.oasis.opendocument.spreadsheet":
+ case "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":
echo html_image('docman/file_type_spreadsheet.png',22,22,array('alt'=>$d->getFileType()));
break;
case "application/vnd.oasis.opendocument.presentation":
@@ -206,25 +211,34 @@
if ($d->getLocked()) {
if ($d->getLockedBy() == $LUSER->getID()) {
$d->setLock(0);
+ /* if you change the 60000 value above, please update here too */
} elseif ((time() - $d->getLockdate()) > 600) {
$d->setLock(0);
}
}
if (!$d->getLocked() && !$d->getReserved()) {
- echo '<a href="?group_id='.$group_id.'&action=trashfile&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-movetotrash" title="'. _('Move this file to trash') .'" >'.html_image('docman/trash-empty.png',22,22,array('alt'=>_('Move to trash this file'))). '</a>';
- echo '<a href="#" onclick="javascript:controller.toggleEditFileView(\''.$d->getID().'\')" class="docman-editfile" title="'. _('Edit this file') .'" >'.html_image('docman/edit-file.png',22,22,array('alt'=>_('Edit this file'))). '</a>';
- echo '<a href="?group_id='.$group_id.'&action=reservefile&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-reservefile" title="'. _('Reserve this file for later edition') .'" >'.html_image('docman/reserve-document.png',22,22,array('alt'=>_('Reserve this document'))). '</a>';
+ echo '<a href="?group_id='.$group_id.'&action=trashfile&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-movetotrash" title="'. _('Move this document to trash') .'" >'.html_image('docman/trash-empty.png',22,22,array('alt'=>_('Move to trash this document'))). '</a>';
+ echo '<a href="#" onclick="javascript:controller.toggleEditFileView(\''.$d->getID().'\')" class="docman-editfile" title="'. _('Edit this document') .'" >'.html_image('docman/edit-file.png',22,22,array('alt'=>_('Edit this document'))). '</a>';
+ echo '<a href="?group_id='.$group_id.'&action=reservefile&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-reservefile" title="'. _('Reserve this document for later edition') .'" >'.html_image('docman/reserve-document.png',22,22,array('alt'=>_('Reserve this document'))). '</a>';
} else {
if ($d->getReservedBy() != $LUSER->getID()) {
if (forge_check_perm ('docman', $group_id, 'admin')) {
echo '<a href="?group_id='.$group_id.'&action=enforcereserve&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-enforcereservation" title="'. _('Enforce reservation') .'" >'.html_image('docman/enforce-document.png',22,22,array('alt'=>_('Enforce reservation')));
}
} else {
- echo '<a href="?group_id='.$group_id.'&action=trashfile&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-movetotrash" title="'. _('Move this file to trash') .'" >'.html_image('docman/trash-empty.png',22,22,array('alt'=>_('Move to trash this file'))). '</a>';
- echo '<a href="#" onclick="javascript:controller.toggleEditFileView(\''.$d->getID().'\')" class="docman-editfile" title="'. _('Edit this file') .'" >'.html_image('docman/edit-file.png',22,22,array('alt'=>_('Edit this file'))). '</a>';
+ echo '<a href="?group_id='.$group_id.'&action=trashfile&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-movetotrash" title="'. _('Move this document to trash') .'" >'.html_image('docman/trash-empty.png',22,22,array('alt'=>_('Move to trash this document'))). '</a>';
+ echo '<a href="#" onclick="javascript:controller.toggleEditFileView(\''.$d->getID().'\')" class="docman-editfile" title="'. _('Edit this document') .'" >'.html_image('docman/edit-file.png',22,22,array('alt'=>_('Edit this document'))). '</a>';
echo '<a href="?group_id='.$group_id.'&action=releasefile&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-releasereservation" title="'. _('Release reservation') .'" >'.html_image('docman/release-document.png',22,22,array('alt'=>_('Release reservation'))). '</a>';
}
}
+ if ($d->isMonitoredBy($LUSER->getID())) {
+ $option='remove';
+ $titleMonitor= _('Stop monitoring this document');
+ } else {
+ $option='add';
+ $titleMonitor= _('Start monitoring this document');
+ }
+ echo '<a href="?group_id='.$group_id.'&action=monitorfile&option='.$option.'&view=listfile&dirid='.$dirid.'&fileid='.$d->getID().'" class="docman-monitorfile" title="'.$titleMonitor.'" >'.html_image('docman/monitor-'.$option.'document.png',22,22,array('alt'=>$titleMonitor)). '</a>';
echo '</td>';
}
echo '</tr>';
Added: trunk/gforge_base/evolvisforge-5.1/src/db/20101029-docman-monitoring.sql
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/db/20101029-docman-monitoring.sql (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/src/db/20101029-docman-monitoring.sql 2011-03-01 00:29:16 UTC (rev 16638)
@@ -0,0 +1,26 @@
+CREATE SEQUENCE docdata_monitored_docman_pk_seq
+ START WITH 1
+ INCREMENT BY 1
+ MAXVALUE 2147483647
+ NO MINVALUE
+ CACHE 1;
+
+CREATE TABLE docdata_monitored_docman (
+ monitor_id integer DEFAULT nextval('docdata_monitored_docman_pk_seq'::text) NOT NULL,
+ doc_id integer DEFAULT 0 NOT NULL,
+ user_id integer DEFAULT 0 NOT NULL
+);
+
+CREATE SEQUENCE docgroup_monitored_docman_pk_seq
+ START WITH 1
+ INCREMENT BY 1
+ MAXVALUE 2147483647
+ NO MINVALUE
+ CACHE 1;
+
+CREATE TABLE docgroup_monitored_docman (
+ monitor_id integer DEFAULT nextval('docgroup_monitored_docman_pk_seq'::text) NOT NULL,
+ docgroup_id integer DEFAULT 0 NOT NULL,
+ user_id integer DEFAULT 0 NOT NULL
+);
+
Modified: trunk/gforge_base/evolvisforge-5.1/src/www/docman/index.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/www/docman/index.php 2011-03-01 00:29:14 UTC (rev 16637)
+++ trunk/gforge_base/evolvisforge-5.1/src/www/docman/index.php 2011-03-01 00:29:16 UTC (rev 16638)
@@ -97,6 +97,7 @@
case "releasefile":
case "enforcereserve":
case "lockfile":
+ case "monitorfile":
include ($gfcommon."docman/actions/$action.php");
break;
}
Added: trunk/gforge_base/evolvisforge-5.1/src/www/themes/funky/images/docman/monitor-adddocument.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/www/themes/funky/images/docman/monitor-adddocument.png (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/src/www/themes/funky/images/docman/monitor-adddocument.png 2011-03-01 00:29:16 UTC (rev 16638)
@@ -0,0 +1,11 @@
+PNG
+
+
+IHDR Ä´l; sBIT|d pHYs a aÁ0Uú tEXtSoftware www.inkscape.orgî< IDATxÚ¥[heÇÿ3óÍÌnvsÙ[²Ùd7»iÒ&ªj#XµJ
5Vx©Km"¥1ä! hÕ¾ÕB¥
+¥46·Æ¼16j.Íunuì&{ÍÎÕ/ó Mk·æÌùæüÎÎÌ|Ã躻éò1<³ëÀ±O"¸m¦@Kaõr2yåÉ/(E¿Æ^yþ5ÜCÛ(ÏlJf¤ZUUQè(ÍUÊ&óË,/ x÷;¨ÿ»öÃTªðÎ"³ÝªJàxSCÿÅO=99&o¬ÞUÿ`L!"xQÀмàü}9/t¸À® ¼U`X]Ó¨y+Á±Â;° Ëz%ÓÐas¸ mØs±ÙbS!#ë:=4Bp='°®Hë6
+M¡&U£J&Cɦ¯û^íÌ ìÛdis3Ý¥Ë)hÙ8 ¤@×4gXô*'°!5ÛQp*
+MÞÄíàÔTôë»x=ϲéD|:
®C L¬¼áhÿCwQ®(
+FÇo#<J}~Tä8¼>.XQ4o½%ày±:üJQÔë¸k×^ûµlF×áp¼uéïõ
¼üÂóërdì0»ª`ö</¾½§O¦ÓÁLFneÕJ&û϶ý¾+¾qÇÝmf.Òn2g
+¬á8,ËÐ<5yß;Ðò- ¬ù¸ZijÓ{{Ñì6WY¹uuuS²,~ã7oöçWÍB%O G8l·2à|., £"466⯱1FUneeñx¦Vï®ÝÝ ÜE*ý#:d(ûûú`·Û¨¨ÀôìâqMlcãF$KÆ3p8(,**ëíî9ŬE¥xr=l2 0<xÂ
Tt8qül¬ß?Fg r<ê÷íÍîÄèèXÅ0rc>»e^/"i-MfçC-
+íªBT²5º-2@4RîúCpzðÞéf£»»ã(J/ÃKïL.a)¢å½¯t
+ËÕîw-Ñ"R×:«c9<øz~¼º2+l"á° |x>_
adgÍ#ðx«SÓSÓ)>ë|¬4&]ÀlÎüç×ÖÖÆîÙû¢ßSj;Äj\@çôò¾«vþàѳIæ#'&ê÷èÕ4}n#½úÛÀ¥ÙÖÖVíýÓÍÅ3Á¹¦µ¹§Y7ä¯Ùóö?ñÈRdÕ IEND®B`
\ No newline at end of file
Added: trunk/gforge_base/evolvisforge-5.1/src/www/themes/funky/images/docman/monitor-removedocument.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/www/themes/funky/images/docman/monitor-removedocument.png (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/src/www/themes/funky/images/docman/monitor-removedocument.png 2011-03-01 00:29:16 UTC (rev 16638)
@@ -0,0 +1,15 @@
+PNG
+
+
+IHDR Ä´l; sRGB ®Îé bKGD ÿ ÿ ÿ ½§ pHYs a aÁ0Uú tIMEÚ!°ßF dIDAT8Ë[lTUÿ½Ï>çÌ¥ítvZjëô\¦UUK ¤b1Äh4!1©D ÑD"Fb
+¡ )RzQ^Ôx¡-Ói;í´ÓNg:·3sæ½}h4¨\¤ëq½¾¬õïõw¯¼C:¿çÆ]¹
+ÐîÈË9Hj«©ÄXn^~VUå¯#ӧ׿ô.¿Ýª`³Z/&4}±ip¸ÜpεÊêy «î¦7Kv·¼¿%L.f2ZZIÃ4uH²¥¾ûÈ%s1yó
Õ(¯ºÄâÂxpªªBV\\ÂÈ ï,ɲ£¸¨©d²ÊjÊ 8GÅ"/&ý¿9æ4qAk\QJ !³L(@®Bè3N÷4¶Úsbß ààUÅ`LéXúÂà¿ Â bê ÏÂȤº+Vm=3'°§þ±t:Õ.²IðL0Ù$`hCÿÇ ô3³' g4
+<Æ°¯ÑO¾ô=uCß6üÒظñÀ¿X·ÏäùéX¦â±lcÃÐN}.zró]55ûþz÷Zw¿µvùéúe÷ïo¾Gn·NdèjÂ0»ï÷^Èca¹<0#Q33o9òù
+
+R££0ú¥KV´ÝÖÒÁÑàËÅ´KZV{x¥ÁÎpÆã¢`ÍêCf" 1<ÄUç<:ÕÓóQÛÀÀ77½ãp8âÒuú:'üEM-¦ÒF
ÕÍúOȶŮK" >B:ÏAôô wÝúµ{{{ù¤ðMì±XÔ]y9
+$
+J) J)úû®áÓÁ;1çBp»!Ùluéu¨íÏf³[¶m¡?0ù¬,±ÝvI$
+!¡ðùÑÚÚ
+ÿÐû®£Ñ0À|×IkbkUNvvâi,ð.ñPJ Èì! ¥BY£o»º0oÊ2Ö´@ ©òr®{ûòWV"=2U8<É$ùù÷t´ÛÁÂÓzQ,-àBÀ49(U¨¿¯G[>ê(óxpëñã½L/ZqÓĹhË8Gú®]E©A(Å÷2ßP`w
§zÖ®`BYðÉÇÁC¨(R7ÂY¸¹+êðÖ;q¥§íígñÃT¡Ô(¼@õ1â6é³æÏÖ7lɵÛÔeT""+ 8(¡ÈÍÉAGÛ)l¨ÊCáò·aÝú
+0LG¾Þ¥$»~¾cÑÛÚêxr%\Í8µ¤©©.}hCyÉ|ç&Ê¥
+!Òó]m+¾?óEÈ$Èc[_ý£îѵÁD¦íÂù㾦¦&¾sÇîëþÁKx°ºÊånÿ²9ëÍsÔ IEND®B`
\ No newline at end of file
Added: trunk/gforge_base/evolvisforge-5.1/src/www/themes/gforge/images/docman/monitor-adddocument.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/www/themes/gforge/images/docman/monitor-adddocument.png (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/src/www/themes/gforge/images/docman/monitor-adddocument.png 2011-03-01 00:29:16 UTC (rev 16638)
@@ -0,0 +1,11 @@
+PNG
+
+
+IHDR Ä´l; sBIT|d pHYs a aÁ0Uú tEXtSoftware www.inkscape.orgî< IDATxÚ¥[heÇÿ3óÍÌnvsÙ[²Ùd7»iÒ&ªj#XµJ
5Vx©Km"¥1ä! hÕ¾ÕB¥
+¥46·Æ¼16j.Íunuì&{ÍÎÕ/ó Mk·æÌùæüÎÎÌ|Ã躻éò1<³ëÀ±O"¸m¦@Kaõr2yåÉ/(E¿Æ^yþ5ÜCÛ(ÏlJf¤ZUUQè(ÍUÊ&óË,/ x÷;¨ÿ»öÃTªðÎ"³ÝªJàxSCÿÅO=99&o¬ÞUÿ`L!"xQÀмàü}9/t¸À® ¼U`X]Ó¨y+Á±Â;° Ëz%ÓÐas¸ mØs±ÙbS!#ë:=4Bp='°®Hë6
+M¡&U£J&Cɦ¯û^íÌ ìÛdis3Ý¥Ë)hÙ8 ¤@×4gXô*'°!5ÛQp*
+MÞÄíàÔTôë»x=ϲéD|:
®C L¬¼áhÿCwQ®(
+FÇo#<J}~Tä8¼>.XQ4o½%ày±:üJQÔë¸k×^ûµlF×áp¼uéïõ
¼üÂóërdì0»ª`ö</¾½§O¦ÓÁLFneÕJ&û϶ý¾+¾qÇÝmf.Òn2g
+¬á8,ËÐ<5yß;Ðò- ¬ù¸ZijÓ{{Ñì6WY¹uuuS²,~ã7oöçWÍB%O G8l·2à|., £"466⯱1FUneeñx¦Vï®ÝÝ ÜE*ý#:d(ûûú`·Û¨¨ÀôìâqMlcãF$KÆ3p8(,**ëíî9ŬE¥xr=l2 0<xÂ
Tt8qül¬ß?Fg r<ê÷íÍîÄèèXÅ0rc>»e^/"i-MfçC-
+íªBT²5º-2@4RîúCpzðÞéf£»»ã(J/ÃKïL.a)¢å½¯t
+ËÕîw-Ñ"R×:«c9<øz~¼º2+l"á° |x>_
adgÍ#ðx«SÓSÓ)>ë|¬4&]ÀlÎüç×ÖÖÆîÙû¢ßSj;Äj\@çôò¾«vþàѳIæ#'&ê÷èÕ4}n#½úÛÀ¥ÙÖÖVíýÓÍÅ3Á¹¦µ¹§Y7ä¯Ùóö?ñÈRdÕ IEND®B`
\ No newline at end of file
Added: trunk/gforge_base/evolvisforge-5.1/src/www/themes/gforge/images/docman/monitor-removedocument.png
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/www/themes/gforge/images/docman/monitor-removedocument.png (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/src/www/themes/gforge/images/docman/monitor-removedocument.png 2011-03-01 00:29:16 UTC (rev 16638)
@@ -0,0 +1,15 @@
+PNG
+
+
+IHDR Ä´l; sRGB ®Îé bKGD ÿ ÿ ÿ ½§ pHYs a aÁ0Uú tIMEÚ!°ßF dIDAT8Ë[lTUÿ½Ï>çÌ¥ítvZjëô\¦UUK ¤b1Äh4!1©D ÑD"Fb
+¡ )RzQ^Ôx¡-Ói;í´ÓNg:·3sæ½}h4¨\¤ëq½¾¬õïõw¯¼C:¿çÆ]¹
+ÐîÈË9Hj«©ÄXn^~VUå¯#ӧ׿ô.¿Ýª`³Z/&4}±ip¸ÜpεÊêy «î¦7Kv·¼¿%L.f2ZZIÃ4uH²¥¾ûÈ%s1yó
Õ(¯ºÄâÂxpªªBV\\ÂÈ ï,ɲ£¸¨©d²ÊjÊ 8GÅ"/&ý¿9æ4qAk\QJ !³L(@®Bè3N÷4¶Úsbß ààUÅ`LéXúÂà¿ Â bê ÏÂȤº+Vm=3'°§þ±t:Õ.²IðL0Ù$`hCÿÇ ô3³' g4
+<Æ°¯ÑO¾ô=uCß6üÒظñÀ¿X·ÏäùéX¦â±lcÃÐN}.zró]55ûþz÷Zw¿µvùéúe÷ïo¾Gn·NdèjÂ0»ï÷^Èca¹<0#Q33o9òù
+
+R££0ú¥KV´ÝÖÒÁÑàËÅ´KZV{x¥ÁÎpÆã¢`ÍêCf" 1<ÄUç<:ÕÓóQÛÀÀ77½ãp8âÒuú:'üEM-¦ÒF
ÕÍúOȶŮK" >B:ÏAôô wÝúµ{{{ù¤ðMì±XÔ]y9
+$
+J) J)úû®áÓÁ;1çBp»!Ùluéu¨íÏf³[¶m¡?0ù¬,±ÝvI$
+!¡ðùÑÚÚ
+ÿÐû®£Ñ0À|×IkbkUNvvâi,ð.ñPJ Èì! ¥BY£o»º0oÊ2Ö´@ ©òr®{ûòWV"=2U8<É$ùù÷t´ÛÁÂÓzQ,-àBÀ49(U¨¿¯G[>ê(óxpëñã½L/ZqÓĹhË8Gú®]E©A(Å÷2ßP`w
§zÖ®`BYðÉÇÁC¨(R7ÂY¸¹+êðÖ;q¥§íígñÃT¡Ô(¼@õ1â6é³æÏÖ7lɵÛÔeT""+ 8(¡ÈÍÉAGÛ)l¨ÊCáò·aÝú
+0LG¾Þ¥$»~¾cÑÛÚêxr%\Í8µ¤©©.}hCyÉ|ç&Ê¥
+!Òó]m+¾?óEÈ$Èc[_ý£îѵÁD¦íÂù㾦¦&¾sÇîëþÁKx°ºÊånÿ²9ëÍsÔ IEND®B`
\ No newline at end of file
More information about the evolvis-commits
mailing list