﻿function handShake(id)
{
window.alert("getLog"+id);
}
    function UpdateUser(UserId, Name,Surname,Email,UserType,Active,Roles){
        var JSUsers=JS.Page.Users;
        $get("manageTitle").innerHTML=AdminMessages["EDITUSER"];
        JSUsers.getElementById("hUId").value=UserId;
        JSUsers.getElementById("Name").value=Name;
        JSUsers.getElementById("Surname").value=Surname;
        JSUsers.getElementById("Name").disabled=true;
        JSUsers.getElementById("Surname").disabled=true;
        JSUsers.getElementById("Email").value=Email;
        JSUsers.getElementById("UserType").value=UserType;
        JSUsers.getElementById("Active").checked = Active;
        if(JSUsers.getElementById("Roles"))JSUsers.getElementById("Roles").value = Roles;
        RoleChanged();
        //JSUsers.getElementById("cmdOk").value=AdminMessages["Save"];
        document.getElementById("acmdOK").innerHTML='<img src="/static/images/blank.gif" height="26" width="85" border="0" class="saveButtonLarge"/>';
    }
    function ResetUserForm(){
        var JSUsers=JS.Page.Users;
        $get("manageTitle").innerHTML=AdminMessages["ADDUSER"];
        JSUsers.getElementById("hUId").value="-1";
        JSUsers.getElementById("Name").value="";
        JSUsers.getElementById("Surname").value="";
        JSUsers.getElementById("Name").disabled=false;
        JSUsers.getElementById("Surname").disabled=false;
        JSUsers.getElementById("Email").value="";
        JSUsers.getElementById("UserType").options[0].selected=true;
        JSUsers.getElementById("Active").checked = true;
        if (JSUsers.getElementById("Roles")) JSUsers.getElementById("Roles").value = "";
        //JSUsers.getElementById("cmdOk").value=AdminMessages["Add"];
        document.getElementById("acmdOK").innerHTML = '<img src="/static/images/blank.gif" height="26" width="85" border="0" class="addButton"/>';
        RoleChanged();
    }
    function loadUserCompanies(userId,userName,obj) {
        JS.Page.GetUserCompanies(UserCompaniesOnLoad, { obj: obj, userId: userId, userName:userName }, userId);
    }
    function UserCompaniesOnLoad(ret, ctx) {
        $get("userCompanies_userId").value = ctx.userId;
        $get("userCompanies_title").innerHTML = ctx.userName;

        var list = $get("userCompanies").getElementsByTagName("INPUT");
        for (var i = 0; i < list.length; i++)
            list[i].checked = false;
        for(var j=0;j<ret.length;j++)
            for (var i = 0; i < list.length; i++)
                if (ret[j] == list[i].value) list[i].checked = true;
                if ($get("userCompanies").style.top == "50%") {
                    $get("userCompanies").style.top = ($get("userCompanies").offsetTop - Math.floor($get("userCompanies").offsetHeight / 2)) + "px";
                    if ($get("userCompanies").offsetTop < 0) $get("userCompanies").style.top = "10px";
                    if (document.body.clientWidth)
                        $get("userCompanies").style.left = (Math.floor((document.body.clientWidth - $get("userCompanies").offsetWidth) / 2)) + "px";
                    else
                        $get("userCompanies").style.left = ($get("userCompanies").offsetLeft - Math.floor($get("userCompanies").offsetWidth / 2)) + "px";
                    $get("userCompanies_header").width = $get("userCompanies").offsetWidth + "px";
                    var closeA = $get("userCompanies_header").getElementsByTagName("A")[0];
                    closeA.style.left = ($get("userCompanies").offsetWidth - closeA.offsetWidth - 5) + "px";
                }        
        $get("userCompanies").style.visibility = "visible";
        document.body.onclick = closeUserCompanies;
    }
    //var userCompanies = [];
    function closeUserCompanies() {
        $get("userCompanies").style.visibility = "hidden";
        document.body.onclick = null;
    }
    function writeUserCompanies(userCompanies,currentCompanyId,systemCompanyId) {
        for(var i=0;i<userCompanies.length-1;i++)
            if (userCompanies[i].Id == currentCompanyId || userCompanies[i].Id == systemCompanyId)
                userCompanies.splice(i--, 1);
        userCompanies.length = userCompanies.length-1;
        userCompanies.sort(function(val1,val2){return val1.Name.toLowerCase()>val2.Name.toLowerCase()?1:val1.Name.toLowerCase()<val2.Name.toLowerCase()?-1:0;});
        var userCompaniesColSize=-1;
        if(userCompanies.length<=40)
            userCompaniesColSize=20;
        else 
            userCompaniesColSize=Math.ceil(userCompanies.length/3);

        var colInd = -1;
        for (var i = 0; i < userCompanies.length; i++){
            if(colInd++==userCompaniesColSize){
                colInd=0;
                document.write('</div>');
                document.write('<div style="float:left;border-left:1px dashed #004299;padding-left:5px;padding-right:5px">');
            }
            document.write('<div style="border-bottom:1px solid #004299"><input type="checkbox" id="c' + userCompanies[i].Id + '" value="' + userCompanies[i].Id + '" />&nbsp;<label for="c' + userCompanies[i].Id + '">' + userCompanies[i].Name + '</label></div>');
        }    
    }
    function saveUserCompanies() {
        var list = $get("userCompanies").getElementsByTagName("INPUT");
        var companies="";
        for (var i = 0; i < list.length; i++)
            if (list[i].checked) companies += (companies.length > 0 ? "," : "") + list[i].value;
        JS.Page.UpdateUserCompanies(closeUserCompanies, null, eval($get("userCompanies_userId").value), companies);
    }
    function Users_Onload(){
        var JSUsers=JS.Page.Users;
        var UserId=JSUsers.getElementById("hUId").value;
        if(UserId!="-1" && UserId!=""){
            $get("manageTitle").innerHTML=AdminMessages["EDITUSER"];
            JSUsers.getElementById("Name").disabled=true;
            JSUsers.getElementById("Surname").disabled=true;
            //JSUsers.getElementById("cmdOk").value=AdminMessages["Save"];
            document.getElementById("acmdOK").innerHTML = AdminMessages["Save"];
        } else
            RoleChanged();
        DelUserId=-1;
        CreateCheckForm($get(JSUsers.ObjectId));
    }
    function Reset_Onload(ret){
        alert(ret);
    }
    var DelUserId=-1;
    function DeleteUser(UserId, UserType){
        if(window.confirm(AdminMessages["DELETEUSER?"])){
            if(UserType==90)
                delUser(UserId);
            else{
                DelUserId=UserId;
                $get("UserDeleteDiv").style.visibility="visible";
                $get("modalback").style.visibility="visible";
            }
        }
    }
    function CancelDeleteUser(){
            $get("UserDeleteDiv").style.visibility="hidden";
            $get("modalback").style.visibility="hidden";
            JS.Page.Users.getElementById("AltUsers").value="";
            DelUserId=-1;
    }
    function RoleChanged(obj) {
        if (!$get('RolesUGC')) return;
        if (obj) {
            var ugcOK = $get('RolesUGC').checked;
            var mmOK = $get('RolesMM').checked;
            if (!$get('RolesUGC').checked && !$get('RolesAdmin').checked && !$get('RolesMM').checked) {
                $get('RolesAdmin').checked = obj.id != 'RolesAdmin';
                $get('RolesUGC').checked = ugcOK= obj.id == 'RolesAdmin';
            }
            JS.Page.Users.getElementById('UserType').value = $get('RolesAdmin').checked ? 90 : 10;
            JS.Page.Users.getElementById('Roles').value = (ugcOK ? 'UGCEditor' : "") + (ugcOK&&mmOK?",":"") + (mmOK? 'MediaManager' : "");
        } else {
            $get('RolesAdmin').checked = JS.Page.Users.getElementById('UserType').value == "90";
            $get('RolesUGC').checked = JS.Page.Users.getElementById('Roles').value.indexOf('UGCEditor') > -1;
            $get('RolesMM').checked = JS.Page.Users.getElementById('Roles').value.indexOf('MediaManager') > -1;
        }
    } 
    function UpdateChannel(ChannelId, Title){
        var JSChannels=JS.Page.Channels;
        $get("manageTitle").innerHTML=AdminMessages["EDITCHANNEL"];
        JSChannels.getElementById("hCId").value=ChannelId;
        JSChannels.getElementById("Title").value=Title;
        JSChannels.getElementById("cmdOk").value=AdminMessages["Save"].toUpperCase();
    }
    function ResetChannelForm(){
        var JSChannels=JS.Page.Channels;
        $get("manageTitle").innerHTML=AdminMessages["ADDCHANNEL"];
        JSChannels.getElementById("hCId").value="-1";
        JSChannels.getElementById("Title").value="";
        JSChannels.getElementById("cmdOk").value=AdminMessages["Add"].toUpperCase();
    }

    function ResetAllRecommended(){
        return window.confirm(AdminMessages["CHANGERECOMMENDED?"]);
        
    
    }

    function Channels_Onload(){
        var JSChannels=JS.Page.Channels;
        var ChannelId=JSChannels.getElementById("hCId").value;
        if(ChannelId!="-1" && ChannelId!=""){
            $get("manageTitle").innerHTML=AdminMessages["EDITCHANNEL"];
            JSChannels.getElementById("cmdOk").value=AdminMessages["Save"].toUpperCase();
        }
        CreateCheckForm($get(JSChannels.ObjectId));
    }
    function DeleteChannel(channelid){
        if(window.confirm(AdminMessages["DELETECHANNEL?"])) 
            delChannel(channelid);
    }

    function UpdateCategory(CatId, Title){
        var JSCats=JS.Page.Categories;
        $get("manageTitle").innerHTML=AdminMessages["EDITCATEGORY"];
        JSCats.getElementById("hCId").value=CatId;
        JSCats.getElementById("Title").value=Title;
        JSCats.getElementById("cmdOk").value=AdminMessages["Save"].toUpperCase();
    }
    
    
    function ResetCategoryForm(){
        var JSCats=JS.Page.Categories;
        $get("manageTitle").innerHTML=AdminMessages["ADDCATEGORY"];
        JSCats.getElementById("hCId").value="-1";
        JSCats.getElementById("Title").value="";
        JSCats.getElementById("cmdOk").value=AdminMessages["Add"].toUpperCase();
    }    


    function Categories_Onload(){
        var JSCats=JS.Page.Categories;
        var CatId=JSCats.getElementById("hCId").value;
        if(CatId!="-1" && CatId!=""){
            $get("manageTitle").innerHTML=AdminMessages["EDITCATEGORY"];
            JSChannels.getElementById("cmdOk").value=AdminMessages["Save"].toUpperCase();
        }
        CreateCheckForm($get(JSCats.ObjectId));
    }
    function DeleteCategory(catid){
        if(window.confirm(AdminMessages["DELETECATEGORY?"])) 
            delCategory(catid);
    }
    
    function ReorganizeCategories(){
        var cats=JS.Page.FEdit.getElementById("categories");
        var catDiv=$get("categories_alt");
        if(!catDiv || !cats) return;
        var catHtml="";
        for(var i=0;i<cats.options.length;i++){
           catHtml += '<input type="checkbox" id="cat' + i + '" onclick="SetCategory(' + i + ',this)" ' + (cats.options[i].selected?'checked':'')  + ' /><label for="cat' + i + '" class="label">' + cats.options[i].text + '</label><BR />';
        }
        catDiv.innerHTML=catHtml;
    }
    function SetCategory(catInd, obj){
        JS.Page.FEdit.getElementById("categories").options[catInd].selected=!JS.Page.FEdit.getElementById("categories").options[catInd].selected;
    }
    function GetCurrentRow(){
        var currentRowObj=JS.Page.VList.getElementById("hCurrentRow");
        return  currentRowObj?currentRowObj.value:"1";
    }
    function PublishVideo(VideoId){
       if(window.confirm(AdminMessages["PUBLISH?"]))
            JS.Page.VList.SetStatus(VideoStatus_OnLoad, {VideoId:VideoId}, VideoId, 30, true, GetCurrentRow());
    }
    function UnpublishVideo(VideoId){
       if(window.confirm(AdminMessages["UNPUBLISH?"]))
            JS.Page.VList.SetStatus(VideoStatus_OnLoad, {VideoId:VideoId}, VideoId, 10, true, GetCurrentRow());
   }

    
    function VideoStatus_OnLoad(ret,ctx){
        if(ret!="" || ret !="NO"){
            JS.Page.VList.GetRenderTarget().innerHTML=ret;
            window.setTimeout("if(document.getElementById('vid_" + ctx.VideoId + "'))document.getElementById('vid_" + ctx.VideoId + "').onclick();else ShowPreview('" + ctx.VideoId + "')", 30);
        }
    }
    function DeleteVideo(videoId){
        if(window.confirm(AdminMessages["DELETEVIDEO?"]))
            JS.Page.VList.Delete(DeleteVideo_OnLoad,null,videoId,true, GetCurrentRow());
    }
    function DeleteVideo_OnLoad(ret,ctx){
        if(ret.charAt(0)=="N" && ret.charAt(1)=="O"){
            alert(AdminMessages["NODELETE"]);
            ret=ret.substr(2);
        }
        JS.Page.VList.GetRenderTarget().innerHTML=ret;               
    }
    function RefreshPageForLogin(){
        document.location.href=document.location.href;
    }
    var ctrlPrefix=null;
    function ChangeUploadMode(chk){
        if(chk==null){
            chk=$get(ctrlPrefix + '_InterfaceCtl_Upload');
            if(!chk.checked)
                chk=$get(ctrlPrefix + '_InterfaceCtl_YouTube');
        }
        if(!chk.checked) return;
        $get("fileCnt").style.display=chk.value=="1"?"none":"block";
        $get("textCnt").style.display=!(chk.value=="1")?"none":"block";
    }

function SourceType_Load(ret,ctx){
    document.getElementById("SourceType_Container").innerHTML=ret;
    if(ctx.type=='F')
       ChangeUploadMode(ctx.obj);
}
function GetSourceType(Obj,Type){
    JS.Page.FEdit.GetFileSource(SourceType_Load,{obj:Obj,type:Type},Type);
}
NoReceiveMails = {
    Container: "noReceiveMailsDiv",
    Template: "<input type='checkbox' id='NRM_{0}' value='{0}' title='{1}' /> <label for='NRM_{0}' title='{1}'>{0}</label><br />",
    UserId: -1,
    UserName: null,
    IsInitialized: false,
    Init: function() {
        if (NoReceiveMails.IsInitialized) return;
        var div = $get(NoReceiveMails.Container);
        var div_body = $get(NoReceiveMails.Container + "_body");
        var emails = JS.Page.Users.getElementById("eMails");
        if (div_body && emails) {
            var html = "";
            for (var i = 0; i < emails.options.length; i++) {
                html += String.Format(NoReceiveMails.Template, emails.options[i].value, emails.options[i].text);
            }
            div_body.innerHTML = html;
        }
        if (div.style.top == "50%") {
            div.style.top = (div.offsetTop - Math.floor(div.offsetHeight / 2)) + "px";
            div.style.left = (div.offsetLeft - Math.floor(div.offsetWidth / 2)) + "px";
            $get(NoReceiveMails.Container + "_header").width = div.offsetWidth + "px";
            var closeA = $get(NoReceiveMails.Container + "_header").getElementsByTagName("A")[0];
            closeA.style.left = (div.offsetWidth - closeA.offsetWidth - 5) + "px";
        }
        NoReceiveMails.IsInitialized = true;
    },
    Load: function(userId, userName) {
        NoReceiveMails.Init();
        NoReceiveMails.UserId = userId;
        NoReceiveMails.UserName = userName;

        JS.Page.Users.GetNoReceiveMails(NoReceiveMails.Show, userId, userId);
    },
    Show: function(ret, ctx) {
        if (NoReceiveMails.UserId != ctx) return;
        var div = $get(NoReceiveMails.Container);
        $get(NoReceiveMails.Container + "_title").innerHTML = NoReceiveMails.UserName;
        var inputs = div.getElementsByTagName("INPUT");
        for (var i = 0; i < inputs.length; i++) {
            if (inputs[i].type == "checkbox") inputs[i].checked = ret == null || ret.indexOf(inputs[i].value + ";") == -1;
        }
        div.style.visibility = "visible";
    },
    Save: function() {
        var div = $get(NoReceiveMails.Container);
        var inputs = div.getElementsByTagName("INPUT");
        var noReceiveMailIds = "";
        for (var i = 0; i < inputs.length; i++) {
            if (inputs[i].type == "checkbox" && !inputs[i].checked) noReceiveMailIds += inputs[i].value + ";";
        }
        JS.Page.Users.UpdateNoReceiveMails(NoReceiveMails.Hide, null, NoReceiveMails.UserId, noReceiveMailIds);
    },
    Hide: function() {
        NoReceiveMails.UserId = -1;
        $get(NoReceiveMails.Container).style.visibility = "hidden";
    }
};
onLoadObj[onLoadObj.length] = "if(JS.ErrorHandlers)JS.ErrorHandlers.LOGIN=RefreshPageForLogin;";
