// my_code : ashish : test record time interval : dt:- 24 Oct 2006
/*function c_setTestTimeInterval(testResultID) : NOT IN USE NOW
{
var vars = new Object();
alert('hiii : ' + testResultID);
vars['action'] = "set_test_time";
vars['tree_id'] = this.active_tree;
vars['user_id'] = this.user_id;
vars['test_result_id']= testResultID;
vars['Submit'] = 'Submit';
this.send_action("cf_folder_management.cfm", vars);
}*/
// end of my_code : NOT IN USE NOW
function c_cal_subs(calID, username, password)
{
var post_data = new Object();
post_data['action'] = 'cal_subs';
post_data['calID'] = calID;
post_data['user_id'] = this.user_id;
post_data['username'] = username;
post_data['password'] = password;
var user_data = new Object();
user_data['action'] = 'cal_subs';
user_data['code_frame_name'] = this.code_frame_name;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var url = base + "xml_action_handler.cfm";
var xml_req = xmlRequestSend(url,
post_data,
user_data,
xml_response_handler);
}
function c_xml_response_cal_subs(user_data, xml_obj)
{
var base = parent.frames[this.code_frame_name].location.toString();
var reply_msg = xml_obj.documentElement.getElementsByTagName('reply_msg')[0].firstChild.data;
var user_id = xml_obj.documentElement.getElementsByTagName('xmluser_id')[0].firstChild.data;
var calid = xml_obj.documentElement.getElementsByTagName('calendar')[0].firstChild.data;
if(reply_msg == "Valid")
{
parent.frames[this.folder_frame_name].location = "/ezcal/subscribe_process.cfm?userid="+user_id+"&reply_msg=Valid&calid="+calid;
}
else
{
parent.frames[this.folder_frame_name].document.getElementById("divErrorMsg").style.display = 'block';
}
}
function c_report_qus(questionID, username, password, descn)
{
var post_data = new Object();
post_data['action'] = 'report_qus';
post_data['questionID'] = questionID;
post_data['descn'] = descn;
post_data['user_id'] = this.user_id;
post_data['username'] = username;
post_data['password'] = password;
var user_data = new Object();
user_data['action'] = 'report_qus';
user_data['code_frame_name'] = this.code_frame_name;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var url = base + "xml_action_handler.cfm";
var xml_req = xmlRequestSend(url,
post_data,
user_data,
xml_response_handler);
}
function c_xml_response_report_qus(user_data, xml_obj)
{
var qusId = xml_obj.documentElement.getElementsByTagName('question')[0].firstChild.data;
var reply_msg = xml_obj.documentElement.getElementsByTagName('reply_msg')[0].firstChild.data;
if(parent.frames[this.folder_frame_name])
{
var ctrLoginBadQues = parent.frames[this.folder_frame_name].document.getElementById("showLoginReportBadQuestion_"+qusId);
}
else
{
var ctrLoginBadQues = parent.window.document.getElementById("showLoginReportBadQuestion_"+qusId);
}
ctrLoginBadQues.style.display = 'none';
if(parent.frames[this.folder_frame_name])
{
var ctrLoginResult = parent.frames[this.folder_frame_name].document.getElementById("loginResult_"+qusId);
}
else
{
var ctrLoginResult = parent.window.document.getElementById("loginResult_"+qusId);
}
ctrLoginResult.style.display = 'block';
ctrLoginResult.innerHTML = reply_msg;
ctrLoginResult.style.color='990033';
}
// my_code : ashish : vinove : For new multiple file upload
function c_new_file_upload() {
var folder_id = this.get_folder().folder_id;
var tree_id = this.active_tree;
var user_space_used = this.user_space_used;
var user_space_available = this.user_space_available;
var user_space_left = this.user_space_left;
this.get_folder().js_begin_display_new_file_upload(tree_id, folder_id, user_space_used, user_space_available);
}
// my_code : end : ashish
/// my_code : ashish : vinove : To display email item form ////////////////////////////
function c_email_item_form()
{
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var item_id;
var item_ids = new Array();
for(item_id in this.get_folder().selected) {
if(this.get_folder().selected[item_id] == 1) {
item_ids.push(item_id);
}
}
var vars = new Object();
user_id = this.get_folder().user_id;
var str = "";
var item_count = item_ids.length;
var folder_id = this.get_folder().folder_id;
for(i = 0; i < item_ids.length; i++) {
vars['item_id_'+(i+1)]= item_ids[i];
str = str+"&item_id_"+(i+1)+"="+item_ids[i];
}
parent.frames[this.folder_frame_name].location = base + "cf_email_item.cfm?user_id="+user_id+str+"&item_count="+item_count+"&folder_id="+folder_id;
}
// end of my_code /////////////////////////////////////////////////
////// my_code : ashish : vinove : To display common email form for Folder, Test and blog
function c_common_email_form(type) {
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var user_id = this.get_folder().user_id;
var folder_id = this.get_folder().folder_id;
var tree_id = this.active_tree;
parent.frames[this.folder_frame_name].location = base + "cf_common_email_form.cfm?user_id="+user_id+"&folder_id="+folder_id+"&tree_id="+tree_id+"&type="+type;
}
//// end of my_code
////// my_code : ashish : vinove : To display common NEW folder form for Folder, Calendar & Blog
function c_common_new_folder_form(type) {
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var user_id = this.get_folder().user_id;
var tree_id = this.active_tree;
var parent_id = this.get_active_tree().active_node;
var parent_title = this.get_active_tree().title[this.get_active_tree().active_node];
parent.frames[this.folder_frame_name].location = base + "cf_new_folder.cfm?user_id="+user_id+"&tree_id="+tree_id+"&type="+type+"&parent_id="+parent_id+"&parent_title="+parent_title+"&usrAction=Add";
}
//// end of my_code
////// my_code : ashish : vinove : To display common EDIT folder form for Folder & Blog
function c_common_edit_folder_form(type,type_id) {
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var user_id = this.get_folder().user_id;
var tree_id = this.active_tree;
var folder_id = this.get_active_tree().active_node;
parent.frames[this.folder_frame_name].location = base + "cf_edit_folder.cfm?user_id="+user_id+"&tree_id="+tree_id+"&type="+type+"&folder_id="+folder_id+"&usrAction=Edit&type_id="+type_id;
}
// Purpose : To show space used and space available in Media Upload
function c_user_space_allocation()
{
var vars = new Object();
vars['action'] = "user_space";
vars['user_id'] = this.get_folder().user_id;
vars['folder_id'] = this.get_folder().folder_id;
vars['Submit'] = 'Submit';
this.send_action("cf_item_management.cfm", vars);
}
//// end of my_code
function c_item_select(folder_id, item_id, state)
{
if(this.mode != 2)
{
this.get_folder().js_item_select(item_id, state);
if(this.get_folder().do_edit)
{
this.display_folder();
}
}
else
{
this.get_the_folder(folder_id).js_item_select(item_id, state);
}
this.update_menus();
}
function c_get_the_folder(folder_id)
{
return this.folder_set[folder_id];
}
function c_get_folder()
{
return this.folder;
}
function c_set_folder(folder_id)
{
this.folder = new js_folder(this.user_id, folder_id,
this.code_frame_name, this.folder_frame_name,
this.load_frame_name, this.folder_style,
this.active_tree);
if((this.login_state == 2) && (this.mode != 2))
{
this.folder.js_set_mode(1);
}
if(this.user_real_name != "")
{
this.folder.js_set_user_name(this.user_real_name);
}
}
function c_add_folder(folder_id)
{
var temp = new js_folder(this.user_id, folder_id,
this.code_frame_name, this.folder_frame_name,
this.load_frame_name, this.folder_style,
this.active_tree);
this.folder_set[folder_id] = temp;
}
function c_add_item_to_folder(folder_id, item)
{
// lookup the folder with folder_id.
// then do js_add_item into that folder passing in item
this.get_the_folder(folder_id).js_add_item(item);
}
function c_add_item(item)
{
this.get_folder().js_add_item(item);
}
function c_delete_item(item_id)
{
this.get_folder().js_delete_item(item_id);
}
function c_display_folder()
{
if((this.active_tree == this.trees.length) &&
(this.login_state == 2) &&
(this.get_active_tree().node_is_root(this.folder.folder_id)))
{
parent.frames[this.folder_frame_name].location = "cf_my_page.cfm";
}
else if((this.get_active_tree().node_is_root(this.folder.folder_id)) &&
(this.get_active_tree().get_start_page() != ""))
{
parent.frames[this.folder_frame_name].location =
this.get_active_tree().get_start_page();
}
else if((this.folder.folder_id != null) && (this.folder.folder_id != -1))
{
if(this.login_state != 1)
{
this.get_folder().js_set_mode(1);
}
else
{
this.get_folder().js_set_mode(0);
}
this.get_folder().js_display_folder();
}
else if(this.mode == 2)
{
this.get_the_folder(this.get_active_tree().node[0][0]).js_display_folder();
}
this.update_menus();
}
/*
* if the folder has a special action, call it and return true
* else return false
*/
function c_submit_action(tree_id, folder_id)
{
var action = this.tree_style.action[this.trees[tree_id-1].type_id[folder_id]];
var allowAction = !(this.trees[tree_id-1].type_id[folder_id] == 5 && this.test_view =='list');
if(action && allowAction)
{
var password = this.trees[tree_id-1].get_folder_read_password_user(folder_id);
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
action = (base + action +
"?user_id=" + this.user_id +
"&folder_id=" + folder_id +
"&folder_read_password=" + password +
"&mypage=" + (this.login_state-1)
);
parent.frames[this.folder_frame_name].location = action;
return true;
}
return false;
}
/*
* check if the folder has a special action
*/
function c_folder_has_action(tree_id, folder_id)
{
var action = this.tree_style.action[this.trees[tree_id-1].type_id[folder_id]];
if(action)
{
return true;
}
return false;
}
/*
* if the current folder has a special display action, call it
* else call display
*/
function c_display_folder_or_submit_action()
{
var tree_id = this.active_tree;
var folder_id = this.trees[tree_id-1].active_node;
if(!this.submit_action(tree_id, folder_id))
{
this.display_folder();
}
this.update_menus();
}
/*
* this function is the generic switch board for
* handling results from xmRequestSend()
*
*/
function xml_response_handler(user_data, xml_request, success)
{
if(!success)
{
alert('xml request failed: ' + xml_request.statusText +
'\n' + xml_request.responseText);
return;
}
if(xml_request.responseXML.documentElement.getElementsByTagName('action').length <= 0)
{
alert('no action tag in the xml response:\n' + xml_request.responseText);
return;
}
if(xml_request.responseXML.documentElement.getElementsByTagName('error_message').length > 0)
{
if(xml_request.responseXML.documentElement.getElementsByTagName('error_message')[0].childNodes.length > 0)
{
var x = xml_request.responseXML.documentElement.getElementsByTagName('error_message')[0].firstChild.data;
alert(x);
}
else
{
alert('error in data transmission');
}
}
if(xml_request.responseXML.documentElement.getElementsByTagName('debug_message').length > 0)
{
if(xml_request.responseXML.documentElement.getElementsByTagName('debug_message')[0].childNodes.length > 0)
{
var x = xml_request.responseXML.documentElement.getElementsByTagName('debug_message')[0].firstChild.data;
alert(x);
}
else
{
alert('empty debug message');
}
}
var action_name = xml_request.responseXML.documentElement.getElementsByTagName('action')[0].firstChild.data;
var func = parent.frames[user_data.code_frame_name].controller.xml_response_handlers[action_name];
if(typeof(func) == "undefined")
{
alert('unknown event received: ' + action_name);
}
else
{
var cmd = "parent.frames['"+user_data.code_frame_name+"'].controller.";
cmd = cmd + parent.frames[user_data.code_frame_name].controller.xml_response_handlers[action_name];
cmd = cmd + "(user_data, xml_request.responseXML);";
eval(cmd);
}
}
/*
* this method will either cause the password prompt to be displayed,
* or it will initiate a request for the folder data
*/
function c_xml_response_check_folder_read_password(user_data, xml_obj)
{
var valid = xml_obj.documentElement.getElementsByTagName('valid')[0].firstChild.data;
if(valid == 0)
{ // password is not valid display the password prompt
this.set_folder_read_password(user_data.tree_id,
user_data.folder_id,
"");
this.get_folder().folder_title = this.trees[user_data.tree_id-1].title[user_data.folder_id];
this.get_folder().js_get_read_password(user_data.folder_id, user_data.item_id, user_data.action);
}
else
{ // password is correct send for the folder data
this.set_folder_read_password(user_data.tree_id,
user_data.folder_id,
user_data.password);
if(user_data.action == 'load_folder')
{
this.load_folder(user_data.tree_id,
user_data.folder_id);
}
else if(user_data.action == 'load_item')
{
this.load_item(user_data.tree_id,
user_data.folder_id,
user_data.item_id);
}
else
{
alert("unknown user_data.action: " + user_data.action);
}
}
}
/*
* Stores the folder read password
*/
function c_set_folder_read_password(tree_id, folder_id, password)
{
if((tree_id > this.trees.length) || (tree_id <= 0))
{
alert("tree_id error");
return;
}
this.trees[tree_id-1].set_folder_read_password_user(folder_id, password);
}
/*
* request a folder read password check from the server
*/
function c_check_folder_read_password(tree_id, folder_id, item_id, action)
{
var password = this.trees[tree_id-1].get_folder_read_password_user(folder_id);
var post_data = new Object();
post_data['action'] = 'check_folder_read_password';
post_data['folder_id'] = folder_id;
post_data['folder_read_password'] = password;
post_data['user_id'] = this.user_id;
var user_data = new Object();
user_data['tree_id'] = tree_id;
user_data['folder_id'] = folder_id;
user_data['item_id'] = item_id;
user_data['password'] = password;
user_data['action'] = action;
user_data['code_frame_name'] = this.code_frame_name;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var url = base + "xml_action_handler.cfm";
var xml_req = xmlRequestSend(url,
post_data,
user_data,
xml_response_handler);
}
/*
* returns true if a user folder read password exists
*/
function c_have_folder_read_password(tree_id, folder_id)
{
var password = this.trees[tree_id-1].get_folder_read_password_user(folder_id);
if((typeof(password) != "undefined") && (password != ""))
{
return true;
}
return false;
}
/*
* returns true if a folder needs to have a user supplied
* password to read the contents
*/
function c_folder_read_password_required(tree_id, folder_id)
{
if((this.login_state == 2) && // is anonymous
(this.trees[tree_id-1].folder_read_password_required(folder_id))) // has a read password
{
return true;
}
return false;
}
/*
* callback function for folder read password form
*/
function c_folder_read_password_form_handler()
{
var p_elem = parent.frames[this.folder_frame_name].document.getElementById('folder_read_password');
var f_elem = parent.frames[this.folder_frame_name].document.getElementById('folder_id');
var i_elem = parent.frames[this.folder_frame_name].document.getElementById('item_id');
var a_elem = parent.frames[this.folder_frame_name].document.getElementById('action');
var password = p_elem.value;
var folder_id = f_elem.value;
var item_id = i_elem.value;
var action = a_elem.value;
var tree_id = this.active_tree;
this.trees[tree_id-1].set_folder_read_password_user(folder_id, password);
this.check_folder_read_password(tree_id, folder_id, item_id, action);
}
/*
* sends a load_folder message to the server
*/
function c_load_folder(tree_id, folder_id)
{
var password = this.trees[tree_id-1].get_folder_read_password_user(folder_id);
if(this.folder_has_action(tree_id, folder_id) &&
this.submit_action(tree_id, folder_id))
{
this.get_folder().js_folder_click(folder_id, false, password);
}
else
{
if(this.mode != 2)
{
this.get_folder().js_folder_click(folder_id, true, password);
}
else
{
this.get_the_folder(folder_id).js_display_folder();
this.active_folder_id = folder_id;
}
}
}
/*
* Load and display folders
*/
function c_folder_click(tree_id, folder_id)
{
var handled = 0;
//this.isForMediaSection = 1;
//this.addingmediato = "QUESTION";
if(parent.frames[this.folder_frame_name].document.getElementById("frmSrch"))
{
var frmSrch = parent.frames[this.folder_frame_name].document.getElementById("frmSrch").value;
this.multi_copy = parent.frames[this.folder_frame_name].document.getElementById("frmSrch").value;
}
if((tree_id <= this.trees.length) && (tree_id > 0))
{
if(this.trees[tree_id-1].node_is_root(folder_id) &&
this.mode != 2)
{
if(this.trees.length > tree_id)
{ // is reference account
this.show_login_and_information();
handled = 1;
}
else if(this.login_state == 0)
{ // is user's tree, and not logged in.
this.show_login();
handled = 1;
}
else
{ // is user's tree, and logged in or public site
// no action here, use default action below
handled = 0;
}
}
// check if password is needed to read the folder
if(!handled &&
this.folder_read_password_required(tree_id, folder_id))
{
if(this.have_folder_read_password(tree_id, folder_id))
{
// This setTimeout() trick works around what appears to be a race
// condition in firefox. - cgl 12/28/05
var cmd = "parent.frames['"+this.code_frame_name+"'].controller.";
cmd = cmd + "check_folder_read_password("+tree_id+", "+folder_id+", -1, 'load_folder')";
setTimeout(cmd, 1);
// this is the code that should be executed
//this.check_folder_read_password(tree_id, folder_id, -1, 'load_folder');
}
else
{
this.get_folder().folder_title = this.trees[tree_id-1].title[folder_id];
this.get_folder().js_get_read_password(folder_id, -1, 'load_folder');
}
handled = 1;
}
// no password is needed
if(!handled)
{
this.load_folder(tree_id, folder_id);
}
}
else
{
alert("tree_id error");
}
this.update_menus();
return true;
}
/***************************************************************************
* Anonymous Upload Password Code
*/
/*
* callback function for folder write password form
*/
function c_folder_write_password_form_handler()
{
var p_elem = parent.frames[this.folder_frame_name].document.getElementById('folder_write_password');
var f_elem = parent.frames[this.folder_frame_name].document.getElementById('folder_id');
var a_elem = parent.frames[this.folder_frame_name].document.getElementById('action');
var password = p_elem.value;
var folder_id = f_elem.value;
var action = a_elem.value;
var tree_id = this.active_tree;
this.trees[tree_id-1].set_folder_write_password_user(folder_id, password);
this.check_folder_write_password(tree_id, folder_id, action);
}
/*
* displays the anonymous file upload page
*/
function c_display_upload(tree_id, folder_id)
{
this.get_folder().js_begin_display_anonymous_upload(tree_id, folder_id);
}
/* called as onload event of upload display */
function c_display_upload_onload(tree_id, folder_id, isAnonymous)
{
var password = this.trees[tree_id-1].get_folder_write_password_user(folder_id);
if(isAnonymous) {
this.get_folder().js_finish_display_anonymous_upload(password);
}
else {
this.get_folder().js_finish_display_new_file_upload();
}
}
/*
* this method will either cause the password prompt to be displayed,
* or it will display the upload form
*/
function c_xml_response_check_folder_write_password(user_data, xml_obj)
{
var valid = xml_obj.documentElement.getElementsByTagName('valid')[0].firstChild.data;
if(valid == 0)
{ // password is not valid display the password prompt
this.set_folder_write_password(user_data.tree_id,
user_data.folder_id,
"");
this.get_folder().folder_title = this.trees[user_data.tree_id-1].title[user_data.folder_id];
this.get_folder().js_get_write_password(user_data.folder_id, user_data.action);
}
else
{ // password is correct
this.set_folder_write_password(user_data.tree_id,
user_data.folder_id,
user_data.password);
if(user_data.action == 'display_upload')
{
this.display_upload(user_data.tree_id,
user_data.folder_id);
}
else
{
alert("unknown user_data.action: " + user_data.action);
}
}
}
/*
* Stores the folder write password
*/
function c_set_folder_write_password(tree_id, folder_id, password)
{
if((tree_id > this.trees.length) || (tree_id <= 0))
{
alert("tree_id error");
return;
}
this.trees[tree_id-1].set_folder_write_password_user(folder_id, password);
}
/*
* request a folder write password check from the server
*/
function c_check_folder_write_password(tree_id, folder_id, action)
{
var password = this.trees[tree_id-1].get_folder_write_password_user(folder_id);
var post_data = new Object();
post_data['action'] = 'check_folder_write_password';
post_data['folder_id'] = folder_id;
post_data['folder_write_password'] = password;
post_data['user_id'] = this.user_id;
var user_data = new Object();
user_data['tree_id'] = tree_id;
user_data['folder_id'] = folder_id;
user_data['password'] = password;
user_data['action'] = action;
user_data['code_frame_name'] = this.code_frame_name;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var url = base + "xml_action_handler.cfm";
var xml_req = xmlRequestSend(url,
post_data,
user_data,
xml_response_handler);
}
/*
* returns true if a folder needs to have a user supplied
* password for anonymous upload
*/
function c_folder_write_password_required(tree_id, folder_id)
{
if((this.login_state == 2) && // is anonymous
(this.trees[tree_id-1].folder_write_password_required(folder_id))) // has a write password
{
return true;
}
return false;
}
/*
* returns true if a user folder write password exists
*/
function c_have_folder_write_password(tree_id, folder_id)
{
var password = this.trees[tree_id-1].get_folder_write_password_user(folder_id);
if((typeof(password) != "undefined") && (password != ""))
{
return true;
}
return false;
}
/*
* Check for upload password needs
*/
function c_upload_click(tree_id, folder_id)
{
var handled = 0;
if((tree_id <= this.trees.length) && (tree_id > 0))
{
// check if password is needed to upload to the folder
if(!handled &&
this.folder_write_password_required(tree_id, folder_id))
{
if(this.have_folder_write_password(tree_id, folder_id))
{
// This setTimeout() trick works around what appears to be a race
// condition in firefox. - cgl 12/28/05
var cmd = "parent.frames['"+this.code_frame_name+"'].controller.";
cmd = cmd + "check_folder_write_password("+tree_id+", "+folder_id+", 'display_upload')";
setTimeout(cmd, 1);
// this is the code that should be executed
//this.check_folder_write_password(tree_id, folder_id, 'display_upload');
}
else
{
this.get_folder().folder_title = this.trees[tree_id-1].title[folder_id];
this.get_folder().js_get_write_password(folder_id, 'display_upload');
}
handled = 1;
}
// no password is needed
if(!handled)
{
this.display_upload(tree_id, folder_id);
}
}
else
{
alert("tree_id error");
}
this.update_menus();
return true;
}
/*
* Anonymous Upload Password Code
***************************************************************************/
/*
* sends initiates item action or download item
*/
function c_load_item(tree_id, folder_id, item_id)
{
var password = this.trees[tree_id-1].get_folder_read_password_user(folder_id);
if(this.mode != 2)
{
this.get_folder().js_item_click(item_id, password);
}
else
{
this.get_the_folder(folder_id).js_item_click(item_id, password);
}
}
/*
* Load and display item
*/
function c_item_click(tree_id, folder_id, item_id)
{
var handled = 0;
if((tree_id <= this.trees.length) && (tree_id > 0))
{
// check if password is needed to read the item
if(!handled &&
this.folder_read_password_required(tree_id, folder_id))
{
if(this.have_folder_read_password(tree_id, folder_id))
{
// This setTimeout() trick works around what appears to be a race
// condition in firefox. - cgl 12/28/05
var cmd = "parent.frames['"+this.code_frame_name+"'].controller.";
cmd = cmd + "check_folder_read_password("+tree_id+", "+folder_id+", "+item_id+", 'load_item')";
setTimeout(cmd, 1);
// this is the code that should be executed
//this.check_folder_read_password(tree_id, folder_id, item_id, 'load_item');
}
else
{
this.get_folder().folder_title = this.trees[tree_id-1].title[folder_id];
this.get_folder().js_get_read_password(folder_id, item_id, 'load_item');
}
handled = 1;
}
// no password is needed
if(!handled)
{
this.load_item(tree_id, folder_id, item_id);
}
}
else
{
alert("tree_id error");
}
this.update_menus();
return true;
}
function c_cut_item()
{
var item_id;
this.cut_items = new Array();
this.copy_items = new Array();
for(item_id in this.get_folder().selected)
{
if(this.get_folder().selected[item_id] == 1)
{
this.cut_items.push(item_id);
this.get_folder().selected[item_id] = 0;
}
}
this.update_menus();
}
function c_copy_item()
{
var item_id;
this.cut_items = new Array();
this.copy_items = new Array();
for(item_id in this.get_folder().selected)
{
if(this.get_folder().selected[item_id] == 1)
{
this.copy_items.push(item_id);
this.get_folder().selected[item_id] = 0;
}
}
//Added by Ryan Hartley for question search
for(item_id in this.search_items_selected)
{
if(this.search_items_selected[item_id] == 1)
{
this.copy_items.push(item_id);
this.search_items_selected[item_id] = 0;
}
}
if(this.addmedia)
{
//Reset the media flag
this.addmedia = false;
var vars = new Object();
vars['media'] = this.copy_items.join();
vars['Submit'] = 'Submit';
this.cut_items = new Array();
this.copy_items = new Array();
this.send_action("questions/addmedia.cfm", vars);
}
else
{
this.update_menus();
}
}
function c_paste_item()
{
var temp_items;
var action;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var i;
if(this.copy_items.length > 0)
{
temp_items = this.copy_items;
action = "copy_item";
parent.frames[this.folder_frame_name].location = base + 'cf_processing.cfm?messagetype=copy';
}
else if(this.cut_items.length > 0)
{
temp_items = this.cut_items;
action = "move_item";
parent.frames[this.folder_frame_name].location = base + 'cf_processing.cfm?messagetype=cut';
}
else
{
return;
}
var vars = new Object();
vars['action'] = action;
vars['user_id'] = this.get_folder().user_id;
vars['folder_id'] = this.get_folder().folder_id;
vars['item_list'] = temp_items[0];
for(i = 1; i < temp_items.length; i++)
{
vars['item_list'] = vars['item_list'] + ',' + temp_items[i];
}
vars['Submit'] = 'Submit';
this.cut_items = new Array();
this.copy_items = new Array();
this.search_items_selected = new Object();
this.send_action("cf_item_management.cfm", vars);
}
function c_publish_selected_items()
{
var item_id;
var item_ids = new Array();
for(item_id in this.get_folder().selected)
{
if(this.get_folder().selected[item_id] == 1)
{
item_ids.push(item_id);
}
}
var vars = new Object();
vars['action'] = "publish_item";
vars['user_id'] = this.get_folder().user_id;
vars['folder_id'] = this.get_folder().folder_id;
for(i = 0; i < item_ids.length; i++)
{
vars['item_id_'+(i+1)]= item_ids[i];
}
vars['item_count'] = item_ids.length;
vars['Submit'] = 'Submit';
this.send_action("cf_item_management.cfm", vars);
}
function c_publish_item(item_id, publish_state)
{
this.get_folder().js_publish_item(item_id, publish_state);
}
function c_edit_item(edit_state)
{
this.get_folder().js_set_edit(edit_state);
}
function c_update_item(item)
{
this.get_folder().js_update_item(item);
}
function c_set_sort_folder(sort_mode)
{
//code added by team vinove for maintaining Sort By on list view.
parent.frames['js_code'].controller.test_view = "list";
//end code
var vars = new Object();
vars['action'] = "set_sort_folder";
vars['tree_id'] = this.active_tree;
vars['user_id'] = this.get_folder().user_id;
vars['folder_id'] = this.get_folder().folder_id;
vars['SortMode'] = sort_mode;
vars['Submit'] = 'Submit';
this.send_action("cf_folder_management.cfm", vars);
}
function c_set_view_folder(view_mode)
{
var vars = new Object();
vars['action'] = "set_view_folder";
vars['tree_id'] = this.active_tree;
vars['user_id'] = this.get_folder().user_id;
vars['folder_id'] = this.get_folder().folder_id;
vars['ViewMode'] = view_mode;
vars['Submit'] = 'Submit';
this.send_action("cf_folder_management.cfm", vars);
}
function c_reorder_item(item_id, predecessor_id)
{
//code added by team vinove
parent.frames['js_code'].controller.test_view = "list";
//end
var vars = new Object();
vars['action'] = "reorder_item";
vars['user_id'] = this.get_folder().user_id;
vars['folder_id'] = this.get_folder().folder_id;
vars['item_id'] = item_id;
vars['predecessor_id']= predecessor_id;
vars['Submit'] = 'Submit';
this.send_action("cf_item_management.cfm", vars);
}
function c_send_action(action, vars)
{
var d = parent.frames[this.load_frame_name].document;
var i;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
if(action == "")
{
action = "cf_item_management.cfm";
}
action = base + action;
parent.frames[this.load_frame_name].document.open();
parent.frames[this.load_frame_name].document.write('');
parent.frames[this.load_frame_name].document.write('
');
parent.frames[this.load_frame_name].document.write('');
parent.frames[this.load_frame_name].document.write('');
parent.frames[this.load_frame_name].document.write('');
parent.frames[this.load_frame_name].document.close();
parent.frames[this.load_frame_name].document.forms[0].submit();
}
function c_send_action_any_frame(frame_name, action, vars)
{
var d = parent.frames[frame_name].document;
var i;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
if(action == "")
{
action = "cf_item_management.cfm";
}
action = base + action;
parent.frames[frame_name].document.open();
parent.frames[frame_name].document.write('');
parent.frames[frame_name].document.write('');
parent.frames[frame_name].document.write('');
parent.frames[frame_name].document.write('');
parent.frames[frame_name].document.write('');
parent.frames[frame_name].document.close();
parent.frames[frame_name].document.forms[0].submit();
}
function c_load_page(page)
{
var action;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
page = base + page;
parent.frames[this.folder_frame_name].location = page;
}
function c_display_user_message()
{
var d = parent.frames[this.folder_frame_name].document;
if(this.user_message == "")
{
this.display_folder_or_submit_action();
}
else
{
d.open();
d.write('');
d.write('');
d.write('');
d.write(this.user_message);
d.write('');
d.write('');
d.close();
}
}
function c_get_active_tree()
{
if(this.active_tree <= this.trees.length && this.active_tree > 0)
{
return this.trees[this.active_tree-1];
}
else
{
//alert("active_tree error. length: "+this.trees.length+ " number: " + this.active_tree);
}
}
function c_get_user_tree()
{
if(this.trees.length > 0)
{
return this.trees[this.trees.length - 1];
}
else
{
alert("user_tree error. length: "+this.trees.length);
}
}
function c_add_tree()
{
var temp = new js_tree(this.code_frame_name, this.tree_frame_name,
this.folder_frame_name, this.load_frame_name,
this.tree_style, this.user_id, (this.trees.length + 1));
this.trees.push(temp);
this.active_tree = this.trees.length;
return this.trees.length;
}
function c_delete_last_tree()
{
this.trees.pop();
if(this.active_tree > this.trees.length)
{
this.active_tree = this.trees.length;
}
return this.trees.length;
}
function c_add_node(tree_id, folder)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].add_node(folder);
}
else
{
alert("tree_id error");
}
}
function c_move_node(tree_id, old_parent_id, new_parent_id, folder_id)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].move_node(old_parent_id, new_parent_id, folder_id);
}
else
{
alert("tree_id error");
}
}
function c_delete_node(tree_id, parent_id, folder_id)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].delete_node(parent_id, folder_id);
}
else
{
alert("tree_id error");
}
}
function c_share_node(tree_id, folder_id, share_state)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].share_node(folder_id, share_state);
}
else
{
alert("tree_id error");
}
}
function c_update_node(tree_id, folder)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].update_node(folder);
}
else
{
alert("tree_id error");
}
}
function c_reorder_tree(tree_id)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].reorder_tree();
}
else
{
alert("tree_id error");
}
}
function c_reorder_children(tree_id, folder_id)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].reorder_children(folder_id);
}
else
{
alert("tree_id error");
}
}
function c_update_node_order(tree_id, parent_id, folder_id, predecessor_id)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].change_order(parent_id, folder_id, predecessor_id);
}
else
{
alert("tree_id error");
}
}
function c_publish_node(tree_id, folder_id, publish_state)
{
if((tree_id <= this.trees.length) && (tree_id > 0))
{
this.trees[tree_id-1].publish_node(folder_id, publish_state);
}
else
{
alert("tree_id error");
}
}
function c_display_trees()
{
var time1 = new Date();
var d = parent.frames[this.tree_frame_name].document;
var i;
for(i = 0; i < this.trees.length; i++)
{
if((i + 1) == this.active_tree)
{
this.trees[i].show_active_node = 1;
}
else
{
this.trees[i].show_active_node = 0;
}
}
parent.frames[this.tree_frame_name].document.open();
parent.frames[this.tree_frame_name].document.write('');
parent.frames[this.tree_frame_name].document.write('');
parent.frames[this.tree_frame_name].document.write('' + 'tree' + '');
parent.frames[this.tree_frame_name].document.write(this.tree_style.style);
parent.frames[this.tree_frame_name].document.write('');
parent.frames[this.tree_frame_name].document.write("");
for(i = 0; i < this.trees.length; i++)
{
this.trees[i].display_tree();
}
if(this.debug > 0)
{
/* Debugging output */
var time2 = new Date();
parent.frames[this.tree_frame_name].document.write("
" +
(time2.getTime() - time1.getTime()) +
" ms to load
");
parent.frames[this.tree_frame_name].document.write("Active Node: " + this.get_active_tree().active_node + "
");
parent.frames[this.tree_frame_name].document.write("Cut Node: " + this.get_active_tree().cut_node + "
");
parent.frames[this.tree_frame_name].document.write("Copy Node: " + this.get_active_tree().copy_node + "
");
}
// comment this out when not testing the echo code
// parent.frames[this.tree_frame_name].document.write('ECHO TEST');
parent.frames[this.tree_frame_name].document.write("")
parent.frames[this.tree_frame_name].document.write('');
parent.frames[this.tree_frame_name].document.close();
this.update_menus();
}
function c_tree_click(tree_id, folder_id)
{
this.active_tree = tree_id;
this.get_active_tree().tree_click(folder_id);
this.display_trees();
return true;
}
function c_tree_click_plus_minus(tree_id, folder_id)
{
this.active_tree = tree_id;
this.get_active_tree().tree_click_plus_minus(folder_id);
this.display_trees();
return true;
}
function c_cut_folder()
{
var i;
for(i = 0; i < this.trees.length; i++)
{
this.trees[i].clear_cut_and_copy();
}
this.cut_tree = this.active_tree;
this.cut_node = this.get_active_tree().active_node;
this.c_parent_id = this.get_active_tree().parent_id[this.cut_node];
this.copy_tree = -1;
this.copy_node = -1;
this.get_active_tree().cut_folder();
this.display_trees();
}
function c_copy_folder()
{
var i;
var frmSrch = "no";
/*Added by Vinove for test search feature*/
if(parent.frames[this.folder_frame_name].document.getElementById("frmSrch"))
{
frmSrch = parent.frames[this.folder_frame_name].document.getElementById("frmSrch").value;
}
/*if/else added by Vinove for the test search feature.*/
if(frmSrch == "no")
{
for(i = 0; i < this.trees.length; i++)
{
this.trees[i].clear_cut_and_copy();
}
this.cut_tree = -1;
this.cut_node = -1;
this.copy_tree = this.active_tree;
this.copy_node = this.get_active_tree().active_node;
this.c_parent_id = this.get_active_tree().parent_id[this.copy_node];
this.get_active_tree().copy_folder();
this.display_trees();
}
else
{
var folderIDs = new Array();
var oldParentRootIDs = new Array();
folderIDs = parent.frames[this.folder_frame_name].document.getElementById("folderId").value.split(",");
oldParentRootIDs = parent.frames[this.folder_frame_name].document.getElementById("old_parent_root_id").value.split(",");
for(i = 0; i < folderIDs.length-1; i++)
{
parent.frames[this.folder_frame_name].document.getElementById("itemDiv_"+folderIDs[i]).style.color="";
}
this.copy_tree = this.active_tree;
this.copy_node = parent.frames[this.folder_frame_name].document.getElementById("folderId").value;
this.c_parent_id = parent.frames[this.folder_frame_name].document.getElementById("old_parent_root_id").value;
this.display_trees();
}
}
function c_import_test(testFolderID,testFolderParentID)
{
var i;
for(i = 0; i < this.trees.length; i++)
{
this.trees[i].clear_cut_and_copy();
}
this.cut_tree = -1;
this.cut_node = -1;
this.copy_tree = this.active_tree;
this.copy_node = testFolderID;
this.c_parent_id = testFolderParentID;
this.get_active_tree().copy_folder();
this.paste_folder();
this.display_trees();
}
function c_paste_folder()
{
var c_action;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var c_tree_id;
var c_node_id;
var c_parent_id = this.c_parent_id;
if(parent.frames[this.folder_frame_name].document.getElementById("frmSrch"))
{
var frmSrch = parent.frames[this.folder_frame_name].document.getElementById("frmSrch").value;
this.multi_copy = parent.frames[this.folder_frame_name].document.getElementById("frmSrch").value;
}
if(this.copy_tree > -1)
{
if(this.multi_copy == "yes")
{
c_action = "multi_copy_folder";
}
else
{
c_action = "copy_folder";
}
c_tree_id = this.copy_tree;
c_node_id = this.copy_node;
parent.frames[this.folder_frame_name].location = base + 'cf_processing.cfm?messagetype=copy';
}
else if(this.cut_tree > -1)
{
c_action = "move_folder";
c_tree_id = this.cut_tree;
c_node_id = this.cut_node;
parent.frames[this.folder_frame_name].location = base + 'cf_processing.cfm?messagetype=cut';
}
else
{
return;
}
var i;
for(i = 0; i < this.trees.length; i++)
{
this.trees[i].clear_cut_and_copy();
}
this.cut_tree = -1;
this.cut_node = -1;
this.copy_tree = -1;
this.copy_node = -1;
this.c_parent_id = -1;
this.get_active_tree().paste_folder(c_action, c_tree_id, c_node_id, c_parent_id);
}
function c_publish_folder()
{
this.get_active_tree().publish_folder();
}
function c_edit_folder(type,type_id,edit_icon)
{
js_edit_folder_ui(this.get_active_tree(), this.get_active_tree().active_node, type, type_id, edit_icon);
}
function c_share_folder()
{
var vars = new Object();
vars['user_id'] = this.user_id;
vars['folder_id'] = this.get_active_tree().active_node;
vars['tree_id'] = this.active_tree;
this.send_action_any_frame(this.folder_frame_name, "cfg_folder_share.cfm", vars);
}
function c_edit_my_information()
{
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
parent.frames[this.folder_frame_name].location = base + "cfg_my_information.cfm";
}
function c_edit_my_profile()
{
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
parent.frames[this.folder_frame_name].location = base + "cfg_my_profile.cfm";
}
function c_edit_my_buddies(vars)
{
//var base = parent.frames[this.code_frame_name].location.toString();
//base = base.substring(0, base.lastIndexOf("/")+1);
this.send_action_any_frame(this.folder_frame_name, "cfg_my_buddies.cfm", vars);
//parent.frames[this.folder_frame_name].location = base + "cfg_my_buddies.cfm";
}
function c_edit_my_page()
{
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
parent.frames[this.folder_frame_name].location = base + "cfg_my_page.cfm";
}
/// my_code : ashish : vinove : To display theme list for Add/Edit/Delete/Publish
function c_edit_themes()
{
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
parent.frames[this.folder_frame_name].location = base + "cfg_manage_themes.cfm";
}
// end of my_code
function c_show_my_page()
{
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
parent.frames[this.folder_frame_name].location = base + "cf_my_page.cfm";
}
function c_logout_click()
{
var vars = new Object();
vars['action'] = "logout";
vars['user_id'] = this.user_id;
this.logout();
this.send_action("cf_user_management.cfm", vars);
}
function c_message_click()
{
var vars = new Object();
vars['action'] = "show_message";
vars['user_id'] = this.user_id;
this.send_action("cf_user_management.cfm", vars);
}
function c_start(username)
{
var i;
this.username = username;
for(i = 0; i < this.trees.length; i++)
{
this.trees[i].open_root();
}
this.display_trees();
if(this.login_state == 0 &&
this.mode != 2)
{ // need to login
//this.show_login_and_information();
}
else if(this.login_state == 2)
{ // load my page
//Changed the display_folder() to display_folder_or_submit_action():Ryan Hartley 9-17-2004
//this.display_folder();
this.display_folder_or_submit_action();
//this.show_my_page();
}
else
{
if(this.user_message != "")
{
this.display_user_message();
}
else
{
//Changed the display_folder() to display_folder_or_submit_action():Ryan Hartley 9-17-2004
//this.display_folder();
this.display_folder_or_submit_action();
}
}
}
function c_login_fail()
{
this.display_trees();
if(this.login_state == 0)
{ // need to login
this.show_login();
}
else if(this.login_state == 2)
{ // load my page
this.show_my_page();
}
else
{
//Changed the display_folder() to display_folder_or_submit_action():Ryan Hartley 9-17-2004
//this.display_folder();
this.display_folder_or_submit_action();
}
}
function c_login(user_id)
{
this.user_id = user_id;
this.delete_last_tree(); // remove the dummy tree
}
function c_logout()
{
this.user_id = -1;
this.username = "";
this.login_state = 0;
this.folder = new Object();
this.active_tree = -1;
this.trees = new Array();
this.cut_items = new Array();
this.copy_items = new Array();
}
function c_set_login_none()
{
this.login_state = 0;
}
function c_set_login_authorized()
{
this.login_state = 1;
}
function c_set_login_anonymous()
{
this.login_state = 2;
}
function c_show_login()
{
js_show_login_ui(this);
}
function c_show_login_and_information()
{
js_show_login_and_information_ui(this, (this.login_state == 1));
}
function c_item_image(sub_type_id)
{
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var image = base + this.folder_style.image[sub_type_id];
return image;
}
function c_update_menus()
{
var t = this.get_active_tree();
if(this.login_state == 0)
{ // not yet logged in
this.set_folder_menu_none();
}
else if(this.active_tree < this.trees.length)
{ // public tree
this.set_folder_menu_public_tree();
}
else if(t.node_is_root(t.active_node))
{ // private root
this.set_folder_menu_root_tree();
}
else
{ // private non-root
this.set_folder_menu_private_tree();
}
if(this.login_state == 0)
{ // not yet logged in
this.set_user_menu_none();
}
else if(this.login_state == 1)
{ // authorized
this.set_user_menu_authorized();
}
else // if(this.login_state == 2)
{ // anonymous access
this.set_user_menu_anonymous();
}
}
function c_set_menu_state(item, state)
{
if(this.mode != 2)
{
var f = parent.frames[this.menu_frame_name];
var obj_name = this.menu_names[item];
var obj;
eval("obj = f." + obj_name + ";");
this.menu_states[item] = state;
if(state == 1)
{
f.icon_enable(obj);
}
else
{
f.icon_disable(obj);
}
}
}
function c_set_folder_menu_none()
{
this.set_menu_state("new_folder", 0);
this.set_menu_state("edit_folder", 0);
this.set_menu_state("publish_folder", 0);
this.set_menu_state("email_folder", 0);
this.set_menu_state("cut_folder", 0);
this.set_menu_state("copy_folder", 0);
this.set_menu_state("paste_folder", 0);
this.set_menu_state("delete_folder", 0);
this.set_menu_state("share_folder", 0);
this.set_menu_state("new_item", 0);
this.set_menu_state("edit_item", 0);
this.set_menu_state("publish_item", 0);
this.set_menu_state("email_item", 0);
this.set_menu_state("cut_item", 0);
this.set_menu_state("copy_item", 0);
this.set_menu_state("paste_item", 0);
this.set_menu_state("delete_item", 0);
this.set_menu_state("new_test", 0);
this.set_menu_state("print_test", 0);
this.set_menu_state("edit_test", 0);
this.set_menu_state("search_test", 0);
this.set_menu_state("publish_test", 0);
this.set_menu_state("email_test", 0);
this.set_menu_state("cut_test", 0);
this.set_menu_state("copy_test", 0);
this.set_menu_state("paste_test", 0);
this.set_menu_state("import_test", 0);
this.set_menu_state("delete_test", 0);
this.set_menu_state("share_test", 0);
this.set_menu_state("new_question", 0);
this.set_menu_state("edit_question", 0);
this.set_menu_state("cut_question", 0);
this.set_menu_state("copy_question", 0);
this.set_menu_state("paste_question", 0);
this.set_menu_state("delete_question",0);
this.set_menu_state("search_question",0);
this.set_menu_state("this_report", 0);
this.set_menu_state("all_report", 0);
//m29 begin
this.set_menu_state("add_calendar", 0);
this.set_menu_state("edit_calendar", 0);
this.set_menu_state("publish_calendar", 0);
this.set_menu_state("print_calendar", 0);
this.set_menu_state("email_calendar", 0);
this.set_menu_state("delete_calendar", 0);
this.set_menu_state("cut_calendar", 0);
this.set_menu_state("copy_calendar", 0);
this.set_menu_state("import_calendar", 0);
this.set_menu_state("export_calendar", 0);
this.set_menu_state("paste_calendar", 0);
this.set_menu_state("share_calendar", 0);
this.set_menu_state("add_blog", 0);
this.set_menu_state("edit_blog", 0);
this.set_menu_state("publish_blog", 0);
this.set_menu_state("email_blog", 0);
this.set_menu_state("cut_blog", 0);
this.set_menu_state("copy_blog", 0);
this.set_menu_state("paste_blog", 0);
this.set_menu_state("delete_blog", 0);
this.set_menu_state("share_blog", 0);
}
function c_set_folder_menu_public_tree()
{
this.set_menu_state("new_folder", 0);
this.set_menu_state("edit_folder", 0);
this.set_menu_state("publish_folder", 0);
this.set_menu_state("email_folder", 1);
this.set_menu_state("cut_folder", 0);
this.set_menu_state("copy_folder", 1);
this.set_menu_state("paste_folder", 0);
this.set_menu_state("delete_folder", 0);
this.set_menu_state("share_folder", 0);
this.set_menu_state("new_item", 0);
this.set_menu_state("edit_item", 0);
this.set_menu_state("publish_item", 0);
this.set_menu_state("email_item", 0);
this.set_menu_state("cut_item", 0);
this.set_menu_state("copy_item", 0);
this.set_menu_state("paste_item", 0);
this.set_menu_state("delete_item", 0);
this.set_menu_state("new_test", 0);
this.set_menu_state("print_test", 0);
this.set_menu_state("edit_test", 0);
this.set_menu_state("search_test", 0);
this.set_menu_state("publish_test", 0);
this.set_menu_state("email_test", 1);
this.set_menu_state("cut_test", 0);
this.set_menu_state("copy_test", 1);
this.set_menu_state("paste_test", 0);
this.set_menu_state("import_test", 0);
this.set_menu_state("delete_test", 0);
this.set_menu_state("share_test", 0);
this.set_menu_state("new_question", 0);
this.set_menu_state("edit_question", 0);
this.set_menu_state("cut_question", 0);
this.set_menu_state("copy_question", 0);
this.set_menu_state("paste_question", 0);
this.set_menu_state("delete_question",0);
this.set_menu_state("search_question",0);
this.set_menu_state("this_report", 0);
this.set_menu_state("all_report", 0);
//m29 begin
this.set_menu_state("add_calendar", 0);
this.set_menu_state("edit_calendar", 0);
this.set_menu_state("publish_calendar", 0);
this.set_menu_state("print_calendar", 1);
this.set_menu_state("email_calendar", 0);
this.set_menu_state("delete_calendar", 0);
this.set_menu_state("cut_calendar", 0);
this.set_menu_state("copy_calendar", 0);
this.set_menu_state("import_calendar", 0);
this.set_menu_state("export_calendar", 0);
this.set_menu_state("delete_calendar", 0);
this.set_menu_state("share_calendar", 0);
this.set_menu_state("add_blog", 0);
this.set_menu_state("edit_blog", 0);
this.set_menu_state("publish_blog", 0);
this.set_menu_state("email_blog", 0);
this.set_menu_state("cut_blog", 0);
this.set_menu_state("copy_blog", 0);
this.set_menu_state("paste_blog", 0);
this.set_menu_state("delete_blog", 0);
this.set_menu_state("share_blog", 0);
}
// assumes that active_tree is the private tree
function c_paste_folder_ok()
{
var tree_id;
var node_id;
if(this.cut_tree > -1)
{
tree_id = this.cut_tree;
node_id = this.cut_node;
}
else if(this.copy_tree > -1)
{
tree_id = this.copy_tree;
node_id = this.copy_node;
}
else
{ // no copy/cut node
return false;
}
if(tree_id != this.active_tree)
{ // no dependency problem
return true;
}
var t = this.get_active_tree();
if(node_id == t.active_node ||
t.folder_is_descendent(t.active_node, node_id))
{ // dependency problem
return false;
}
if(this.cut_tree > -1)
{
var parent_node_id = t.parent_id[node_id];
/* These are only for cut/paste, do not apply to copy/paste */
if(((t.IsExported[parent_node_id] == 1) && (t.IsExported[t.active_node])) ||
((t.IsImported[parent_node_id] == 1) && (t.IsImported[t.active_node])))
{ // can move within a single share tree
if(t.folder_share_root(parent_node_id) != t.folder_share_root(t.active_node))
{
return false;
}
}
if((t.IsExported[parent_node_id] != t.IsExported[t.active_node]) ||
(t.IsImported[parent_node_id] != t.IsImported[t.active_node]))
{ // can move between non-share and share.
return false;
}
}
return true;
}
function c_share_folder_ok()
{
var t = this.get_active_tree();
if(t.IsImported[t.active_node] == 1)
{ // can not share imported folders
return false;
}
if((t.IsExported[t.active_node] == 1) &&
(t.folder_share_root(t.active_node) != t.active_node))
{ // can not share non-share tree roots
return false;
}
return true;
}
function c_read_folder_ok()
{
var t = this.get_active_tree();
if(t.ReadBit[t.active_node] == 1)
{
return true;
}
return false;
}
function c_insert_folder_ok()
{
var t = this.get_active_tree();
if(t.InsertBit[t.active_node] == 1)
{
return true;
}
return false;
}
function c_delete_folder_ok()
{
var t = this.get_active_tree();
if(t.DeleteBit[t.active_node] == 1)
{
return true;
}
/* delete the root of a share
* this is really an "unshare" operation
*/
if((t.IsImported[t.active_node] == 1) &&
(t.folder_share_root(t.active_node) == t.active_node))
{
return true;
}
return false;
}
function c_delete_item_ok()
{
/* This function just looks at the folders
* properties and does not check if it is the
* root of a share. The response will
* determine if it is okay to delete items
* in this folder
*/
var t = this.get_active_tree();
if(t.DeleteBit[t.active_node] == 1)
{
return true;
}
return false;
}
// assumes that active_tree is the private tree
function c_paste_item_ok()
{
if((this.cut_items.length > 0) ||
(this.copy_items.length > 0))
{
return true;
}
return false;
}
//Added by Ryan Hartley
function c_is_active_node_a_test(){
var t = this.get_active_tree();
if(t.type_id[t.active_node] == 5)
{
return true;
}
return false;
}
//Added by M29
function c_is_active_node_a_calendar(){
var t = this.get_active_tree();
if(t.type_id[t.active_node] == 6)
{
return true;
}
return false;
}
function c_is_active_node_a_blog(){
var t = this.get_active_tree();
if(t.type_id[t.active_node] == 7)
{
return true;
}
return false;
}
function c_questions_selected_count(){
var count = 0;
var item_id;
for(item_id in this.get_folder().selected)
{
if(this.get_folder().selected[item_id] == 1 && this.get_folder().type_id[item_id] == 4)
{
count ++;
}
}
return count;
}
//End of addition
//Added by Ryan Hartley for question search
function c_search_selected_count(){
var count = 0;
var item_id;
for(item_id in this.search_items_selected)
{
if(this.search_items_selected[item_id] == 1)
{
count ++;
}
}
return count;
}
function c_selected_count()
{
var count = 0;
var item_id;
for(item_id in this.get_folder().selected)
{
if(this.get_folder().selected[item_id] == 1 && this.get_folder().type_id[item_id] != 4)
{
count ++;
}
}
return count;
}
function c_set_folder_menu_private_tree()
{
var paste_folder_state = this.paste_folder_ok() ? 1 : 0;
var share_folder_state = this.share_folder_ok() ? 1 : 0;
var read_folder_state = this.read_folder_ok() ? 1 : 0;
var insert_folder_state = this.insert_folder_ok() ? 1 : 0;
var delete_folder_state = this.delete_folder_ok() ? 1 : 0;
var delete_item_state = this.delete_item_ok() ? 1 : 0;
var paste_item_state = this.paste_item_ok() ? 1 : 0;
var item_count = this.selected_count();
var question_count = this.questions_selected_count();
var search_count = this.search_selected_count();
var test_state = 0;
var folder_state = 0;
//Added by M29
var calendar_state = 0;
var blog_state = 0;
if(!this.is_active_node_a_test()){
folder_state = 1;
test_state = 0;
}
else{
folder_state = 0;
test_state = 1;
}
//Added by M29
if (this.is_active_node_a_calendar()){
folder_state = 0;
calendar_state = 1;
}
if (this.is_active_node_a_blog()){
blog_state = 1;
folder_state = 0;
}
//alert("folder_state = "+folder_state+"\ninsert_folder_state = "+insert_folder_state+"\npaste_folder_state = "+paste_folder_state);
this.set_menu_state("new_folder", (folder_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("edit_folder", (folder_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("publish_folder", (folder_state && read_folder_state) ? 1 : 0);
this.set_menu_state("email_folder", (folder_state && read_folder_state) ? 1 : 0);
this.set_menu_state("cut_folder", (folder_state && delete_folder_state) ? 1 : 0);
this.set_menu_state("copy_folder", (folder_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("paste_folder", (folder_state && insert_folder_state && paste_folder_state) ? 1 : 0);
this.set_menu_state("delete_folder", (folder_state && delete_folder_state) ? 1 : 0);
this.set_menu_state("share_folder", (folder_state && share_folder_state) ? 1 : 0);
this.set_menu_state("new_item", (!calendar_state && !blog_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("edit_item", item_count > 0 ? 1 : 0);
this.set_menu_state("publish_item", item_count > 0 ? 1 : 0);
this.set_menu_state("email_item", item_count > 0 ? 1 : 0);
this.set_menu_state("cut_item", (item_count > 0 && delete_item_state) ? 1 : 0);
this.set_menu_state("copy_item", item_count > 0 ? 1 : 0);
this.set_menu_state("paste_item", paste_item_state);
this.set_menu_state("delete_item", (item_count > 0 && delete_item_state) ? 1 : 0);
this.set_menu_state("new_test", (folder_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("print_test", (test_state && read_folder_state) ? 1 : 0);
this.set_menu_state("edit_test", (test_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("publish_test", (test_state && read_folder_state) ? 1 : 0);
this.set_menu_state("email_test", (test_state && read_folder_state) ? 1 : 0);
this.set_menu_state("cut_test", (test_state && delete_folder_state) ? 1 : 0);
this.set_menu_state("copy_test", ((test_state && insert_folder_state) || item_count > 0) ? 1 : 0);
this.set_menu_state("paste_test", (folder_state && insert_folder_state && paste_folder_state) ? 1 : 0);
this.set_menu_state("import_test", (folder_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("delete_test", (test_state && delete_folder_state) ? 1 : 0);
this.set_menu_state("share_test", (test_state && share_folder_state) ? 1 : 0);
this.set_menu_state("search_test",1);
this.set_menu_state("new_question", (!calendar_state && !blog_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("edit_question", question_count > 0 ? 1 : 0);
this.set_menu_state("cut_question", (question_count > 0 && delete_item_state) ? 1 : 0);
this.set_menu_state("copy_question", (question_count > 0 || search_count > 0) ? 1 : 0);
this.set_menu_state("paste_question", paste_item_state);
this.set_menu_state("delete_question",(question_count > 0 && delete_item_state) ? 1 : 0);
this.set_menu_state("search_question",1);
this.set_menu_state("this_report", test_state);
this.set_menu_state("all_report", 1);
//m29 begin
this.set_menu_state("add_calendar", (folder_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("edit_calendar", (calendar_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("publish_calendar", (calendar_state && read_folder_state) ? 1 : 0);
this.set_menu_state("print_calendar", (calendar_state && read_folder_state) ? 1 : 0);
this.set_menu_state("email_calendar", (calendar_state && read_folder_state) ? 1 : 0);
this.set_menu_state("delete_calendar", (calendar_state && delete_folder_state) ? 1 : 0);
this.set_menu_state("cut_calendar", (calendar_state && delete_folder_state) ? 1 : 0);
this.set_menu_state("copy_calendar", (calendar_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("import_calendar", (calendar_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("export_calendar", (calendar_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("paste_calendar", (folder_state && insert_folder_state && paste_folder_state) ? 1 : 0);
this.set_menu_state("share_calendar", (calendar_state && share_folder_state) ? 1 : 0);
this.set_menu_state("add_blog", (folder_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("edit_blog", (blog_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("publish_blog", (blog_state && read_folder_state) ? 1 : 0);
this.set_menu_state("email_blog", (blog_state && read_folder_state) ? 1 : 0);
this.set_menu_state("cut_blog", (blog_state && delete_folder_state) ? 1 : 0);
this.set_menu_state("copy_blog", (blog_state && insert_folder_state) ? 1 : 0);
this.set_menu_state("paste_blog", (folder_state && insert_folder_state && paste_folder_state) ? 1 : 0);
this.set_menu_state("delete_blog", (blog_state && delete_folder_state) ? 1 : 0);
this.set_menu_state("share_blog", (blog_state && share_folder_state) ? 1 : 0);
}
function c_set_folder_menu_root_tree()
{
var paste_folder_state = this.paste_folder_ok() ? 1 : 0;
var items_to_paste = this.paste_item_ok() ? 1 : 0;
var item_count = this.selected_count();
var question_count = this.questions_selected_count();
var search_count = this.search_selected_count();
var paste_item_state = 0;
if(items_to_paste == 1){
paste_item_state = 1;
}
this.set_menu_state("new_folder", 1);
this.set_menu_state("edit_folder", 0);
this.set_menu_state("publish_folder", 0);
this.set_menu_state("email_folder", 0);
this.set_menu_state("cut_folder", 0);
this.set_menu_state("copy_folder", 0);
this.set_menu_state("paste_folder", paste_folder_state);
this.set_menu_state("delete_folder", 0);
this.set_menu_state("share_folder", 0);
this.set_menu_state("new_item", 1);
this.set_menu_state("edit_item", item_count > 0 ? 1 : 0);
this.set_menu_state("publish_item", item_count > 0 ? 1 : 0);
this.set_menu_state("email_item", item_count > 0 ? 1 : 0);
this.set_menu_state("cut_item", item_count > 0 ? 1 : 0);
this.set_menu_state("copy_item", item_count > 0 ? 1 : 0);
this.set_menu_state("paste_item", paste_item_state);
this.set_menu_state("delete_item", item_count > 0 ? 1 : 0);
this.set_menu_state("new_test", 1);
this.set_menu_state("print_test", 0);
this.set_menu_state("edit_test", 0);
this.set_menu_state("publish_test", 0);
this.set_menu_state("email_test", 0);
this.set_menu_state("cut_test", 0);
this.set_menu_state("copy_test", item_count > 0 ? 1 : 0);
this.set_menu_state("paste_test", paste_folder_state);
this.set_menu_state("import_test", 1);
this.set_menu_state("delete_test", 0);
this.set_menu_state("share_test", 0);
this.set_menu_state("search_test", 1);
this.set_menu_state("new_question", 1);
this.set_menu_state("edit_question", question_count > 0 ? 1 : 0);
this.set_menu_state("cut_question", question_count > 0 ? 1 : 0);
this.set_menu_state("copy_question", (question_count > 0 || search_count > 0) ? 1 : 0);
this.set_menu_state("paste_question", paste_item_state);
this.set_menu_state("delete_question",question_count > 0 ? 1 : 0);
this.set_menu_state("search_question",1);
this.set_menu_state("this_report", 0);
this.set_menu_state("all_report", 1);
//m29
this.set_menu_state("add_calendar", 1);
this.set_menu_state("edit_calendar", 0);
this.set_menu_state("publish_calendar", 0);
this.set_menu_state("print_calendar", 0);
this.set_menu_state("email_calendar", 0);
this.set_menu_state("delete_calendar", 0);
this.set_menu_state("cut_calendar", 0);
this.set_menu_state("copy_calendar", 0);
this.set_menu_state("import_calendar", 0);
this.set_menu_state("export_calendar", 0);
this.set_menu_state("paste_calendar", paste_folder_state);
this.set_menu_state("share_calendar", 0);
this.set_menu_state("add_blog", 1);
this.set_menu_state("edit_blog", 0);
this.set_menu_state("publish_blog", 0);
this.set_menu_state("email_blog", 0);
this.set_menu_state("cut_blog", 0);
this.set_menu_state("copy_blog", 0);
this.set_menu_state("paste_blog", paste_folder_state);
this.set_menu_state("delete_blog", 0);
this.set_menu_state("share_blog", 0);
}
function c_set_user_menu_none()
{
this.set_menu_state("edit_personal", 0);
this.set_menu_state("edit_profile", 0);
this.set_menu_state("edit_my_page", 0);
this.set_menu_state("show_message", 0);
this.set_menu_state("edit_students", 0);
this.set_menu_state("class_student_management", 0);
this.set_menu_state("edit_my_buddies", 0);
this.set_menu_state("edit_themes", 0);
this.set_menu_state("logout_user", 0);
}
function c_set_user_menu_authorized()
{
this.set_menu_state("edit_personal", 1);
this.set_menu_state("edit_profile", 1);
this.set_menu_state("edit_my_page", 1);
this.set_menu_state("show_message", 1);
this.set_menu_state("edit_students", 1);
this.set_menu_state("class_student_management", 1);
this.set_menu_state("edit_my_buddies", 1);
this.set_menu_state("edit_themes", 1);
this.set_menu_state("logout_user", 1);
}
function c_set_user_menu_anonymous()
{
this.set_menu_state("edit_personal", 0);
this.set_menu_state("edit_profile", 0);
this.set_menu_state("edit_my_page", 0);
this.set_menu_state("show_message", 0);
this.set_menu_state("edit_students", 0);
this.set_menu_state("class_student_management", 0);
this.set_menu_state("edit_my_buddies", 0);
this.set_menu_state("edit_themes", 0);
this.set_menu_state("logout_user", 0);
}
//Added by Ryan Hartley for question search
function c_item_search_click(item_id, state)
{
if(state)
{
this.search_items_selected[item_id] = 1;
}
else
{
this.search_items_selected[item_id] = 0;
}
this.update_menus();
}
function c_display_upload_result(folder_title, item_title, success)
{
this.get_folder().js_display_upload_result(folder_title, item_title, success);
}
/*
* This is a sample xml request initiation
* this is a method of js_controller, so all instance data should be available
*/
function c_echo(echo_message)
{
var post_data = new Object();
/* action is required
* this needs to match the name in xml_action_handler
* the same name needs to match the name of the xml_response_handlers in js_controller
*/
post_data['action'] = 'echo';
// user_id is required for all messages
post_data['user_id'] = this.user_id;
// any other form variables should go here the names should match those used in the handler in xml_action_handler
post_data['echo_message'] = echo_message;
// This data does not go to the server. It stays in the client and is handed to the client side response handler
// it is useful to communicate specific client-side information to the response handler
var user_data = new Object();
// code frame name is required as shown here
user_data['code_frame_name'] = this.code_frame_name;
// any other data goes here.
user_data['client_echo_information'] = echo_message;
var base = parent.frames[this.code_frame_name].location.toString();
base = base.substring(0, base.lastIndexOf("/")+1);
var url = base + "xml_action_handler.cfm";
var xml_req = xmlRequestSend(url,
post_data,
user_data,
xml_response_handler);
}
/*
* This is a sample AJAX handler. It finds the message to be displayed
* and replaces the folder display frame with this message.
*
* This is a method of js_controller, so all of the instance data is available, including access to the menus and trees.
*/
function c_xml_response_echo(user_data, xml_obj)
{
/* retrieve the data.
* getElementsByTagName() returns an array of DOM Nodes, the [0] indexes the first (and only in this case) node
* The node had data inserted into its XmlText in xml_action_handler.cfm, which is a child of the echo_data node
* This is why we grab the data from firstChild.
*/
var echo_data = xml_obj.documentElement.getElementsByTagName('echo_data')[0].firstChild.data;
// do the work for this handler here
var f = parent.frames[this.folder_frame_name];
f.document.open();
f.document.write('server data: ');
f.document.write(echo_data);
f.document.write('
');
f.document.write('client data:');
f.document.write(user_data.client_echo_information);
f.document.close();
}
function js_controller(code_frame_name, tree_frame_name, folder_frame_name, load_frame_name,
menu_frame_name,
tree_style, folder_style, user_id)
{
this.code_frame_name = code_frame_name;
this.tree_frame_name = tree_frame_name;
this.folder_frame_name = folder_frame_name;
this.load_frame_name = load_frame_name;
this.menu_frame_name = menu_frame_name;
this.tree_style = tree_style;
this.folder_style = folder_style;
this.user_id = user_id;
this.username = "";
this.user_real_name = "";
this.buddy_list = new Array();
this.user_message = "";
this.mode = 0; /* 0 -- normal logged in user display
* 1 -- anonymous - My Page display
* 2 -- static display
*/
this.login_state = 0; /* 0 - no login
* 1 - authorized login
* 2 - "my page" anonymous access
*/
this.folder = new Object();
this.active_tree = -1;
this.trees = new Array();
this.active_folder_id = -1;
this.folder_set = new Object();
this.cut_items = new Array();
this.copy_items = new Array();
//Added by Ryan Hartley to allow for question searching
this.search_items_selected = new Object();
this.cut_tree = -1;
this.cut_node = -1;
this.copy_tree = -1;
this.copy_node = -1;
this.c_parent_id = -1;
this.multi_copy = "no";
this.test_view = "detailed";
this.user_space_used = "";
this.user_space_available = "";
this.user_space_left = "";
// These names were harvested from edesk_menu.js.
// Any changes there must be reflected here.
this.menu_names = {
new_folder: "p1i0",
edit_folder: "p1i1",
publish_folder: "p1i2",
email_folder: "p1i3",
cut_folder: "p1i4",
copy_folder: "p1i5",
paste_folder: "p1i6",
delete_folder: "p1i7",
share_folder: "p1i8",
new_item: "p2i0",
edit_item: "p2i1",
publish_item: "p2i2",
email_item: "p2i3",
cut_item: "p2i4",
copy_item: "p2i5",
paste_item: "p2i6",
delete_item: "p2i7",
// tests and questions should go here
new_test: "p3i0",
print_test: "p3i1",
edit_test: "p3i2",
publish_test: "p3i3",
email_test: "p3i4",
cut_test: "p3i5",
copy_test: "p3i6",
paste_test: "p3i7",
import_test: "p3i8",
delete_test: "p3i9",
share_test: "p3i10",
search_test: "p3i11",
new_question: "p4i0",
edit_question: "p4i1",
cut_question: "p4i2",
copy_question: "p4i3",
paste_question: "p4i4",
delete_question:"p4i5",
search_question:"p4i6",
edit_personal: "p5i0",
edit_profile: "p5i1",
edit_my_page: "p5i2",
edit_my_buddies: "p5i3",
show_message: "p5i4",
edit_themes: "p5i5",
edit_students: "p7i2",
class_student_management: "p7i2",
add_calendar: "p8i0",
edit_calendar: "p8i2",
publish_calendar: "p8i3",
print_calendar: "p8i1",
email_calendar: "p8i4",
delete_calendar: "p8i5",
cut_calendar: "p8i6",
copy_calendar: "p8i7",
import_calendar: "p8i11",
export_calendar: "p8i12",
paste_calendar: "p8i8",
share_calendar: "p8i9",
add_blog: "p9i0",
edit_blog: "p9i1",
publish_blog: "p9i2",
email_blog: "p9i3",
cut_blog: "p9i4",
copy_blog: "p9i5",
paste_blog: "p9i6",
delete_blog: "p9i7",
share_blog: "p9i8",
this_report: "p7i0",
all_report: "p7i1",
logout_user: "p0i6",
none: ""
};
this.menu_states = {
new_folder: 1,
edit_folder: 1,
publish_folder: 1,
email_folder: 1,
cut_folder: 1,
copy_folder: 1,
paste_folder: 1,
delete_folder: 1,
share_folder: 1,
new_item: 1,
edit_item: 1,
publish_item: 1,
email_item: 1,
cut_item: 1,
copy_item: 1,
paste_item: 1,
delete_item: 1,
// tests and questions should go here
new_test: 1,
print_test: 1,
edit_test: 1,
publish_test: 1,
email_test: 1,
cut_test: 1,
copy_test: 1,
paste_test: 1,
import_test: 1,
delete_test: 1,
share_test: 1,
search_test: 1,
new_question: 1,
edit_question: 1,
cut_question: 1,
copy_question: 1,
paste_question: 1,
delete_question:1,
search_question:1,
edit_personal: 1,
edit_profile: 1,
edit_my_page: 1,
edit_my_buddies: 1,
edit_themes: 1,
show_message: 1,
edit_students: 1,
class_student_management: 1,
add_calendar: 1,
add_calevent: 1,
edit_calendar: 1,
view_calendars: 1,
publish_calendar: 1,
print_calendar: 1,
copy_calendar: 1,
import_calendar: 1,
export_calendar: 1,
paste_calendar: 1,
cut_calendar: 1,
share_calendar: 1,
add_blog: 1,
edit_blog: 1,
publish_blog: 1,
email_blog: 1,
cut_blog: 1,
copy_blog: 1,
paste_blog: 1,
delete_blog: 1,
share_blog: 1,
this_report: 1,
all_report: 1,
logout_user: 1,
none: 1
};
this.debug = 0;
/* Question Customization */
this.editgroupmedia = -1;
this.addmedia = false;
/* This can take on one of two values
* "QUESTION" - Questions
* "MYPAGE" - My Page
* Used to flag where to return once the
* media addition has completed
*/
this.addingmediato = "QUESTION";
this.isForMediaSection = 1;
/* methods */
this.get_active_tree = c_get_active_tree;
this.get_user_tree = c_get_user_tree;
this.add_tree = c_add_tree;
this.delete_last_tree= c_delete_last_tree;
this.add_node = c_add_node;
this.move_node = c_move_node;
this.delete_node = c_delete_node;
this.publish_node = c_publish_node;
this.share_node = c_share_node;
this.display_trees = c_display_trees;
this.tree_click = c_tree_click;
this.tree_click_plus_minus = c_tree_click_plus_minus;
this.cut_folder = c_cut_folder;
this.copy_folder = c_copy_folder;
this.import_test = c_import_test;
this.paste_folder = c_paste_folder;
this.publish_folder = c_publish_folder;
this.edit_folder = c_edit_folder;
this.share_folder = c_share_folder;
this.update_node = c_update_node;
this.reorder_tree = c_reorder_tree;
this.reorder_children = c_reorder_children;
this.update_node_order = c_update_node_order;
this.add_folder = c_add_folder;
this.get_the_folder = c_get_the_folder;
this.get_folder = c_get_folder;
this.set_folder = c_set_folder;
this.add_item_to_folder = c_add_item_to_folder;
this.add_item = c_add_item;
this.delete_item = c_delete_item;
this.display_folder = c_display_folder;
this.logout_click = c_logout_click;
this.submit_action = c_submit_action;
this.folder_has_action = c_folder_has_action;
this.display_folder_or_submit_action = c_display_folder_or_submit_action;
this.display_user_message = c_display_user_message;
this.message_click = c_message_click;
this.set_folder_read_password = c_set_folder_read_password;
this.check_folder_read_password = c_check_folder_read_password;
this.have_folder_read_password = c_have_folder_read_password;
this.folder_read_password_required = c_folder_read_password_required;
this.folder_read_password_form_handler = c_folder_read_password_form_handler;
this.load_folder = c_load_folder;
this.folder_click = c_folder_click;
this.load_item = c_load_item;
this.item_click = c_item_click;
this.item_select = c_item_select;
this.cut_item = c_cut_item;
this.copy_item = c_copy_item;
this.paste_item = c_paste_item;
this.publish_item = c_publish_item;
this.publish_selected_items = c_publish_selected_items;
this.edit_item = c_edit_item;
this.update_item = c_update_item;
this.set_sort_folder = c_set_sort_folder;
this.set_view_folder = c_set_view_folder;
this.reorder_item = c_reorder_item;
this.send_action = c_send_action;
this.send_action_any_frame = c_send_action_any_frame;
this.load_page = c_load_page;
this.edit_my_information = c_edit_my_information;
this.edit_my_profile = c_edit_my_profile;
this.edit_my_buddies = c_edit_my_buddies;
this.edit_my_page = c_edit_my_page;
this.show_my_page = c_show_my_page;
this.edit_themes = c_edit_themes;
this.email_item_form = c_email_item_form; // my_code : ashish : vinove
this.common_email_form = c_common_email_form; // my_code : ashish : vinove
this.new_file_upload = c_new_file_upload; // my_code : ashish : vinove
this.common_new_folder_form = c_common_new_folder_form; // my_code : ashish : vinove
this.common_edit_folder_form = c_common_edit_folder_form; // my_code : ashish : vinove
this.user_space_allocation = c_user_space_allocation; // my_code : anuj : vinove
this.start = c_start;
this.login = c_login;
this.login_fail = c_login_fail;
this.logout = c_logout;
this.set_login_none = c_set_login_none;
this.set_login_authorized = c_set_login_authorized;
this.set_login_anonymous = c_set_login_anonymous;
this.show_login = c_show_login;
this.show_login_and_information = c_show_login_and_information;
this.item_image = c_item_image;
/* menu state methods */
this.update_menus = c_update_menus;
this.set_menu_state = c_set_menu_state;
this.set_folder_menu_none = c_set_folder_menu_none;
this.set_folder_menu_public_tree = c_set_folder_menu_public_tree;
this.set_folder_menu_private_tree = c_set_folder_menu_private_tree;
this.set_folder_menu_root_tree = c_set_folder_menu_root_tree;
this.paste_folder_ok = c_paste_folder_ok;
this.share_folder_ok = c_share_folder_ok;
this.read_folder_ok = c_read_folder_ok;
this.insert_folder_ok = c_insert_folder_ok;
this.delete_folder_ok = c_delete_folder_ok;
this.delete_item_ok = c_delete_item_ok;
this.paste_item_ok = c_paste_item_ok;
//Added By Ryan Hartley
this.is_active_node_a_test = c_is_active_node_a_test;
//Added by M29
this.is_active_node_a_calendar = c_is_active_node_a_calendar;
this.is_active_node_a_blog = c_is_active_node_a_blog;
this.questions_selected_count = c_questions_selected_count
//End of addition
this.selected_count = c_selected_count;
this.set_user_menu_none = c_set_user_menu_none;
this.set_user_menu_authorized = c_set_user_menu_authorized;
this.set_user_menu_anonymous = c_set_user_menu_anonymous;
//Added by Ryan Hartley for question search
this.search_selected_count = c_search_selected_count;
this.item_search_click = c_item_search_click;
// anonymous upload passwords
this.folder_write_password_form_handler = c_folder_write_password_form_handler;
this.display_upload = c_display_upload;
this.display_upload_onload = c_display_upload_onload;
this.set_folder_write_password = c_set_folder_write_password;
this.check_folder_write_password = c_check_folder_write_password;
this.folder_write_password_required = c_folder_write_password_required;
this.have_folder_write_password = c_have_folder_write_password;
this.upload_click = c_upload_click;
this.report_qus = c_report_qus; // my_code : ashish : report qus
this.cal_subs = c_cal_subs; // my_code : anuj : cal subs
// my_code : ashish : test record time interval (milliseconds) : dt:- 24 Oct 2006
//this.setTestTimeInterval = c_setTestTimeInterval; NOT IN USE NOW
// sample AJAX code
this.echo = c_echo;
// this is for handling xml responses
this.xml_response_handlers = new Object();
/* Define new AJAX response handlers here
* two lines are necessary per handler
*/
this.xml_response_handlers['check_folder_read_password'] = 'xml_response_check_folder_read_password';
this.xml_response_check_folder_read_password = c_xml_response_check_folder_read_password;
this.xml_response_handlers['check_folder_write_password'] = 'xml_response_check_folder_write_password';
this.xml_response_check_folder_write_password = c_xml_response_check_folder_write_password;
this.xml_response_handlers['echo'] = 'xml_response_echo';
this.xml_response_echo = c_xml_response_echo;
this.xml_response_handlers['report_qus'] = 'xml_response_report_qus'; // my_code: report qus
this.xml_response_report_qus = c_xml_response_report_qus;
this.xml_response_handlers['cal_subs'] = 'xml_response_cal_subs'; // my_code: Calendar Subscription
this.xml_response_cal_subs = c_xml_response_cal_subs;
this.display_upload_result = c_display_upload_result;
}
var controller = new js_controller('js_code','tree_display','folder_display',
'load', 'menu',
js_tree_style, js_folder_style,
-1);
function menu_event(event)
{
/* folder menu */
if(event == 'new_folder')
{
if(controller.menu_states[event] == 1)
{
//my_code : ashish : to display common new folder form
controller.common_new_folder_form('Folder');
}
}
else if(event == 'edit_folder')
{
if(controller.menu_states[event] == 1)
{
// my_code : ashish : vinove
controller.common_edit_folder_form('Folder',1);
}
}
else if(event == 'publish_folder')
{
if(controller.menu_states[event] == 1)
{
controller.publish_folder();
}
}
else if(event == 'email_folder')
{
if(controller.menu_states[event] == 1)
{
// my_code : ashish : vinove : to display email form for FOLDER. This is a coomon form for Folder, Test & Blog
controller.common_email_form('Folder');
}
}
else if(event == 'cut_folder')
{
if(controller.menu_states[event] == 1)
{
controller.cut_folder();
}
}
else if(event == 'copy_folder')
{
if(controller.menu_states[event] == 1)
{
controller.copy_folder();
}
}
else if(event == 'paste_folder')
{
if(controller.menu_states[event] == 1)
{
controller.paste_folder();
}
}
else if(event == 'delete_folder')
{
if(controller.menu_states[event] == 1)
{
js_delete_folder_ui(controller.get_active_tree(),'Folder',1);
}
}
else if(event == 'share_folder')
{
if(controller.menu_states[event] == 1)
{
controller.share_folder();
}
}
/* item menu */
else if(event == 'new_item')
{
if(controller.menu_states[event] == 1)
{
js_new_item_ui(controller.get_folder());
}
}
else if(event == 'new_file')
{
controller.user_space_allocation();
setTimeout("controller.new_file_upload()",1000); // my_code : ashish : vinove
}
else if(event == 'new_link')
{
js_new_link_ui(controller.get_folder());
}
else if(event == 'edit_item')
{
if(controller.menu_states[event] == 1)
{
controller.edit_item(1);
controller.display_folder();
}
}
else if(event == 'publish_item')
{
if(controller.menu_states[event] == 1)
{
controller.publish_selected_items();
}
}
else if(event == 'email_item')
{
if(controller.menu_states[event] == 1)
{
// my_code : ashish : vinove : to dosplay email form for items
controller.email_item_form();
}
}
else if(event == 'cut_item')
{
if(controller.menu_states[event] == 1)
{
controller.cut_item();
}
}
else if(event == 'copy_item')
{
if(controller.menu_states[event] == 1)
{
controller.copy_item();
}
}
else if(event == 'paste_item')
{
if(controller.menu_states[event] == 1)
{
controller.paste_item();
}
}
else if(event == 'delete_item')
{
if(controller.menu_states[event] == 1)
{
js_delete_item_ui(controller.get_folder());
}
}
else if(event == 'anonymous_upload')
{
controller.upload_click(controller.active_tree, controller.get_folder().folder_id);
}
/* user menu */
else if(event == 'edit_personal')
{
if(controller.menu_states[event] == 1)
{
controller.edit_my_information();
}
}
else if(event == 'edit_profile')
{
if(controller.menu_states[event] == 1)
{
controller.edit_my_profile();
}
}
else if(event == 'edit_my_buddies')
{
if(controller.menu_states[event] == 1)
{
controller.edit_my_buddies(new Object());
}
}
else if(event == 'edit_my_page')
{
if(controller.menu_states[event] == 1)
{
controller.edit_my_page();
}
}
else if(event == 'edit_themes') /// my_code: ashish : vinove : Event handler
{
if(controller.menu_states[event] == 1)
{
controller.edit_themes();
}
}
else if(event == 'edit_students')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/student/student_index.cfm?userID=" + controller.get_folder().user_id;
d.close();
}
}
else if(event == 'class_student_management')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/sm/cf_class_student_management.cfm";
d.close();
}
}
else if(event == 'logout_user')
{
if(controller.menu_states[event] == 1)
{
controller.logout_click();
}
}
else if(event == 'show_message')
{
if(controller.menu_states[event] == 1)
{
controller.message_click();
}
}
/*test menu*/
else if(event == 'new_test')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/tests/newtest.cfm?parentID=" + controller.get_folder().folder_id + "&userID=" + controller.get_folder().user_id + "&treeID=" + controller.get_active_tree().tree_id
d.close();
}
}
else if(event == 'print_test')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/tests/print_test_start.cfm?folderid=" + controller.get_folder().folder_id;
d.close();
}
}
else if(event == 'edit_test')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/tests/edittest.cfm?folderID=" + controller.get_folder().folder_id + "&userID=" + controller.get_folder().user_id + "&treeID=" + controller.get_active_tree().tree_id + "&parentID=" + controller.get_folder().parent_id;
d.close();
}
}
else if(event == 'publish_test')
{
if(controller.menu_states[event] == 1)
{
controller.publish_folder();
}
}
else if(event == 'email_test')
{
if(controller.menu_states[event] == 1)
{
// NOTE: No need to generate Email Hash for Test
controller.common_email_form('Test'); // my_code : ashish : vinove : to display email form for TEST. This is a common form for Folder, Test & Blog
}
}
else if(event == 'cut_test')
{
if(controller.menu_states[event] == 1)
{
controller.cut_folder();
}
}
else if(event == 'copy_test')
{
if(controller.menu_states[event] == 1)
{
controller.copy_folder();
}
}
else if(event == 'paste_test')
{
if(controller.menu_states[event] == 1)
{
controller.paste_folder();
}
}
else if(event == 'import_test')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/tests/import.cfm?folderID=" + controller.get_folder().folder_id + "&userID=" + controller.get_folder().user_id + "&treeID=" + controller.get_active_tree().tree_id + "&parentID=" + controller.get_folder().parent_id;
d.close();
}
}
else if(event == 'delete_test')
{
if(controller.menu_states[event] == 1)
{
js_delete_folder_ui(controller.get_active_tree(),'Test',5);
}
}
else if(event == 'share_test')
{
if(controller.menu_states[event] == 1)
{
controller.share_folder();
}
}
else if(event == 'search_test')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/search/test_search.cfm";
d.close();
}
}
/*question menu*/
else if(event == 'new_question')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/questions/newquestion.cfm?folderID=" + controller.get_folder().folder_id + "&userID=" + controller.get_folder().user_id;
d.close();
}
}
else if(event == 'edit_question')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/questions/editquestion.cfm";
d.close();
}
}
else if(event == 'cut_question')
{
if(controller.menu_states[event] == 1)
{
controller.cut_item();
}
}
else if(event == 'copy_question')
{
if(controller.menu_states[event] == 1)
{
controller.copy_item();
}
}
else if(event == 'paste_question')
{
if(controller.menu_states[event] == 1)
{
controller.paste_item();
}
}
else if(event == 'delete_question')
{
if(controller.menu_states[event] == 1)
{
js_delete_item_ui(controller.get_folder());
}
}
else if(event == 'search_question')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/search/question_search.cfm";
d.close();
}
}
/*Report Menu*/
else if(event == 'all_report')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/results/teacher_results.cfm?userID=" + controller.get_folder().user_id;
d.close();
}
}
else if(event == 'this_report')
{
if(controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
d.location.href = "/results/results_index.cfm?folderID=" + controller.get_folder().folder_id + "&userID=" + controller.get_folder().user_id;
d.close();
}
}
/*Calendar Menu*/
else if(event == 'add_calendar')
{
if( controller.menu_states[event] == 1)
{
// my_code : ashish : vinove
controller.common_new_folder_form('Calendar');
}
}
else if(event == 'add_calevent')
{
if( controller.menu_states[event] == 1)
{
var d = parent.frames[controller.get_folder().ui_frame_name].document;
newlocvar="/ezcal/admin/calevent.cfm?calid=" + controller.get_folder().folder_id;
d.location.href = newlocvar;
d.close();
}
}
else if(event == 'edit_calendar'){
if( controller.menu_states[event] == 1){
var d = parent.frames[controller.get_folder().ui_frame_name].document;
newlocvar = "/ezcal/admin/calheaderedit.cfm?calid=" + controller.get_folder().folder_id + "&treeid=" + controller.get_active_tree().tree_id;
d.location.href = newlocvar;
d.close();
}
}
else if(event == 'email_calendar'){
if( controller.menu_states[event] == 1){
var d = parent.frames[controller.get_folder().ui_frame_name].document;
newlocvar="/ezcal/admin/emailCalendar.cfm?calid=" + controller.get_folder().folder_id ;
d.location.href = newlocvar;
d.close();
}
}
else if(event == 'print_calendar'){
if( controller.menu_states[event] == 1){
var d = parent.frames[controller.get_folder().ui_frame_name].document;
var month= d.form1.disp.value + d.form1.disp.listview
newlocvar="/ezcal/printCalendar.cfm?disp=" + d.form1.disp.value + "&cDate=" + d.form1.date.value+ "&calid=" + controller.get_folder().folder_id ;
d.location.href = newlocvar;
d.close();
}
}
else if(event == 'publish_calendar')
{
if(controller.menu_states[event] == 1)
{
controller.publish_folder();
}
}
else if(event == 'copy_calendar')
{
if(controller.menu_states[event] == 1)
{
controller.copy_folder();
}
}
else if(event == 'import_calendar'){
if( controller.menu_states[event] == 1){
var d = parent.frames[controller.get_folder().ui_frame_name].document;
newlocvar = "/ezcal/admin/import.cfm?calid=" + controller.get_folder().folder_id ;
d.location.href = newlocvar;
d.close();
}
}
else if(event == 'export_calendar'){
if( controller.menu_states[event] == 1){
var d = parent.frames[controller.get_folder().ui_frame_name].document;
newlocvar = "/ezcal/admin/export.cfm?calid=" + controller.get_folder().folder_id ;
d.location.href = newlocvar;
d.close();
}
}
else if(event == 'paste_calendar')
{
if(controller.menu_states[event] == 1)
{
controller.paste_folder();
}
}
else if(event == 'cut_calendar')
{
if(controller.menu_states[event] == 1)
{
controller.cut_folder();
}
}
else if(event == 'delete_calendar')
{
if( controller.menu_states[event] == 1)
{
js_delete_folder_ui(controller.get_active_tree(),'Calendar',6);
}
}
else if(event == 'share_calendar')
{
if(controller.menu_states[event] == 1)
{
controller.share_folder();
}
}
else if(event == 'add_blog')
{
if( controller.menu_states[event] == 1)
{
// my_code : ashish : vinove
controller.common_new_folder_form('Blog');
}
}
else if(event == 'edit_blog'){
if( controller.menu_states[event] == 1){
// my_code : ashish : vinove
controller.common_edit_folder_form('Blog',7);
}
}
else if(event == 'publish_blog')
{
if(controller.menu_states[event] == 1)
{
controller.publish_folder();
}
}
else if(event == 'email_blog'){
if( controller.menu_states[event] == 1){
// NOTE: No need to create Email hah for Blog
controller.common_email_form('Blog'); // my_code : ashish : vinove : to display email form for BLOG. This is a common form for Folder, Test & Blog
}
}
else if(event == 'copy_blog')
{
if(controller.menu_states[event] == 1)
{
controller.copy_folder();
}
}
else if(event == 'paste_blog')
{
if(controller.menu_states[event] == 1)
{
controller.paste_folder();
}
}
else if(event == 'cut_blog')
{
if(controller.menu_states[event] == 1)
{
controller.cut_folder();
}
}
else if(event == 'delete_blog')
{
if( controller.menu_states[event] == 1)
{
js_delete_folder_ui(controller.get_active_tree(),'Blog',7);
}
}
else if(event == 'share_blog')
{
if(controller.menu_states[event] == 1)
{
controller.share_folder();
}
}
else if(event == 'status')
{
alert(controller.get_folder().folder_id);
}
else
{
var d = parent.load.document;
parent.load.document.open();
parent.load.document.write(""+event+"");
parent.load.document.close();
}
}