/*
  user made a menu selection
  m1=Our_Events&m2=Impact&m3=Media_Gallery
  m1=About_Us&m2=Our_Leaders&m3=Elders&m4=Duane_Fancher
*/

var m;
var hash;
var str;
var mCnt;
			
/* menu handler calls this */
function fnDDMenu (astr, ahash) {
	hash=ahash;
$.log("*fn fnDDMenu icc.js astr:"+astr,"hash:"+hash,{type:"info"}); /////////////////
  str=astr.replace(/_&amp;_/g, "_#_");
  str=str.replace(/'/g,"");
  str=str.replace(/ /g,"_");
    
  m=$.unserialize(str);
	var id=(m.m1+"-"+m.m2+"-"+m.m3+"-"+m.m4).replace(/-undefined/g,"");
	mCnt=id.split("-").length;
	
	if (id.length==3) {
	alert(id); //id+="-0";
	}

$.log("mCnt:"+mCnt+" menu2Chunk id:"+id+" str:"+str);

// main_menu		About_Us-Our_Leaders-Elders-Bruce_Bailey
// 		1  	- 			 2   -     2     -   2   x-   1
// id = 1-2-2-2-1

	var id=menu2Chunk(id,1);
	if (!id) {
		return "null id";
	}

    $.log("id:"+id);

		if (id.length<5) {
			id+="-0";
		}

	getChunk(id, "", postMenu);	//continue below
	return false;
}

/* ajax callback to plug results into DOM  */
function postMenu(rez) {
	rezMain= rez.chunk[0];
	rezRight=rez.chunk[1];

	var r="iNACTIve"; //rezMain.substr(0,50);
//	$.log("postMenu mCnt:"+mCnt+" rezMain=>"+r); /////////////////
	$.log(">icc.js->postMenu str:"+str+" id:"+rez.id+" rez-> m->", rez, m, {type:"war"}); /////////////////

  if (!hash) {
$.log("!hash false m1="+m.m1+" m2="+m.m2+" m3="+m.m3+" m4="+m.m4+"\n"+str, {type:"inf"});

    // put state into history
    if (m.m4) {
      $.bbq.pushState({ m1:m.m1, m2:m.m2, m3:m.m3, m4:m.m4 });
    } else if (m.m3) {
      $.bbq.pushState({ m1:m.m1, m2:m.m2, m3:m.m3 },2);
    } else if (m.m2) {
      $.bbq.pushState({ m1:m.m1, m2:m.m2 },2);
    } else  {
      $.bbq.pushState({ m1:m.m1 },2);
    }
    ddsmoothmenu.close({mainmenuid: "mainMenu"});
    return false;
  } else {
      $.log("hash true m1="+m.m1+" m2="+m.m2+" m3="+m.m3+" m4="+m.m4+"\nstr:"+str,{type:"inf"});
  }

    $.log("m ->",m);
	if (m.m1=="Home") {
		$("#rightjax").css("display","none");
		$("#mainjax").css("width","920px");
		setMain(rezMain,"");
	
		$("#slider").anythingSlider();
	
		jwplayer("vids").setup({
			flashplayer: "../~lib/jwplayer/player.swf",
			image: "img/fakevid.gif",
			file:"video/icc_intro.mp4", height: 248, width: 330
		});
//video/drumsolo.mp4
	} else {
		
		$("#mainjax").css("width","740px");
		$("#rightjax").css("display","block");
		
		switch (m.m1) {
			case "About_Us":
				setMain(rezMain, rezRight);

				if (m.m2=="Our_Leaders") {
                    sec=rez.id.split("-");
                    setTabs(sec[3]);
             /*
                    sec=rez.id.split("-");
					setTabs(sec[4]); // for accordion height calc

					sect=sec[3]-1;
					$("#accordion").accordion({ header: "h3",
						active: sect,
						autoheight: false
					})
					
//srch=$("#searchbox").val();
	
					theDiv=$("#mainjax>div").height();	//css("height");
					theAcc=$("#accordion").height();	//css("height");
	
	//				$("#accordion").css("height",newMain+"px");
	
					newMain=theAcc+148;
					theH=" theDiv:"+theDiv+" accord:"+theAcc+" newMain:"+newMain;
                    theH = " ";
					$(".subheading").html(theH);
					$("#main").css("height",newMain+"px");
					
//	theMain=$("#main").height();	//css("height");
//	theH=" div:"+theDiv;
*/
				}
			break;

            case "Resources":
                setMain(rezMain, rezRight);
                $.log("Resources setmain m2:"+m.m2+" m3:"+m.m3, {type:"warn"});
                if (m.m2=="Sermons" && m.m3=="Series") {
                    // set series drop-down
           //   alert("sura m4:"+m.m4);
                  $(".oStudiesinMatthewsGospel").attr("selected","selected"); //.trigger('change');
                  $("#oSeries").trigger("change");
                }
                break;

            case "Events":
                $.log("events setmain m2:"+m.m2);
                setMain(rezMain, rezRight);
                sec=rez.id.split("-");
                setTabs(sec[3]);
                break;


            default:
        $.log("default m2:"+m.m2);
				setMain(rezMain, rezRight);
			break;
		}
	}
  ddsmoothmenu.close({mainmenuid: "mainMenu"});

//bRightCol m1=Our_Events&m2=Reconnect /href:
	$("#rightjax a").click(function() {
		var c=$(this).siblings("h2").attr("rel");
		var t=$(this).text();
		if (t=="Visit our Sermon Library") {
			c="Media";
			t="Sermons";
		}
		var sLoc="m1="+c+"&m2="+t;
		fnDDMenu(sLoc, false); // false so bbq
		return false;
	});

//bRightCol m1=Our_Events&m2=Reconnect /href:
	$("#event_yrs a").click(function() {
		var cat=$(this).parent().attr("rel");
		var yr=$(this).text();
		var sLoc="m1=Events&m2="+cat+"&m3=Media_Gallery&m4="+yr;
//alert(sLoc);
		fnDDMenu(sLoc, false); // false so bbq
		return false;
	});

	$("#quick_links a").click(function() {
		var sLoc=$(this).attr("href");
$.log(sLoc);
		fnDDMenu(sLoc, true);
		return false;
	});

$.log("icc.js->postMenu hook up gallery");
    var gals=$(".gallery:first a[rel^='prettyPhoto']");
    $.log("gals->",gals);

			$(".gallery:first a[rel^='prettyPhoto']").prettyPhoto(
			{animationSpeed:'slow',theme:'light_square',slideshow:2000,
			autoplay_slideshow: false, social_tools:false, deeplinking: false
			});

  return false;
}

/* */
function setMain(rezMain, rezRight) {
//$.log("setMain rezMain-> ,rezRight->",rezMain,rezRight);

	$("#mainjax").html(rezMain);
	theDiv=$("#mainjax>div").height();	//css("height");
//	theMain=$("#main").height();	//css("height");
	theH=" div:"+theDiv;
	newMain=theDiv+12;
//$.log("newMain:"+newMain);
	$("#main").css("height",newMain+"px");
	theH+=" newMain:"+newMain;
	$("#tjLog").val(theH);
	$("#rightjax").html(rezRight);
//$.log("done setMain....theH:"+theH);
}

function trim12 (xstr) {
	var	str = xstr.replace(/^\s\s*/, ''),
		ws = /\s/,
		i = str.length;
	while (ws.test(str.charAt(--i)));
	return str.slice(0, i + 1);
}

/*
 main document.ready code
*/
var is_reg = 0;

  $(document).ready(function() {
$.log("icc.js 218 .ready");
      $(".log_reg").hide();
      $(".log_noreg").show();

/* vertmenu click events on li
    $("#vtLeaders .vtabs-tab-column li").live("click", function() {
      var h=$(this).find("a").attr("id");
$.log("vtLeaders:"+h,"err");

    emfour=$('#'+h).data("m4");
$.log("get emfour #"+h+" m4="+emfour);
      h=h.substr(1); // strip the t
  
    if (emfour) {
      $.bbq.pushState({ m1:m.m1, m2:m.m2, m3:h, m4:emfour });
      
    } else {
      $.bbq.pushState({ m1:m.m1, m2:m.m2, m3:h },2);      
    }

      return false;
    });

    
	vertmenu click events on li
    $("ul.tabs a").live("click", function() {
      tab=$(this).html().replace(/ /gi,"_");
      par=$(this).parents("div[id^=m]").attr("id");
      p=par.substr(0,2); 
      
$.log (tab+" *** "+par+" p="+p);

      switch (p) {
	case "m1": // home
          $.bbq.pushState({ m2:tab });
	break;

	case "m2":
          $.bbq.pushState({ m3:tab });
	break;
      
	case "m3":
	  pq="t"+par.substr(3);
$.log("***set m4: #"+pq+" m4="+tab);
	  $('#'+pq).data("m4",tab);
          $.bbq.pushState({ m4:tab });
	break;
      }
      tabOnly=1;
      return;
    
    });
*/
    /* helper code for modal pass+ */
		$(".modal_btns button").live("click", function(){
      txt=trim12($(this).text());
      o=$("form[id^=f_] input[name='flag']");
      if ( txt!="OK") {
        $(o).val(txt);  
      } else {
        $(o).val("");          
      }
    });

    /* log in codes */
    $("#btn_login").live("click", function() {

   //   doEmail();
   //   return false;



      sec=$(this).text();
      if (sec=="Log out") {
        window.location ="admin/inc/logouteic.php";
      } else {
        $("#login_back").show("slow");
        $("#log_in #txtUser").focus();
      }
      return false;
    });
  
    $("#bLogCancel").live("click", function() {
      $.log("bLogCancel");
        $("#login_back").hide("slow");
        $(".log_reg").hide();
        $(".log_noreg").show();
        is_reg = 0;
        return false;
    });
  
    $("#bLogin").live("click", function() {
$.log("bLogin-------");
      doLogin("iran","Enter your email and password.");
      return false;
    });
		
    $("#bLogRegister").live("click", function() {
      $.log("bLogRegister "+is_reg);
        if (is_reg==0) {
            $(".log_noreg").hide();
            $(".log_reg").show();
            $("#log_in #txtName").focus();
            is_reg=1;
        } else {
            doLogin("reg","Please complete all fields and click Register.");
        }
      return false;
    });

    $("#bLogForgot").live("click", function() {

      doLogin("forgot","Enter your email address and click 'Forgot' to get a new password sent to you.");
//      alert ("Your password has been emailed to the address above.");
      return false;
    });

    function doEmail() {
      msg="Send email<br><br>Message:<br><input id='email_input' value='msg'><br> ";
      $("#tjAlertMsg").html(msg);
      $("#btn_tjAlertE").trigger("click");
    }

      // send an email
    $("#y").live("click", function() {
      //alert($("#tjAlertE input").val());
      return;
    });


    /*   */
    function doLogin(flag, msg) {
        var name = $("#txtName").val();
        var user = $("#txtUser").val();
        var key = $("#txtWord").val();

        if (flag=="reg") {
          if (!user || !key || !name) {
            $("#tjAlertMsg").html(msg);
            $("#btn_tjAlertE").trigger("click");
            return false;
          }

          $(".log_reg").hide();
          $(".log_noreg").show();

          // TODO more security
          var shay = user + ":" + key + ":"+ name;
          is_reg = 0;
        } else {
          var shay = $.sha256hmac(user.toLowerCase(), "");
        }

      if (flag=="forgot" && !user) {
        $("#tjAlertMsg").html(msg);
        $("#btn_tjAlertE").trigger("click");
        return false;
      }

      $('#sha').html(shay); //
      var r5parms = "r5parms="+flag+":" + shay;
      $.log(r5parms);

      $.ajax({
        type: "POST",
        url: "site/cms_ajax.php",
        dataType: "json",
        data: r5parms
      })

          .error(function(data) {
            $.log("login error1:", data);
          })

          .success(function(data) {
            $.log("login call returned", data);

            if (data.status == "OK") {
                if (flag=="reg") {
                    // TODO more security
                    alert("Please check your email to activate this account.");
                } else {
                    var k2 = data.data;
                  $.log("k2:" + k2 + " key:" + key);
                  var shay1 = $.sha256hmac(key, "");
                  $.log("shay1:" + shay1);

                  var shay = $.sha256hmac(shay1, k2);
                  $.log("shay:" + shay);
                  var k0 = shay.substr(1, 1);

                  var r5parms = "r5parms=iraq:" + k0 + k2 + ":" + shay;
                  $.log(r5parms);

                  $.ajax({
                    type: "POST",
                    url: "site/cms_ajax.php",
                    dataType: "json",
                    data: r5parms
                  })
                      .error(function(data) {
                        $.log("login error2:", data);
                      })
                      .success(function(data) {
                        $.log("login 2 .success:", data);
                          // success means we got a result, not that the pwd is valid
                          if (data.status=="OK") {
                            window.location.reload();
                          }

                      })
                }
            } else {
              alert("Error: "+data.error);
            }

          });


//alert ("tjPass user="+sUser+" pass="+sPass);
      $.log("icc.js 397 ");
      // window.location='site/loginer.php?user='+sUser+'&word='+sPass+'&f='+flag; //+'&f='+m.flag;
      return;
    }


    $.log(".ready tabs 351");
    // setup ul.tabs to work as tabs for each div directly under div.panes
//    $("ul.tabs").tabs("div.panes > div");

//    $(window).trigger( 'hashchange' );
  $.log("exit 150 .ready");
});

/*
  process modals
*/
function tjModals (rez) {

$.log("rez:"+rez,"err");

    m=$.unserialize(rez);
    switch (m.id) {
      case "tjPass":
        
        sPass=hex_sha1(m.pwd);
$.log (m.flag);        
$.log("icc.js 348 tjPass log:"+m.login+" pass:"+m.pwd+" > "+sPass);
        window.location='site/loginer.php?user='+m.login+'&word='+sPass+'&f='+m.flag;
      break;

      break;
      
      default:
       $.log("other id:"+m.id+"\n"+rez);       
    }
  return false;
}

/* active tab (1 based) */
function setTabs(theTab) {
	if (!theTab) {
		theTab=1;
	}
	theTab=theTab-1; //force numeric and switch to 0-based for eq
	//Default Action
	$(".tab_content").hide(); //Hide all content
	$("ul.tabs li:eq("+theTab+")").addClass("active").show(); //Activate tab
	$(".tab_content:eq("+theTab+")").show(); //Show  tab content
	
	// click handler
	$("ul.tabs li").live("click", function() {
		$("ul.tabs li").removeClass("active"); //Remove any "active" class
		$(this).addClass("active"); //Add "active" class to selected tab
		$(".tab_content").hide(); //Hide all tab content
		var activeTab = $(this).find("a").attr("href"); //Find the rel attribute value to identify the active tab + content
		$(activeTab).show(); //Fade in the active content
		return false;
	});
}

/* jQuery Tools horizontal tabs
  pass menu, mx_parent, z 

function setTab (m,p,caller) {
  if (!caller) { caller="*70*"; }
  
   if (p.substr(2,1)=="_") {
    sPre=p.substr(0,3);
    p2=p.substr(3);
  }

/* scan menus for the tab menu
$.log("---->> setTab m:"+m+" p:"+p+" c:"+caller,"err");

  var tabNum=-1;
  var mx=m.replace(/_#_/gi,"_&amp;_");
  o=$("#mainMenu ul."+p2+" a");
  o.each(function (i) {
crud=$(this).html().replace(/ /gi,"_");
    if (mx==crud) {
      tabNum=i;
      return false;
    }
  });
  
$.log("tabNum="+tabNum);

  var o = $("#"+p+" ul.tabs");
$.log (o);
  var api = $(o).data("tabs");
	if (api) {
		 api.click(tabNum); // select tab		
	}
}
*/
