/**
 * Javascript предназначен для хранения функций по обработке форм
 **/


// собирает строку по полям участника
function setWebBidderSignStr (indPerson, element, elementId) {
    if (indPerson == 1) {
        fields =   ["inputTextPersFName",
                    "inputTextPersName",
                    "inputTextPersSName",
                    "inputTextPersonBirthday",
                    "inputTextPersonBirthplace",
                    "inputTextPersonAddress",
                    "inputTextPersonTel",
                    "inputPassportWebBidderDocumName",
                    "inputPassportWebBidderDocumSeries",
                    "inputPassportWebBidderDocumNumber",
                    "inputPassportWebBidderDate",
                    "inputPassportWebBidderDocumIssueAgency"];
    } else {
        fields =   ["inputTextSubName",
                    "inputTextSubINN",
                    "inputTextSubKPP",
                    "inputTextSubAddrFact",
                    "inputTextSubRegNumber",
                    "inputTextSubRegDate",
                    "inputTextSubRegOrgan",
                    "inputTextSubSname",
                    "inputTextSubOgrn",
                    "inputTextSubPhone",
                    "inputTextSubAddrLegal",
                    "inputTextBankName",
                    "inputTextBankBic",
                    "inputTextBankCAccount",
                    "inputTextAccountCode",
                    "inputTextBankAddress"];
    }
    var signature = document.getElementById(getElementFullID(element, elementId, "signature")).value;
    signature = signature + formSignStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;

    var orderData = document.getElementById(getElementFullID(element, elementId, "orderData")).value;
    orderData = orderData + formOrderStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;

}

// bsa 27.05.2010: Функция общая по Аккредитации
function setAccreditationSignStr (indPerson, element, elementId) {
    if (indPerson == 1) {
        fields =   ["inputTextPersFName",
                    "inputTextPersName",
                    "inputTextPersSName",
                    /*"inputTextPersonBirthday",
                    "inputTextPersonBirthplace",
                    "inputTextPersonAddress",
                    "inputTextPersonTel",
                    "inputPassportWebBidderDocumName",
                    "inputPassportWebBidderDocumSeries",
                    "inputPassportWebBidderDocumNumber",
                    "inputPassportWebBidderDate",
                    "inputPassportWebBidderDocumIssueAgency"*/
                    "inputTextPersonPaNameF",
                    "inputTextPersonPaNameI",
                    "inputTextPersonPaNameO",
                    "inputTrustyStatusDoc"];
    } else {
        fieldsSub =   ["inputTextSubName",
                    "inputTextSubINN",
                    "inputTextSubKPP",
                    /*"inputTextSubAddrFact",
                    "inputTextSubRegNumber",
                    "inputTextSubRegDate",
                    "inputTextSubRegOrgan",
                    "inputTextSubSname",
                    "inputTextSubOgrn",
                    "inputTextSubPhone",
                    "inputTextSubAddrLegal",
                    "inputTextBankName",
                    "inputTextBankBic",
                    "inputTextBankCAccount",
                    "inputTextAccountCode",
                    "inputTextBankAddress"*/
                    "inputTextPersonPaNameF",
                    "inputTextPersonPaNameI",
                    "inputTextPersonPaNameO",
                    "inputTrustyStatusDoc"];
//        // Объединяю с массивом полей "Руководитель"
//        fields = fieldsSub.concat(getManagerFields())
    }

//    // объединяю с массивом полей "Подписывающее лицо"
//    fields = fields.concat(getSignStaffSubFields())

    //var signature = document.getElementById(getElementFullID(element, elementId, "signature")).value;
    //signature = signature + formSignStr(element, elementId, allFields);
    signature = formSignStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;

    //var orderData = document.getElementById(getElementFullID(element, elementId, "orderData")).value;
    //orderData = orderData + formOrderStr(element, elementId, allFields);
    orderData = formOrderStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;

}

// собирает строку по полям Заявления на договор на фин обеспечение
function setFinansDealStr (indPerson, element, elementId) {
    fields = ["fdState",
                "fdNum",
                "fdAppDealTimeOverride",
                "fdDateOverride",
                "fdAppRefuseTimeOverride",
                "fdRefuseDateOverride"];
    if (indPerson == 0){
        fields = fields.concat(getManagerFields())
    }
    //var signature = document.getElementById(getElementFullID(element, elementId, "signature")).value;
    //signature = signature + formSignStr(element, elementId, fields);
    signature = formSignStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;

    //var orderData = document.getElementById(getElementFullID(element, elementId, "orderData")).value;
    //orderData = orderData + formOrderStr(element, elementId, fields);
    orderData = formOrderStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;

}

// собирает строку по полям Подачи шагов на торги
function setStepStr (element, elementId) {
    fields =   ["lotNoticeNum",
                "doAuctionTheme",
                "doTypeStateName",
                "costBValue",
                "curNameB",
                "lotIndDown",
                "lotStepDecreaseValue",
                "lotStepValue",
                //"lotMinPrice",
                "isAuctionTime",
                "auctionTime",
                "isLastApplication",
                "isAuctioneer",
                "applicatNumber",
                "applicatDate",
                "applicatCardNumber",
                "appTypeStateName",
                "applicatAmountBid"];

    //var signature = document.getElementById(getElementFullID(element, elementId, "signature")).value;
    // signature = signature + formSignStr(element, elementId, fields);
    signature = formSignStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;

    //var orderData = document.getElementById(getElementFullID(element, elementId, "orderData")).value;
    //orderData = orderData + formOrderStr(element, elementId, fields);
    orderData = formOrderStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;

}

// bsa 23.04.2010: собирает строку по полям заявки ФЛ
function setApplictionLotSignStrPers (pageMode, indEdit, typePay, element, elementId) {

      var fieldsDeposit
      var fieldsNormal
      var fieldsExt
      var fieldsArt

      // набор полей для минимального режима (ФОРМИРУЕМ В ЛЮБОМ СЛУЧАЕ)
      fields = [// Сведения об аукционе
                "outputTextLotNoticeNum",
                "costBValue",
                "lotIndDown",
                "outputTextDoAuctionTheme",

                /*// Подписавшее лицо
                "inputTextPersonPaNameF",
                "inputTextPersonPaNameI",
                "inputTextPersonPaNameO",
                "inputTextPersonPaEmail",
                
                //Документы подписавшего
                "inputPassportDocumName",
                "inputPassportDocumSeries",
                "inputPassportDocumNumber",
                "inputPassportDate",
                "inputPassportDocumIssueAgency",

                // Доверенность подписавшего
                "inputTrustyDocumNumber",
                "inputDocumIssueDate",
                "inputTrustyStatusDoc",*/

                // Задаток
                "inputLotSumDeposit",
                "payTheme",
                "payPartyName"
            ];

        if (indEdit == "false" && typePay=="1"){fieldsDeposit= ["inputDepositRem"]}
//        if (indEdit == "false" && typePay=="2"){
//            fieldsDeposit= ["payPersonF",
//                            "payPersonI",
//                            "payPersonEMail",
//                            "payPersonTel"]
//        }
        // формируем набор полей для искусства
        if (indEdit == "false" && pageMode == 0) {
            fieldsArt = ["personPaFio",
                         "partyName"]
        }

//        // формируем дополнительный набор полей для обычного и РАСШИРЕННОГО режимов
//        if (pageMode != 0) {
//            fieldsNormal = ["inputPassportWebBidderDocumName",
//                            "inputPassportWebBidderDocumSeries",
//                            "inputPassportWebBidderDocumNumber",
//                            "inputPassportWebBidderDate",
//                            "inputPassportWebBidderDocumIssueAgency",
//                            // Участник (ФЛ)
//                            "inputTextPersFName",
//                            "inputTextPersName",
//                            "inputTextPersSName",
//                            "inputTextPartyInn",
//                            "inputTextPersonBirthday",
//                            "inputTextPersonAddress",
//                            "inputTextPersonTel"]
//        }
        // формируем дополнительный набор полей для РАСШИРЕННОГО режима
        if (pageMode == 2) {
            fieldsExt = ["outputTextStateFooterSwear1",
                         "outputTextStateFooterSwear2",
                         "outputTextStateFooterSwear3",
                         "outputTextStateFooterSwear4",
                         "outputTextStateFooterAccept1",
                         "outputTextStateFooterAccept2",
                         "outputTextStateFooterAccept3",
                         "outputTextStateFooterAccept4",
                         "appForAuctionLink3"]
        }

    // объединяю массивы
    fields = fields.concat(/*getSignStaffSubFields(),*/ fieldsDeposit, fieldsNormal, fieldsExt, fieldsArt)

    //var signature = document.getElementById(getElementFullID(element, elementId, "signature")).value;
    //signature = signature + formSignStr(element, elementId, fields);
    signature = formSignStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;

    //var orderData = document.getElementById(getElementFullID(element, elementId, "orderData")).value;
    //orderData = orderData + formOrderStr(element, elementId, fields);
    orderData = formOrderStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;

}

// bsa 23.04.2010: собирает строку по полям заявки ЮЛ
function setApplictionLotSignStrSub (pageMode, indEdit, typePay, element, elementId) {
      
      var fieldsDeposit
      var fieldsNormal
      var fieldsExt
      var fieldsArt

      // набор полей для минимального режима (ФОРМИРУЕМ В ЛЮБОМ СЛУЧАЕ)
      fields = [// Сведения об аукционе
                "outputTextLotNoticeNum",
                "costBValue",
                "lotIndDown",
                "outputTextDoAuctionTheme",
                
                /*/ Руководитель
                "inputTextRepFName",
                "inputTextRepName",
                "inputTextRepSName",
                "inputTextDlaName",
                "inputTextSstaffFoundation",
                "inputTextStaffPhone",*/

                /*// Подписавшее лицо
                "inputTextPersonPaNameF",
                "inputTextPersonPaNameI",
                "inputTextPersonPaNameO",
                "inputTextPersonPaEmail",

                //Документы подписавшего
                "inputPassportDocumName",
                "inputPassportDocumSeries",
                "inputPassportDocumNumber",
                "inputPassportDate",
                "inputPassportDocumIssueAgency",

                // Доверенность подписавшего
                "inputTrustyDocumNumber",
                "inputTrustyDocumDate",
                "inputTrustyStatusDoc",*/

                // Задаток
                "inputLotSumDeposit",
                "payTheme",
                "payPartyName"
            ];
        // формируем набор полей для искусства
        if (indEdit == "false" && pageMode == 0) {
            fieldsArt = ["personPaFio",
                         "partyName"]
        }
        if (indEdit == "false" && typePay=="1"){fieldsDeposit= ["inputDepositRem"]}
//        if (indEdit == "false" && typePay=="2"){
//            fieldsDeposit= ["payPersonF",
//                            "payPersonI",
//                            "payPersonEMail",
//                            "payPersonTel"]
//        }
//
//        // формируем дополнительный набор полей для обычного и РАСШИРЕННОГО режимов
//        if (pageMode != 0) {
//            fieldsNormal = ["inputTextSubKPP",
//                            "inputTextSubAddrLegal",
//                            "inputTextSubRegNumber",
//                            "inputTextSubRegDate",
//                            "inputTextSubRegOrgan",                // Участник (ЮЛ)
//                            "inputTextSubName",
//                            "inputTextSubINN",
//                            "inputTextSubSname",
//                            "inputTextSubOgrn",
//                            "inputTextSubPhone",
//                            "inputTextSubAddrFact",
//
//                            // Банковские реквизиты
//                            "inputTextBankName",
//                            "inputTextBankBic",
//                            "inputTextBankCAccount",
//                            "inputTextAccountCode",
//                            "inputTextBankAddress"]
//        }
        if (pageMode == 2) {
            fieldsExt = ["outputTextStateFooterSwear1",
                         "outputTextStateFooterSwear2",
                         "outputTextStateFooterSwear3",
                         "outputTextStateFooterSwear4",
                         "outputTextStateFooterAccept1",
                         "outputTextStateFooterAccept2",
                         "outputTextStateFooterAccept3",
                         "outputTextStateFooterAccept4",
                         "appForAuctionLink3"]
        }

    // объединяю массивы

    fields = fields.concat(/*getSignStaffSubFields(),getManagerFields(),*/ fieldsDeposit, fieldsNormal, fieldsExt, fieldsArt)

    //var signature = document.getElementById(getElementFullID(element, elementId, "signature")).value;
    //signature = signature + formSignStr(element, elementId, fields);
    signature = formSignStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;

    //var orderData = document.getElementById(getElementFullID(element, elementId, "orderData")).value;
    //orderData = orderData + formOrderStr(element, elementId, fields);
    orderData = formOrderStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;

}

// bsa 23.04.2010: функция получения массива полей для Подписавшего лица (общая для ФЛ или ЮЛ)
function getSignStaffSubFields() {

    return [// Подписавшее лицо
                "inputTextPersonPaNameF",
                "inputTextPersonPaNameI",
                "inputTextPersonPaNameO",
                "inputTextPersonPaEmail",

                //Документы подписавшего
                "inputPassportDocumName",
                "inputPassportDocumSeries",
                "inputPassportDocumNumber",
                "inputPassportDate",
                "inputPassportDocumIssueAgency",

                // Доверенность подписавшего
                "inputTrustyDocumNumber",
                "inputTrustyDocumDate",
                "inputTrustyStatusDoc"]
}

// bsa 23.04.2010: функция получения массива полей для Руководителя (общая для ЮЛ в Заявках и Аккредитациях)
function getManagerFields() {

     fields = ["inputTextRepFName",
                "inputTextRepName",
                "inputTextRepSName",
                "inputTextDlaName",
                "inputTextSstaffFoundation",
                "inputTextStaffPhone"]
     return fields;
}

// bsa 23.04.2010: общая функция по заявкам для ФЛ или ЮЛ
function setApplictionLotSignStr (indPerson, pageMode, indEdit, lotWbUnid, element, elementId) {
   if (indPerson > 0) {
       setApplictionLotSignStrPers (pageMode, indEdit, lotWbUnid, element, elementId)
   } else {
       setApplictionLotSignStrSub (pageMode, indEdit, lotWbUnid, element, elementId)
   }
}

function setApplictionLotSignStrRefuse(element, elementId) {
    fields =   ["outputTextLotNoticeNum",
                "outputTextDoTypeStateName",
                "outputTextAuctionerName",
                "outputTextTypeAuctionName",
                "outputTextDoAuctionTheme",
                "outputTextApplicatNumber",
                "outputTextApplicatDate",
                "outputTextApplicatTypeStateName"];

    var signature = document.getElementById(getElementFullID(element, elementId, "signature")).value;
    signature = signature + formSignStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;

    var orderData = document.getElementById(getElementFullID(element, elementId, "orderData")).value;
    orderData = orderData + formOrderStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;
}

function setAccreditationSignStrRefuse(element, elementId) {
    fields =   ["outputTextSgCategory",
                "waAccreditationNum",
                "waAccreditationDate",
                "waAccreditationDateB",
                "waAccreditationDateE",
                "outputTextTypeStateName"];

    //var signature = document.getElementById(getElementFullID(element, elementId, "signature")).value;
    //signature = signature + formSignStr(element, elementId, fields);
    signature = formSignStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;

    //var orderData = document.getElementById(getElementFullID(element, elementId, "orderData")).value;
    //orderData = orderData + formOrderStr(element, elementId, fields);
    orderData = formOrderStr(element, elementId, fields);
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;

}

function setAuctionLotListSignStr(element, elementId) {
    signature = "";
    orderData = "";
    i = 0;
    var doPublHeader;
    //var costBValue ;
    var lotNumber;
    do{
        doPublHeader = document.getElementById("form1:lotListTable:"+i+":doPublHeader");
        if (doPublHeader!=null){
            signature += "doPublHeader"+ i + "=" + doPublHeader.innerText + "|";
            orderData += "doPublHeader"+ i + "|";
        }
        /*costBValue = document.getElementById("form1:lotListTable:"+i+":costBValue");
        if (costBValue!=null){
            signature += "costBValue"+ i + "=" + costBValue.innerText + "|";
            orderData += "costBValue"+ i + "|";
        }*/
        lotNumber = document.getElementById("form1:lotListTable:"+i+":lotNumber");
        if (lotNumber!=null){
            signature += "lotNumber"+ i + "=" + lotNumber.innerText + "|";
            orderData += "lotNumber"+ i + "|";
        }
        i++;
    }while(doPublHeader!=null);

    document.getElementById(getElementFullID(element, elementId, "signature")).value = signature;
    document.getElementById(getElementFullID(element, elementId, "orderData")).value = orderData;

}

