Advertisement
Guest User

Untitled

a guest
Jan 12th, 2014
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 57.42 KB | None | 0 0
  1.         echo " <link rel=\"stylesheet\" type=\"text/css\" href=\"";
  2.         echo $settings["ext_path"];
  3.         echo "/extensions/lovcombo/css/Ext.ux.form.LovCombo.compressed.css?r=1\">\r\n <link rel=\"stylesheet\" type=\"text/css\" href=\"";
  4.         echo $settings["ext_path"];
  5.         echo "/extensions/lovcombo/css/lovcombo.compressed.css\">\r\n <link rel=\"stylesheet\" type=\"text/css\" href=\"";
  6.         echo $settings["ext_path"];
  7.         echo "/extensions/iconlovcombo/css/iconlovcombo.compressed.css\">\r\n\r\n <script type=\"text/javascript\" src=\"";
  8.         echo $settings["ext_path"];
  9.         echo "/extensions/gridsearch/Ext.ux.grid.Search.compressed.js\"></script>\r\n <script type=\"text/javascript\" src=\"";
  10.         echo $settings["ext_path"];
  11.         echo "/extensions/treesearch/Ext.ux.tree.Search.compressed.js\"></script>\r\n <script type=\"text/javascript\" src=\"";
  12.         echo $settings["ext_path"];
  13.         echo "/extensions/checkcolumn/checkcolumn.compressed.js\"></script>\r\n <script type=\"text/javascript\" src=\"";
  14.         echo $settings["ext_path"];
  15.         echo "/extensions/rowexpander/expander.compressed.js\"></script>\r\n <script type=\"text/javascript\" src=\"";
  16.         echo $settings["ext_path"];
  17.         echo "/extensions/tabclosemenu/ux.tabclosemenu.js?r=2\"></script>\r\n <script type=\"text/javascript\" src=\"";
  18.         echo $settings["ext_path"];
  19.         echo "/extensions/lovcombo/js/Ext.ux.form.LovCombo.compressed.js\"></script>\r\n <script type=\"text/javascript\" src=\"";
  20.         echo $settings["ext_path"];
  21.         echo "/extensions/iconlovcombo/js/Ext.ux.form.IconLovCombo.compressed.js\"></script>\r\n <script type=\"text/javascript\" src=\"";
  22.         echo $settings["ext_path"];
  23.         echo "/extensions/centerlayout/centerlayout.compressed.js\"></script>\r\n ";
  24.         $includes = ob_get_clean();
  25.         add_to_head($includes, false);
  26.         ob_start();
  27.         //First Top Box
  28.         echo "<script language=\"javascript\" type=\"text/javascript\">\r\n var DripfeedPostStore = new Ext.data.JsonStore({\r\n url: 'cloakedsitebuilder/ajax',\r\n id: 'DripfeedPostStore',\r\n baseParams: {\r\n 'do':'getQueuedPosts'\r\n },\r\n root: 'entries',\r\n loadMask: true,\r\n //autoLoad: true,\r\n remoteSort: false,\r\n totalProperty: 'totalCount',\r\n fields: [\r\n 'keyword',\r\n 'redirect_url',\r\n 'entry_id',\r\n 'mapped_token_count',\r\n 'tokens_values'\r\n ],\r\n listeners: {\r\n beforeload: function(store,options){\r\n store.baseParams.blog_id = Ext.getCmp('CenterRegion').getActiveTab().blog_id;\r\n }\r\n }\r\n  });\r\n\r\n\r\n\r\n //function ImportLocalCSV(section)\r\n//\t\t{\r\n//\r\n//\t\t\t\tvar fileStore = new Ext.data.JsonStore({\r\n//\t\t\t\t\tautoLoad: false,\r\n//\t\t\t\t\turl: 'ajax',\r\n//\t\t\t\t\tbaseParams: {\r\n//\t\t\t\t\t\t'do': 'getFilesFrom_temp'\r\n//\t\t\t\t\t},\r\n//\t\t\t\t\troot: 'files',\r\n//\t\t\t\t\tfields: ['filename']\r\n//\t\t\t\t});\r\n//\r\n//\t\t\t\tif(section == 'drt')\r\n//\t\t\t\t{\r\n//\t\t\t\t\tvar panelItems = [new Ext.ux.IconLovCombo({\r\n//\t\t\t\t\t\t//anchor: '90%',\r\n//\t\t\t\t\t\twidth: 222,\r\n//\t\t\t\t\t\teditable: false,\r\n//\t\t\t\t\t\t//labelStyle: 'width: 102px;',\r\n//\t\t\t\t\t\temptyText: 'All Countries',\r\n//\t\t\t\t\t\tdisabled: false,\r\n//\t\t\t\t\t\thiddenName: 'countries',\r\n//\t\t\t\t\t\ttriggerAction: 'all',\r\n//\t\t\t\t\t\tmode: 'remote',\r\n//\t\t\t\t\t\tfieldLabel: 'Allowed Countries',\r\n//\t\t\t\t\t\tstore: new Ext.data.JsonStore({\r\n//\t\t\t\t\t\t\t\turl: 'ajax',\r\n//\t\t\t\t\t\t\t\tautoLoad: true,\r\n//\t\t\t\t\t\t\t\tbaseParams: {\r\n//\t\t\t\t\t\t\t\t\t'do':'getCountries'\r\n//\t\t\t\t\t\t\t\t},\r\n//\t\t\t\t\t\t\t\troot: 'countries',\r\n//\t\t\t\t\t\t\t\tfields: ['countryCode', 'countryName', 'countryFlag']\r\n//\t\t\t\t\t\t\t\tdata: [\r\n////\t\t\t\t\t\t\t\t\t['US', 'United States', 'ux-flag-us'],\r\n////\t\t\t\t\t\t\t\t\t['DE', 'Germany', 'ux-flag-de'],\r\n////\t\t\t\t\t\t\t\t\t['FR', 'France', 'ux-flag-fr']\r\n////\t\t\t\t\t\t\t\t]\r\n//\t\t\t\t\t\t}),\r\n//\t\t\t\t\t\tvalueField: 'countryCode',\r\n//\t\t\t\t\t\tdisplayField: 'countryName',\r\n//\t\t\t\t\t\ticonClsField: 'countryFlag'\r\n//\t\t\t\t\t}),{\r\n//\t\t\t\t\t\txtype: 'textfield',\r\n//\t\t\t\t\t\tanchor: '98%',\r\n//\t\t\t\t\t\temptyText: '(,) Comma (default)',\r\n//\t\t\t\t\t\tfieldLabel: 'Field Delimiter',\r\n//\t\t\t\t\t\tname: 'delimiter'\r\n//\t\t\t\t\t},{\r\n//\t\t\t\t\t\txtype: 'combo',\r\n//\t\t\t\t\t\tanchor: '98%',\r\n//\t\t\t\t\t\tfieldLabel: 'CSV File To Import',\r\n//\t\t\t\t\t\thiddenName: 'filename',\r\n//\t\t\t\t\t\tstore: fileStore,\r\n//\t\t\t\t\t\tvalueField: 'filename',\r\n//\t\t\t\t\t\tdisplayField: 'filename',\r\n//\t\t\t\t\t\teditable: false,\r\n//\t\t\t\t\t\temptyText: '',\r\n//\t\t\t\t\t\tallQuery: 'all_groups',\r\n//\t\t\t\t\t\ttriggerAction: 'all',\r\n//\t\t\t\t\t\tlisteners: {\r\n//\t\t\t\t\t\t\tbeforeselect: function(combo,rec,i){\r\n//\r\n//\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t}\r\n//\t\t\t\t\t}];\r\n//\t\t\t\t}\r\n//\t\t\t\telse\r\n//\t\t\t\t{\r\n//\t\t\t\t\tvar panelItems = [{\r\n//\t\t\t\t\t\txtype: 'textfield',\r\n//\t\t\t\t\t\tanchor: '98%',\r\n//\t\t\t\t\t\temptyText: '(,) Comma (default)',\r\n//\t\t\t\t\t\tfieldLabel: 'Field Delimiter',\r\n//\t\t\t\t\t\tname: 'delimiter'\r\n//\t\t\t\t\t},{\r\n//\t\t\t\t\t\txtype: 'combo',\r\n//\t\t\t\t\t\tanchor: '98%',\r\n//\t\t\t\t\t\tfieldLabel: 'CSV File To Import',\r\n//\t\t\t\t\t\thiddenName: 'filename',\r\n//\t\t\t\t\t\tstore: fileStore,\r\n//\t\t\t\t\t\tvalueField: 'filename',\r\n//\t\t\t\t\t\tdisplayField: 'filename',\r\n//\t\t\t\t\t\teditable: false,\r\n//\t\t\t\t\t\temptyText: '',\r\n//\t\t\t\t\t\tallQuery: 'all_groups',\r\n//\t\t\t\t\t\ttriggerAction: 'all',\r\n//\t\t\t\t\t\tlisteners: {\r\n//\t\t\t\t\t\t\tbeforeselect: function(combo,rec,i){\r\n//\r\n//\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t}\r\n//\t\t\t\t\t}];\r\n//\t\t\t\t}\r\n//\r\n//\r\n//\t\t\t\tvar ImportLocalCsvWindow = new Ext.Window({\r\n//\t\t\t\t\t\tborder: false,\r\n//\t\t\t\t\t\theight: (section == 'drt' ? 175 : 150),\r\n//\t\t\t\t\t\ticonCls: '',\r\n//\t\t\t\t\t\tlayout: 'fit',\r\n//\t\t\t\t\t\tmodal: true,\r\n//\t\t\t\t\t\tresizable: false,\r\n//\t\t\t\t\t\ttitle: 'Import Local CSV',\r\n//\t\t\t\t\t\twidth: 450,\r\n//\t\t\t\t\t\tlisteners: {\r\n//\t\t\t\t\t\t\tshow: function(){\r\n//\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t},\r\n//\t\t\t\t\t\titems: [{\r\n//\t\t\t\t\t\t\txtype: 'form',\r\n//\t\t\t\t\t\t\tid: 'import_local_csv_form',\r\n//\t\t\t\t\t\t\tbodyStyle: 'padding: 0px 10px 10px 10px;',\r\n//\t\t\t\t\t\t\tlabelWidth: 150,\r\n//\t\t\t\t\t\t\tautoScroll: true,\r\n//\t\t\t\t\t\t\tmonitorValid: true,\r\n//\t\t\t\t\t\t\turl: 'cloakedsitebuilder/ajax',\r\n//\t\t\t\t\t\t\tframe: true,\r\n//\t\t\t\t\t\t\tborder: false,\r\n//\t\t\t\t\t\t\titems: [{\r\n////\t\t\t\t\t\t\t\txtype: 'label',\r\n////\t\t\t\t\t\t\t\tstyle: {fontSize: '12pt'},\r\n////\t\t\t\t\t\t\t\thtml : '<br /><p><h1></h1></p><br />'\r\n////\t\t\t\t\t\t\t},{\r\n//\t\t\t\t\t\t\t\txtype: 'panel',\r\n//\t\t\t\t\t\t\t\tstyle: 'margin-left:10px;',\r\n//\t\t\t\t\t\t\t\tborder: false,\r\n//\t\t\t\t\t\t\t\tlayout: 'form',\r\n//\t\t\t\t\t\t\t\tanchor: '95%',\r\n//\t\t\t\t\t\t\t\tdefaults: {\r\n//\t\t\t\t\t\t\t\t\t//anchor: '100%'\r\n//\t\t\t\t\t\t\t\t},\r\n//\t\t\t\t\t\t\t\titems: panelItems\r\n//\t\t\t\t\t\t\t}],\r\n//\t\t\t\t\t\t\tbuttons: [{\r\n//\t\t\t\t\t\t\t\t//id: 'save_domain_changes',\r\n//\t\t\t\t\t\t\t\t//disabled: true,\r\n//\t\t\t\t\t\t\t\ttext: 'Import',\r\n//\t\t\t\t\t\t\t\thandler: function(){\r\n//\r\n//\t\t\t\t\t\t\t\t\tvar WaitMask = new Ext.LoadMask(ImportLocalCsvWindow.getEl(),{\r\n//\t\t\t\t\t\t\t\t\t\tmsg: 'Importing File ...'\r\n//\t\t\t\t\t\t\t\t\t});\r\n//\r\n//\t\t\t\t\t\t\t\t\tWaitMask.show();\r\n//\r\n//\t\t\t\t\t\t\t\t\tExt.getCmp('import_local_csv_form').getForm().submit({\r\n//\t\t\t\t\t\t\t\t\t\tparams: {\r\n//\t\t\t\t\t\t\t\t\t\t\t'cmd': (section == 'drt' ? 'upload' : (section == 'bc_df' ? 'dripfeed_post_csv' : 'uploadKeywordsCsv' )),\r\n//\t\t\t\t\t\t\t\t\t\t\tblog_id: (section == 'bc_df' ? Ext.getCmp('CenterRegion').getActiveTab().blog_id : ''),\r\n//\t\t\t\t\t\t\t\t\t\t\tgroupId: (section !== 'bc_df' ? VRGroupCombo.getValue() : '')\r\n//\t\t\t\t\t\t\t\t\t\t},\r\n//\t\t\t\t\t\t\t\t\t\tsuccess: function(){\r\n//\t\t\t\t\t\t\t\t\t\t\tWaitMask.hide();\r\n//\t\t\t\t\t\t\t\t\t\t\tImportLocalCsvWindow.close();\r\n//\t\t\t\t\t\t\t\t\t\t\tif(section == 'bc_df')\r\n//\t\t\t\t\t\t\t\t\t\t\t{\r\n//\t\t\t\t\t\t\t\t\t\t\t\tDripfeedPostStore.load({\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\tparams: {\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tblog_id: Ext.getCmp('CenterRegion').getActiveTab().blog_id,\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tstart: 0,\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tlimit: 250\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t\t\t\t\t\t});\r\n//\t\t\t\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t\t\t\t\telse\r\n//\t\t\t\t\t\t\t\t\t\t\t{\r\n//\t\t\t\t\t\t\t\t\t\t\t\tBlogPostStore.load({\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\tparams: {\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tgroup_id: VRGroupCombo.getValue(),\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tstart: 0,\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tlimit: 250\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t},\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\tcallback: function(){\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\t//console.debug('loaded store');\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t\t\t\t\t\t});\r\n//\t\t\t\t\t\t\t\t\t\t\t}\r\n//\r\n//\t\t\t\t\t\t\t\t\t\t},\r\n//\t\t\t\t\t\t\t\t\t\tfailure: function(){\r\n//\t\t\t\t\t\t\t\t\t\t\tWaitMask.hide();\r\n//\t\t\t\t\t\t\t\t\t\t\tImportLocalCsvWindow.close();\r\n//\t\t\t\t\t\t\t\t\t\t\tif(section == 'bc_df')\r\n//\t\t\t\t\t\t\t\t\t\t\t{\r\n//\t\t\t\t\t\t\t\t\t\t\t\tDripfeedPostStore.load({\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\tparams: {\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tblog_id: Ext.getCmp('CenterRegion').getActiveTab().blog_id,\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tstart: 0,\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tlimit: 250\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t\t\t\t\t\t});\r\n//\t\t\t\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t\t\t\t\telse\r\n//\t\t\t\t\t\t\t\t\t\t\t{\r\n//\t\t\t\t\t\t\t\t\t\t\t\tBlogPostStore.load({\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\tparams: {\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tgroup_id: VRGroupCombo.getValue(),\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tstart: 0,\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\tlimit: 250\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t},\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\tcallback: function(){\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t\t//console.debug('loaded store');\r\n//\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t\t\t\t\t\t});\r\n//\t\t\t\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t\t\t\t/*success: function(form,action){\r\n////\t\t\t\t\t\t\t\t\t\t\tWaitMask.hide();\r\n////\t\t\t\t\t\t\t\t\t\t\tImportLocalCsvWindow.close();\r\n////\t\t\t\t\t\t\t\t\t\t\t/*SiteController.loader.load(SiteController.root);\r\n////\t\t\t\t\t\t\t\t\t\t\tmanageDomain.close();\r\n////\t\t\t\t\t\t\t\t\t\t},\r\n////\t\t\t\t\t\t\t\t\t\tfailure: function(form,action){\r\n////\t\t\t\t\t\t\t\t\t\t\tWaitMask.hide();\r\n////\t\t\t\t\t\t\t\t\t\t\tImportLocalCsvWindow.close();\r\n////\t\t\t\t\t\t\t\t\t\t\tvar msg = Ext.decode(action.response.responseText);\r\n////\t\t\t\t\t\t\t\t\t\t\tif(msg.error)\r\n////\t\t\t\t\t\t\t\t\t\t\t{\r\n////\t\t\t\t\t\t\t\t\t\t\t\tExt.MessageBox.hide();\r\n////\t\t\t\t\t\t\t\t\t\t\t\tExt.MessageBox.alert('Error',msg.error);\r\n////\t\t\t\t\t\t\t\t\t\t\t}\r\n////\t\t\t\t\t\t\t\t\t\t\telse Ext.MessageBox.hide();\r\n////\t\t\t\t\t\t\t\t\t\t}\r\n////\r\n//\r\n//\r\n//\t\t\t\t\t\t\t\t\t});\r\n//\r\n//\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t},{\r\n//\t\t\t\t\t\t\t\ttext: 'Cancel',\r\n//\t\t\t\t\t\t\t\thandler: function(){\r\n//\t\t\t\t\t\t\t\t\tImportLocalCsvWindow.close();\r\n//\t\t\t\t\t\t\t\t}\r\n//\t\t\t\t\t\t\t}]\r\n//\t\t\t\t\t\t}]\r\n//\t\t\t\t\t});\r\n//\r\n//\t\t\t\t\tImportLocalCsvWindow.show();\r\n//\t\t\t}\r\n function ImportLocalCSV(section)\r\n {\r\n\r\n var fileStore = new Ext.data.JsonStore({\r\n autoLoad: false,\r\n url: 'ajax',\r\n baseParams: {\r\n 'do': 'getFilesFrom_temp'\r\n },\r\n root: 'files',\r\n fields: ['filename']\r\n });\r\n\r\n if(section == 'drt')\r\n {\r\n var panelItems = [new Ext.ux.IconLovCombo({\r\n //anchor: '90%',\r\n width: 222,\r\n editable: false,\r\n //labelStyle: 'width: 102px;',\r\n emptyText: 'All Countries',\r\n disabled: false,\r\n hiddenName: 'countries',\r\n triggerAction: 'all',\r\n mode: 'remote',\r\n fieldLabel: 'Allowed Countries',\r\n store: new Ext.data.JsonStore({\r\n url: 'ajax',\r\n autoLoad: false,\r\n baseParams: {\r\n 'do':'getCountries'\r\n },\r\n root: 'countries',\r\n fields: ['countryCode', 'countryName', 'countryFlag']\r\n /*data: [\r\n ['US', 'United States', 'ux-flag-us'],\r\n ['DE', 'Germany', 'ux-flag-de'],\r\n ['FR', 'France', 'ux-flag-fr']\r\n ]*/\r\n }),\r\n valueField: 'countryCode',\r\n displayField: 'countryName',\r\n iconClsField: 'countryFlag'\r\n }),{\r\n xtype: 'textfield',\r\n id: 'field_delim_local_importer',\r\n anchor: '98%',\r\n emptyText: '(,) Comma (default)',\r\n fieldLabel: 'Field Delimiter',\r\n name: 'delimiter'\r\n },{\r\n xtype: 'combo',\r\n anchor: '98%',\r\n fieldLabel: 'CSV File To Import',\r\n hiddenName: 'filename',\r\n store: fileStore,\r\n valueField: 'filename',\r\n displayField: 'filename',\r\n editable: false,\r\n emptyText: '',\r\n allQuery: 'all_groups',\r\n triggerAction: 'all',\r\n listeners: {\r\n beforeselect: function(combo,rec,i){\r\n\r\n }\r\n }\r\n }];\r\n }\r\n else\r\n {\r\n var panelItems = [{\r\n xtype: 'textfield',\r\n id: 'field_delim_local_importer',\r\n anchor: '98%',\r\n emptyText: '(,) Comma (default)',\r\n fieldLabel: 'Field Delimiter',\r\n name: 'delimiter'\r\n },{\r\n xtype: 'combo',\r\n anchor: '98%',\r\n fieldLabel: 'CSV File To Import',\r\n hiddenName: 'filename',\r\n store: fileStore,\r\n valueField: 'filename',\r\n displayField: 'filename',\r\n editable: false,\r\n emptyText: '',\r\n allQuery: 'all_groups',\r\n triggerAction: 'all',\r\n listeners: {\r\n beforeselect: function(combo,rec,i){\r\n\r\n }\r\n }\r\n }];\r\n }\r\n\r\n\r\n var ImportLocalCsvWindow = new Ext.Window({\r\n border: false,\r\n height: (section == 'drt' ? 175 : 150),\r\n iconCls: '',\r\n layout: 'fit',\r\n modal: true,\r\n resizable: false,\r\n title: 'Import Local CSV',\r\n width: 450,\r\n listeners: {\r\n show: function(){\r\n }\r\n },\r\n items: [{\r\n xtype: 'form',\r\n id: 'import_local_csv_form',\r\n bodyStyle: 'padding: 0px 10px 10px 10px;',\r\n labelWidth: 150,\r\n autoScroll: true,\r\n monitorValid: true,\r\n url: (section == 'drt' ? 'ajax/csb' : 'cloakedsitebuilder/ajax'),\r\n frame: true,\r\n border: false,\r\n items: [/*{\r\n xtype: 'label',\r\n style: {fontSize: '12pt'},\r\n html : '<br /><p><h1></h1></p><br />'\r\n },*/{\r\n xtype: 'panel',\r\n style: 'margin-left:10px;',\r\n border: false,\r\n layout: 'form',\r\n anchor: '95%',\r\n defaults: {\r\n //anchor: '100%'\r\n },\r\n items: panelItems\r\n }],\r\n buttons: [{\r\n //id: 'save_domain_changes',\r\n //disabled: true,\r\n text: 'Import',\r\n handler: function(){\r\n\r\n var WaitMask = new Ext.LoadMask(ImportLocalCsvWindow.getEl(),{\r\n msg: 'Importing File ...'\r\n });\r\n\r\n WaitMask.show();\r\n\r\n Ext.getCmp('import_local_csv_form').getForm().submit({\r\n params: {\r\n 'cmd': (section == 'drt' ? 'upload' : 'uploadKeywordsCsv'),\r\n groupId: (section !== 'bc_df' ? VRGroupCombo.getValue() : ''),\r\n blog_id: (section == 'bc_df' ? Ext.getCmp('CenterRegion').getActiveTab().blog_id : '')\r\n },\r\n success: function(){\r\n WaitMask.hide();\r\n var delim = Ext.getCmp('field_delim_local_importer').getValue();\r\n ImportLocalCsvWindow.close();\r\n\r\n if(section != 'drt')\r\n {\r\n  MakeTokenMapper(delim,section);\r\n }\r\n else\r\n {\r\n  //refresh drt group\r\n  VRedirectionStore.load({\r\n  params: {\r\n  start: 0,\r\n  limit: 250\r\n  }\r\n  });\r\n }\r\n\r\n },\r\n failure: function(){\r\n WaitMask.hide();\r\n ImportLocalCsvWindow.close();\r\n if(section == 'bc_df')\r\n {\r\n  DripfeedPostStore.load({\r\n  params: {\r\n  blog_id: Ext.getCmp('CenterRegion').getActiveTab().blog_id,\r\n  start: 0,\r\n  limit: 250\r\n  }\r\n  });\r\n }\r\n else\r\n {\r\n  BlogPostStore.load({\r\n  params: {\r\n  start: 0,\r\n  limit: 250\r\n  }\r\n  });\r\n }\r\n }\r\n /*success: function(form,action){\r\n WaitMask.hide();\r\n ImportLocalCsvWindow.close();\r\n /*SiteController.loader.load(SiteController.root);\r\n manageDomain.close();\r\n },\r\n failure: function(form,action){\r\n WaitMask.hide();\r\n ImportLocalCsvWindow.close();\r\n /*var msg = Ext.decode(action.response.responseText);\r\n if(msg.error)\r\n {\r\n  Ext.MessageBox.hide();\r\n  Ext.MessageBox.alert('Error',msg.error);\r\n }\r\n else Ext.MessageBox.hide();\r\n }\r\n */\r\n\r\n });\r\n\r\n }\r\n },{\r\n text: 'Cancel',\r\n handler: function(){\r\n ImportLocalCsvWindow.close();\r\n }\r\n }]\r\n }]\r\n });\r\n\r\n ImportLocalCsvWindow.show();\r\n }\r\n\r\n </script>";
  29.         $js = ob_get_clean();
  30.         add_to_head($js, "minified");
  31.         ob_start();
  32.         //DRT Box
  33.         echo "<script language=\"javascript\" type=\"text/javascript\">\r\n var drtAjaxPath1 = 'ajax/csb';\r\n var drtAjaxPath2 = 'ajax/csb';\r\n </script>";
  34.         $js = ob_get_clean();
  35.         add_to_head($js, "minified");
  36.         //DRT Box
  37.         add_to_head("drt");
  38.         ob_start();
  39.         echo " <script language=\"javascript\" type=\"text/javascript\">\r\n Ext.onReady(function(){\r\n\r\n\r\n Ext.QuickTips.init();\r\n\r\n Ext.Ajax.on('requestComplete', function(conn,response,opt)\r\n {\r\n if(response.responseText.match('<input name=\"email\"') !== null || response.responseText.match(/You must be logged in to do that/) !== null)\r\n {\r\n Ext.MessageBox.alert(\r\n 'Session Timeout',\r\n 'The current user session has expired. You will now be redirected to the login screen.',\r\n function()\r\n {\r\n window.location = 'index';\r\n }\r\n );\r\n }\r\n else if (response.responseText.match('gridError'))\r\n {\r\n var json = eval(\"(\" + response.responseText + \")\");\r\n Ext.Msg.alert('Notice', json.gridError);\r\n }\r\n });\r\n\r\n Ext.apply(Ext.QuickTips.getQuickTip(), {\r\n maxWidth: 250,\r\n dismissDelay: 100000,\r\n showDelay: 2,\r\n trackMouse: false,\r\n hideDelay: 2\r\n });\r\n\r\n var LpbDomainStore = new Ext.data.Store({\r\n autoLoad: true,\r\n url: 'ajax',\r\n baseParams: {\r\n 'do': 'getLpbDomains'\r\n },\r\n reader: new Ext.data.JsonReader({\r\n root: 'domains'\r\n //id: 'extID'\r\n },[\r\n {name: 'domain_id'},\r\n {name: 'domain'}\r\n ])\r\n });\r\n\r\n //override dblclick event to cancel expanding\r\n Ext.override(Ext.tree.TreeNodeUI, {\r\n onDblClick: function(e){\r\n e.preventDefault();\r\n if(this.disabled){\r\n return;\r\n }\r\n if(this.checkbox){\r\n this.toggleCheck();\r\n }\r\n if(!this.animating && this.node.hasChildNodes()){\r\n\r\n //this.node.toggle();\r\n }\r\n this.fireEvent(\"dblclick\", this.node, e);\r\n }\r\n });\r\n\r\n //================================//\r\n // Revised Dashboard - April 21st //\r\n //================================//\r\n\r\n //**********************************\r\n // Header Toolbar Panel - (North Region)\r\n //**********************************\r\n\r\n var HeaderPanel = new Ext.Panel({\r\n baseCls: 'header_background',\r\n tbar: new Ext.Toolbar({\r\n items: [{\r\n xtype: 'label',\r\n text: 'Welcome',\r\n style: {\r\n marginLeft: '3px',\r\n marginRight: '3px'\r\n }\r\n },{\r\n xtype: 'tbbutton',\r\n text: 'Admin Settings',\r\n iconCls: 'icon_account_admin',\r\n style: {\r\n marginLeft: '3px'\r\n }\r\n },{\r\n xtype: 'tbbutton',\r\n text: 'Support Forums',\r\n iconCls: 'icon_support_forums',\r\n style: {\r\n marginLeft: '3px'\r\n }\r\n },'->',{\r\n xtype: 'tbbutton',\r\n text: 'Logout',\r\n iconCls: 'icon_logout', // icons can also be specified inline\r\n //icon: '/img/icons/door_out.png',\r\n\r\n handler: function(){\r\n window.location = '/logout';\r\n }\r\n }]\r\n }),\r\n height: 100,\r\n columnWidth: .50,\r\n border: false\r\n //margins: '5 5 5 5'\r\n });\r\n\r\n // End Header Toolbar Panel\r\n //\r\n\r\n // GLOBAL FUNCTIONS\r\n\r\n function BlogPreInstallCheck(){\r\n Ext.Ajax.request({\r\n url: 'blogcloaker/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'precheck_blog_install'\r\n },\r\n callback: function(opt,success,r){\r\n Ext.Msg.hide();\r\n if(success)\r\n {\r\n r = Ext.decode(r.responseText);\r\n\r\n if(r.success)\r\n {\r\n BulkInstallerWindow();\r\n }\r\n else\r\n {\r\n Ext.Msg.alert('Error',r.error);\r\n }\r\n }\r\n else\r\n {\r\n Ext.Msg.alert('An error has occured with this server. Please contact an administrator.');\r\n }\r\n }\r\n })\r\n }\r\n function BulkInstallerWindow(){\r\n\r\n\r\n //first run a basic pre-installation check via ajax\r\n\r\n\r\n\r\n var infoHTML = Ext.get('add_kw_csv_info').dom.innerHTML;\r\n var groupName = VRGroupCombo.getRawValue();\r\n\r\n var uploadPanel = new Ext.ux.UploadPanel({\r\n anchor: '100%',\r\n //style: {paddingTop: 5,paddingBottom:5},\r\n border: false,\r\n title: 'CSV Upload',\r\n buttonsAt: 'tbar',\r\n url: 'cloakedsitebuilder/ajax',\r\n path: 'root',\r\n method: 'post',\r\n maxFileSize: 5048576,\r\n singleUpload: true,\r\n enableProgress: false,\r\n maxLength:50\r\n });\r\n\r\n\r\n\r\n var otherPanel = new Ext.Panel({\r\n border: false,\r\n //frame: true,\r\n bodyStyle: 'font-size: 10pt;',\r\n layout: 'anchor',\r\n items: [{\r\n xtype: 'panel',\r\n layout: 'form',\r\n height: 135,\r\n border: false,\r\n frame: true,\r\n items: [{\r\n xtype: 'panel',\r\n width: '100%',\r\n border: false,\r\n html : Ext.get('add_many_blogs_info').dom.innerHTML\r\n },{\r\n id: 'bc_plus_csv_delimiter',\r\n xtype: 'textfield',\r\n anchor: '98%',\r\n emptyText: '(,) Comma (default)',\r\n fieldLabel: 'Field Delimiter',\r\n name: 'delimiter'\r\n }]\r\n },uploadPanel]\r\n });\r\n /*var groupId = VRGroupCombo.getValue();\r\n\r\n uploadPanel.uploader.baseParams.index = groupName;\r\n uploadPanel.uploader.baseParams.groupId = groupId;*/\r\n uploadPanel.uploader.baseParams.cmd = 'mass_install_blogs_upload';\r\n /*uploadPanel.uploader.addListener('allfinished',function(){\r\n BlogPostStore.load({\r\n params: {\r\n group_id: groupId,\r\n start: 0,\r\n limit: 250\r\n },\r\n callback: function(){\r\n //console.debug('loaded store');\r\n }\r\n });\r\n });\r\n uploadPanel.uploader.addListener('beforeallstart',function(uploader){\r\n uploader.baseParams.countries = (CountryCombo.getValue()?CountryCombo.getValue():'ALL');\r\n uploader.baseParams.delimiter = Ext.getCmp('drt_csv_delimiter').getValue();\r\n });*/\r\n\r\n var Window = new Ext.Window({\r\n layout: 'fit',\r\n //border: false,\r\n resizable: false,\r\n width: 500,\r\n modal: true,\r\n height: 240,\r\n title: 'Mass Cloaked Site Installer',\r\n items: [otherPanel]\r\n });\r\n\r\n uploadPanel.uploader.addListener('beforeallstart',function(uploader){\r\n uploader.baseParams.delimiter = Ext.getCmp('bc_plus_csv_delimiter').getValue();\r\n });\r\n\r\n uploadPanel.uploader.addListener('allfinished',function(){\r\n\r\n //now run a function that will begin the background process for installing blogs\r\n var delim = uploadPanel.uploader.baseParams.delimiter;\r\n //Window.close();\r\n CheckBCPlusCSV(Window,delim);\r\n //InstallBCPlusCSV(delim);\r\n });\r\n //console.debug(uploadPanel);\r\n\r\n Window.show();\r\n\r\n }//end BulkInstallerWindow\r\n\r\n function CheckBCPlusCSV(Window,delimiter)\r\n {\r\n Window.close();\r\n\r\n Ext.Msg.wait('Verifying CSV format, please wait&hellip;','Status');\r\n window.setTimeout(function(){Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'check_bc_plus_csv',\r\n 'delimiter':delimiter\r\n },\r\n callback: function(opt,success,r){\r\n Ext.Msg.hide();\r\n if(success)\r\n {\r\n r = Ext.decode(r.responseText);\r\n\r\n if(r.success)\r\n {\r\n //install the csv!\r\n if(r.prompt)\r\n {\r\n Ext.Msg.confirm('Notice',r.promptMsg,function(btn){\r\n if(btn == 'yes')\r\n {\r\n InstallBCPlusCSV(delimiter,r.blogCount);\r\n }\r\n });\r\n }\r\n else\r\n {\r\n InstallBCPlusCSV(delimiter,r.blogCount);\r\n }\r\n\r\n }\r\n else\r\n {\r\n Ext.Msg.alert('Error',r.errors);\r\n }\r\n }\r\n else\r\n {\r\n Ext.Msg.alert('An error has occured with this server.');\r\n }\r\n }\r\n })},1000);\r\n\r\n\r\n }//end InstallBCPlusCSV()\r\n\r\n function InstallBCPlusCSV(delimiter,blogCount)\r\n {\r\n Ext.Msg.progress('Status','Preparing to install '+blogCount+' domains. Please wait&hellip;','Initializing Installer&hellip;');\r\n\r\n Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n timeout: 500,\r\n params: {\r\n 'do': 'mass_install_blogs',\r\n 'delimiter':delimiter,\r\n 'total': blogCount\r\n },\r\n callback: function(opt,success,r){\r\n\r\n if(!success)\r\n {\r\n\r\n var backgroundBlogInstall = setInterval(function(){\r\n Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'mass_install_blogs_status'\r\n },\r\n callback: function(opt,success,r){\r\n\r\n var json = Ext.decode(r.responseText);\r\n\r\n if (json.error)\r\n {\r\n clearInterval(backgroundBlogInstall);\r\n Ext.Msg.hide();\r\n Ext.Msg.alert('Error on line ' + json.line_number,json.error_desc);\r\n }\r\n else if(!json.done)\r\n {\r\n Ext.Msg.updateProgress(json.fillval,json.percent+'%',json.status + ' of ' + blogCount + '&hellip;');\r\n }\r\n else if(!json.error && json.done)\r\n {\r\n Ext.Msg.updateProgress(1,'100%','Complete!');\r\n clearInterval(backgroundBlogInstall);\r\n window.setTimeout(function(){\r\n Ext.Msg.hide();\r\n if(json.install_notes)\r\n {\r\n Ext.Msg.alert('Notice','Installation notes have been written to the suite _temp directory!');\r\n }\r\n },750);\r\n BlogViewer.loader.load(BlogViewer.root);\r\n }\r\n //console.log('didnt see an error');\r\n //console.debug(r.responseText);\r\n //Ext.Msg.progress('Status','Installing blog 1 of '+blogCount+'. Please wait&hellip;');\r\n //Ext.Msg.wait(r.responseText);\r\n }\r\n });\r\n\r\n },1000);\r\n }\r\n else\r\n {\r\n //get the status of the import with another ajax call\r\n Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'mass_install_blogs_status'\r\n },\r\n callback: function(opt,success,r){\r\n\r\n var json = Ext.decode(r.responseText);\r\n\r\n if(json.done)\r\n {\r\n Ext.Msg.updateProgress(1,'100%','Complete!');\r\n window.setTimeout(function(){\r\n Ext.Msg.hide();\r\n if(json.install_notes)\r\n {\r\n Ext.Msg.alert('Notice','Installation notes have been written to the suite _temp directory!');\r\n }\r\n },750);\r\n BlogViewer.loader.load(BlogViewer.root);\r\n\r\n }\r\n else if (json.error)\r\n {\r\n Ext.Msg.hide();\r\n Ext.Msg.alert('Error on line ' + json.line_number,json.error_desc);\r\n }\r\n //else if errors happened ...\r\n\r\n //console.log('didnt see an error here either');\r\n //console.debug(r.responseText);\r\n //Ext.Msg.progress('Status','Installing blog 1 of '+blogCount+'. Please wait&hellip;');\r\n //Ext.Msg.wait(r.responseText);\r\n }\r\n });\r\n }\r\n //Ext.Msg.wait(r.responseText);\r\n }\r\n });\r\n\r\n }//end InstallBCPlusCSV()\r\n\r\n\r\n //make window maker\r\n function MakeNewBlogWindow(){\r\n\r\n var nodes = BlogViewer.selModel.getSelectedNodes();\r\n\r\n var NewBlogWindow = new Ext.Window({\r\n layout: 'fit',\r\n id: 'newblogwindow',\r\n resizable: false,\r\n width: 515,\r\n modal: true,\r\n height: 300,\r\n //autoHeight: true,\r\n title: 'Add a New Cloaked Site',\r\n items: [{\r\n //xtype: 'tabpanel',\r\n //activeTab: 0,\r\n border: false,\r\n items: [{\r\n xtype: 'form',\r\n id: 'add_new_blog_form',\r\n bodyStyle: 'padding: 10px;',\r\n labelWidth: 120,\r\n autoHeight: true,\r\n autoScroll: true,\r\n monitorValid: true,\r\n url: 'cloakedsitebuilder/ajax',\r\n frame: true,\r\n border: false,\r\n items: [{\r\n xtype: 'panel',\r\n width: '100%',\r\n border: false,\r\n html : Ext.get('add_new_blog_info').dom.innerHTML\r\n },{\r\n xtype: 'panel',\r\n style: 'margin-left:10px;',\r\n border: false,\r\n layout: 'form',\r\n anchor: '95%',\r\n defaults: {\r\n anchor: '90%'\r\n },\r\n items: [{\r\n xtype: 'textfield',\r\n fieldLabel: 'Domain Name',\r\n emptyText: 'new-domain.com',\r\n regex: new RegExp(/^([a-z\-A-Z0-9]*?\.)+[a-z\-A-Z0-9]*?$/),\r\n regexText: 'Please make sure this value is in \"domain.com\" format. Only numbers,letters, and hyphens(-) are allowed.',\r\n name: 'domain_name',\r\n allowBlank: false\r\n },{\r\n xtype: 'combo',\r\n fieldLabel: 'Human Template',\r\n hiddenName: 'match_template_id',\r\n store: TemplateStore,\r\n valueField: 'template_id',\r\n displayField: 'text',\r\n editable: false,\r\n emptyText: '',\r\n allQuery: 'all_groups',\r\n triggerAction: 'all'\r\n },{\r\n xtype: 'combo',\r\n fieldLabel: 'Bot Template',\r\n hiddenName: 'bot_template_id',\r\n store: TemplateStore,\r\n valueField: 'template_id',\r\n displayField: 'text',\r\n editable: false,\r\n emptyText: '',\r\n allQuery: 'all_groups',\r\n triggerAction: 'all'\r\n },{\r\n xtype: 'combo',\r\n id: 'addblog_settings_group_combo',\r\n fieldLabel: 'Domain Settings Group',\r\n hiddenName: 'settings_id',\r\n store: GroupStore,\r\n valueField: 'settings_id',\r\n displayField: 'text',\r\n editable: false,\r\n emptyText: 'Default Settings Group',\r\n allQuery: 'all_groups',\r\n triggerAction: 'all'\r\n }]\r\n }],\r\n buttons: [{\r\n formBind: true,\r\n text: 'Add Site',\r\n handler: function(){\r\n Ext.MessageBox.wait('The domain is being installed. ','Please Wait...');\r\n Ext.getCmp('add_new_blog_form').getForm().submit({\r\n params: {\r\n 'do': 'addSite',\r\n 'useSession': true\r\n },\r\n success: function(form,action){\r\n var domain = form.getValues().domain_name;\r\n var chosenGroup = Ext.getCmp('addblog_settings_group_combo').getValue();\r\n var selectedGroupNode = BlogViewer.getNodeById('group_settings_' + (chosenGroup != '' ? chosenGroup : '-1'));\r\n BlogViewer.loader.load(selectedGroupNode,function(){\r\n selectedGroupNode.expand();\r\n Ext.MessageBox.hide();\r\n Ext.MessageBox.alert('Reminder','Remember to specify your domain settings for this domain before installing keyword pages. Failure to do so may result in the sytem not functioning properly.');\r\n NewBlogWindow.close();\r\n });\r\n },\r\n failure: function(form,action){\r\n\r\n var msg = Ext.decode(action.response.responseText);\r\n if(msg.error)\r\n {\r\n Ext.MessageBox.hide();\r\n Ext.MessageBox.alert('Error',msg.error);\r\n }\r\n else Ext.MessageBox.hide();\r\n }\r\n\r\n });\r\n\r\n }\r\n },{\r\n text: 'Cancel',\r\n handler: function(){\r\n NewBlogWindow.close();\r\n }\r\n }]\r\n }]\r\n }]\r\n });\r\n\r\n //hide the chart\r\n\r\n NewBlogWindow.show();\r\n\r\n }\r\n function MakeNewWPMUblogWindow(){\r\n\r\n var nodes = BlogViewer.selModel.getSelectedNodes();\r\n\r\n var NewBlogWindow = new Ext.Window({\r\n layout: 'fit',\r\n resizable: false,\r\n width: 600,\r\n\r\n modal: true,\r\n height: 285,\r\n //autoHeight: true,\r\n title: 'Add a New WPMU Blog',\r\n items: [{\r\n xtype: 'form',\r\n labelWidth: 195,\r\n monitorValid:true,\r\n bodyStyle: 'padding: 10px;',\r\n url: 'blogcloaker/ajax',\r\n defaults: {\r\n anchor: '98%'\r\n },\r\n frame: true,\r\n border: false,\r\n items: [{\r\n xtype: 'panel',\r\n width: '100%',\r\n border: false,\r\n html : Ext.get('add_wpmu_blog_info').dom.innerHTML\r\n },{\r\n xtype: 'textfield',\r\n fieldLabel: 'Absolute Path to WPMU Location',\r\n emptyText: '/home/username/public_html/wpmu_directory',\r\n name: 'wpUrl',\r\n allowBlank: false\r\n },{\r\n xtype: 'textfield',\r\n fieldLabel: 'WPMU Blog domain',\r\n emptyText: 'new-blog.your-wpmu-domain.com',\r\n name: 'wpmu_blog',\r\n allowBlank: false\r\n },{\r\n xtype: 'combo',\r\n id: 'addblog_settings_group_combo',\r\n fieldLabel: 'Blog Settings Group',\r\n hiddenName: 'settings_id',\r\n store: GroupStore,\r\n valueField: 'settings_id',\r\n displayField: 'text',\r\n editable: false,\r\n emptyText: 'Default Settings Group',\r\n allQuery: 'all_groups',\r\n triggerAction: 'all',\r\n listeners: {\r\n select: function(c,r,i){\r\n //set default group for cloning\r\n //c.setValue('ext_id_group_' + '-1');\r\n }\r\n }\r\n\r\n },{\r\n xtype: 'checkbox',\r\n style: 'margin-top: 5px;',\r\n checked: true,\r\n name: 'auto_activate',\r\n boxLabel: 'Activate Blog Cloaker Plugin',\r\n hideLabel: true\r\n }],\r\n buttons: [{\r\n formBind: true,\r\n text: 'Add Blog',\r\n handler: function(){\r\n Ext.MessageBox.wait('The wordpress directory is being analyzed and added to the system.', 'Please Wait...');\r\n NewBlogWindow.items.items[0].getForm().submit({\r\n params: {\r\n 'do': 'addBlog',\r\n 'useSession': true\r\n },\r\n success: function(){\r\n var chosenGroup = Ext.getCmp('addblog_settings_group_combo').getValue();\r\n var selectedGroupNode = BlogViewer.getNodeById('group_settings_' + (chosenGroup != '' ? chosenGroup : '-1'));\r\n BlogViewer.loader.load(selectedGroupNode,function(){\r\n selectedGroupNode.expand();\r\n Ext.MessageBox.hide();\r\n NewBlogWindow.close();\r\n });\r\n\r\n\r\n },\r\n failure: function(){\r\n Ext.MessageBox.hide();\r\n }\r\n\r\n });\r\n\r\n }\r\n },{\r\n text: 'Cancel',\r\n handler: function(){\r\n NewBlogWindow.close();\r\n }\r\n }]\r\n }]\r\n });\r\n\r\n //hide the chart\r\n\r\n NewBlogWindow.show();\r\n\r\n }\r\n //make a group window maker\r\n function MakeNewGroupWindow(){\r\n\r\n //var existingGroupWindow = Ext.getCmp('add_group_window');\r\n if(Ext.getCmp('add_group_window')) {\r\n Ext.getCmp('add_group_window').show();\r\n return;\r\n }\r\n else\r\n {\r\n var infoHTML = Ext.get('add_blog_group_info').dom.innerHTML;\r\n var NewGroupWindow = new Ext.Window({\r\n id: 'add_group_window',\r\n layout: 'fit',\r\n resizable: false,\r\n width: 400,\r\n closeAction: 'hide',\r\n modal: true,\r\n height: 225,\r\n title: 'Add a New Domain Settings Group',\r\n items: [{\r\n xtype: 'form',\r\n labelWidth: 150,\r\n monitorValid:true,\r\n url: 'cloakedsitebuilder/ajax',\r\n defaults: {\r\n anchor: '100%'\r\n },\r\n frame: true,\r\n border: false,\r\n items: [{\r\n xtype: 'panel',\r\n width: '100%',\r\n border: false,\r\n html : infoHTML\r\n },{\r\n xtype: 'textfield',\r\n labelStyle: 'width: 125px',\r\n fieldLabel: 'Settings Group Name',\r\n name: 'settings_group_name',\r\n allowBlank: false\r\n },{\r\n xtype: 'combo',\r\n id: 'clone_combo',\r\n fieldLabel: 'Clone Settings From',\r\n hiddenName: 'clone_settings_from',\r\n store: GroupStore,\r\n valueField: 'extID',\r\n displayField: 'text',\r\n editable: false,\r\n emptyText: 'Default Settings Group',\r\n allQuery: 'all_groups',\r\n triggerAction: 'all',\r\n listeners: {\r\n select: function(c,r,i){\r\n //set default group for cloning\r\n //c.setValue('ext_id_group_' + '-1');\r\n }\r\n }\r\n\r\n }],\r\n buttons: [{\r\n text: 'Create Settings Group',\r\n handler: function(){\r\n Ext.MessageBox.wait('The new blog settings group is being added to the system.','Please Wait...');\r\n NewGroupWindow.items.items[0].getForm().submit({\r\n params: {\r\n 'do': 'addGroup'\r\n },\r\n success: function(){\r\n BlogViewer.loader.load(BlogViewer.root);\r\n Ext.MessageBox.hide();\r\n NewGroupWindow.close();\r\n },\r\n failure: function(){\r\n Ext.MessageBox.hide();\r\n }\r\n\r\n });\r\n\r\n }\r\n },{\r\n text: 'Cancel',\r\n handler: function(){\r\n NewGroupWindow.hide();\r\n }\r\n }]\r\n }]\r\n });\r\n NewGroupWindow.show();\r\n }\r\n }\r\n\r\n //make a group window maker\r\n function MakeNewKeywordGroupWin(){\r\n\r\n var infoHTML = Ext.get('add_keyword_group_info').dom.innerHTML;\r\n var NewKeywordGroupWindow = new Ext.Window({\r\n layout: 'fit',\r\n resizable: false,\r\n width: 400,\r\n height: 175,\r\n modal: true,\r\n //height: 225,\r\n //autoHeight: true,\r\n title: 'Add a New Keyword Group',\r\n items: [{\r\n xtype: 'form',\r\n monitorValid:true,\r\n url: 'blogcloaker/ajax',\r\n\r\n frame: true,\r\n border: false,\r\n items: [{\r\n xtype: 'panel',\r\n width: '100%',\r\n border: false,\r\n html : infoHTML\r\n },{\r\n xtype: 'textfield',\r\n anchor: '-30',\r\n labelStyle: 'width: 125px',\r\n fieldLabel: 'Keyword Group Name',\r\n name: 'keyword_group_name',\r\n allowBlank: false\r\n }],\r\n buttons: [{\r\n formBind: true,\r\n text: 'Create Keyword Group',\r\n handler: function(){\r\n Ext.MessageBox.wait('The new keyword group is being created.','Please Wait...');\r\n NewKeywordGroupWindow.items.items[0].getForm().submit({\r\n params: {\r\n 'do': 'newKeywordGroup'\r\n },\r\n success: function(form,action){\r\n VRGroupCombo.store.load({\r\n callback: function(){\r\n eval('var jsonResponse = ' + action.response.responseText);\r\n VRGroupCombo.selectByValue('ext_id_redirection_group_' + jsonResponse.extraData);\r\n\r\n Ext.MessageBox.hide();\r\n NewKeywordGroupWindow.close();\r\n }\r\n });\r\n\r\n },\r\n failure: function(){\r\n Ext.MessageBox.hide();\r\n }\r\n\r\n });\r\n\r\n }\r\n },{\r\n text: 'Cancel',\r\n handler: function(){\r\n NewKeywordGroupWindow.close();\r\n }\r\n }]\r\n }]\r\n });\r\n NewKeywordGroupWindow.show();\r\n }\r\n\r\n //easy delete blog/group function\r\n function RemoveFromBlogView(){\r\n\r\n\r\n var nodes = BlogViewer.selModel.getSelectedNodes();\r\n\r\n if(nodes.length > 1)\r\n {\r\n var cleanNodes = [];\r\n\r\n for(i in nodes){\r\n if(nodes[i].attributes){\r\n cleanNodes[i] = nodes[i].attributes.blog_id;\r\n }\r\n }\r\n\r\n //remove blog nodes\r\n Ext.MessageBox.confirm(\r\n 'Remove Domain',\r\n 'Are you sure you want to remove the selected domains ?',\r\n function(button){\r\n if(button == 'yes'){\r\n\r\n var WaitMask = new Ext.LoadMask(BlogViewer.getEl(),{\r\n msg: 'Removing Domain...'\r\n });\r\n\r\n WaitMask.show();\r\n\r\n //send an ajax request\r\n Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'removeBlog',\r\n blogId: Ext.encode(cleanNodes)\r\n },\r\n callback: function(){\r\n function hang(){\r\n WaitMask.hide();\r\n };\r\n hang.defer(500);\r\n BlogViewer.selModel.clearSelections();\r\n BlogViewer.loader.load(BlogViewer.root);\r\n }\r\n });\r\n }\r\n });\r\n }\r\n else\r\n {\r\n var node = BlogViewer.selModel.getSelectedNodes()[0];\r\n if(node.text !== 'Default Settings Group' && node.text !== '*Default Settings Group' && node.text !== '(no blogs exist)'){\r\n if(node.leaf){\r\n Ext.MessageBox.confirm(\r\n 'Remove Domain',\r\n 'Are you sure you want to remove the selected domain?',\r\n function(button){\r\n if(button == 'yes'){\r\n\r\n var WaitMask = new Ext.LoadMask(BlogViewer.getEl(),{\r\n msg: 'Removing Domain...'\r\n });\r\n\r\n WaitMask.show();\r\n\r\n var currentNodeId = node.id.substr(5);\r\n\r\n //send an ajax request\r\n Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'removeBlog',\r\n blogId: currentNodeId\r\n },\r\n callback: function(){\r\n function hang(){\r\n WaitMask.hide();\r\n };\r\n hang.defer(500);\r\n var parent = node.parentNode;\r\n BlogViewer.loader.load(node.parentNode);\r\n parent.expand();\r\n }\r\n });\r\n }\r\n });\r\n }\r\n else{\r\n Ext.MessageBox.confirm(\r\n\r\n 'Remove Settings Group',\r\n 'Are you sure you want to remove the settings group \"'+ node.text +'\" ? All domains currently using this group will be changed to the default settings group!',\r\n function(button){\r\n if(button == 'yes'){\r\n\r\n var WaitMask = new Ext.LoadMask(BlogViewer.getEl(),{\r\n msg: 'Removing Group...'\r\n });\r\n\r\n WaitMask.show();\r\n\r\n var currentNodeId = node.id.substr(15);\r\n\r\n //send an ajax request\r\n Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'removeSettingsGroup',\r\n settingsID: currentNodeId\r\n },\r\n callback: function(){\r\n function hang(){\r\n WaitMask.hide();\r\n };\r\n hang.defer(500);\r\n BlogViewer.loader.load(BlogViewer.root);\r\n }\r\n });\r\n }\r\n }\r\n );\r\n }\r\n }\r\n }\r\n }\r\n\r\n //make a manage settings window\r\n function MakeManageSettingsWindow(){\r\n\r\n //get the groupnode\r\n if (BlogViewer.selModel.getSelectedNodes()[0].attributes.settings_id){\r\n var selectedGroupNode = BlogViewer.selModel.getSelectedNodes()[0];\r\n\r\n }\r\n else{\r\n var selectedGroupNode = BlogViewer.selModel.getSelectedNodes()[0].parentNode;\r\n }\r\n //console.debug(selectedGroupNode);\r\n //console.debug(selectedGroupNode.id);\r\n //console.debug(selectedGroupNode.attributes.id);\r\n selectedGroupNode.id = selectedGroupNode.attributes.id.substr(15);\r\n //console.debug(selectedGroupNode);\r\n //check for existing tab\r\n if(Ext.getCmp('manage_settings_' + selectedGroupNode.id))\r\n {\r\n Ext.getCmp('manage_settings_' + selectedGroupNode.id).show();\r\n return;\r\n }\r\n\r\n\r\n\r\n //interlinking settings loader\r\n function LoadInterlinkingSettings(){\r\n Ext.getCmp('interlinking_settings_form_' + selectedGroupNode.id).getForm().load({\r\n params: {\r\n 'do': 'loadInterlinkingSettings',\r\n settings_id: selectedGroupNode.id.substr(15)\r\n },\r\n waitMsg: 'Loading Settings...',\r\n success: function(form,action){\r\n if(action.result.data.interlinking_method == 'disabled') InterlinkingDisablePanel.hide();\r\n else InterlinkingDisablePanel.show();\r\n if(action.result.data.interlinking_method == 'relevant') Ext.getCmp('min_links_interlinking_' + selectedGroupNode.id.substr(15)).disable();\r\n else Ext.getCmp('min_links_interlinking_' + selectedGroupNode.id.substr(15)).enable();\r\n InterlinkingDisablePanel.doLayout();\r\n }\r\n });\r\n }\r\n\r\n var ContentSettingsRSSstore = new Ext.data.JsonStore({\r\n url: 'cloakedsitebuilder/ajax',\r\n autoLoad: true,\r\n baseParams: {\r\n 'do':'getRssFeeds',\r\n 'settings_id': selectedGroupNode.id\r\n },\r\n root: 'feeds',\r\n remoteSort: false,\r\n totalProperty: 'totalCount',\r\n fields: ['rss']\r\n });\r\n var ContentSettingsRSSGridSelModel = new Ext.grid.CheckboxSelectionModel({\r\n listeners: {\r\n selectionchange: function(selModel){\r\n if(selModel.getCount() > 0) Ext.getCmp('remove_feed_' + selectedGroupNode.id).enable();\r\n else Ext.getCmp('remove_feed_' + selectedGroupNode.id).disable();\r\n }\r\n }\r\n });\r\n var ContentSettingsRSSGrid = new Ext.grid.GridPanel({\r\n title: 'Content RSS Feed Manager',\r\n iconCls: 'fam_feed_edit',\r\n frame: true,\r\n columnWidth: .70,\r\n height: 150,\r\n viewConfig: {\r\n forceFit: true\r\n },\r\n loadMask: true,\r\n autoScroll: true,\r\n store: ContentSettingsRSSstore,\r\n sm: ContentSettingsRSSGridSelModel,\r\n columns: [ContentSettingsRSSGridSelModel,{\r\n header: \"RSS Feed URL\",\r\n dataIndex: 'rss',\r\n editor: new Ext.form.TextArea({\r\n allowBlank: true,\r\n height: 400,\r\n grow: true,\r\n listeners:{\r\n focus: function(field){\r\n field.selectText();\r\n }\r\n }\r\n })\r\n }],\r\n tbar: [{\r\n text: 'Add',\r\n iconCls: 'fam_feed_add',\r\n handler: function(){\r\n var settings_id = selectedGroupNode.id;\r\n\r\n Ext.MessageBox.prompt('Add RSS Feed','Enter the URL to the RSS feed you would like to use as a content source',function(btn,text){\r\n if(btn == 'ok'){\r\n Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'addRssFeed',\r\n settings_id: settings_id,\r\n url: text\r\n },\r\n callback: function(){\r\n ContentSettingsRSSstore.load();\r\n }\r\n });\r\n }\r\n\r\n });\r\n }\r\n },'-',{\r\n text: 'Refresh Feeds',\r\n iconCls: 'fam_database_refresh',\r\n handler: function(){ContentSettingsRSSstore.load();}\r\n },'-',{\r\n text: 'Remove Selected',\r\n iconCls: 'fam_feed_delete',\r\n id: 'remove_feed_' + selectedGroupNode.id,\r\n disabled: true,\r\n handler: function(){\r\n\r\n var settings_id = selectedGroupNode.id;\r\n\r\n Ext.MessageBox.confirm('Remove Selected Feeds','Are you sure you want to delete the selected feed URL\'s ?',function(btn){\r\n if(btn == 'yes'){\r\n var selectedRecords = ContentSettingsRSSGridSelModel.getSelections();\r\n\r\n for(i in selectedRecords){\r\n if(selectedRecords[i].data){\r\n selectedRecords[i] = selectedRecords[i].data.rss;\r\n }\r\n }\r\n var feeds = Ext.encode(selectedRecords);\r\n\r\n Ext.Ajax.request({\r\n url: 'cloakedsitebuilder/ajax',\r\n method: 'POST',\r\n params: {\r\n 'do': 'removeRssFeeds',\r\n settings_id: settings_id,\r\n feeds: feeds\r\n },\r\n callback: function(){\r\n ContentSettingsRSSstore.load();\r\n }\r\n });\r\n }\r\n\r\n });\r\n\r\n }\r\n }],\r\n style: 'margin-left: 25px;',\r\n listeners: {\r\n beforerender: function(grid){\r\n grid.hide();\r\n }\r\n }\r\n });\r\n var CustomContentHelp = new Ext.Panel ({\r\n border: false,\r\n style: 'margin-left: 25px;',\r\n anchor: '90%',\r\n html: Ext.get('custom_content_help').dom.innerHTML,\r\n listeners: {\r\n beforerender: function(field){\r\n field.hide();\r\n }\r\n }\r\n });\r\n var CustomContentTextArea = new Ext.form.TextArea({\r\n xtype: 'textarea',\r\n style: 'margin-left: 25px;',\r\n name: 'custom_content_text',\r\n hideLabel: true,\r\n anchor: '90%',\r\n //width: 546,\r\n height: 120,\r\n listeners: {\r\n beforerender: function(field){\r\n field.hide();\r\n }\r\n }\r\n });\r\n\r\n function ContentPreviewTool(){\r\n\r\n function generatePreview(){\r\n waitmask = new Ext.LoadMask(Ext.get('content_preview_form'),{msg:'Generating Content...'});\r\n waitmask.show();\r\n Ext.get('c_output').getUpdater().showLoadIndicator = false;\r\n\r\n var rssFeeds = ContentSettingsRSSstore.getRange();\r\n for (i in rssFeeds)\r\n {\r\n if(rssFeeds[i].data)\r\n {\r\n rssFeeds[i] = rssFeeds[i].data;\r\n }\r\n }\r\n\r\n var form = Ext.getCmp('content_settings_form_' + selectedGroupNode.id).getForm().getValues();\r\n form.density_setting = Ext.getCmp('densityMeter' + selectedGroupNode.id).getValue();\r\n\r\n Ext.get('c_output').getUpdater().update({\r\n url: 'cloakedsitebuilder/ajax',\r\n params: {\r\n 'do':'generateContentPreview',\r\n content_keyword: Ext.getCmp('content_keyword').getValue(),\r\n 'form': Ext.encode(form),\r\n rss: Ext.encode(rssFeeds)\r\n },\r\n callback: function(){\r\n waitmask.hide();\r\n }\r\n });\r\n /*ContentPreviewWindow.items.items[0].getForm().submit({\r\n params: {\r\n 'do': 'generateContentPreview'\r\n },\r\n success: function(form,action){\r\n WaitMask.hide();\r\n Ext.getCmp('c_output').dom.innerHTML = action.result.output;\r\n /*Ext.getCmp('content_preview_form').add({\r\n xtype: 'panel',\r\n layout: 'fit',\r\n html: action.result.output,\r\n width: '100%',\r\n border: false\r\n }).show();\r\n Ext.getCmp('content_preview_form').doLayout();\r\n },\r\n failure: function(){\r\n WaitMask.hide();\r\n }\r\n\r\n });\r\n */\r\n }\r\n\r\n var ContentPreviewWindow = new Ext.Window({\r\n height: 500,\r\n layout: 'fit',\r\n maximizable: true,\r\n modal: true,\r\n resizable: true,\r\n title: 'Content Preview Tool',\r\n width: 700,\r\n items: [{\r\n xtype: 'form',\r\n id: 'content_preview_form',\r\n monitorValid:true,\r\n url: 'cloakedsitebuilder/ajax',\r\n frame: true,\r\n border: false,\r\n items: [{\r\n xtype: 'panel',\r\n width: '100%',\r\n border: false\r\n },{\r\n xtype: 'textfield',\r\n anchor: '-30',\r\n labelStyle: 'width: 125px',\r\n fieldLabel: 'Content Keyword',\r\n id: 'content_keyword',\r\n allowBlank: false,\r\n listeners: {\r\n render: function(field){\r\n new Ext.KeyMap(field.getEl(),{\r\n key: 13,\r\n fn: generatePreview\r\n });\r\n\r\n field.focus('', 100);\r\n }\r\n }\r\n },{\r\n xtype: 'panel',\r\n border: false,\r\n autoScroll: true,\r\n height: 600,\r\n items: [{\r\n id: 'c_output',\r\n xtype: 'panel',\r\n autoScroll: true,\r\n border: false,\r\n style: 'margin: 15px; 5px 10px 5px;'\r\n }]\r\n }],\r\n buttons: [{\r\n formBind: true,\r\n text: 'Generate Content Preview',\r\n handler: generatePreview\r\n },{\r\n text: 'Cancel',\r\n handler: function(){\r\n ContentPreviewWindow.close();\r\n }\r\n }]\r\n }]\r\n });\r\n ContentPreviewWindow.show();\r\n }\r\n function RelevantLinkPreview(){\r\n\r\n function generatePreview(){\r\n waitmask = new Ext.LoadMask(Ext.get('relevant_link_form'),{msg:'Searching Index...'});\r\n waitmask.show();\r\n Ext.get('link_output').getUpdater().showLoadIndicator = false;\r\n\r\n var rssFeeds = ContentSettingsRSSstore.getRange();\r\n for (i in rssFeeds)\r\n {\r\n if(rssFeeds[i].data)\r\n {\r\n rssFeeds[i] = rssFeeds[i].data;\r\n }\r\n }\r\n\r\n Ext.get('link_output').getUpdater().update({\r\n url: 'blogcloaker/ajax',\r\n params: {\r\n 'do':'generateLinkPreview',\r\n content_keyword: Ext.getCmp('content_keyword').getValue(),\r\n 'form': Ext.encode(Ext.getCmp('interlinking_settings_form_' + selectedGroupNode.id).getForm().getValues())\r\n },\r\n callback: function(){\r\n waitmask.hide();\r\n }\r\n });\r\n }\r\n\r\n var RelevantLinkPreviewWindow = new Ext.Window({\r\n layout: 'fit',\r\n resizable: false,\r\n width: 450,\r\n height: 310,\r\n modal: true,\r\n title: 'Relevant Link Preview Tool',\r\n items: [{\r\n xtype: 'form',\r\n id: 'relevant_link_form',\r\n monitorValid:true,\r\n url: 'blogcloaker/ajax',\r\n frame: true,\r\n border: false,\r\n items: [{\r\n xtype: 'panel',\r\n width: '100%',\r\n border: false\r\n },{\r\n xtype: 'textfield',\r\n anchor: '-30',\r\n labelStyle: 'width: 125px',\r\n fieldLabel: 'Keyword',\r\n id: 'content_keyword',\r\n allowBlank: false,\r\n listeners: {\r\n render: function(field){\r\n new Ext.KeyMap(field.getEl(),{\r\n key: 13,\r\n fn: generatePreview\r\n });\r\n }\r\n }\r\n },{\r\n xtype: 'panel',\r\n border: false,\r\n autoScroll: true,\r\n height: 200,\r\n items: [{\r\n id: 'link_output',\r\n xtype: 'panel',\r\n autoScroll: true,\r\n border: false,\r\n style: 'margin: 15px; 5px 10px 5px;'\r\n }]\r\n }],\r\n buttons: [{\r\n formBind: true,\r\n text: 'Generate Link Preview',\r\n handler: generatePreview\r\n },{\r\n text: 'Cancel',\r\n handler: function(){\r\n ContentPreviewWindow.close();\r\n }\r\n }]\r\n }]\r\n });\r\n RelevantLinkPreviewWindow.show();\r\n }\r\n function RelevantLinkPreview2(){\r\n function nameRender(value, p, record){\r\n //console.debug(p);\r\n //console.debug(record);\r\n return value;\r\n }\r\n var RelevantLinkStore = new Ext.data.JsonStore({\r\n url: 'blogcloaker/ajax',\r\n baseParams: {\r\n 'do':'getRelevantLinks'\r\n },\r\n root: 'hits',\r\n remoteSort: false,\r\n totalProperty: 'totalCount',\r\n fields: ['title', 'domain', 'group','relevancy'],\r\n listeners: {\r\n load: function(store,records){\r\n //store.baseParams.start = store.baseParams.start ? store.baseParams.start : 0;\r\n //store.baseParams.limit = store.baseParams.limit ? store.baseParams.limit : 50;\r\n }\r\n }\r\n });\r\n\r\n var LinkPreviewGrid = new Ext.grid.GridPanel({\r\n loadMask: true,\r\n autoScroll: true,\r\n store: RelevantLinkStore,\r\n columns: [\r\n new Ext.grid.RowNumberer(),\r\n {header: \"Cloaked Post Title\",   dataIndex: 'title', width: 110,sortable: true, renderer: nameRender},\r\n {header: \"Blog Domain\", dataIndex: 'domain', width: 80,sortable: true},\r\n {header: \"Settings Group Name\", dataIndex: 'group', width: 100,sortable: true},\r\n {header: \"Content Relevancy\", dataIndex: 'relevancy', width: 100,sortable: true}\r\n ],\r\n viewConfig: {\r\n forceFit: true\r\n },\r\n anchor: '100% 100%',\r\n stripeRows: true,\r\n plugins:[new Ext.ux.grid.Search({\r\n mode:'remote',\r\n emptyText: 'Search Cloaked Posts By Keyword',\r\n disableIndexes: ['domain', 'group','relevancy'],\r\n position: 'top',\r\n iconCls: false,\r\n minLength: 1,\r\n hideMenu: true,\r\n width: 573\r\n })],\r\n frame:true,\r\n border: false,\r\n tbar: new Ext.Toolbar(),\r\n listeners: {\r\n render: function(grid){\r\n /*var tbar = grid.getTopToolbar();\r\n tbar.addSeparator();\r\n tbar.addButton([{\r\n text:'Add To List',\r\n id: 'import_selected_button',\r\n disabled: true,\r\n iconCls: 'icon_import_data',\r\n handler: function(){\r\n var combo = Ext.getCmp('cj_merchant_combo');\r\n var comboValue = combo.getValue();\r\n var comboRawValue = combo.getRawValue();\r\n\r\n var selections = MerchantSM.getSelections();\r\n\r\n if(comboValue == 'search' || comboValue.length < 1){\r\n\r\n //just set the value..\r\n\r\n var newVal = '';\r\n var newRawVal = '';\r\n\r\n for(each in selections){\r\n var ob = selections[each];\r\n if(ob.data){\r\n  newVal += ob.data.cid + ',';\r\n  newRawVal += ob.data.name + ',';\r\n }\r\n\r\n }\r\n }\r\n else{\r\n\r\n //add to the existing values\r\n\r\n var newVal = comboValue + ',';\r\n var newRawVal = comboRawValue + ',';\r\n\r\n for(each in selections){\r\n var ob = selections[each];\r\n if(ob.data){\r\n  if(!comboValue.match(ob.data.cid)){\r\n  newVal += ob.data.cid + ',';\r\n  newRawVal += ob.data.name + ',';\r\n  }\r\n }\r\n }\r\n }\r\n\r\n newVal = newVal.replace(/,+$/,\"\");\r\n newRawVal = newRawVal.replace(/,+$/,\"\");\r\n combo.setValue(newVal);\r\n combo.setRawValue(newRawVal);\r\n }\r\n }]);\r\n tbar.addSeparator();\r\n tbar.addButton([{\r\n text:'Clear List',\r\n id: 'clear_merchant_combo',\r\n disabled: false,\r\n handler: function(){\r\n var combo = Ext.getCmp('cj_merchant_combo');\r\n\r\n combo.setRawValue('');\r\n combo.setValue('');\r\n }\r\n }]);\t\t\t*/\r\n }\r\n }\r\n });\r\n var RelevantLinkPreviewWindow = new Ext.Window({\r\n title: 'Relevent Link Preview Tool',\r\n height: 350,\r\n width: 600,\r\n resizable: true,\r\n maximizable: true,\r\n modal: true,\r\n border: false,\r\n layout: 'fit',\r\n items: [LinkPreviewGrid],\r\n listeners: {\r\n close: function(){\r\n  if (typeof CollectGarbage == 'function') {\r\n CollectGarbage();\r\n }\r\n }\r\n }\r\n });\r\n\r\n RelevantLinkPreviewWindow.show();\r\n }\r\n\r\n var ArticleStore = new Ext.data.Store({\r\n autoLoad: false,\r\n url: 'ajax',\r\n baseParams: {\r\n 'do': 'getArticles'\r\n },\r\n reader: new Ext.data.JsonReader({\r\n root: 'articles'\r\n //id: 'extID'\r\n },[\r\n {name: 'extID'},\r\n {name: 'text'}\r\n ])\r\n });\r\n\r\n Ext.ux.SliderTip = Ext.extend(Ext.Tip, {\r\n minWidth: 10,\r\n offsets : [0, -10],\r\n init : function(slider){\r\n slider.on('dragstart', this.onSlide, this);\r\n slider.on('drag', this.onSlide, this);\r\n slider.on('dragend', this.hide, this);\r\n slider.on('destroy', this.destroy, this);\r\n },\r\n\r\n onSlide : function(slider){\r\n this.show();\r\n this.body.update(this.getText(slider));\r\n this.doAutoWidth();\r\n this.el.alignTo(slider.thumb, 'b-t?', this.offsets);\r\n },\r\n\r\n getText : function(slider){\r\n return slider.getValue();\r\n }\r\n });\r\n var tip = new Ext.ux.SliderTip({\r\n getText: function(slider){\r\n\r\n //insert the decimal at the right place\r\n var val = slider.getValue();\r\n val = val.toString();\r\n var tip = '';\r\n\r\n if(val.length == '1')\r\n {\r\n tip = '0.' + val + '%';\r\n }\r\n else if (val.length == '2')\r\n {\r\n tip =  val.substr(0,1) + '.' + val.substr(1,1) + '%';\r\n }\r\n else if (val.length == '3')\r\n {\r\n tip =  val.substr(0,2) + '.' + val.substr(2,1) + '%';\r\n }\r\n\r\n\r\n //var tip = slider.getValue() + '%' ;\r\n //if(slider.getValue() == 0) tip = ' (Low Relevancy)';\r\n //if(slider.getValue() == 10) tip = ' (Medium Relevancy)';\r\n //if(slider.getValue() == 20) tip = ' (High Relevancy)';\r\n return tip;\r\n //if(slider.getValue() == -1) return 'Off (Normal)';\r\n //return (slider.getValue() - 10) + tip;\r\n //return String.format('<b>.{0} Relevancy</b>', slider.getValue());\r\n }\r\n });\r\n\r\n var densityMeter = new Ext.Slider({\r\n disabled: true,\r\n id: 'densityMeter' + selectedGroupNode.id,\r\n increment: 1,\r\n value: '.1',\r\n minValue: '1',\r\n maxValue: '100',\r\n plugins: tip,\r\n listeners: {\r\n changecomplete: function(slider,newval){/*\r\n\r\n var WaitMask = new Ext.LoadMask(VRGridPanel.getEl(),{\r\n msg: 'Saving MySQL Relevancy...'\r\n });\r\n\r\n var group = VRGroupCombo.getValue();\r\n\r\n WaitMask.show();\r\n Ext.Ajax.request({\r\n url: drtAjaxPath2,\r\n method: 'POST',\r\n params: {\r\n 'do': \t'setRelevancySetting',\r\n 'group': group,\r\n score: newval\r\n },\r\n callback: function(){\r\n\r\n RedirectionGroupStore.load({\r\n callback: function(){\r\n VRGroupCombo.setValue(group);\r\n }\r\n });\r\n\r\n function hang(){\r\n WaitMask.hide();\r\n };\r\n\r\n hang.defer(500);\r\n\r\n }\r\n });*/\r\n }\r\n }\r\n });\r\n\r\n //content settings loader\r\n function LoadContentSettings(waitmask){\r\n Ext.getCmp('content_settings_form_' + selectedGroupNode.id).cascade(function()\r\n {\r\n if(this.xtype == \"checkbox\")\r\n {\r\n this.setValue(0);\r\n }\r\n });\r\n\r\n Ext.getCmp('content_settings_form_' + selectedGroupNode.id).getForm().load({\r\n params: {\r\n 'do': 'loadContentSettings',\r\n settings_id: selectedGroupNode.attributes.settings_id\r\n },\r\n success: function(form,action)\r\n {\r\n densityMeter.setValue(action.result.data.density_setting);\r\n waitmask.hide();\r\n },\r\n failure: function()\r\n {\r\n waitmask.hide();\r\n }\r\n });\r\n }\r\n\r\n\r\n var ArticleCombo = new Ext.form.ComboBox({\r\n xtype: 'combo',\r\n anchor: '50%',\r\n store: ArticleStore,\r\n disabled: true,\r\n id: 'article_selector_combo' + selectedGroupNode.id,\r\n hiddenName: 'article_directory',\r\n valueField: 'extID',\r\n displayField: 'text',\r\n editable: false,\r\n fieldLabel: 'Article Directory',\r\n emptyText: '(Optional)',\r\n allQuery: 'all_groups',\r\n triggerAction: 'all',\r\n });\r\n\r\n var ContentSettingsTab = new Ext.Panel({\r\n border: false,\r\n iconCls: 'fam_table_gear',\r\n id: 'content_settings_tab_' + selectedGroupNode.id,\r\n layout: 'fit',\r\n listeners: {\r\n render: function()\r\n {\r\n //run a bit delayed to make sure waitmask is centered\r\n setTimeout(function()\r\n {\r\n var WaitMask = new Ext.LoadMask(Ext.get('content_settings_tab_' + selectedGroupNode.id),{msg:'Loading Settings, Please Wait...'});\r\n WaitMask.show();\r\n ArticleStore.load({\r\n callback: function()\r\n {\r\n LoadContentSettings(WaitMask);\r\n }\r\n });\r\n },100);\r\n }\r\n },\r\n title: 'Content Settings',\r\n items: [\r\n {\r\n autoScroll: true,\r\n bodyStyle: 'padding-left: 10px',\r\n border: false,\r\n buttonAlign: 'left',\r\n buttons: [\r\n {\r\n text: 'Save Content Settings',\r\n handler: function()\r\n {\r\n Ext.getCmp('content_settings_form_' + selectedGroupNode.id).getForm().submit({\r\n params: {\r\n 'do': 'saveContentSettings',\r\n settings_id : selectedGroupNode.id,\r\n density_setting: densityMeter.getValue()\r\n },\r\n waitMsg: 'Saving Settings...',\r\n success: function(){}\r\n });\r\n }\r\n },\r\n {\r\n text: 'Reload Saved Values',\r\n handler: function()\r\n {\r\n var WaitMask = new Ext.LoadMask(Ext.get('content_settings_tab_' + selectedGroupNode.id),{msg:'Loading Settings, Please Wait...'});\r\n WaitMask.show();\r\n LoadContentSettings(WaitMask);\r\n }\r\n },\r\n {\r\n handler: ContentPreviewTool,\r\n text: 'Content Preview Tool'\r\n }\r\n ],\r\n frame: true,\r\n iconCls: 'icon_news_tab',\r\n id: 'content_settings_form_' + selectedGroupNode.id,\r\n url: 'cloakedsitebuilder/ajax',\r\n xtype: 'form',\r\n items: [\r\n {\r\n html:  '<h1 style=\"font-size: 14pt; font-weight: bold; margin: 0;\">Content Sources</h1>',\r\n xtype: 'label'\r\n },\r\n {\r\n anchor: '90%',\r\n border: false,\r\n layout: 'column',\r\n style: 'margin: 10px 0 10px 25px',\r\n xtype: 'panel',\r\n items: [\r\n {\r\n border: false,\r\n columnWidth: .30,\r\n layout: 'form',\r\n xtype: 'panel',\r\n items: [\r\n {\r\n ";
  40.         $i = 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement