When undeleting an event through the list context menu, if it is part of a series ask if you want to undelete the single event or the whole series

This commit is contained in:
Nathan Gray 2013-01-14 17:21:28 +00:00
parent b283bbfb9f
commit 66b95f54b6
3 changed files with 17 additions and 2 deletions

View File

@ -848,6 +848,7 @@ class calendar_uilist extends calendar_ui
{
$actions['undelete'] = array(
'caption' => 'Un-delete',
'onExecute' => 'javaScript:cal_delete',
'icon' => 'revert',
'hint' => 'Recover this event',
'group' => $group,

View File

@ -2,7 +2,7 @@
/**
* EGroupware - eTemplates for Application calendar
* http://www.egroupware.org
* generated by soetemplate::dump4setup() 2013-01-09 14:38
* generated by soetemplate::dump4setup() 2013-01-14 10:19
*
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @package calendar
@ -55,7 +55,7 @@ $templ_data[] = array('name' => 'calendar.freetimesearch.rows','template' => '',
$templ_data[] = array('name' => 'calendar.import','template' => '','lang' => '','group' => '0','version' => '1.0.1.001','data' => 'a:1:{i:0;a:6:{s:4:"type";s:4:"grid";s:4:"data";a:5:{i:0;a:0:{}i:1;a:2:{s:1:"A";a:5:{s:4:"type";s:5:"label";s:4:"span";s:13:"all,redItalic";s:4:"name";s:3:"msg";s:7:"no_lang";s:1:"1";s:5:"align";s:6:"center";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}i:2;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:5:"label";s:9:"iCal file";}s:1:"B";a:3:{s:4:"type";s:4:"file";s:4:"name";s:9:"ical_file";s:6:"needed";s:1:"1";}}i:3;a:2:{s:1:"A";a:1:{s:4:"type";s:5:"label";}s:1:"B";a:3:{s:4:"type";s:6:"button";s:5:"label";s:6:"Import";s:4:"name";s:6:"import";}}i:4;a:2:{s:1:"A";a:2:{s:4:"type";s:5:"label";s:4:"span";s:3:"all";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}}s:4:"rows";i:4;s:4:"cols";i:2;s:5:"align";s:6:"center";s:7:"options";a:0:{}}}','size' => '','style' => '','modified' => '1131469789',);
$templ_data[] = array('name' => 'calendar.list','template' => '','lang' => '','group' => '0','version' => '1.9.003','data' => 'a:1:{i:0;a:5:{s:4:"type";s:4:"grid";s:4:"data";a:6:{i:0;a:5:{s:2:"h2";s:6:",!@msg";s:2:"h1";s:6:",!@css";s:2:"c4";s:7:"noPrint";s:1:"B";s:3:"30%";s:2:"h4";s:34:",!@nm[selectcols]=/legacy_actions/";}i:1;a:2:{s:1:"A";a:1:{s:4:"type";s:5:"label";}s:1:"B";a:3:{s:4:"type";s:4:"html";s:4:"span";s:3:"all";s:4:"name";s:3:"css";}}i:2;a:2:{s:1:"A";a:5:{s:5:"align";s:6:"center";s:7:"no_lang";s:1:"1";s:4:"name";s:3:"msg";s:4:"type";s:5:"label";s:4:"span";s:13:"all,redItalic";}s:1:"B";a:5:{s:5:"align";s:6:"center";s:7:"no_lang";s:1:"1";s:4:"name";s:3:"msg";s:4:"type";s:5:"label";s:4:"span";s:10:",redItalic";}}i:3;a:2:{s:1:"A";a:4:{s:4:"name";s:2:"nm";s:4:"size";s:18:"calendar.list.rows";s:4:"type";s:9:"nextmatch";s:4:"span";s:3:"all";}s:1:"B";a:3:{s:4:"name";s:2:"nm";s:4:"size";s:18:"calendar.list.rows";s:4:"type";s:9:"nextmatch";}}i:4;a:2:{s:1:"A";a:1:{s:4:"type";s:5:"label";}s:1:"B";a:5:{s:4:"type";s:4:"hbox";s:4:"size";s:1:"2";i:1;a:5:{s:5:"label";s:13:"Select action";s:7:"onclick";s:183:"if (!egw_globalObjectManager.getObjectById(\'calendar.list.rows\').executeActionImplementation(this, \'popup\')) alert(egw::lang(\'You need to select some entries first!\')); return false;;";s:4:"name";s:14:"legacy_actions";s:4:"type";s:10:"buttononly";s:4:"help";s:13:"Select action";}i:2;a:8:{s:5:"label";s:9:"Check all";s:7:"onclick";s:94:"egw_globalObjectManager.getObjectById(\'calendar.list.rows\').toggleAllSelected(); return false;";s:6:"needed";s:1:"1";s:4:"name";s:9:"check_all";s:4:"type";s:6:"button";s:4:"size";s:9:"arrow_ltr";s:4:"help";s:9:"Check all";s:4:"span";s:14:",checkAllArrow";}s:5:"align";s:5:"right";}}i:5;a:2:{s:1:"A";a:6:{s:5:"class";s:12:"action_popup";s:4:"name";s:12:"delete_popup";s:4:"type";s:3:"box";s:4:"size";s:1:"1";i:1;a:6:{s:5:"class";s:6:"prompt";s:4:"type";s:4:"vbox";s:4:"size";s:1:"3";i:1;a:3:{s:4:"type";s:5:"label";s:5:"label";s:6:"Delete";s:4:"span";s:13:",promptheader";}i:2;a:2:{s:4:"type";s:5:"label";s:5:"label";s:77:"Do you want to delete this event as an exception, or delete the whole series?";}i:3;a:5:{s:4:"type";s:4:"hbox";s:4:"size";s:1:"3";i:1;a:4:{s:5:"label";s:16:"Delete exception";s:7:"onclick";s:36:"nm_submit_popup(this); return false;";s:4:"name";s:6:"delete";s:4:"type";s:6:"button";}i:2;a:4:{s:5:"label";s:13:"Delete series";s:7:"onclick";s:74:"nm_popup_action.id = \'delete_series\'; nm_submit_popup(this); return false;";s:4:"name";s:13:"delete_series";s:4:"type";s:6:"button";}i:3;a:3:{s:5:"label";s:6:"Cancel";s:7:"onclick";s:35:"nm_hide_popup(this,\'delete_popup\');";s:4:"type";s:10:"buttononly";}}}s:4:"span";s:20:",action_popup prompt";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}}s:4:"cols";i:2;s:4:"rows";i:5;s:4:"size";s:4:"100%";}}','size' => '100%','style' => '.noWrap { white-space: nowrap; }
$templ_data[] = array('name' => 'calendar.list','template' => '','lang' => '','group' => '0','version' => '1.9.003','data' => 'a:1:{i:0;a:5:{s:4:"type";s:4:"grid";s:4:"data";a:7:{i:0;a:5:{s:2:"h2";s:6:",!@msg";s:2:"h1";s:6:",!@css";s:2:"c4";s:7:"noPrint";s:1:"B";s:3:"30%";s:2:"h4";s:34:",!@nm[selectcols]=/legacy_actions/";}i:1;a:2:{s:1:"A";a:1:{s:4:"type";s:5:"label";}s:1:"B";a:3:{s:4:"type";s:4:"html";s:4:"span";s:3:"all";s:4:"name";s:3:"css";}}i:2;a:2:{s:1:"A";a:5:{s:5:"align";s:6:"center";s:7:"no_lang";s:1:"1";s:4:"name";s:3:"msg";s:4:"type";s:5:"label";s:4:"span";s:13:"all,redItalic";}s:1:"B";a:5:{s:5:"align";s:6:"center";s:7:"no_lang";s:1:"1";s:4:"name";s:3:"msg";s:4:"type";s:5:"label";s:4:"span";s:10:",redItalic";}}i:3;a:2:{s:1:"A";a:4:{s:4:"name";s:2:"nm";s:4:"size";s:18:"calendar.list.rows";s:4:"type";s:9:"nextmatch";s:4:"span";s:3:"all";}s:1:"B";a:3:{s:4:"name";s:2:"nm";s:4:"size";s:18:"calendar.list.rows";s:4:"type";s:9:"nextmatch";}}i:4;a:2:{s:1:"A";a:1:{s:4:"type";s:5:"label";}s:1:"B";a:5:{s:4:"type";s:4:"hbox";s:4:"size";s:1:"2";i:1;a:5:{s:5:"label";s:13:"Select action";s:7:"onclick";s:183:"if (!egw_globalObjectManager.getObjectById(\'calendar.list.rows\').executeActionImplementation(this, \'popup\')) alert(egw::lang(\'You need to select some entries first!\')); return false;;";s:4:"name";s:14:"legacy_actions";s:4:"type";s:10:"buttononly";s:4:"help";s:13:"Select action";}i:2;a:8:{s:5:"label";s:9:"Check all";s:7:"onclick";s:94:"egw_globalObjectManager.getObjectById(\'calendar.list.rows\').toggleAllSelected(); return false;";s:6:"needed";s:1:"1";s:4:"name";s:9:"check_all";s:4:"type";s:6:"button";s:4:"size";s:9:"arrow_ltr";s:4:"help";s:9:"Check all";s:4:"span";s:14:",checkAllArrow";}s:5:"align";s:5:"right";}}i:5;a:2:{s:1:"A";a:6:{s:5:"class";s:12:"action_popup";s:4:"name";s:12:"delete_popup";s:4:"type";s:3:"box";s:4:"size";s:1:"1";i:1;a:6:{s:5:"class";s:6:"prompt";s:4:"type";s:4:"vbox";s:4:"size";s:1:"3";i:1;a:3:{s:4:"type";s:5:"label";s:5:"label";s:6:"Delete";s:4:"span";s:13:",promptheader";}i:2;a:2:{s:4:"type";s:5:"label";s:5:"label";s:77:"Do you want to delete this event as an exception, or delete the whole series?";}i:3;a:5:{s:4:"type";s:4:"hbox";s:4:"size";s:1:"3";i:1;a:4:{s:5:"label";s:16:"Delete exception";s:7:"onclick";s:36:"nm_submit_popup(this); return false;";s:4:"name";s:6:"delete";s:4:"type";s:6:"button";}i:2;a:4:{s:5:"label";s:13:"Delete series";s:7:"onclick";s:74:"nm_popup_action.id = \'delete_series\'; nm_submit_popup(this); return false;";s:4:"name";s:13:"delete_series";s:4:"type";s:6:"button";}i:3;a:3:{s:5:"label";s:6:"Cancel";s:7:"onclick";s:35:"nm_hide_popup(this,\'delete_popup\');";s:4:"type";s:10:"buttononly";}}}s:4:"span";s:20:",action_popup prompt";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}i:6;a:2:{s:1:"A";a:6:{s:5:"class";s:12:"action_popup";s:4:"name";s:14:"undelete_popup";s:4:"type";s:3:"box";s:4:"size";s:1:"1";i:1;a:6:{s:5:"class";s:6:"prompt";s:4:"type";s:4:"vbox";s:4:"size";s:1:"3";i:1;a:3:{s:4:"type";s:5:"label";s:5:"label";s:9:"Un-delete";s:4:"span";s:13:",promptheader";}i:2;a:2:{s:4:"type";s:5:"label";s:5:"label";s:83:"Do you want to Un-delete this event as an exception, or un-delete the whole series?";}i:3;a:5:{s:4:"type";s:4:"hbox";s:4:"size";s:1:"3";i:1;a:4:{s:5:"label";s:19:"Un-delete exception";s:7:"onclick";s:36:"nm_submit_popup(this); return false;";s:4:"name";s:8:"undelete";s:4:"type";s:6:"button";}i:2;a:4:{s:5:"label";s:16:"Un-delete series";s:7:"onclick";s:76:"nm_popup_action.id = \'undelete_series\'; nm_submit_popup(this); return false;";s:4:"name";s:15:"undelete_series";s:4:"type";s:6:"button";}i:3;a:3:{s:5:"label";s:6:"Cancel";s:7:"onclick";s:37:"nm_hide_popup(this,\'undelete_popup\');";s:4:"type";s:10:"buttononly";}}}s:4:"span";s:20:",action_popup prompt";}s:1:"B";a:1:{s:4:"type";s:5:"label";}}}s:4:"cols";i:2;s:4:"rows";i:6;s:4:"size";s:4:"100%";}}','size' => '100%','style' => '.noWrap { white-space: nowrap; }
.image16 img {
height: 16px;

View File

@ -149,6 +149,20 @@
</box>
<description/>
</row>
<row>
<box class="action_popup prompt" id="undelete_popup">
<vbox class="prompt">
<description value="Un-delete" class="promptheader"/>
<description value="Do you want to Un-delete this event as an exception, or un-delete the whole series?"/>
<hbox>
<button label="Un-delete exception" id="undelete" onclick="nm_submit_popup(this); return false;"/>
<button label="Un-delete series" id="undelete_series" onclick="nm_popup_action.id = 'undelete_series'; nm_submit_popup(this); return false;"/>
<buttononly label="Cancel" onclick="nm_hide_popup(this,'undelete_popup');"/>
</hbox>
</vbox>
</box>
<description/>
</row>
</rows>
</grid>
<styles>