</table>
</div>
+ <div id='oils_rpt_folder_manager_share_div'>
+ <table class='oils_rpt_generic_table'>
+ <tbody>
+ <tr>
+ <td>Share with:</td>
+ <td><select id='oils_rpt_folder_manager_share_lib_picker'/></td>
+ </tr>
+ <tr><td colspan='2' align='center'>
+ <input type='submit' value='Share this folder'
+ id='oils_rpt_folder_manager_share_submit'/>
+ </td></tr>
+ </tbody>
+ </table>
+ </div>
+
+
</div>
<span class='hide_me' id='oils_rpt_folder_manager_change_name_confirm'>
Are you sure you wish to change this folder's name?
</span>
- <span class='hide_me' id='oils_rpt_folder_manager_new_confirm'>
- Are you sure you wish to create new subfolder
- </span>
<span class='hide_me' id='oils_rpt_folder_manager_delete_confirm'>
Are you sure you wish to delete this folder?
This folder may not be deleted because it is not empty.
</span>
+ <span class='hide_me' id='oils_rpt_folder_already_shared'>
+ This folder is already shared
+ </span>
+ <span class='hide_me' id='oils_rpt_folder_already_unshared'>
+ This folder is not shared
+ </span>
+ <span class='hide_me' id='oils_rpt_folder_unshare_confirm'>
+ Are you sure you wish to hide this folder?
+ </span>
+
+
</div>
case 'delete':
obj.doFolderDelete();
break;
+ case 'share':
+ obj.shareFolder();
+ break;
+ case 'unshare':
+ obj.unShareFolder();
+ break;
}
}
}
+oilsRptFolderWindow.prototype.shareFolder = function() {
+ var folder = this.folderNode.folder;
+ if(isTrue(folder.shared()))
+ return alertId('oils_rpt_folder_already_shared');
+ unHideMe(DOM.oils_rpt_folder_manager_share_div);
+
+ var orgsel = new oilsRptMyOrgsWidget(
+ DOM.oils_rpt_folder_manager_share_lib_picker, USER.ws_ou());
+ orgsel.draw();
+
+ var type = this.type;
+ DOM.oils_rpt_folder_manager_share_submit.onclick = function() {
+ folder.shared('t');
+ folder.share_with(orgsel.getValue());
+ oilsRptUpdateFolder( folder, type,
+ function(success) {
+ if(success) {
+ oilsRptAlertSuccess();
+ oilsRptCurrentFolderManager.draw();
+ }
+ }
+ );
+ }
+}
+
+oilsRptFolderWindow.prototype.unShareFolder = function() {
+ var folder = this.folderNode.folder;
+ if(!isTrue(folder.shared()))
+ return alertId('oils_rpt_folder_already_unshared');
+ if(!confirmId('oils_rpt_folder_unshare_confirm')) return;
+ folder.shared('f');
+ var type = this.type;
+ oilsRptUpdateFolder( folder, type,
+ function(success) {
+ if(success) {
+ oilsRptAlertSuccess();
+ oilsRptCurrentFolderManager.draw();
+ }
+ }
+ );
+}
+
+
oilsRptFolderWindow.prototype.hideFolderActions = function() {
hideMe(DOM.oils_rpt_folder_manager_change_name_div);
hideMe(DOM.oils_rpt_folder_manager_create_sub);
+ hideMe(DOM.oils_rpt_folder_manager_share_div);
}
if( folder.shared() == 't' )
folder.share_with( obj.myOrgSelector.getValue() );
- if(confirm(DOM.oils_rpt_folder_manager_new_confirm.innerHTML + ' "'+folder.name()+'"')) {
- oilsRptCreateFolder(folder, obj.type,
- function(success) {
- if(success) {
- oilsRptAlertSuccess();
- oilsRptCurrentFolderManager.draw();
- }
+ oilsRptCreateFolder(folder, obj.type,
+ function(success) {
+ if(success) {
+ oilsRptAlertSuccess();
+ oilsRptCurrentFolderManager.draw();
}
- );
- }
+ }
+ );
}
}
/* lets see if the folder has contents */
var req = new Request(OILS_RPT_FETCH_FOLDER_DATA,
- SESSION, this.type, this.folderNode.folder.id());
+ SESSION, this.type, this.folderNode.folder.id(), 1);
+
+ if(this.type == 'output') {
+ req = new Request(OILS_RPT_FETCH_OUTPUT,
+ SESSION, this.folderNode.folder.id(), 1);
+ }
+
var obj = this;
req.send();
oilsRptReportEditor.prototype.save = function() {
var report = new rr();
+ if(!this.selectedFolder)
+ return alert('Please provide a report folder');
+
report.owner( USER.id() );
report.template( this.template.id() );
report.folder( this.selectedFolder.folder.id() );
report.recur(this.paramEditor.recur());
report.recurance(this.paramEditor.recurInterval());
+
/* collect the param data */
var data = {};
for( var p in this.paramEditor.params ) {
_debug("built run_time "+time);
}
+ if(!this.selectedOutputFolder)
+ return alert('Please provide an output folder');
+
var schedule = new rs();
schedule.folder(this.selectedOutputFolder.folder.id());
schedule.email(DOM.oils_rpt_param_editor_sched_email.value);
schedule.chart_bar((DOM.oils_rpt_format_chart_bar.checked) ? 't' : 'f');
schedule.chart_line((DOM.oils_rpt_format_chart_line.checked) ? 't' : 'f');
+
debugFMObject(report);
debugFMObject(schedule);