﻿var loaderenabled = true;

function autoSaveEntry() {
    //LoadAnim3();
    var journaltitle = document.getElementById('ctl00_ContentPlaceHolder1_JTitle').value;
    var journaltext = document.getElementById('ctl00_ContentPlaceHolder1_JEntryTxt').value;
    var acctid = document.getElementById('ctl00_ContentPlaceHolder1_acctuid').value;
    var journalpicture = document.getElementById('ctl00_ContentPlaceHolder1_JPIct').attributes['src'].value;
    var jnpictdesc = document.getElementById('ctl00_ContentPlaceHolder1_PictureDescription').value;
    var journaldate = document.getElementById('ctl00_ContentPlaceHolder1_SelectDate').value;

    if (journaltext != "No journal entry exists" && journaltext != "" && journaltitle != "") {
        PageMethods.SaveJournalEntry(journaldate, journaltitle, journaltext, journalpicture, jnpictdesc, acctid, PM4Succeded, PM4Failed);
    }

    return true;
}

function LoadAnim3() {
    resetimgsrc = document.getElementById('journalsave').attributes['src'].value;
    document.getElementById('journalsave').attributes['src'].value = "http://www.readthescriptures.com/images/loaders/timer.gif";
    postBackHiddenField('ctl00_ContentPlaceHolder1_HiddenFieldPostBack');
}

function PM4Succeded(result) {
    document.getElementById('journalsave').attributes['src'].value = resetimgsrc;
    postBackHiddenField('ctl00_ContentPlaceHolder1_HiddenFieldPostBack');
}

function PM4Failed(result) {
    document.getElementById('journalsave').attributes['src'].value = resetimgsrc;
    postBackHiddenField('ctl00_ContentPlaceHolder1_HiddenFieldPostBack');
}

//This function is used to call the partial page render on an Update panel
function postBackHiddenField(hiddenFieldID) {
    var hiddenField = $get(hiddenFieldID);
    if (hiddenField) {
        hiddenField.value = (new Date()).getTime();
        loaderenabled = false;
        __doPostBack(hiddenFieldID, '');
        loaderenabled = true;
    }
}

// -----------------------------------------------------------------------------

function textCounter(field, counter, maxlimit, linecounter) {
    // text width//
    try {
        var fieldWidth = parseInt(field.offsetWidth);
        var charcnt = field.value.length;

        // trim the extra text
        if (charcnt > maxlimit) {
            field.value = field.value.substring(0, maxlimit);
        } else {
            // progress bar percentage
            var percentage = parseInt(100 - ((maxlimit - charcnt) * 100) / maxlimit);
            document.getElementById(counter).style.width = parseInt((fieldWidth * percentage) / 100) + "px";
            document.getElementById(counter).innerHTML = percentage + "%"
            // color correction on style from CCFFF -> CC0000
            setcolor(document.getElementById(counter), percentage, "background-color");
        }
    } catch (error) { }
}

function setcolor(obj, percentage, prop) {
    obj.style[prop] = "rgb(80%," + (100 - percentage) + "%," + (100 - percentage) + "%)";
}

var enablepersist = "off"; //Enable saving state of content structure using session cookies? (on/off)
var collapseprevious = "yes"; //Collapse previously open content when opening present? (yes/no)

function getElementbyClass(classname) {
    ccollect = new Array();
    var inc = 0;
    var alltags = document.all ? document.all : document.getElementsByTagName("*");
    for (i = 0; i < alltags.length; i++) {
        if (alltags[i].className == classname) {
            ccollect[inc++] = alltags[i];
        }
    }
}

function contractcontent(omit) {
    var inc = 0;
    while (ccollect[inc]) {
        if (ccollect[inc].id != omit) {
            ccollect[inc].style.display = "none";
        }
        inc++;
    }
}

function expandcontent(cid) {
    
    if (typeof ccollect != "undefined") {
        if (collapseprevious == "yes") {
            contractcontent(cid);
        }
        var clickelem = $get(cid);
        clickelem.style.display = (clickelem.style.display != "block") ? "block" : "none";
        var noteelem = $get(cid.replace("nt", "2note_"));
        noteelem.style.display = "none";
        vpaneldisplay = true;
    }
}

var vpaneldisplay = false;
var currentvid;

function hidevpanel() {
    vpaneldisplay = false;
    getElementbyClass("vsubmenu");
    contractcontent();
}

function revivecontent() {
    contractcontent("omitnothing")
    selectedItem = getselectedItem()
    selectedComponents = selectedItem.split("|")
    for (i = 0; i < selectedComponents.length - 1; i++)
        document.getElementById(selectedComponents[i]).style.display = "block"
}

function getselectedItem() {
    if (get_cookie(window.location.pathname) != "") {
        selectedItem = get_cookie(window.location.pathname);
        return selectedItem;
    }
    else {
        return "";
    }
}

function get_cookie(Name) {
    var search = Name + "="
    var returnvalue = "";
    if (document.cookie.length > 0) {
        offset = document.cookie.indexOf(search)
        if (offset != -1) {
            offset += search.length
            end = document.cookie.indexOf(";", offset);
            if (end == -1) end = document.cookie.length;
            returnvalue = unescape(document.cookie.substring(offset, end))
        }
    }
    return returnvalue;
}

function saveswitchstate() {
    var inc = 0, selectedItem = "";
    while (ccollect[inc]) {
        if (ccollect[inc].style.display == "block") {
            selectedItem += ccollect[inc].id + "|";
        }
        inc++;
    }
    document.cookie = window.location.pathname + "=" + selectedItem
}

function do_onload() {
    uniqueidn = window.location.pathname + "firsttimeload";
    getElementbyClass("switchcontent");

    if (enablepersist == "on" && typeof ccollect != "undefined") {
        document.cookie = (get_cookie(uniqueidn) == "") ? uniqueidn + "=1" : uniqueidn + "=0";
        firsttimeload = (get_cookie(uniqueidn) == 1) ? 1 : 0; //check if this is 1st page load
        if (!firsttimeload) {
            revivecontent();
        }
    }
}

if (window.addEventListener)
    window.addEventListener("load", do_onload, false);
else if (window.attachEvent)
    window.attachEvent("onload", do_onload);
else if (document.getElementById)
    window.onload = do_onload;

if (enablepersist == "on" && document.getElementById) {
    window.onunload = saveswitchstate;
}

function changeImages() {
    if (document.images && !selectionmade) {
        for (var i = 0; i < changeImages.arguments.length; i += 2) {
            document.getElementById(changeImages.arguments[i]).src = changeImages.arguments[i + 1];
        }
    }
}

function changeClass(elem) {
    getElementbyClass("picborderselect");
    var inc = 0;
    while (ccollect[inc]) {
        ccollect[inc].className = "picborder";
        inc++;
    }
    document.getElementById(elem).className = "picborderselect";
}


// Detect Client Browser type
var isIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
// JavaScript helper required to detect Flash Player PlugIn version information
function JSGetSwfVer(i){
	// NS/Opera version >= 3 check for Flash plugin in plugin array
	var flashVer = -1;
	if (navigator.plugins != null && navigator.plugins.length > 0) {
		if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
			var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
      		var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
			var descArray = flashDescription.split(" ");
			var tempArrayMajor = descArray[2].split(".");
			var versionMajor = tempArrayMajor[0];
			var versionMinor = tempArrayMajor[1];
			if ( descArray[3] != "" ) {
				tempArrayMinor = descArray[3].split("r");
			} else {
				tempArrayMinor = descArray[4].split("r");
			}
      		var versionRevision = tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;
            flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
      	}
	}
	// MSN/WebTV 2.6 supports Flash 4
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
	// WebTV 2.5 supports Flash 3
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
	// older WebTV supports Flash 2
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
	return flashVer;
}
// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)
{
 	reqVer = parseFloat(reqMajorVer + "." + reqRevision);
   	// loop backwards through the versions until we find the newest version
	for (i=25;i>0;i--) {
		if (isIE && isWin && !isOpera) {
			versionStr = VBGetSwfVer(i);
		} else {
			versionStr = JSGetSwfVer(i);
		}
		if (versionStr == -1 ) {
			return false;
		} else if (versionStr != 0) {
			if(isIE && isWin && !isOpera) {
				tempArray         = versionStr.split(" ");
				tempString        = tempArray[1];
				versionArray      = tempString .split(",");
			} else {
				versionArray      = versionStr.split(".");
			}
			var versionMajor      = versionArray[0];
			var versionMinor      = versionArray[1];
			var versionRevision   = versionArray[2];
			var versionString     = versionMajor + "." + versionRevision;   // 7.0r24 == 7.24
			var versionNum        = parseFloat(versionString);
        	// is the major.revision >= requested major.revision AND the minor version >= requested minor
			if (versionMajor > reqMajorVer) {
				return true;
			} else if (versionMajor == reqMajorVer) {
				if (versionMinor > reqMinorVer)
					return true;
				else if (versionMinor == reqMinorVer) {
					if (versionRevision >= reqRevision)
						return true;
				}
			}
			return false;
		}
	}
}

//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
AC_FL_RunContent = 0; 
var requiredMajorVersion = 8;
var requiredMinorVersion = 0;
var requiredRevision = 0;

function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) { 

  var str = '<object ';
    for (var i in objAttrs) {
        str += i + '="' + objAttrs[i] + '" ';
    }
    str += '>';
    for (var j in params) {
        str += '<param name="' + j + '" value="' + params[j] + '" /> ';
    }
    str += '<embed ';
    for (var k in embedAttrs) {
        str += k + '="' + embedAttrs[k] + '" ';
    }
    str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
