{"lang":"en","logoFile":"IPADWebsiteLogoSM-Grey-textt.png","favicon":"WebsiteLogoSM-Grey.png","browserTitle":"Miami Orlando Photographer Barry Grossman Architectural Photography | Interior Photographer | Luxury Resort Hotel Photographer","metaDescription":"Miami Orlando Architectural Photographer + Interior Design Photographer Barry Grossman - Resort | Hotel | Residential | Commercial - Miami, Orlando, Las Vegas","metaKeywords":"Interior Architecture Luxury Resort Professional Design Interiors Architectural Hotel  Photography Photographer","cdnSslUri":"/pf-media","redirects":[],"blogSectionId":"124","advancedSeo":false,"globalBrowserTitle":false,"facebookUseMeta":false,"enablePinterest":false,"siteHead":"<!-- Google tag (gtag.js) --> <script async src=\"https://www.googletagmanager.com/gtag/js?id=AW-810009256\"></script> <script>   window.dataLayer = window.dataLayer || [];   function gtag(){dataLayer.push(arguments);}   gtag('js', new Date());    gtag('config', 'AW-810009256'); </script>\n\n<script>\n  document.addEventListener('click', function(e) {\n    if (e.target.closest('button') && e.target.closest('button').innerText.includes(\"Submit\")) {\n      var setTimer = setInterval(function() {\n        if (document.querySelector('.SiteView.invertSite h3')) {\n          gtag('event', 'conversion', {\n            'send_to': 'AW-810009256/-RB7CL7gjMUZEKiFn4ID'\n          });\n          clearInterval(setTimer);\n        }\n      }, 1000);\n    }\n  }, true);\n\n</script>\n\n<script>\n  window.addEventListener('load', function() {\n    if (window.location.pathname == '/') {\n      gtag('event', 'conversion', {\n        'send_to': 'AW-810009256/J28bCIuk_8QZEKiFn4ID'\n      });\n    }\n  });\n\n</script>","siteBody":"<!-- GOOGLE PLACES -->\n<script src=\"https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&libraries=places\"></script>\n<script>\nfunction JSONXHR(v) {\n  function removeNonPrintingChars(str) {\n    return typeof str === 'string' ? str.replace(/\\u2028|\\u2029/g, '') : str;\n  }\n  var xhr = new XMLHttpRequest();\n  xhr.addEventListener(\"load\", response);\n  xhr.addEventListener(\"error\", error);\n  xhr.addEventListener(\"abort\", error);\n  xhr.open(v.method || \"POST\", v.url);\n  xhr.setRequestHeader('Content-Type', 'application/json; charset=utf-8');\n  xhr.send(removeNonPrintingChars(JSON.stringify(v.params)));\n\n  function response(e) {\n    if (e.target.response) v.callback(JSON.parse(e.target.response));\n    else v.callback();\n  }\n  function error(e) {\n    if (typeof v.onError === 'function') v.onError(e);\n    else console.error(e);\n  }\n}\n\nfunction setInputWarn(el, warning) {\n  var orig = el.value;\n  el.style.color = '#DD2222';\n  el.value = warning;\n  setTimeout(() => {\n    el.style.color = '';\n    el.value = orig;\n  }, 1500);\n}\n\nfunction submitContact() {\n  const fullName  = document.getElementById(\"fullName\"),\n        email     = document.getElementById(\"email\"),\n        phone     = document.getElementById(\"phone\"),\n        address   = document.getElementById(\"address\"),\n        about     = document.getElementById(\"about\"),\n        project   = document.getElementById(\"project\"),\n        startDate = document.getElementById(\"startDate\"),\n        endDate   = document.getElementById(\"endDate\"),\n        images    = document.getElementById(\"images\"),\n        budget    = document.getElementById(\"budget\"),\n        parties   = document.getElementById(\"additionalParties\"),\n        btn       = document.getElementById(\"contactButton\"),\n        success   = document.getElementById(\"success\"),\n        errorMsg  = document.getElementById(\"error\");\n\n  [ fullName, email, btn ].forEach(el => el.style.opacity = '1');\n  success.style.opacity = errorMsg.style.opacity = '0';\n\n  const emailCheck = /^\\w+@[a-zA-Z_]+?\\.[a-zA-Z]{2,}$/;\n  if (!fullName.value) return setInputWarn(fullName, 'Enter your name');\n  if (!email.value) return setInputWarn(email, 'Enter your email');\n  if (!email.value.match(emailCheck)) return setInputWarn(email, 'Enter a valid email');\n\n  const [firstName, ...rest] = fullName.value.trim().split(\" \");\n  const lastName = rest.join(\" \");\n  const dates = (startDate.value && endDate.value)\n    ? `${startDate.value} to ${endDate.value}`\n    : (startDate.value || endDate.value || '—');\n\n  const mediaChecks = document.querySelectorAll('.checkbox-group input[type=\"checkbox\"]:checked');\n  const mediaValues = Array.from(mediaChecks).map(cb => cb.value).join(\", \") || '—';\n\n  const combinedComments =\n    \"<strong>About You:</strong><br>\" +\n    (about.value || '—') + \"<br><br>\" +\n\n    \"<strong>Project Info:</strong><br>\" +\n    (project.value || '—') + \"<br><br>\" +\n\n    \"<strong>Address & Logistics:</strong><br>\" +\n    \"Project Address: \" + (address.value || '—') + \"<br>\" +\n    \"Shoot Dates: \" + dates + \"<br>\" +\n    \"Number of Images: \" + (images.value || '—') + \"<br>\" +\n    \"Media: \" + mediaValues + \"<br>\" +\n    \"Budget: \" + (budget.value || '—') + \"<br><br>\" +\n\n    \"<strong>Additional Parties for Cost-Sharing:</strong><br>\" +\n    (parties.value || '—') + \"<br><br>\" +\n\n    \"<strong>Contact Info:</strong><br>\" +\n    \"Phone: \" + (phone.value || '—');\n\n  JSONXHR({\n    url: '/dx/siteservice/email/contact',\n    params: {\n      Title:   \"Quote Request\",\n      Name:    fullName.value,\n      Email:   email.value,\n      Phone:   phone.value || '—',\n      Address: address.value || '—', \n      toEmail: \"grossmanphotography@gmail.com, barry@grossmanphoto.com\",\n      subject: \"New Quote Request\",\n      Comments: combinedComments\n    },\n    callback: function(r) {\n      [ fullName, email, btn ].forEach(el => el.style.opacity = '0');\n      if (r.status === 'pass') success.style.opacity = '1';\n      else errorMsg.style.opacity = '1';\n    }\n  });\n}\n</script>","enableCookieBanner":false,"cookieBannerPosition":"bottom","cookieBannerMessage":"By continuing to visit this site you agree to our use of cookies.","localMasterVersion":"16.0","dev":false,"adminLockout":false,"rsSslUri":"https://3553780384f3502a3f9a-950c98ad79f09df6d37b35f914ae4e93.ssl.cf1.rackcdn.com","portfolioEmailMessage":"Check out this photograph:","copyright":" © Barry Grossman - Architectural Interior Design Photographer | Miami - Orlando - Florida | Marriott Approved Photographer | (954)448-3080","customFonts":["Lekton:400:Lekton-Regular:custom"],"inquiryInfo":"","currentTemplate":9,"revision":298,"socialLinks":[],"demoDataIds":{"mediaIds":[10109,10125,10128,10011,10009,10119,10115,10121,10122,10113,10124,10112,10114,10130,10126,10131,10117,10012,10120,10123,10127,10129,10110,10010,10118,10132,10133,10134,10135,10136,10137,10138,10139,10140,10141,10142,10143,10144,10145,10147,10148,10149,10150,10151,10153,10155,10156,10157,10161,10162,10163,10164,10165,10166,10167,10168,10169,10170,10171,10172,10173,10175,10176,10178,10179,10180,10181,10182,10183,10184,10186,10187,10188,10189,10190,10191,10192,10193,10194,10195,10196,10197,10199,10200,10201,10202,10203,10204,10205,10206,10207,10208,10209,10210,10211,10212,10213,10214,10215,10216,10217,10218,10219,10220,10221,10222,10223,10224,10225,10226,10227,10228,10229,10230,10231,10232,10233,10234,10235,10236,10237,10238,10239,10240,10241,10242,10243,10244,10245,10246,10247,10248,10249,10250,10251,10252,10254,10256,10257,10258,10259,10260,10261,10263,10264,10265,10266,10267,10268,10269,10270,10271,10272,10273,10274,10275,10276,10277,10278,10279,10280,10281,10282,10283,10284,10286,10287,10289,10293,10294,10295,10297,10298],"sectionIds":[30,27,33,34,35,36,37,38,40,39,43]},"accountName":"grossmanphotocom","filters":["Interior","Lifestyle","Scenic","details","exterior","fonts","social","text pages","bulk download"],"globalBetaVersion":"16.1","backgroundImages":[],"betaProgramVisible":true,"contactInfo":"\n\n","globalMasterVersion":"16.0","logoText":"Architectural Photographer Interior Design Photographer Orlando Florida Barry Grossman","betaProgramEnabled":false,"adminSortDefault":"dateAdded descending","defaultEditorMode":"source","padUseDesktop":false,"podUseDesktop":false,"useHTML":true,"inquiryTitle":"","generalEmail":""}