﻿
var newActionId = -1;



      
      function storeRule(ruleId, memberId, roleId,memberName,roleName) {
        
        var actionArray = new Array();
        var actionText = $("#Rules").val()
        var length = 0;

      
        var action = { "RuleId": ruleId,
            "MemberId": memberId,
            "RoleId": roleId,
            "MemberName": memberName,
            "RoleName": roleName
        };

        if (actionText != null && actionText.length > 0) {
            actionArray = JSON.parse(actionText);
            length = actionArray.length;
        }

        var index = -1;
        for (i = 0; i < length; i++) {
            if (actionArray[i].RuleId == action.RuleId) {
                index = i;
                break;
            }
        }
        if (index >= 0) {
            actionArray.splice(index, 1, action);
        }
        else {
            actionArray[length] = action;
        }

        var txt = JSON.stringify(actionArray);
        $("#Rules").val(txt);
        $("#actionContainer").html('');

        for(j=0; j<actionArray.length; j++) {
            var a = actionArray[j];
            displayAction(a.RuleId, a.MemberId, a.RoleId,a.MemberName,a.RoleName);
        }    
    }

    function displayAction(ruleId, memberId, roleId,memberName,roleName) {
         var action = { "RuleId": ruleId,
            "MemberId": memberId,
            "RoleId": roleId,
            "MemberName": memberName,
            "RoleName": roleName
        };


        var actions = [];
        actions[0] = action;

        $.tmpl("movieTemplate", actions).appendTo("#actionContainer");
    }

       function deleteAction(id) {
        var actionArray = new Array();
        var actionText = $("#Rules").val()
        var length = 0;
        
        var actionDeletedArray = new Array();
        var actionDeletedText = $("#DeletedRules").val()
        var lengthDeleted = 0;

         if (actionDeletedText != null && actionDeletedText.length > 0) {
            actionDeletedArray = JSON.parse(actionDeletedText);
            lengthDeleted = actionDeletedArray.length;
        }

        if (actionText != null && actionText.length > 0) {
            actionArray = JSON.parse(actionText);
            length = actionArray.length;
        }

        var index = -1;
        for (i = 0; i <= length - 1; i++) {
            if (actionArray[i].RuleId == id) {
                index = i;
                break;
            }
        }

        if (index >= 0) {
            var action = actionArray[index];
            if(action.RuleId>0) {
                actionDeletedArray[lengthDeleted] = action;                
                var deletedTxt = JSON.stringify(actionDeletedArray);
                $("#DeletedRules").val(deletedTxt);
                alert(deletedTxt)
            }

            actionArray.splice(index, 1);
            var txt = JSON.stringify(actionArray);
            $("#Rules").val(txt);
            $("#actionContainer").html('');
            for (i = 0; i < actionArray.length; i++) {
                var a = actionArray[i];
                displayAction(a.RuleId, a.MemberId, a.RoleId,a.MemberName,a.RoleName);
            }

            $("#RuleId").val(newActionId);
            $("#RoleId").val(-1);
            $("#MemberId").val(-1);
        }
    }

    function saveAction() {

        var roleId = $("#RoleId").val();
        var memberId = $("#MemberId").val();
        var ruleId = $("#RuleId").val()
        var memberName = $("#MemberId option:selected").text();
        var roleName = $("#RoleId option:selected").text();

        newActionId = newActionId - 1;
        cancelAction();

       storeRule(ruleId,memberId,roleId,memberName,roleName);
    }

    function cancelAction() {
        $("#RuleId").val(newActionId);
        $("#RoleId").val(-1);
         $("#MemberId").val(-1);

    }

    function editAction(id) {
        var actionArray = new Array();
        var actionText = $("#Rules").val()
        var length = 0;

        if (actionText != null && actionText.length > 0) {
            actionArray = JSON.parse(actionText);
            length = actionArray.length;
        }

        var index = -1;
        for (i = 0; i <= length - 1; i++) {
            if (actionArray[i].RuleId == id) {
                index = i;
                break;
            }
        }

        if (index >= 0) {
            var action = actionArray[i];
            $("#RoleId").val(action.RoleId);
            $("#MemberId").val(action.MemberId);
            $("#RuleId").val(action.RuleId)
        }
    }

