var glvSelectedSource = null; var glvSelectedTarget = null; // ----------------------------------------------------------- // // ----------------------------------------------------------- function hdfTabSaveMain(response) { require(["dojo/ready","dijit/Dialog", "dijit/registry", "dijit/form/TextBox", "dijit/form/Button", "dojo/dom-construct", "dojo/dom"], function(ready, Dialog, registry, TextBox, Button, domConstruct, dom) { if (registry.byId("savePageDialog")) { registry.byId("savePageDialog").destroyRecursive(false); } var htmlFragment = "
" + "
" + " Page Description:" + " " + "

" + "
" + " Playbook:" + " " + "

" + " " + " " + "
"; var tabSavePage = domConstruct.toDom(htmlFragment); console.log("hdfTabSavePageDialog tabSavePage: ", tabSavePage); var savePageDialog = new Dialog({ id: "savePageDialog", title: "Save Page in Favorites Folder", style: "width: 400px", content: tabSavePage }); savePageDialog.show(); // Add Fields hdfTabSavePageDescription() hdfTabSaveBookSelect(response); // Add Buttons var saveButton = new Button({ id: "hdmTabSavePageBut0", label: "Confirm", iconClass: "gif38", jsId: "Confirm", onClick: function(evt) { var butNode = registry.getEnclosingWidget(evt.target); console.log("saveButton onClick butNode: ", butNode); hdfTabSaveConfirm(butNode.jsId); }, title: "Confirm Save" }, dom.byId("hdmTabSavePageBut0")) var cancelButton = new Button({ id: "hdmTabSavePageBut1", label: "Cancel", iconClass: "gif33", jsId: "CANCEL", onClick: function(evt) { savePageDialog.hide(); }, title: "Cancel Save" }, dom.byId("hdmTabSavePageBut1")) return; }); return; } // ----------------------------------------------------------- // hdfTabSavePageDescription: // ----------------------------------------------------------- function hdfTabSavePageDescription() { var tabSavePageDesc = " "; require(["dojo/ready", "dijit/registry", "dijit/form/ValidationTextBox"], function(ready, registry, TextBox) { var pageDescription = registry.byId("pageDescription"); if (registry.byId("pageDescription")) { pageDescription.destroyRecursive(true); } var pageDescription = new TextBox({ id: "pageDescription", maxlength: "50", placeHolder: "type in description", required: true, onChange: function(pageDesc) { tabSavePageDesc = pageDesc; if (pageDesc == " ") { alert("Page Description Must Be Entered"); } } },"hdmTabSavePageDesc"); }); return; } // ----------------------------------------------------------- // hdfTabSaveBookSelect: // ----------------------------------------------------------- function hdfTabSaveBookSelect(response) { console.log("hdfTabBookSelect response: ", response); var tabSavePlaybook = " "; require(["dojo/ready", "dojo/data/ItemFileReadStore", "dijit/registry", "dijit/form/ComboBox"], function(ready, ItemFileReadStore, registry, ComboBox) { var saveBookJson = response; var saveBookStore = new ItemFileReadStore({ data: saveBookJson }); var bookSelect = registry.byId("bookSelect"); if (registry.byId("bookSelect")) { bookSelect.destroyRecursive(true); } var bookSelect = new ComboBox({ id: "bookSelect", store: saveBookStore, placeHolder: "select or type in playbook name", onChange: function(playbook) { tababSavePlaybook = playbook; if (playbook == " ") { alert("Playbook Must Be Entered"); } } }, "hdmTabSaveBookSelect"); }); return; } // ----------------------------------------------------------- // // ----------------------------------------------------------- function hdfTabSaveButton(domID, label, icon, action, title) { require(["dojo/ready", "dijit/form/Button", "dijit/registry", "dojo/dom"], function(ready, Button, registry, dom) { if (registry.byId("hdmBannerDebug").checked) { alertString = "hdfTabSaveButton" + "\n\n" + "domID: " + domID + "\n" + "label: " + label + "\n" + "icon: " + icon + "\n" + "action: " + action + "\n" + "title: " + title + "\n"; alert(alertString); } var saveButton = registry.byId(domID); if (registry.byId(saveButton)) { saveButton.destroyRecursive(true); } var domNode = dom.byId(domID); var saveButton = new Button({ label: label, iconClass: icon, jsId: action, onClick: function(evt) { var butNode = registry.getEnclosingWidget(evt.target); console.log("hdfTabSaveButton onClick butNode: ", butNode); hdfTabSaveConfirm(butNode.jsId); }, title: title}, domNode); }); } // ----------------------------------------------------------- // hdfTabSaveConfirm: function to Confirm Save Control // ----------------------------------------------------------- function hdfTabSaveConfirm(action) { console.log("hdfTabSaveConfirm action: ", action); console.log("hdfTabSaveConfirm hugmarSettings: ", hugmarSettings); console.log("hdfTabSaveConfirm hjsonGridControl: ", hjsonGridControl); require(["dojo/ready", "dijit/registry", "dijit/Dialog", "dojo/_base/json"], function(ready, registry, Dialog, json) { var pageDescription = registry.byId("pageDescription"); console.log("hdfTabSaveConfirm pageDescription: ", pageDescription); if (pageDescription.value == "" || pageDescription.value == " ") { var saveDialog = new Dialog({ title: "Save Favorite Page", style: "width: 300px", content: "Page Description Must Be Entered"}); saveDialog.show(); return; } var bookSelect = registry.byId("bookSelect"); console.log("hdfTabSaveConfirm bookSelect: ", bookSelect); if (bookSelect.value == "" || bookSelect.value == " ") { var saveDialog = new Dialog({ title: "Save Favorite Page", style: "width: 300px", content: "Playbook Name Must Be Entered"}); saveDialog.show(); return; } var jsCaller = "hdfTabSaveConfirm"; var jsonObj = hdfiServerSetJsonObj(jsCaller,"HWEBNAM08", "TabSavePageConfirm"); jsonObj.procparm = "saveconfirm"; jsonObj.gridenv = hjsonGridControl.env; jsonObj.gridenv.gridheight = "100"; jsonObj.gridenv.gridwidth = "100"; jsonObj.field = {}; jsonObj.field.bookname= bookSelect.value; jsonObj.field.pagedesc = globalModifyCell(pageDescription.value); jsonObj.field.etype = ""; var jsonUrl = hugmarSettings.host.pgmdir + "/hwebhtp120.pgm?json=" + dojo.toJson(jsonObj); dojo.xhrGet({ url: jsonUrl, handleAs: "json", load: function(jsonResponse, ioArgs) { hdfTabSaveConfirmRsp(registry, jsonResponse); return jsonResponse; }, error: function(jsonResponse, ioArgs) { hdfiServerHttpError("hdfTabSaveConfirm", ioArgs); return jsonResponse; } }); //hdfiServerGet(jsCaller, jsonUrl); return; }); } // ----------------------------------------------------------- // Save Confirm Response // ----------------------------------------------------------- function hdfTabSaveConfirmRsp(registry, jsonResponse) { console.log("hdfTabSaveConfirmRsp jsonResponse: ", jsonResponse); if (registry.byId("savePageDialog")) { registry.byId("savePageDialog").hide(); } hdfTabSaveGoBooks(registry); return; } // ----------------------------------------------------------- // // ----------------------------------------------------------- function hdfTabSaveGoBooks(registry) { require(["dojo/ready", "dojo/_base/json", "dojo/dom"], function(ready, json, dom) { registry.byId("hdmAccStandby").show(); var jsCaller = "hdfTabSaveGoBooks"; var jsonObj = hdfiServerSetJsonObj(jsCaller,"v2LoadMenus","hfdTabSaveGoBooks"); jsonObj.procparm = "Books"; var jsonUrl = hugmarSettings.host.pgmdir + "/hwebhtp120.pgm?json=" + json.toJson(jsonObj); dojo.xhrGet({ url: jsonUrl, handleAs: "json", load: function(jsonResponse, ioArgs) { hdfTabSaveGoBooksRsp(registry, jsonResponse); return jsonResponse; }, error: function(jsonResponse, ioArgs) { hdfiServerHttpError("hdfTabSaveGoBooks", ioArgs); return jsonResponse; } }); }); return; } // ----------------------------------------------------------- // // ----------------------------------------------------------- function hdfTabSaveGoBooksRsp(registry, jsonResponse) { require(["dojo/ready", "dojo/_base/json"], function(ready, dojo){ registry.byId("hdmAccStandby").hide(); console.log("hdfTabSaveGoBooksRsp jsonResponse: ", jsonResponse); console.log("hdfTabSaveGoBooksRsp hugmarSettings: ", hugmarSettings); //hdfAccFav(registry, loginSettings); var urlString = hugmarSettings.host.wrkfolder + '/OUT/HWEBV2AMF_Menus.json'; require(["dojo/ready", "dojo/_base/xhr", "dojo/dom","dojo/domReady!"], function(ready, xhr, dom){ dojo.xhrGet({ url: urlString, handleAs: "json", load: function(jsonResponse, ioArgs) { hdfTabSaveGoBooksRefresh(jsonResponse); return jsonResponse; }, error: function(jsonResponse, ioArgs) { console.log("hdfAccMenus faild xhrGet", response, ioArgs); /* handle the error */ return jsonResponse; } }); }); }); return; } // ----------------------------------------------------------- // hdfAccMenusRsp: // ----------------------------------------------------------- function hdfTabSaveGoBooksRefresh(jsonResponse) { require(["dojo/ready", "dojo", "dojo/_base/json", "dojo/data/ItemFileReadStore", "dijit/layout/AccordionContainer", "dijit/layout/ContentPane", "dijit/tree/ForestStoreModel", "dijit/Tree", "dijit/registry", "dojo/dom", "dojo/dom-construct"], function(ready, dojo, dojoJson, ItemFileReadStore, AccordionContainer, ContentPane, ForestStoreModel, Tree, registry, dom, domConstruct){ ready(function(){ // var accMenuData = jsonResponse; // console.log("hdfTabSaveGoBooksRefresh accMenuData: ", accMenuData); hdfTabSaveMenusRsp(jsonResponse); }); }); return; } // ----------------------------------------------------------- // hdfTabSaveMenusRsp: // ----------------------------------------------------------- function hdfTabSaveMenusRsp(jsonResponse) { require(["dojo/ready", "dojo/_base/json", "dojo/data/ItemFileReadStore", "dijit/layout/AccordionContainer", "dijit/layout/ContentPane", "dijit/tree/ForestStoreModel", "dijit/Tree", "dijit/registry", "dojo/dom"], function(ready, dojo, ItemFileReadStore, AccordionContainer, ContentPane, ForestStoreModel, Tree, registry, dom){ ready(function(){ // var accMenuData = jsonResponse; var accMenuStore = new ItemFileReadStore({ id: "accMenuStore", data: jsonResponse, jsId: "accMenus" }); for (var i = 0; i < hugmarSettings.menupanes.pane.length; i++) { if (hugmarSettings.menupanes.pane[i].id === "HBOOKS") { hdfTabSaveMenuAppsPane(registry, dom, accMenuStore, hugmarSettings.menupanes.pane[i]); } } }); }); return; } // ----------------------------------------------------------- // Load Accordion Hugmar Application Pane // ----------------------------------------------------------- function hdfTabSaveMenuAppsPane(registry, dom, accMenuStore, pane) { require(["dojo/ready", "dojo/dom-construct", "dijit/layout/AccordionContainer", "dijit/layout/ContentPane", "dijit/tree/ForestStoreModel", "dijit/Tree"], function(ready, domConstruct, AccordionContainer, ContentPane, ForestStoreModel, Tree){ ready(function(){ var accPaneID = "hdmAppsPane" + pane.qry + "Pane"; var menuNodeID = "hdmAppsPane" + pane.qry + "Menu"; var modelID = "AppsPane" + pane.qry + "Model"; var accContainer = registry.byId("hdmMainAccContainer"); var accItem = registry.byId(accPaneID); accContainer.removeChild(accItem); if (registry.byId(accPaneID)) { registry.byId(accPaneID).destroyRecursive(false); } var accPane = new ContentPane({ id: accPaneID, title: pane.caption, }); accPane.domNode.id = accPaneID; accContainer.addChild(accPane); accContainer.selectChild(registry.byId(accPane)); dom.byId(accPaneID).innerHTML = "" ; var appsMenuModel = new ForestStoreModel({ store: accMenuStore, query: {"query": pane.qry}, jsId: "AppsPane" + pane.qry + "Model", rootId: "AppsPane" + pane.qry + "Root", rootLabel: "AppsPane" + pane.qry + "Label", childrenAttrs: ["ML1"] }); var appsMenuTree = new Tree({ id: "AppsPane" + pane.qry + "MenuTree", title: "One Click to Execute Class", jsId: "AppsPane" + pane.qry + "MenuTree", model: appsMenuModel, showRoot: false, getIconClass: function(item) { return item.icon}, onClick: function(item) { console.log("...hdfTabSaveMenuAppPane onClick: ", item); if (item.query[0] === "Web") { hdfAccMenuWebGo(item); } else { hdfAccMenuAppsGo(registry, item); } return; } }, menuNodeID); }); }); return; }