var canSubmit=true;

function protectSubmit(){
        if(canSubmit){
                 submitInProcess=false;
                 return true;
         }
         return canSubmit;
}

function validate_form_iwantto(logged_in){
	if(form_iwantto.q.value.length>1) form_iwantto.submit();
	else alert('Too many ideas! Please type 2 or more letters.')

	return false;
}


function set_footer_position()
{
        var element = document.getElementById('tbl_main');

        var tblHeight = element.offsetTop + element.offsetHeight;
        var bodyHeight = document.body.offsetHeight;
        //alert (tblHeight+'_'+bodyHeight);
        if (tblHeight < bodyHeight)
                {
                element.style.height = document.body.offsetHeight - element.offsetTop - 50;
                }
}

//function is called when editing a goal
function change_goal_status(status,div){
        if(div==undefined) div='div_done_details';
        if(status=="d") show_object(div)
        else hide_object(div);
}
function show_new_idea(title){

        //var cell = MM_findObj('div_add_idea',parent.document);
        var cell = MM_findObj('div_new_idea',parent.document);
        cell.style.visibility = 'visible';
        cell.style.display= 'block';

    var _ideaTitle=MM_findObj('ideaTitle',parent.document);
    _ideaTitle.value=title;

    var _ideaTitle=MM_findObj('h3_ideaTitle',parent.document);
    _ideaTitle.innerHTML=title;


        hide_object("div_goal_details");

}
function edit_idea_title(){
        hide_object('div_edit_link');
        hide_object('h3_ideaTitle');
        show_object('div_ideaTitle')
}
function public_idea_selected(){
        show_object("div_public_idea_options");
        //enable_object("div_public_idea_options");
        //enable_object("goalPrivate");

}
function private_idea_selected(){
        hide_object("div_public_idea_options");
        //disable_object("div_public_idea_options");
        //disable_object("goalPrivate");
}
function hide_add_goal(){
        var cell = MM_findObj('div_new_idea',parent.document);
        cell.style.visibility = 'hidden';
        cell.style.display= 'none';
}
function show_hide_object(obj){
        var cell = MM_findObj(obj);
        if(cell.style.display==""){
                cell.style.display="block";
                return;
        }
        cell.style.display = (cell.style.display == "none")?"block":"none";
        //cell.style.visibility = (cell.style.visibility == "hidden")?"visible":"hidden";
}
function hide_object(obj){
        var cell = MM_findObj(obj);
        cell.style.display = "none";
}
function show_object(obj){
        var cell = MM_findObj(obj);
        cell.style.display = "block";
}
function disable_object(obj){
        var cell = MM_findObj(obj);
        cell.disabled = true;
}
function enable_object(obj){
        var cell = MM_findObj(obj);
        cell.disabled = false;
}
function check_tag(tag){
        tags=MM_findObj('tagsSelected',parent.document);
        found=false;
        for(i=0;i<tags.childNodes.length;i++){
                 if(tags.childNodes[i].childNodes.length==0) continue;
                        if(tags.childNodes[i].childNodes[0].value == tag){
                        found=true;
                        break;
                }
        }

        return found;

}
function get_selected_tags(){
        tags=MM_findObj('tagsSelected',parent.document);
        selected = new Array();
        j=0;
        for(i=0;i<tags.childNodes.length;i++){
                 if(tags.childNodes[i].childNodes.length==0) continue;
                        selected[j]=tags.childNodes[i].childNodes[0].value;
                        j++;
        }
        return selected.toString();
}
/*
function add_tag(obj){
        tags=MM_findObj('tagsSelected');
        found=check_tag(obj.value);
        for(i=0;i<tags.childNodes.length;i++){
                 if(tags.childNodes[i].childNodes.length==0) continue;
                        if(tags.childNodes[i].childNodes[0].value == obj.value){
                        remove_tag(tags.childNodes[i].childNodes[0]);
                        found=true;
                        break;
                }
        }
        if(!found){
                s='<label><input type="checkbox" value='+obj.value+' checked name="tags[]" onClick="remove_tag(this)">'+getText(obj.parentNode.innerHTML)+'<br></label>'
                tags.innerHTML+=s;
        }

}
function add_gtag(obj){
        tags=MM_findObj('gtagsSelected');
        found=false;
        for(i=0;i<tags.childNodes.length;i++){
                 if(tags.childNodes[i].childNodes.length==0) continue;
                if(tags.childNodes[i].childNodes[0].value == obj.value){
                        found=true;
                        break;
                }
        }

        if(!found){
                s='<label><input type="checkbox" value='+obj.value+' checked name="gtags[]" onClick="remove_tag(this)">'+getText(obj.parentNode.innerHTML)+'<br></label>'
                tags.innerHTML+=s;
        }
}
*/
function add_tag(obj,divTags,divKeywords){
        tags=MM_findObj(divTags);
        obj = MM_findObj(obj);
        found=check_tag(obj.value);
        for(i=0;i<tags.childNodes.length;i++){
                 if(tags.childNodes[i].childNodes.length==0) continue;
                        if(tags.childNodes[i].childNodes[0].value == obj.value){
                        remove_tag(tags.childNodes[i].childNodes[0]);
                        found=true;
                        break;
                }
        }
        if(!found){
                s='<label><input type="checkbox" value="'+obj.value+'" checked name="tags[]" onClick="remove_tag(this,\''+divKeywords+'\')">'+getText(obj.parentNode.innerHTML)+'</label>'
                tags.innerHTML+=s;
                show_object(divKeywords);
        }

}

function add_gtag(obj,divTags,divKeywords){
        tags=MM_findObj(divTags);
        found=false;
        obj = MM_findObj(obj);
        for(i=0;i<tags.childNodes.length;i++){
        if(tags.childNodes[i].childNodes.length==0) continue;
                if(tags.childNodes[i].childNodes[0].value == obj.value){
                        found=true;
                        break;
                }
        }
        if(!found){
                show_object(divKeywords);
                s='<label><input type="checkbox" value="'+obj.value+'" checked name="gtags[]" onClick="remove_gtag(this,\''+divKeywords+'\')">'+getText(obj.parentNode.innerHTML)+'</label>'
                tags.innerHTML+=s;
        }
}

function add_gtag_text(obj,divTags,divKeywords){
        el=MM_findObj(obj);
        if(el== null) return;

        txt=el.value;
        el.value="";
        if(txt=="") return;

        //parts = new Array();
        parts = txt.split(",");
        tags=MM_findObj(divTags);

        for(j=0;j<parts.length;j++){
                txt=parts[j];

                found=false;
                for(i=0;i<tags.childNodes.length;i++){
                                if(tags.childNodes[i].childNodes.length==0) continue;
                                if(tags.childNodes[i].childNodes[0].value == txt){
                                        found=true;
                                        break;
                        }
                }

                if(!found){
                        show_object(divKeywords);
                        s='<label><input type="checkbox" value="'+txt+'" checked name="gtags[]" onClick="remove_gtag(this,\''+divKeywords+'\')">'+txt+'</label>';
                        tags.innerHTML+=s;
                }
        }
}

function remove_tag(obj,divKeywords){
        //if(obj.parentNode.ParentNode.childs.length==0)
        if(obj.parentNode.parentNode.childNodes.length==1){
                hide_object(divKeywords);
        }
        obj.parentNode.parentNode.removeChild(obj.parentNode);
}

function remove_gtag(obj,divKeywords){
        //if(obj.parentNode.ParentNode.childs.length==0)
        if(obj.parentNode.parentNode.childNodes.length==1){
                hide_object(divKeywords);
        }
        obj.parentNode.parentNode.removeChild(obj.parentNode);
}


function getText(str){
                re = new RegExp("<[^>]+>([^<]+)(<[^>]+>)?.*") ;
                parts = re.exec(str);
                return parts[1];
}
function getTDText(str){
                 re1=/([\r\n]*)/ig
                 str=str.replace(re1,"");

                 re1=/(<\s*[\/]?\s*br\s*>)/ig
                 str=str.replace(re1,"\n");

                re = new RegExp("([^>]*)<[^>]+>([^<]*)(<[^>]+>)*") ;
                parts = re.exec(str);

                return parts[1];
}

function checkHTML(str){
                re = new RegExp("<[^>]+>(.+)<[^>]+>") ;
                return re.test(str);
}

function pick_category(id){
                tags_ifrm.location.href='tag.ifrm.php?categoryID='+id;
}

function edit_value(obj,n,c,t){
                if(t=="text"){
                        obj.parentNode.innerHTML='<input name="'+n+'" value="'+getTDText(obj.parentNode.innerHTML)+'" class="'+c+'" maxlength="255" type="text">';
                }
                if(t=="textarea"){
                        obj.parentNode.innerHTML='<textarea name="'+n+'" class="'+c+'" rows="4">'+getTDText(obj.parentNode.innerHTML)+'</textarea>';
                }
}

function edit_value_textline(obj,n,v,c){
                obj.parentNode.innerHTML='<input name="'+n+'" value="'+v+'" class="'+c+'" maxlength="255" type="text">';
}
function remove_photo(ideaID){
	var href = document.getElementsByTagName("base")[0].href;
	//alert(href);
         if(confirm('Are you sure?')){
		ifrm.location.href=href+'edit_goal.ifrm.php?ideaPhotoRemove=y&ideaID='+ideaID;
		hide_object('div_idea_photo');
		show_object('div_idea_photo_upload');
         }
}





document.write ('<div id="div_quick_add" class="cl_div_idea_options"></div>');

function idea_options_form(itemSrc, id_idea, posAlignX, posAlignY)
{
        if (!posAlignX) posAlignX = 0;
        if (!posAlignY) posAlignY = 3;

        var out='<iframe name="add_quick_ifrm" frameborder="0" width="0" height="0"></iframe>';
        out+='<form action="add_goal.quick.php" method="get" target="add_quick_ifrm" onSubmit="div_hide(\'div_quick_add\')">';
        out+='        <table cellpadding="2" cellspacing="0" border="0" width="150" class="cl_tbl_idea_options">';
        out+='        <tr class="cl_td_idea_options_header">';
        out+='                <td colspan="2"><strong>Add to My List</strong><input type="hidden" name="_ideaID" value="'+id_idea+'"></td>';
        out+='                <td class="cl_right"><a href="javascript:div_hide(\'div_quick_add\')"><img src="images/close.gif" alt="" width="10" height="10" border="0"></a></td>';
        out+='        </tr>';
        out+='        <tr>';
        out+='                <td colspan="3"><input type="checkbox" name="_goalStatus" value="d" class="cl_idea_options_items"> Put on &quot;done&quot; list</td>';
        out+='        </tr>';
        out+='        <tr>';
        out+='                <td width="60"><strong>Sharing</strong>:</td>';
        out+='                <td colspan="2">';
        out+='                        <select name="_goalPrivate" class="cl_idea_options_items">';
        out+='                                <option value="n">Public';
        out+='                                <option value="y">Private';
        out+='                                </select>';
        out+='                        </td>';
        out+='        </tr>';
        out+='        <tr>';
        out+='                <td><strong>Priority</strong>:</td>';
        out+='                <td colspan="2">';
        out+='                        <select name="_goalPriority" class="cl_idea_options_items">';
        out+='                                <option value="0">none';
        out+='                                <option value="1">low';
        out+='                                <option value="2">medium';
        out+='                                <option value="3">high';
        out+='                                <option value="4">highest';
        out+='                                </select>';
        out+='                        </td>';
        out+='        </tr>';
        out+='        <tr>';
        out+='                <td><strong>Date</strong>:</td>';
        out+='                <td><input type="text" id="_goalDueDate" name="_goalDueDate" class="cl_idea_options_items" style="width: 60px;" readonly></td>';
        out+='                <td class="cl_right"><a id="link" href="javascript:calGetDate(\'link\', \'_goalDueDate\', -100,40);"><img src="images/calendar.gif" alt="" width="16" height="16" border="0"></a></td>';
        out+='        </tr>';
        out+='        <tr>';
        out+='                <td colspan="3" align="center"><INPUT TYPE="HIDDEN"  name="showAlert" value="1"><input type="submit" value="Save"></td>';
        out+='        </tr>';
        out+='        </table>';
        out+='</form>';

        detect_position (itemSrc, 'div_quick_add', posAlignX, posAlignY);

        var cell = MM_findObj('div_quick_add');
        cell.innerHTML = out;
        var cell = MM_findObj('div_quick_add');
        cell.style.display = 'block';
}




function back_to_list(status){
        if(status=="a")  ref="my.goals.active.php";
        if(status=="b")  ref="my.goals.backburner.php";
        if(status=="d")  ref="my.goals.done.php";
        location.href=ref;
}
function div_hide(item)
{
        var cell = MM_findObj(item);
        cell.style.display = "none";
}

function div_show(item)
{
        var cell = MM_findObj(item);
        if (cell.style.display == "none") cell.style.display = "block";
        else cell.style.display = "none";
}
function div_hide_all(){
    //hide all divs with list items
/*
    for(i=0;i<divs.length;i++){
     el = MM_findObj(divs[i]+"_items");
     if(el.style.display=="block") detect_position_and_show(divs[i],divs[i]+"_items")
    }
*/
}
function check_all_goals(ee){
        if(window.event == undefined){
                 e=ee;
         }
         else{
                 e=window.event.srcElement;
         }

        var ll_form = document.getElementById('ll_form');

        state=e.checked;
        for(i=0;i<ll_form.elements.length;i++){
                el=ll_form.elements[i];
                if(el.type=="checkbox"&&el.name.indexOf("goalID")!=-1){
                        el.checked=state;
                }
        }
}





function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function menu_mouseclick(item)
        {
        var menu_item = MM_findObj('item_'+item);
        }

function menu_mouseover(item)
        {
        var color_over = '#FDDD78';

        var cell_1 = MM_findObj('item_'+item+'1');
        var cell_2 = MM_findObj('item_'+item+'2');
        var cell_3 = MM_findObj('item_'+item+'3');

        cell_1.style.background = color_over;
        cell_2.style.background = color_over;
        cell_3.style.background = color_over;
        }


function menu_mouseout(item)
        {
        var color_out = '#FFEBAD';

        var cell_1 = MM_findObj('item_'+item+'1');
        var cell_2 = MM_findObj('item_'+item+'2');
        var cell_3 = MM_findObj('item_'+item+'3');

        cell_1.style.background = color_out;
        cell_2.style.background = color_out;
        cell_3.style.background = color_out;
        }



function menu_btn_click (img, img_src)
                {
                var item = MM_findObj(img);
                item.src = img_src;
                }



function detect_position(elem, item, posAlignX, posAlignY)
{
        //posAlignX = 0 - left
        //posAlignX = 3 - down on 3 px
        //posAlignX +digit - left
        //posAlignX -digit - right
        //posAlignX +digit - down
        //posAlignX -digit - up
        if (!posAlignX) posAlignX = 0;
        if (!posAlignY) posAlignY = 3;

        var element = MM_findObj(elem);
        var x = element.offsetLeft;
        var y = element.offsetTop + element.offsetHeight;

        for(el=element.offsetParent; el!=null; el=el.offsetParent)
                {
                x += el.offsetLeft; y += el.offsetTop;
                }

        bodyWidth = document.body.offsetWidth;
        bodyWidth = document.body.clientWidth;
        while((x > 0) && (x > bodyWidth)) x--;

        var cell = MM_findObj(item);
        itemWidth = cell.offsetWidth;
        cell.style.left = (x + posAlignX) + 'px';
        cell.style.top = (y + posAlignY) + 'px';
}

function set_width_basic()
{
        var el_width = document.getElementById('tbl_basic');

        var tblWidth = el_width.offsetLeft + el_width.offsetWidth;
        var bodyWidth = document.body.offsetWidth;
        //alert (tblWidth+'_'+bodyWidth);
        if (bodyWidth > 1020)
                {
                el_width.style.width = 980;
                }
        else
                {
                el_width.style.width = '100%';
                }
}



//*** these two functions are for switching tabs
//#1
function goto_addidea_mode(prefix)
{
        var background = document.getElementById('add_idea_div');
        var imagemode = document.getElementById('image_mode');
        var title = document.getElementById('title_name');
        var input = document.getElementById('q');
        var btn = document.getElementById('add_idea_btn');
		var smalltxt = document.getElementById('add_idea_smalltxt');
        var tabs = document.getElementById('addidea_tabs');
		var hint = document.getElementById('add_idea_hint');

        document.form_iwantto.action = prefix+'add_goal.php';
        background.style.background = 'url(images/back_add_form.gif) no-repeat';
        imagemode.src = 'images/lightbulb_on_add.gif';
        title.innerHTML = '&nbsp;&nbsp;&nbsp;I want to';
        input.style.border = '1px solid #88CEF6';
        btn.src = 'images/add_idea_btn.gif';
		smalltxt.innerHTML = 'Complete the phrase like: be an actor&nbsp;&nbsp;<b><a href="add_life_list.php">Add many ideas</a></b>';
        tabs.style.background = 'url(images/tab_addidea.gif) no-repeat';
		hint.onmouseover=function(event){
		showhint('<strong>Tips for Adding Goals</strong><br>You need to be signed in so we know what list this goes on. <br>Format like: snorkel in Hawaii<br>When you click Add you’ll have options such as:<br>  - Indicating this was a past goal.<br> - Making your goal totally private.<br> - Prioritizing and making lists.', this, event, '150px');
		}
}

//#2
function goto_getidea_mode(prefix)
{
        var background = document.getElementById('add_idea_div');
        var imagemode = document.getElementById('image_mode');
        var title = document.getElementById('title_name');
        var input = document.getElementById('q');
        var btn = document.getElementById('add_idea_btn');
		var smalltxt = document.getElementById('add_idea_smalltxt');
        var tabs = document.getElementById('addidea_tabs');
		var hint = document.getElementById('add_idea_hint');

        document.form_iwantto.action = prefix+'search/';
        background.style.background = 'url(images/back_get_form.gif) no-repeat';
        imagemode.src = 'images/search.gif';
        title.innerHTML = "&nbsp;Idea Search";
        input.style.border = '1px solid #94C23E';
        btn.src = 'images/get_idea_btn.gif';
		smalltxt.innerHTML = 'Enter a keyword like: music or class';
        tabs.style.background = 'url(images/tab_getidea.gif) no-repeat';
		hint.onmouseover=function(event){
		showhint('<b>Tips for Finding Ideas</b><br>-Enter fewer words to see more ideas.<br>-Partial words will also match more (like &quot;hik&quot; instead of &quot;hike&quot; or &quot;hiking&quot;).<br><br>Send feedback or technical input to susie@superviva.com', this, event, '150px');
		}
}


function click_btn_addform(mode)
{
        var form = document.form_iwantto;
        var get_idea_mode=(form.action.indexOf('search/')!=-1);
        if (mode == 'down')
                {
                //alert (filename);
                if (get_idea_mode)
                        {menu_btn_click('add_idea_btn', 'images/get_idea_btn_click.gif');}
                else
                        {menu_btn_click('add_idea_btn', 'images/add_idea_btn_click.gif');}
                }
        if (mode == 'up')
                {
                if (get_idea_mode)
                        {menu_btn_click('add_idea_btn', 'images/get_idea_btn.gif');}
                else
                        {menu_btn_click('add_idea_btn', 'images/add_idea_btn.gif');}
                }
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}


function getexpirydate(nodays){
var UTCstring;
Today = new Date();
nomilli=Date.parse(Today);
Today.setTime(nomilli+nodays*24*60*60*1000);
UTCstring = Today.toUTCString();
return UTCstring;
}
function getcookie(cookiename) {
 var cookiestring=""+document.cookie;
 var index1=cookiestring.indexOf(cookiename);
 if (index1==-1 || cookiename=="") return ""; 
 var index2=cookiestring.indexOf(';',index1);
 if (index2==-1) index2=cookiestring.length; 
 return unescape(cookiestring.substring(index1+cookiename.length+1,index2));
}
function setcookie(name,value,duration){
cookiestring=name+"="+escape(value)+";EXPIRES="+getexpirydate(duration);
document.cookie=cookiestring;
if(!getcookie(name)){
return false;
}
else{
return true;
}
}


function getElementsByClassName(oElm, strTagName, strClassName){
    var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
    var arrReturnElements = new Array();
    strClassName = strClassName.replace(/\-/g, "\\-");
    var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
    var oElement;
    for(var i=0; i<arrElements.length; i++){
        oElement = arrElements[i];      
        if(oRegExp.test(oElement.className)){
            arrReturnElements.push(oElement);
        }   
    }
    return (arrReturnElements)
}

function show_class(className){
	objects=getElementsByClassName(document,"*",className);
	for(i=0;i<objects.length;i++){
		objects[i].style.visibility='visible';
	}
}
function hide_class(className){
	objects=getElementsByClassName(document,"*",className);
	for(i=0;i<objects.length;i++){
		objects[i].style.visibility='hidden';
	}
}



//making submission to iframe - my.goals.common

function get_html_code(){
	
	frm=MM_findObj('ll_form');
	
	frm.target="ifrm";
	action=frm.action;
	method=frm.method;	
	
	frm.method='GET';	
	frm.action='my.goals.common.ifrm.php';
	frm.submit();
	
	frm.action=action;
	frm.method=method;	
	frm.target='';
	
	show_object('mylist-html-code');
}