﻿var ItemsControl = null;
//var z_combo_MusicCategory = null;
var z_combo_User = null;
var dcl1;
var dcl2;

function _initItems()
{   
   ItemsControl = new ItemsController(Items.GET_ALL_FOR_USER,"1",Items.HOST_LIST);
}

/* Show or Hide control Items: List, Detail, Edit */
function ShowItemsManage()
{
    deleteAllControlsContent();
    hideControl(getControlById(Items.HOST_LIST));
    hideControl(getControlById(Items.HOST_DETAIL));
    hideControl(getControlById(Items.HOST_EDIT));
    hideControl(getControlById(Items.HOST_MANAGE_EXPIREDITEMS));
    showControl(getControlById(Items.HOST_MANAGE));
    //SetSelectedValueOfDropdownlist('sltApproval','Tất cả');
}
function ShowExpiredItemsManage()
{
    deleteAllControlsContent();
    hideControl(getControlById(Items.HOST_MANAGE));
    hideControl(getControlById(Items.HOST_LIST));
    hideControl(getControlById(Items.HOST_DETAIL));
    hideControl(getControlById(Items.HOST_EDIT));
    showControl(getControlById(Items.HOST_MANAGE_EXPIREDITEMS));
    //SetSelectedValueOfDropdownlist('sltApproval','Tất cả');
}
function ShowItemsList()
{
    deleteAllControlsContent();
    hideControl(getControlById(Items.HOST_MANAGE));    
    hideControl(getControlById(Items.HOST_DETAIL));
    hideControl(getControlById(Items.HOST_EDIT));
    hideControl(getControlById(Items.HOST_MANAGE_EXPIREDITEMS));
    showControl(getControlById(Items.HOST_LIST));
}
function ShowItemsEdit()
{
    deleteAllControlsContent();
    hideControl(getControlById(Items.HOST_MANAGE));
    hideControl(getControlById(Items.HOST_LIST));
    hideControl(getControlById(Items.HOST_DETAIL));
    hideControl(getControlById(Items.HOST_MANAGE_EXPIREDITEMS));
    showControl(getControlById(Items.HOST_EDIT));

    showControl(getControlById("div_UploadItems"));
    getControlById("divFileProgressContainer").innerHTML = "";
}
function ShowItemsDetail()
{
    deleteAllControlsContent();
    hideControl(getControlById(Items.HOST_MANAGE));
    hideControl(getControlById(Items.HOST_LIST));
    hideControl(getControlById(Items.HOST_EDIT));
    hideControl(getControlById(Items.HOST_MANAGE_EXPIREDITEMS));
    hideControl(getControlById("div_UploadItems"));
    getControlById("divFileProgressContainer").innerHTML = "";
    showControl(getControlById(Items.HOST_DETAIL));
}
function ShowFormForSendingItem()
{
    if(ItemsControl==null) _initItems();

    ItemsControl.state = Items.ADD_NEW;
    ItemsControl.ItemsId = null;
    ItemsControl.ItemsObj = {};

    ShowFormForUploading();
}

function ShowFormForUploading()
{
    deleteAllControlsContent();
    hideControl(getControlById(Items.HOST_MANAGE));
    hideControl(getControlById(Items.HOST_LIST));
    hideControl(getControlById(Items.HOST_DETAIL));
    showControl(getControlById(Items.HOST_EDIT));
    InitializeControlForUploading();

    SetDataForComboMusicCategory(0);
    requireFlash('div_UploadItems',8);
    ShowFormUsage();
}
function InitializeControlForUploading()
{
    showControl(getControlById("divAddNewItems"));
    getControlById("divFileProgressContainer").innerHTML = "";
    showControl(getControlById("hHeader"));
    showControl(getControlById("divInstruction"));
    showControl(getControlById("errorsummary"));
    showControl(getControlById("pFilepath"));
    showControl(getControlById("pImagepath"));
    showControl(getControlById("pImgGallery"));
    showControl(getControlById("pUploadButton1"));
    hideControl(getControlById("pUploadButton2"));
    showControl(getControlById("pAvailableExtention"));
    showControl(getControlById("pQualityHeader"));
    showControl(getControlById("pQualityChoice"));
    showControl(getControlById("pQualityInstruction"));
//    getControlById("btnUpload").style.visibility = "visible";
//    getControlById("btnCancel").style.visibility = "visible";
//    getControlById("btnSave").style.visibility = "hidden";
//    getControlById("div_Goback").style.visibility = "hidden";

    getControlById("hHeader").innerHTML = "Gửi tác phẩm";
    getControlById("btnUpload").value = "Gửi tác phẩm";
    getControlById("txtFileName").value = "";
    getControlById("txtFileNameImage").value = "";
    getControlById("nameofitem").value = "";
    getControlById("lyriccreatedbyuser").value = "";
    getControlById("txtBand").value = "";
    getControlById("txtbandmembers").value = "";
    //getControlById("tags").value = "";
    getControlById("lyrics").value = "";
    getControlById("txtDescription").value = "";

}
/* ------------------End --------------------- */
function GetItemsForUser()
{    
    ItemsControl.state = Items.GET_ALL_FOR_USER;
    ItemsControl.perFormAction();
}

function DeleteItem(id) {
    if (confirm("Bạn chắc chắn muốn xóa tác phẩm này ?")) {
        ItemsControl.ItemsId = id;
        ItemsControl.state = Items.DEL;
        ItemsControl.perFormAction();
    }
}

function GetItemsForApproval() {
    ItemsControl.state = Items.GET_ALL_ITEMS_FOR_APPROVAL;
    ItemsControl.perFormAction();
}

function GetAllExpiredItems()
{
    ItemsControl.state = Items.GET_ALL_EXPIRED_ITEMS;
    ItemsControl.perFormAction();
}

function AddNewItems()
{
    if(ItemsControl==null) _initItems();
    ItemsControl.ItemsObj = GetDataItemsObjFromFormEdit({});
    AddItems();
}

function AddNewItemsForGalery()
{
    if(ItemsControl==null) _initItems();
    ItemsControl.ItemsObj = GetDataItemsObjFromFormEdit({});
    ItemsControl.ItemsObj.Galery = true;
    AddItems();
}

function UpdateItem()
{
    if(ItemsControl==null) _initItems();
    if(validateForUpdate()) {
        ItemsControl.ItemsObj = GetDataItemsObjFromFormEdit(ItemsControl.ItemsObj)
        ItemsControl.state = Items.SAVE;
        ItemsControl.perFormAction();
    }
}
function AddItems()
{
    if (ItemsControl.state != Items.SAVE)
    {
        ItemsControl.state = Items.ADD_NEW;
    }
    ItemsControl.perFormAction();
}
function DelItems(Id)
{
    if(confirm(Items.CONFIRM_DEL))
    {
        ItemsControl.state = Items.DEL;
        ItemsControl.ItemsId = Id;
        ItemsControl.perFormAction();
    }
}
function DelExpiredItems(Id)
{
    if(confirm(Items.CONFIRM_DEL))
    {
        ItemsControl.state = Items.DEL_EXPIRED_ITEMS;
        ItemsControl.ItemsId = Id;
        ItemsControl.perFormAction();
    }
}

function SetDataItemObjInFormEdit(obj) {
    document.getElementById("nameofitem").value = obj[0].Name != "" ? obj[0].Name:"";
    document.getElementById("lyriccreatedbyuser").value = obj[0].LyricCreatedByUser != "" ? obj[0].LyricCreatedByUser:"";
    document.getElementById("txtBand").value = obj[0].BandName != "" ? obj[0].BandName:"";
    document.getElementById("txtbandmembers").value = obj[0].Members != "" ? obj[0].Members:"";
    document.getElementById("lyrics").value = obj[0].Lyric != "" ? obj[0].Lyric:"";
    document.getElementById("txtDescription").value = obj[0].Description != "" ? obj[0].Description : "";
    SetDataForComboMusicCategory(parseInt(obj[0].MusicCategoryId));
    var musicId = obj[0].MusicId != null ? obj[0].MusicId:0;
    var singername = obj[0].PresentedByUserId != "" ? obj[0].PresentedByUserId:"";
}

//Get data for AddItems
function GetDataItemsObjFromFormEdit(params)
{
    var obj = {};
    // parameters that are unchangeable if state is Edit
    obj.Id = (params.Id == null || params == null) ? null : params.Id;
    obj.FilePath = (params.FilePath ==null || params == null)? document.getElementById('filepath').value.toLowerCase() : params.FilePath.toLowerCase();
    obj.ImagePath = (params.ImagePath == null || params == null)? document.getElementById('imagepath').value : params.ImagePath;
    obj.ImagePathDetail = (params.ImagePathDetail == null || params == null)? document.getElementById('imagepath_detail').value : params.ImagePathDetail;
    obj.FileThumbnailPath = (params.FileThumbnailPath == null || params == null)? '' : params.FileThumbnailPath;//not implements
    obj.FileSize = (params.FileSize == null || params == null)? '' : params.FileSize;
    //obj.CreatedDate = params.CreatedDate;
    obj.Status = (params.Status == null || params == null)? 0 : params.Status;
    obj.ViewCount = (params.ViewCount == null || params == null)? 0 :params.ViewCount;
    obj.VoteCount = (params.VoteCount == null || params == null)? 0 : params.VoteCount;
    //obj.TotalMarkvote = params.TotalMarkvote == null? 0 : params.TotalMarkvote;
    obj.DownloadCount = (params.DownloadCount == null || params == null)? 0 : params.DownloadCount;
    //obj.LanguageId = params.LanguageId == null? "" : params.LanguageId;
    obj.DownloadLink = (params.DownloadLink == null || params == null)? "" : params.DownloadLink;
    obj.CurrentHasPermissionVote = (params.CurrentHasPermissionVote == null || params == null)? false : params.CurrentHasPermissionVote;
    obj.IConverted = (params.IConverted == null || params == null)? 0 : params.IConverted;

    // parameters that are changeable
    obj.Name = document.getElementById('nameofitem').value;
   
    
    obj.Lyric = document.getElementById('lyrics').value;
    obj.LyricCreatedByUser = document.getElementById('lyriccreatedbyuser').value;
  
  
    
    obj.BandName = document.getElementById('txtBand').value;
    obj.Members = document.getElementById('txtbandmembers').value;
    
    //obj.IsVideo = document.getElementById('cboIsVideo').value;
    obj.IsVideo =getTypeOfVideo(document.getElementById('txtFileName').value);
    obj.Description = document.getElementById('txtDescription').value;
    //alert("value:"+document.getElementById('description123').value);
    obj.MusicCategoryId = getControlById("musiccategoryid").options[getControlById("musiccategoryid").selectedIndex].value;

    /*
    if(z_combo_User.getSelectedValue() != null)
    {
        obj.PresentedByUserId =  z_combo_User.getSelectedValue();
    }
    else
    {
        obj.PresentedByUserId = 0;
        obj.PresentByUsers = z_combo_User.getComboText();
    }
    */
    obj.PresentedByUserId = 0;
    obj.PresentByUsers = (params.PresentByUsers == null || params == null)? document.getElementById('isBigImage').value : params.PresentByUsers;
    
    return obj;
}
function getTypeOfVideo(sFile)
{
    sFile=sFile.toLowerCase();
    var sExt=sFile.substr(sFile.lastIndexOf("."));   
    //".wmv" ".flv" ".avi" ".dat" ".mov" ".3gp"  ".mpg" 
    //".rm"  ".mp3"  ".wav"  ".wma"
    //    if (( sExt==".wmv")||(sExt==".flv")||(sExt== ".avi")||(sExt== ".dat" )||(sExt==".mov")||(sExt== ".3gp" )||(sExt== ".mpg")) return 1;
    //    else return 0;    
    if(sExt ==".rm" || sExt ==".mp3" || sExt ==".wav"|| sExt ==".wma") return 0;
    else return 1;
}
/*----------- Load data for combo ----------------*/
function SetDataForComboMusicCategory(musicId)
{
    ItemsControl.GetAllMusicCategory(musicId);
}
function SetDataForComboUser()
{
    /*ItemsControl.GetAllUser();*/
}
//End Load Data Combo

/*------------- Functions for event click ------------------*/
function Load_Items_All_For_User_Event()
{
    if((userLevel == 14) || (userLevel == 15) || (userLevel == 18)) {
        Load_Back_Items_For_Approval_Event();
    }
        
    if(ItemsControl==null) _initItems();
    ShowItemsList();
    GetItemsForUser();
}

function Load_Back_Items_For_User_Event()
{
    ShowItemsList();
    ItemsControl.state = Items.GET_ALL_FOR_USER;
    if(userItemsPaging)
    {
        var pageIndex = (userItemsPaging.getCurrentPageIndex() == 0)? 1: userItemsPaging.getCurrentPageIndex();
        userItemsPaging.renderHTML(pageIndex);
    }
    else
        InitUserItemsPaging();
}

function Load_Back_Items_For_Changing_Item_Image()
{
    showControl(getControlById("searchresult"));
    showControl(getControlById("dTitle"));
    hideControl(getControlById("item_detail"));

//    if(searchMedia)
//    {
//        var pageIndex = (searchMedia.getCurrentPageIndex() == 0)? 1: searchMedia.getCurrentPageIndex();
//        searchMedia.renderHTML(pageIndex);
//    }
//    else
//        InitPagingMedia();
    GetSearch(2);
}

function Load_Items_For_Approval_Event()
{
    if(ItemsControl==null) _initItems();
    ShowItemsManage();
    GetItemsForApproval();
}

function Load_Back_Items_For_Approval_Event() {
    document.location = "media_manage.htm?action=listforapprove";
}

function Load_All_Expired_Items_Event()
{
    if(ItemsControl==null) _initItems();
    
    ShowExpiredItemsManage();
    GetAllExpiredItems();
}

function Load_Back_All_Expired_Items_Event()
{
    ShowExpiredItemsManage();
    if(expiredItemsPaging)
    {
        var pageIndex = (expiredItemsPaging.getCurrentPageIndex() == 0)? 1: expiredItemsPaging.getCurrentPageIndex();
        expiredItemsPaging.renderHTML(pageIndex);
    }
    else
        InitExpiredItemsPaging();
}

function Load_Back_All_For_Admin_Event()
{
    //delete all content renderred previously
    deleteControlContent(getControlById("admin_changeapprovaldate"));
    deleteControlContent(getControlById("item_detail_for_manager"));
    
    hideControl(getControlById("div_changeDate"));
    hideControl(getControlById("admin_item_detail"));
    showControl(getControlById("div_changeapprovaldateHolder"));
    
    if(itemsPaging)
    {
        var pageIndex = (itemsPaging.getCurrentPageIndex() == 0)? 1: itemsPaging.getCurrentPageIndex();
        itemsPaging.renderHTML(pageIndex);
    }
    else
        InitPaging();
}

function Load_Item_For_View(id)
{
    if(ItemsControl==null) _initItems();
    ShowItemsDetail();
    ItemsControl.ItemsId = id;
    //ItemsControl.state = Items.GET_DETAIL_FOR_USER;
    ItemsControl.GET_ITEMS_FOR_USER();
}

function Load_Item_For_Changing_Image(id)
{
    if(ItemsControl==null) _initItems();
    
    showControl(getControlById("item_detail"));
    hideControl(getControlById("searchresult"));
    hideControl(getControlById("dTitle"));
    ItemsControl.ItemsId = id;
    //ItemsControl.state = Items.GET_DETAIL_FOR_USER;
    ItemsControl.GET_ITEMS_FOR_CHANGING_IMAGE();
}

function Load_Items_Detail_For_User_Event(Id)
{   
    if(ItemsControl==null) _initItems();
    ShowItemsEdit();
    Load_Items_Edit_Event(Id);
    
    getControlById("hHeader").innerHTML = "Chi tiết tác phẩm";
    showControl(getControlById("errorsummary"));
    hideControl(getControlById("pFilepath"));
    hideControl(getControlById("pImagepath"));
    hideControl(getControlById("pImgGallery"));
    hideControl(getControlById("pAvailableExtention"));
    showControl(getControlById("divInstruction"));
    hideControl(getControlById("pQualityHeader"));
    hideControl(getControlById("pQualityInstruction"));
    hideControl(getControlById("pQualityChoice"));
    showControl(getControlById("pUploadButton2"));
    hideControl(getControlById("pUploadButton1"));
//    getControlById("btnUpload").style.visibility = "hidden";
//    getControlById("btnCancel").style.visibility = "hidden";
//    getControlById("btnSave").style.visibility = "visible";
//    getControlById("div_Goback").style.visibility = "visible";
}

function Load_Items_Detail_For_Manager_Event(id) {
    document.getElementById("tcolumn_main").style.display = "none";
    if(ItemsControl==null) _initItems();
    ShowItemsDetail();
    ItemsControl.ItemsId = id;
    ItemsControl.state = Items.GET_DETAIL_FOR_MANAGER;
    ItemsControl.perFormAction();

}

function Load_Expired_Item_Detail_For_Manager_Event(id)
{
    if(ItemsControl==null) _initItems();

    ShowItemsDetail();
    ItemsControl.ItemsId = id;
    ItemsControl.state = Items.GET_EXPIRED_ITEM_DETAIL;
    ItemsControl.perFormAction();
}

function Load_Items_Edit_Event(Id)
{
//ShowFormForUploading();
    if(Id == null)            
    {
       ItemsControl.ItemsObj = {};
       ShowFormForUploading();
    }
    else
    {
       if(ItemsControl.ItemsObj.Id != Id)
       {
           ItemsControl.ItemsId = Id;
           ItemsControl.GetItemsById();
       }

       else
           SetDataItemObjInFormEdit(ItemsControl.ItemsObj);
    }        
}
function HandleStatusOfApproval(itemid, itemstatus)
{
    
    if(ItemsControl==null) _initItems();

    if(itemstatus == 0)
    {
        if(confirm(Items.MSG_APPROVAL_CONFIRM)==true)
        {
            document.getElementById('a_approve_'+itemid).href="#";
            dcl1=itemid;dcl2=itemstatus;
            ItemsControl.ItemsId = itemid;
            ItemsControl.ItemStatus = itemstatus;
            ItemsControl.UpdateItemStatus(itemid, itemstatus);
        }
    }
    else
    {
        if(confirm(Items.MSG_DISAPPROVAL_CONFIRM)==true)
        {
            document.getElementById('a_approve_'+itemid).href="#";
            dcl1=itemid;dcl2=itemstatus;
             
            ItemsControl.ItemsId = itemid;
            ItemsControl.ItemStatus = itemstatus;
            ItemsControl.UpdateItemStatus();
        }
    }
        
}
function ShowItemsImage(scope, formId)
{
     var filename = getControlById(Items.File_Upload);
     if(!filename.value) 
     {
        alert(Items.REQUIRE_PATH_UPLOAD_IMG);        
        filename.focus();
        return false;
     }
     ItemsControl.UploadImage(scope, formId);    
}
/*------------- End Functions for event click ------------------*/
function SetSelectedValueOfDropdownlist(id,value)
{
    var obj = document.getElementById(id);
    var len = obj.length;
    if(len > 0)
        for(var i=0; i < len; i ++)
        {
            var droValue = obj.options[i].value;
            if(value == droValue)
            {
                obj.selectedIndex = i;
                break;
            }
        }
}

function checkSession()
{
    ItemsControl.checkSession();
}
/*------------------------ For Media --------------------------*/
function GetPlayerForItem(paramFile, iConverted)
{
    if (iConverted == 0)
    {
        alert("Hệ thống đang xử lý dữ liệu. Xin đợi giây lát!");
        return;
    }
    else  if (iConverted == -1)
    {
        alert("File xử lý bị lỗi... Không thể chơi được (Lỗi này do file định dạng không đúng hoặc bị lỗi trong quá trình upload)!");
        return;
    }
    else 
    {
        if(ItemsControl==null) _initItems();

        ItemsControl.ItemsId = paramFile;
       
        ItemsControl.GetPlayer(ItemsControl.ItemsId); 
        ItemsControl.GetInforOfPlayer(ItemsControl.ItemsId);
        //For Popup dislaying Player
    }
}
function GetPlayerForViewer(paramFile)
{    
    if(ItemsControl==null) _initItems();

    ItemsControl.ItemsId = paramFile;
   
    ItemsControl.GetPlayer(ItemsControl.ItemsId); 
    ItemsControl.GetInforOfPlayer(ItemsControl.ItemsId);
}

function GetPlayerForItemByStatus(paramFile, iConverted)
{
    if (iConverted == 0)
    {
        alert("Hệ thống đang xử lý dữ liệu. Xin đợi giây lát!");
        return;
    }
    else  if (iConverted == -1)
    {
        alert("File xử lý bị lỗi... Không thể chơi được (Lỗi này do file định dạng không đúng hoặc bị lỗi trong quá trình upload)!");
        return;
    }
    else
    {
        if(ItemsControl==null) _initItems();

        ItemsControl.ItemsId = paramFile;

        ItemsControl.GetPlayer(ItemsControl.ItemsId);
        ItemsControl.GetInforOfPlayer(ItemsControl.ItemsId);
        getControlById("detail_Player").style.display = "none";


        //For Popup dislaying Player
        var popup = new Popup({
        id: 'popup_property',
        closeId: 'popup_property_close',
        dragable: true,
        dragEventId: 'popup_property_drag',
        object: null
        });
        popup.show({"top": 200, "left": 200});
        setPositionCenter(document.getElementById("popup_property"));
        window.scroll(0, 0);

    }
}

/* Other Utilities */
function ShowImageGallery()
{
    if(ItemsControl==null) _initItems();
    ItemsControl.ShowImageGallery();
}

function ShowImageGalleryForUsers()
{
    if(ItemsControl==null) _initItems();
    ItemsControl.ShowImageGalleryForUsers();
}

function SendToFriends(userId)
{
    ItemsControl.checkSessionForSendingLinksToFriends(userId);
}

function SendLinksToFriends()
{
    ItemsControl.usertos = getControlById("txtEmail").value;
    ItemsControl.urltosend = "http://lienhoanamnhac.com/PlayItem.htm?Id=" + getParamURL("Id");
    ItemsControl.SongName = document.getElementById("titlesong_Player").innerHTML;
    if(validateForSendingLinks())
    ItemsControl.SendToFriends();
}

function DownloadItem()
{
    if(ItemsControl==null) _initItems();
    ItemsControl.DownloadItem();
}

function checkSendLinks(event)
{
    if(event.keyCode == 13) SendLinksToFriends();
    return;
}

function validateForSendingLinks()
{
    document.getElementById('sendlinkserrorsummary').style.visibility = "visible";
    var valid = new ValidationForSendingLinks();
    valid.add('txtEmail', ValidationType.custom, validateArrayOfEmail, '{name} chưa được nhập hoặc định dạng không đúng !', 'Email');
    return valid.checkValid();
}

function validateArrayOfEmail()
{
    var isValid = true;
    var arrEmail = getControlById("txtEmail").value;
    var arr = new Array();
    arr = arrEmail.split(";");

    for(var i = 0; i < arr.length; i++)
    {
        if(!validateEmail(arr[i].Trim()))
            isValid = false;
        else
            isValid = true;
    }
    return isValid;
}

function validateEmail(email)
{
    var splitted = email.match("^(.+)@(.+)$");
    if (splitted == null) return false;
    if (splitted[1] != null)
    {
        var regexp_user = /^\"?[\w-_\.]*\"?$/;
        if (splitted[1].match(regexp_user) == null) return false;
    }
    if (splitted[2] != null)
    {
        var regexp_domain = /^[\w-\.]*\.[A-Za-z]{2,4}$/;
        if (splitted[2].match(regexp_domain) == null)
        {
            var regexp_ip = /^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
            if (splitted[2].match(regexp_ip) == null) return false;
        }// if
        return true;
    }
    return false;
}

function showDetail()
{
    if(getControlById("detail_Player").style.display == "block")
        getControlById("detail_Player").style.display = "none";
    else
    {
        getControlById("detail_Player").style.display = "block";
        ItemsControl.GetDetailForPlayer(ItemsControl.ItemsId);
    }

}
//Blank function
function callFromFlash(id)
{
    //alert('Get ID From Flash'+id);
    if(ItemsControl==null) _initItems();
    ItemsControl.updateViewCount(id);
}
function showVote()
{
    ItemsControl.checkSessionForVote();

}
function showLyrics()
{  
    document.getElementById('div_lyrics').style.display=(document.getElementById('div_lyrics').style.display=='none') ? 'block':'none';
    document.getElementById('a_lyrics').innerHTML=(document.getElementById('div_lyrics').style.display=='none') ? 'Xem lời':'Ẩn lời';
               
}

/* ------------------------ For Home Page -------------------------*/

function GetMediaForHomePage()
{
    if (ItemsControl == null) _initItems();

    ItemsControl.GET_OUTSTANDING_COMPETITOR();
    ItemsControl.GET_TOP_HIT_ITEMS();
    ItemsControl.GET_TOP_LISTEN_ITEMS();
    ItemsControl.GET_NEWEST_ITEMS();
    ItemsControl.GET_TOP_VOTE_ITEMS();
}
/* ---------------------- For News & Items Pages -------------------*/

function GetMediaForNewsPage()
{
    if (ItemsControl == null) _initItems();

    SetUsersRankingBoardHeader();
    ItemsControl.GET_TOP_ITEMS_ON_RANKINGBOARD();
    ItemsControl.GET_TOP_ITEMS_ON_CURRENT_MONTH_RANKINGBOARD();
    ItemsControl.GET_TOP_VOTE_ITEMS_FOR_NEWS_PAGE();
}
/* ------------------- For Member_Detail Page -------------------*/

/*------------------ For Ranking Page ---------------------------*/
function GetMediaForRankingPage()
{
    if (ItemsControl == null) _initItems();

    ItemsControl.GET_MONTH_RANGE();
    ItemsControl.GET_TOP_VOTE_ITEMS_FOR_ITEMSPAGE();
    ItemsControl.GET_TOP_ITEMS_ON_RANKINGBOARD();

    //ShowControlByFilter();
}

function GetCompetitionMonthRange()
{
    if (ItemsControl == null) _initItems();
    
    ItemsControl.GET_MONTH_RANGE(); 
}

function GetTopVoteAndTopRankingBoard()
{
    if (ItemsControl == null) _initItems();

    ItemsControl.GET_TOP_VOTE_ITEMS_FOR_ITEMSPAGE();
    ItemsControl.GET_TOP_ITEMS_ON_RANKINGBOARD();
}

function GetParams()
{ 
    var obj = {};
    var filetype = document.getElementById("filetype");
    var songType = document.getElementById("songType");
    obj.month = (ItemsControl.requestMonth == null)? 5 : parseInt(ItemsControl.requestMonth);
    obj.year = (ItemsControl.requestYear == null)? 2008 : parseInt(ItemsControl.requestYear);
    obj.userType = getControlById("sltType").options[getControlById("sltType").selectedIndex].value;
    obj.week =  parseInt(document.getElementById("sltWeek").value);  //(getCookie("currentWeek") == "") ? 1 : parseInt(getCookie("currentWeek"));
    obj.areaId =  getControlById("sltArea").options[getControlById("sltArea").selectedIndex].value;
    obj.provinceId = getControlById("sltProvince").options[getControlById("sltProvince").selectedIndex].value;
    obj.universityId = getControlById("sltUniversity").options[getControlById("sltUniversity").selectedIndex].value;
    obj.districtId =  getControlById("sltDistrict").options[getControlById("sltDistrict").selectedIndex].value;
    obj.schoolId =  getControlById("sltSchool").options[getControlById("sltSchool").selectedIndex].value;
    obj.mediaOrderBy = (ItemsControl.MediaOrderBy == null)? 1 : parseInt(ItemsControl.MediaOrderBy);
    obj.isvideo = filetype.value;
    if(songType != null) obj.musiccat = songType.value;
    return obj;
}
//lamlt
function checkSession()
{
    if (ItemsControl == null) _initItems();

    ItemsControl.checkSession();
}

 function showFlash(val)
{
    document.getElementById('theflashgohere_image').style.visibility=val;
    document.getElementById('theflashgohere').style.visibility=val;
}


function SetUsersRankingBoardHeader(usertype)
{
    if(usertype && usertype != "")
    {
        if(getControlById("sltWeek"))
        {
            var week = parseInt(getControlById("sltWeek").options[getControlById("sltWeek").selectedIndex].value);
            SetHeaderByUserTypeAndWeek(usertype, week);
            return;
        }        
        else
        {
            System.Environment.RequestManager.sendRequest('./item/GetCurrentWeek.html', {}, function(response, opts){
                var week = response.responseText;   
                SetHeaderByUserTypeAndWeek(usertype, week);         
            }, function(){});
        }
    }
}

function SetHeaderByUserTypeAndWeek(usertype, week)
{   
    week = parseInt(week);
    var rankingBoardHeader = document.getElementById('h_RankingBoard');
            if ((usertype == role.USER_PTTH) || (usertype == role.MOD_CLASS) || (usertype == role.MOD_SCHOOL))
            {
                switch (week)
                {
                    case 1:
                    rankingBoardHeader.innerHTML = Items.SCHOOL_UNIVERSITY_RANKINGBOARD_HEADER;
                    break;
                    case 2:
                    rankingBoardHeader.innerHTML = Items.DISTRICT_RANKINGBOARD_HEADER;
                    break;
                    case 3:
                    rankingBoardHeader.innerHTML = Items.PROVINCE_RANKINGBOARD_HEADER;
                    break;
                    case 4:
                    rankingBoardHeader.innerHTML = Items.AREA_RANKINGBOARD_HEADER;
                    break;
                }
            }
            else if ((usertype == role.USER_DH)||(usertype == role.MOD_CLASS_UNIVERSITY)||(usertype == role.MOD_UNIVERSITY))
            {
                switch (week)
                {
                    case 1:
                    rankingBoardHeader.innerHTML = Items.SCHOOL_UNIVERSITY_RANKINGBOARD_HEADER;
                    break;
                    case 2:
                    rankingBoardHeader.innerHTML = Items.SCHOOL_UNIVERSITY_RANKINGBOARD_HEADER;
                    break;
                    case 3:
                    rankingBoardHeader.innerHTML = Items.PROVINCE_RANKINGBOARD_HEADER;
                    break;
                    case 4:
                    rankingBoardHeader.innerHTML = Items.AREA_RANKINGBOARD_HEADER;
                    break;
                }
            }
            else if((usertype == role.USER_NN)||(usertype == role.MOD_FOREIGN))
            {
                rankingBoardHeader.innerHTML = Items.FOREIGN_SCHOOL_RANKINGBOARD_HEADER;
            }
            else if((usertype == role.ADMIN)||(usertype == role.MOD_AREA)||(usertype == role.MOD_DISTRICT)||(usertype == role.MOD_PROVINCE)||(usertype == role.SUPER_MOD)||(usertype == role.USER)||(usertype == -1))
            {
                getControlById("div_Items_RankingBoard_Holder").style.display = "none";
            }
}

function GetCurrentWeek()
{   
    var today = new Date();
    var week;
    var dayNo = today.getDate();
    if ((dayNo >= 1) && (dayNo <= 7))
    week = 1;
    else if ((dayNo > 7) && (dayNo <= 14))
        week = 2;
    else if ((dayNo > 14) && (dayNo <= 21))
        week = 3;
    else
        week = 4;
    return week;
}
function requireFlash(idShow,number)
{   
    /*
    if(!FlashDetect.installed)
    {
          if(document.getElementById(idShow)!=null) document.getElementById(idShow).innerHTML='<div align="center" style="background-color:white"><a href="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0">Máy bạn chưa cài plugin cho việc upload và chơi nhạc.Bạn hãy click vào đây để cài đặt</a></div>';
       
    }else
    {
       
        if(FlashDetect.major < number)
        {
          if(document.getElementById(idShow)!=null)  document.getElementById(idShow).innerHTML='<div align="center" style="background-color:white"><a href="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0">Máy bạn cài plugin phiên bản chưa đủ cho việc upload và chơi nhạc.Bạn hãy click vào đây để upgrade</a></div>';
        }     	            
    }
    */
}	
 function getFrameForPopup()
{
    if (navigator.userAgent.indexOf("Firefox")!=-1) return "";
    if (navigator.userAgent.indexOf("MSIE")!=-1) return '<iframe class="popup_frame"></iframe>';
    return "";
}
function deleteControlContent(obj)
{
  if(obj)  obj.innerHTML = '';  
}
function deleteAllControlsContent()
{
  deleteControlContent(getControlById("manageitems"));
  deleteControlContent(getControlById("manage_expired_items"));
  deleteControlContent(getControlById("listitemsbyuser"));
  deleteControlContent(getControlById("item_detail_for_manager"));   
}


//start for minimize player
 function getFlashMovieObject(movieName)
{
  if (window.document[movieName]) 
  {
      return window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName]; 
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    return document.getElementById(movieName);
  }
}
function pauseMovie(movieName)
{
    var flashMovie=getFlashMovieObject('myPlayerViMusic');
    if (flashMovie)
    {
        flashMovie.SetVariable("/:thePause","1");  
        flashMovie.SetVariable("/:thePlay","-1");             
        showPlayBtnFromFlash('pause');    
    }
    //flashMovie.Rewind();                   
}
function playMovie(movieName)
{
     var flashMovie=getFlashMovieObject('myPlayerViMusic');
     if (flashMovie)
     {
         flashMovie.SetVariable("/:thePause","-1");  
         flashMovie.SetVariable("/:thePlay","1");  
         
         showPlayBtnFromFlash('play');           
     }  
     //flashMovie.GotoFrame();  
}
function changeVolume(movieName,value)
{
   try
    {
        var flashMovie=getFlashMovieObject('myPlayerViMusic');            
        flashMovie.SetVariable("/:theVolume",value);            
    }catch(e){}
}      
function minimizePlayer(movieName)
{

    var flashMovie=getFlashMovieObject('myPlayerViMusic');
    if (flashMovie)
     {
        flashMovie.SetVariable("/:modestartJS","1");  
        flashMovie.SetVariable("/:modeJS","1");             
    }
    //document.getElementById('myPlayerViMusic').style.visibility="hidden";
    //flashMovie.Rewind();                   
}
function maximizePlayer(movieName)
{
    try
    {
        var flashMovie=getFlashMovieObject('myPlayerViMusic');
        if (flashMovie)
        {
            flashMovie.SetVariable("/:modestartJS","2");  
            flashMovie.SetVariable("/:modeJS","0");       
        } 
    }catch(e){}     
    //document.getElementById('myPlayerViMusic').style.visibility="visible";                
}
//sType:1 is from flash pass to html
//sType:0 is from html to flash
function showVolumeJS(sValue)
{      
    sliderVolume.setValue(sValue);
}
function showPlayBtnFromFlash(status)
{
    if (status=="play")
    {
       document.getElementById("link_min_play").style.display="none";
       document.getElementById("link_min_pause").style.display="inline";
    }    
    else if((status=="pause")||(status=="stop"))
    {
      document.getElementById("link_min_play").style.display="inline";
      document.getElementById("link_min_pause").style.display="none";
    }    
}
function showTimeFromFlash(status)
{
    if(document.getElementById('volume_player')) document.getElementById('volume_player').innerHTML=status;
}

//start new
function getPercent(p,pTotal)
{ 
    if (eval(p)> eval(pTotal))p=pTotal;
    t=100*p / pTotal;  
    if (p>0)
    {        
        document.getElementById('div_total_message').innerHTML="Bạn chỉ còn upload được tác phẩm dung lượng tối đa là "+ showByte(pTotal-p)+" (bạn đã dùng "+showByte(p)+" / " + showByte(pTotal)+" cho phép)";//.Muốn upload nhiều hơn bạn hãy xóa các tác phẩm cũ trong trang cá nhân của bạn!";
    }
    else 
    {
        document.getElementById('div_total_message').innerHTML="Bạn chỉ được upload được tác phẩm dung lượng tối đa là "+ showByte(pTotal);
    }
    return roundNumber(t,2);
}
function setPercent(p)
{
    if (p>100)p=100;
    document.getElementById('div_usage_media').style.display="block";
    document.getElementById('div_loaded').style.width=p+"%";
    document.getElementById('div_loaded').innerHTML=p+"%";

    if ((p>=60)&&(p<80)){document.getElementById('div_loaded').style.backgroundColor='#FF8000';}
    if (p>=80){document.getElementById('div_loaded').style.backgroundColor='#FF0000';}
}
function showByte(b)
{      
    if (b < (512*1024)) return roundNumber(b/1024,2) +" Kb";
    if (b >= (512*1024)) return roundNumber(b/(1024*1024),2) +" Mb";
}
function roundNumber(num, dec) {
    var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
    return result;
}
function showPercent(sValue)
{
    var arr= new Array();
    arr=sValue.split(";");
    var per=getPercent(arr[0],arr[1]);
    
    sizeLimit=arr[1]-arr[0];
    if (arr[1]!=-1){ setPercent(per); initUploadForm(sizeLimit,arr[2]);}
    else initUploadForm(1024*1024*100,arr[2]);
}
function ShowUsage()
{
    if(ItemsControl==null) _initItems();
    ItemsControl.GetUserUsage();
}
function ShowFormUsage()
{
   //document.getElementById('div_usage_media').style.display='block';
   ShowUsage();
}
function initUploadForm(sizeLimit,userid)
{
    sizeLimit= roundNumber(sizeLimit/1024,2);
    if (sizeLimit<=0)sizeLimit=1;
    //sizeLimit=sizeLimit/1024;
    fID=getUID();
    fIDImage=getUID();
    swfu = new SWFUpload({
		// Backend Settings
		upload_target_url: "../../uploadfilemedia/uploadfilemedia.html?idUniqueFile="+fID+"&userid="+userid,	// Relative to the SWF file
        //file_post_name:	"upload",
		// File Upload Settings
		file_size_limit : sizeLimit,	//100480----- 100MB
		file_types : "*.wmv;*.flv;*.avi;*.dat;*.mov;*.3gp;*.rm;*.mp3;*.wma;*.mpg;*.wav",
		file_types_description : "Support Media Files",
		file_upload_limit : "0",    // Zero means unlimited
		begin_upload_on_queue : false,

		// Event Handler Settings
		file_queued_handler : fileQueued,
		file_progress_handler : fileProgress,
		file_cancelled_handler : fileCancelled,
		file_complete_handler : fileComplete,
		queue_complete_handler : queueComplete,
		//queue_stopped_handler : queueStopped,
		//dialog_cancelled_handler : fileDialogCancelled,
		error_handler : uploadError,

		// Flash Settings
		flash_url : "Resources/Media/swfupload.swf",	// Relative to this file
		flash_container_id : "theflashgohere",

		// UI Settings
		ui_function: myShowUI,
		ui_container_id : "swfu_container",
		//degraded_container_id : "degraded_container",

		// Debug Settings
		debug: false
	});
	swfu.addSetting("upload_target", "divFileProgressContainer");
	/*
	//start new
	swfuImage = new SWFUpload({
		// Backend Settings
		upload_target_url: "../../uploadfilemedia/uploadimage.html?idUniqueFile="+fIDImage,	// Relative to the SWF file
        //file_post_name:	"upload",
		// File Upload Settings
		file_size_limit : "10480",	// 10MB
		file_types : "*.jpg;*.bmp;*.gif;*.png",
		file_types_description : "Support Image Files",
		file_upload_limit : "0",    // Zero means unlimited
		begin_upload_on_queue : false,

		// Event Handler Settings
		file_queued_handler : fileQueuedImage,
		file_progress_handler : fileProgressImage,
		file_cancelled_handler : fileCancelledImage,
		file_complete_handler : fileCompleteImage,
		queue_complete_handler : queueCompleteImage,
		//queue_stopped_handler : queueStopped,
		//dialog_cancelled_handler : fileDialogCancelled,
		error_handler : uploadErrorImage,

		// Flash Settings
		flash_url : "Resources/Media/swfupload.swf",	// Relative to this file
		flash_container_id : "theflashgohere_image",

		// UI Settings
		ui_function: myShowUIImage,
		ui_container_id : "swfu_container_image",
		//degraded_container_id : "degraded_container",

		// Debug Settings
		debug: false
	});

	swfuImage.addSetting("upload_target", "divFileProgressContainer_image");
	*/
}
function initUploadFormNews(sizeLimit)
{
    sizeLimit="100480";
    fIDImage=getUID();
    swfu = new SWFUpload({
		// Backend Settings
		upload_target_url: "../../uploadfilemedia/UploadFileMediaForNews.html?idUniqueFile="+fIDImage,	// Relative to the SWF file
       
		// File Upload Settings
		file_size_limit : sizeLimit,	//100480----- 100MB
		file_types : "*.wmv;*.flv;*.avi;*.dat;*.mov;*.3gp;*.rm;*.mp3;*.wma;*.mpg;*.wav",
		file_types_description : "Support Media Files",
		file_upload_limit : "0",    // Zero means unlimited
		begin_upload_on_queue : false,

		// Event Handler Settings
		file_queued_handler : fileQueuedImage,
		file_progress_handler : fileProgressImage,
		file_cancelled_handler : fileCancelledImage,
		file_complete_handler : fileCompleteImage,
		queue_complete_handler : queueCompleteImage,		
		error_handler : uploadErrorImage,

		// Flash Settings
		flash_url : "Resources/Media/swfupload.swf",	// Relative to this file
		flash_container_id : "theflashgohere",

		// UI Settings
		ui_function: myShowUI,
		ui_container_id : "swfu_container",
	

		// Debug Settings
		debug: false
	});
	swfu.addSetting("upload_target", "divFileProgressContainer_image");
}
//start for media
//upload for media
function myShowUI()
{
    document.getElementById("btnUpload").onclick = doSubmit;
    this.showUI();  // Let SWFUpload finish loading the UI.
}
 // Called by the submit button to start the upload
function doSubmit()
{
    if(validate()){
        var btnUpload = document.getElementById("btnUpload");
	    try
	    {
	        if (btnUpload.value=="Gửi tác phẩm")
            {
                showDiv('block');
		        var btnBrowse = document.getElementById("btnBrowse");
		        btnBrowse.disabled = true;
		        btnUpload.value="Hủy bỏ";
		        document.getElementById("divAddNewItems").style.display="none";
			    
		        var mode=1;
		        if (document.getElementById('quality2').checked) mode=0;
		        swfu.setUploadTargetURL("../../uploadfilemedia/uploadfilemedia.html?idUniqueFile="+fID+"&modeFile="+mode);
		        swfu.updateUploadStrings();
		        showFlash('hidden');
		        swfu.startUpload();  
		    }
		    else  if (btnUpload.value=="Hủy bỏ")
		    {   
		        btnUpload.value="Gửi tác phẩm";
		        var btnBrowse = document.getElementById("btnBrowse");
		        btnBrowse.disabled = false;
		        swfu.stopUpload();
		        document.getElementById('divFileProgressContainer').innerHTML='';
		        document.getElementById("divAddNewItems").style.display="block";
		        showFlash('visible');
		    }
	    } catch (ex) { }
        return false;
    }
    else scroll(0,0);
}
// Called by the queue complete handler to submit the form
function uploadDone()
{
	try {
	    var btnBrowse = document.getElementById("btnBrowse");
		btnBrowse.disabled = false;
		var btnUpload = document.getElementById("btnUpload");
		btnUpload.value="Gửi tác phẩm";

	    document.getElementById("filepath").value=fID+".flv";
	    document.getElementById('divFileProgressContainer').display='none';
		doSubmitImage();
		showFlash('visible');		
	} catch (ex) {}
}
// end upload for media
//lamlt
 function showFlash(val)
{
    //document.getElementById('theflashgohere_image').style.visibility=val;
    document.getElementById('theflashgohere').style.visibility=val;
}
//start for image
//upload for image
function myShowUIImage()
{
    //document.getElementById("btnUpload").onclick = doSubmitImage;
    this.showUI();  // Let SWFUpload finish loading the UI.
}
 // Called by the submit button to start the upload
function doSubmitImage()
{
    if(document.getElementById("txtFileNameImage").value!='' && !getDOM('id_check_gallery').checked)
    {		   
        showDivImage('block');     
        
        document.getElementById('divFileProgressContainer_image').display="block";
        document.getElementById('divFileProgressContainer').display="none";
        
        //swfuImage.startUpload();
        startUploadItemImage();
    }
    else 
    {
		//AddNewItems();
		AddNewItemsForGalery();
    }
}
// Called by the queue complete handler to submit the form
function uploadDoneImage()
{
	try
	{
	    document.getElementById("imagepath").value=fIDImage+".jpg";
		AddNewItems();
	} catch (ex) {}
}
// end upload for image

//start uploading image
function startUploadItemImage()
{    
    try
    {
        System.Environment.RequestManager.submitForm('frmStartUploadImage', onUploadImageSuscess, onUploadImageFailure);
    }
    catch(ex)
    {      
    }   
}
function onUploadImageSuscess(response, opts)
{     
     var imgPath = "";
     var imgPath_Detail = "";
     var isBigImage = "";
     if((response.responseText !="Fail")&&(response.responseText !=""))
     {
            var arr= new Array();            
            arr= response.responseText.split(";");
            
            imgPath=arr[0];
            imgPath_Detail=arr[1];     
            isBigImage=arr[2];     
     }     
     document.getElementById("imagepath").value=imgPath;
     document.getElementById("imagepath_detail").value=imgPath_Detail;
     document.getElementById("isBigImage").value=isBigImage;
     
     document.getElementById('divFileProgressContainer_image').display="none";
     AddNewItems();
     
}
function onUploadImageFailure(response, opts)
{
    document.getElementById("imagepath").value=imgPath;
    document.getElementById("imagepath_detail").value=imgPath_Detail;    
    
    document.getElementById('divFileProgressContainer_image').display="none";
    AddNewItems();  
}
function isFileImage()
{
    var sFile= document.getElementById('txtFileNameImage').value;
    if (sFile=="") return true;
    sFile=sFile.toLowerCase();
    var sExt=sFile.substr(sFile.lastIndexOf("."));
   
    if (( sExt==".jpg")||(sExt==".jpeg")||(sExt== ".png")||(sExt== ".gif" )||(sExt==".bmp")) return true;
    else return false;   
}

function ChangeItemImage(id)
{
    window.location.href = "ChangeItemImage.htm?itemid="+ id +"";
}
function processGallery(status)
{
    document.getElementById('id_gallery').style.visibility=status ? "visible" : "hidden";
    if (status)
    { 
        document.getElementById('txtFileNameImage').setAttribute("disabled","disabled");
        document.getElementById('txtFileNameImage').value = "";
        ShowImageGalleryForUsers();
        //window.scroll(0, 0);
    }
    else 
    {
        document.getElementById('txtFileNameImage').removeAttribute("disabled"); 
        document.getElementById('imgPreviewImage').src = "";
        document.getElementById('_newsImg').style.display = "none";
    }
}

function processGalleryForChangingImagePage(status)
{
    getControlById('id_gallery').style.visibility=status ? "visible" : "hidden";
    getControlById('a_preview').style.visibility=status ? "hidden" : "visible";
    if (status)
    { 
        getControlById('field_upload_item_image').setAttribute("disabled","disabled");
        getControlById('field_upload_item_image').value = "";
        ShowImageGalleryForUsers();
        //window.scroll(50, 50);
    }
    else 
    {
        getControlById('field_upload_item_image').removeAttribute("disabled");
        getControlById("imagepath").value = "";
        getControlById('imagepath_detail').value = "";
        getControlById('isBigImage').value = "";
        getControlById('imgPreviewImage').src = "";
        getControlById('_newsImg').style.display = "none";
        getControlById('isUpload').value = "false";
    }
    
}