ContactsModalStructure.js 2 KB
import _ from 'lodash';
import  LemaApi  from '../../service/service.js';

class ContactModals {

    AddContactRequest = (cntSin, modalName) => {
        let contactsStructure = JSON.parse(localStorage.getItem("ContactsModel"));
        
        if (contactsStructure.Contacts.length != 0)
        {
            _.remove(contactsStructure.Contacts, function(obj){
                return obj.ContactFormName === modalName;
            } )        
        }

        contactsStructure.Contacts.push(cntSin);
        localStorage.setItem("ContactsModel", JSON.stringify(contactsStructure));

        /*contactsStructure = {
            "Contacts" : [
                ContactStructure = {
                    ContactFormName: "",
                    BusinessName: "",
                    Email: "",
                    PhoneNumber: "",
                    PrivacyAck: false,
                    AllowContact: false
                }                 
            ]
        }*/

        //localStorage.setItem("ContactsModel", JSON.stringify(response.data));  
    }

    GetAndSaveModalInfo = (contactModalName, name, contactValue, modalPrivacy, adAccepted) => {

        let email = 
            (/^[A-Za-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$/.test(contactValue)) ?
                contactValue : "";
        let phone = 
            (/^\+?\d+$/.test(contactValue)) ?
                contactValue : "";
                    
        let contactsStruct =
            {
                ContactFormName: contactModalName,
                BusinessName: name,
                Email: email,
                PhoneNumber: phone,
                PrivacyAck: modalPrivacy,
                AllowContact: adAccepted
            };
        
        this.AddContactRequest(contactsStruct, contactModalName);
        
        const lemaApi = new LemaApi();
        lemaApi.saveContactData(JSON.parse(localStorage.getItem("ContactsModel")));
        
        return null;
    }
}

export {ContactModals}