﻿function getZipCodes(obj) {
    PageMethods.getZipCodesPage(obj.value, onCompletegetZipCodes);
    $mlg.zipControl = obj;
}

function getSessionZip() {
    PageMethods.getSessionZipPage(onCompletegetSessionZip);
}

function onCompletegetSessionZip(arg) {
    if (arg.length == 5) {
        if ($get('session_zip')) {
            //$get('session_zip').innerHTML = "| ZIP: <b>" + arg + "</b> <a href=\"javascript:void(0)\" class=\"step_update_zip\" onclick=\"$mlg.updateZip()\"><span>Update</span></a>";
            //$get('session_zip').parentNode.style.paddingRight = '60px';
        }
        if ($get('divZip_autocomplete')) {
            $get('divZip_autocomplete').getElementsByTagName('input')[0].value = arg;
        }
    }
}

function getRandomResources(num) {
    PageMethods.getRandomResourcesPage(num, onCompletegetRandomResources);
}

function onCompletegetRandomResources(arg) {
    if ($get('didyouknow')) {
        $get('didyouknow').innerHTML = arg;
    }
}

function CloseCabinet() {
    if ($get('lightBoxContainer')) {
        $get('lightBoxContainer').innerHTML = '';
    }
}

function insertZipandFips(zip, fips, isExact) {
    $mlg.tr('ZIP', 'Insert_autocomplete', zip);
    $mlg.currentFips = fips;
    $mlg.currentZip = zip;
    PageMethods.insertZipandFipsPage(zip, fips, isExact, onCompleteinsertZipandFips);
    if ($mlg.zipControl != null) {
        $get($mlg.zipControl.id).value = zip;
    }
}
function onCompleteinsertZipandFips(arg) {
    switch (arg) {
        case "true":
            if ($get($mlg.zipControl.id + '_zipResult')) {
                $get($mlg.zipControl.id + '_zipResult').parentNode.removeChild($get($mlg.zipControl.id + '_zipResult'));
            }
            window.location = 'SearchDrug.aspx'
            break;
            
        case "false":
            break;
            
        default:

            $mlg.pageDimmer();
            $mlg.lightBox(arg, 300);
            var error = $get($mlg.zipControl.id + '_error_msg');
            if (error) {
                error.parentNode.removeChild(error);
            }
            break;
    }
}

function onCompletegetZipCodes(arg) {

    if (arg != '' && $mlg.zipControl && $mlg.zipControl.value != '') {
        if ($get($mlg.zipControl.id + '_zipResult')) {
            $get($mlg.zipControl.id + '_zipResult').style.display = '';
            $get($mlg.zipControl.id + '_zipResult').style.position = 'absolute';
            $get($mlg.zipControl.id + '_zipResult').style.marginLeft = '-5px';
            $get($mlg.zipControl.id + '_zipResult').innerHTML = "<div class=\"zip_dropdown\">" + arg + "</div>";
        }
        else {
            var zipResult = document.createElement('div');
            zipResult.setAttribute('class', 'zip_dropdown');
            zipResult.setAttribute('className', 'zip_dropdown');
            zipResult.id = $mlg.zipControl.id + '_zipResult';
            zipResult.innerHTML = "<div class=\"zip_dropdown\">" + arg + "</div>";
            zipResult.style.position = 'absolute';
            zipResult.style.marginLeft = '-5px';
            if ($mlg.isPageLoad) {
                zipResult.style.display = 'none';
            }
            $mlg.zipControl.parentNode.appendChild(zipResult);
            $mlg.globalClickEvents();
        }
    }
    else {
        if ($get($mlg.zipControl.id + '_zipResult')) {
            $get($mlg.zipControl.id + '_zipResult').parentNode.removeChild($get($mlg.zipControl.id + '_zipResult'));
        }
    }
}


function getDrugsAutoComplete(obj) {
    PageMethods.searchDrugsAutoComplete(obj.value, onCompleteDrugsAutoComplete);
    $mlg.drugControl = obj;
}

function onCompleteDrugsAutoComplete(arg) {
    if (arg != '' && $mlg.drugControl && $mlg.drugControl.value != '') {
        if ($get($mlg.drugControl.id + '_drugResult')) {
            $get($mlg.drugControl.id + '_drugResult').style.position = 'absolute';
            $get($mlg.drugControl.id + '_drugResult').style.marginLefty = '-5px';
            $get($mlg.drugControl.id + '_drugResult').innerHTML = "<div class=\"drug_dropdown\">" + arg + "</div>";
        }
        else {
            var drugResult = document.createElement('div');
            drugResult.setAttribute('class', 'drug_dropdown');
            drugResult.setAttribute('className', 'drug_dropdown');
            drugResult.id = $mlg.drugControl.id + '_drugResult';
            drugResult.style.position = 'absolute';
            drugResult.style.marginLefty = '-5px';
            drugResult.innerHTML = "<div class=\"drug_dropdown\">" + arg + "</div>";
            $mlg.drugControl.parentNode.appendChild(drugResult);
        }
    }
    else {
        if ($mlg.drugControl != null && $get($mlg.drugControl.id + '_drugResult')) {
            $get($mlg.drugControl.id + '_drugResult').parentNode.removeChild($get($mlg.drugControl.id + '_drugResult'));
        }
    }
    $mlg.globalClickEvents();
}

var drugName_toInsert = '';

function InsertMC(drugid, drugName) {
    drugName_toInsert = drugName;
    if ($get('medicineCabinet')) {
        var mclink = $get('medicineCabinet').getElementsByTagName('tr');
        if (mclink && mclink.length > (25 + 3)) {
            $get('added_prompt').innerHTML = '<div class=\"prompt_mc\">You can\'t insert more than 25 drugs into your Medicine Cabinet.</div>';
            setTimeout('clear_prompt()', 10000);
        }
        else {
            PageMethods.InsertMultiDrugstoMC(drugid, onCompleteInsertMC);
            $mlg.tr('Drug', 'Insert' , drugName)
        }
    }
    
}

function onCompleteInsertMC(arg) {
    if (arg != null && arg > 0) {
        if ($mlg.drugControl != null && $get($mlg.drugControl.id + '_drugResult')) {
            $get($mlg.drugControl.id + '_drugResult').parentNode.removeChild($get($mlg.drugControl.id + '_drugResult'));
        }
        GetMC();
    }
    $mlg.globalClickEvents();
}

function GetMC() {
    PageMethods.getMCDrugDsgList(onCompleteGetMC);
}

function DeleteDrugMC(dsgid, drugName) {
    drugName_toInsert = drugName;
    $mlg.pageDimmer();
    var sb = new Array();
    sb.push('<strong>Warning</strong><div><p>Are you sure you want to remove <b>' + drugName + '</b> from your Medicine Cabinet?</p>');
    sb.push('<div class=\"dsg_btn\"><input type=\"button\" onclick=\"RealRemoveDrugMc(' + dsgid + ', \'' + drugName + '\')\" value=\"Yes\" alt=\"Yes\"/> <input type=\"button\" onclick=\"$mlg.globalModalCloser()\" value=\" No \" alt=\"No\"/></div></div>');
    $mlg.lightBox(sb.join(""), 300);
}

function RealRemoveDrugMc(dsgid, drugName) {
    $mlg.tr('Drug', 'REMOVE', drugName);
    PageMethods.deleteMCDrug(dsgid, onCompleteDeleteMC);
    $mlg.globalModalCloser();
}

function onCompleteDeleteMC(arg) {
    if (arg != null && arg > 0) {
        GetMC();
    }
    if ($get('planDetail')) {
        window.location = window.location;
    }
    $mlg.globalClickEvents();
}

var mc_length = 0;

function clear_prompt() {
    $get('added_prompt').innerHTML = '';
}

function onCompleteGetMC(arg) {
    if (arg != null) {
        if ($get('added_prompt')) {
            if (mc_length != 0) {
                if (isDsgMod) {
                    $get('added_prompt').innerHTML = '<div class=\"prompt_mc\"><strong>' + drugName_toInsert + '</strong> dosage has been updated.</div>';
                }
                else {
                    if (mc_length > arg.length) {
                        if (drugName_toInsert != '') {
                            $get('added_prompt').innerHTML = '<div class=\"prompt_mc\"><strong>' + drugName_toInsert + '</strong> has now been removed from your Medicine Cabinet.</div>';
                        }
                    }
                    else if (mc_length < arg.length) {
                        if (drugName_toInsert != '') {
                            $get('added_prompt').innerHTML = '<div class=\"prompt_mc\"><strong>' + drugName_toInsert + '</strong> has now been added to your Medicine Cabinet.<br/>You may change the dosage by clicking the \"Dosage\" link.</div>';
                        }
                    }
                }

            }
            if ($get('added_prompt').innerHTML.length > 0) {
                setTimeout('clear_prompt()', 5000);
            }
            mc_length = arg.length;
        }
        $get("medicineCabinet").innerHTML = arg;
        isDsgMod = false;
    }
    if (!$get('drugsearchresult')) {
        if ($get("medicineCabinet").getElementsByTagName('p')[1]) {
            $get("medicineCabinet").getElementsByTagName('p')[1].style.display = 'none';
        }
        if ($get('alpha_search')) {
            if ($get("medicineCabinet").getElementsByTagName('p')[2]) {
                $get("medicineCabinet").getElementsByTagName('p')[2].style.display = 'none';
            }
        }
    }
    //$mlg.globalClickEvents();
}

function ShowDosage(dsgid, qty, packageid, packagesize, drugName) {
    $mlg.tr('Drug', 'UPDATE', drugName);
    drugName_toInsert = drugName;
    var arg = "<div id=\"divmedcabdosage\" style=\"display:none;\"><div id=\"divdosages\"></div><div id=\"divpackages\"></div></div>";
    $mlg.pageDimmer();
    $mlg.lightBox(arg, 420);
    PrevDosageID = dsgid;
    CurDosageID = dsgid;
    CurPackageID = packageid;
    if (packagesize == 0)
        packagesize = 1;
    CurPackageSize = packagesize;
    CurQty = qty / packagesize;
    PageMethods.GetAllDosages(dsgid, CurQty, onCompleteShowDosage);
}

function onCompleteShowDosage(arg) {
    $get("divdosages").innerHTML = arg;
    LoadPackages(CurDosageID, CurQty, CurPackageID);
    $mlg.globalClickEvents();
}

function LoadPackages(dsgid, qty, packageid) {
    PageMethods.getPackage(dsgid, qty, packageid, onCompleteLoadPackages);
}
function onCompleteLoadPackages(arg) {
    $get("divpackages").innerHTML = arg;
    $get("divmedcabdosage").style.display = "";
    $mlg.checkRadioLength('divdosages');
    $mlg.globalClickEvents();
}

function SearchDrugs(drugname, sort) {

    var sb = new Array();
    sb.push('<div class=\"search_header\">');
    sb.push('<div class=\"inner_gradient\">');
    sb.push('<div class=\"search_drug_result\"><strong>loading...</strong></div>');
    sb.push('<div class=\"preload\">&nbsp;</div>');
    sb.push('</div>');
    sb.push('</div>');
    $get("drugsearchresultclient").nextSibling.innerHTML = sb.join('');
    PageMethods.SearchDrugsPage(drugname, sort, onCompleteSearchDrug);
    
}

var pagingInt = 1;

function onCompleteSearchDrug(arg) {
    
    if (arg != null) {
        $get('drugsearchresult_container').getElementsByTagName('div')[0].innerHTML = arg;

        if ($mlg.drugControl != null && $get($mlg.drugControl.id + '_drugResult')) {
            $get($mlg.drugControl.id + '_drugResult').parentNode.removeChild($get($mlg.drugControl.id + '_drugResult'));
        }

        if ($get('drug_paging') != null) {
            pagingInt = 1;
            $mlg.createPaging(false, $get('drugsearchresult_container').getElementsByTagName('div')[0].id, DrugpagingRange, 'drug_paging');
            //$mlg.prototype.createPaging = function(showall, containerID, pagingRange) {
        }

    }
    $mlg.globalClickEvents();
}

function getFont() {
    PageMethods.getSessionFontPage(onCompletegetfont);
}

function onCompletegetfont(arg) {
    $get('pageWrapper').style.fontSize = arg + 'px';
    $get('pageWrapper').removeAttribute('className');
    $get('pageWrapper').removeAttribute('class');
}

function setFont(num) {
    PageMethods.setSessionFontPage(num, onCompletesetfont);
}

function onCompletesetfont() {
    getFont();
}

function sessionRequest() {
    PageMethods.sessionRequestPage(onCompletesessionRequest);
}

function onCompletesessionRequest(arg) {
    if (arg == "true" && !$mlg.redirect)
        return false;
    else
        window.location = 'Default.aspx';
}

function ApplyPlan(planid, plantype, planname) {
    $mlg.tr('Plan', 'Insert', planname + ' ' + plantype);
    PageMethods.ApplyPlan(planid, plantype, planname, onCompleteApplyPlan);
}

function onCompleteApplyPlan(arg) {
    if (arg == "true")
        window.location = 'oam.aspx';
    else
        window.location = arg;

}
function ApplyPlanMedigap(planid, premium,medicalcost, planname) {
    $mlg.tr('Plan', 'Insert', planname + ' ' + 'Medigap');
    PageMethods.ApplyMedigapPlan(planid, premium,medicalcost, planname, onCompleteApplyPlanMedigap);
}

function onCompleteApplyPlanMedigap(arg) {
    if (arg)
        window.location = arg;

}

function getSessionDemographics() {
    PageMethods.getSessionDemographics(false, onCompletegetSessionDemographics);
}

function onCompletegetSessionDemographics(arg) {
    if (arg) {
        window.location = 'PlanList.aspx';
    }
}