@RequestMapping("/shop/store/contactus.html") public String displayContact( Model model, HttpServletRequest request, HttpServletResponse response, Locale locale) throws Exception { MerchantStore store = (MerchantStore) request.getAttribute(Constants.MERCHANT_STORE); Language language = (Language) request.getAttribute("LANGUAGE"); ContactForm contact = new ContactForm(); model.addAttribute("contact", contact); model.addAttribute( "recapatcha_public_key", coreConfiguration.getProperty(Constants.RECAPATCHA_PUBLIC_KEY)); Content content = contentService.getByCode(Constants.CONTENT_CONTACT_US, store, language); ContentDescription contentDescription = null; if (content != null && content.isVisible()) { contentDescription = content.getDescription(); } if (contentDescription != null) { // meta information PageInformation pageInformation = new PageInformation(); pageInformation.setPageDescription(contentDescription.getMetatagDescription()); pageInformation.setPageKeywords(contentDescription.getMetatagKeywords()); pageInformation.setPageTitle(contentDescription.getTitle()); pageInformation.setPageUrl(contentDescription.getName()); request.setAttribute(Constants.REQUEST_PAGE_INFORMATION, pageInformation); model.addAttribute("content", contentDescription); } /** template * */ StringBuilder template = new StringBuilder() .append(ControllerConstants.Tiles.Content.contactus) .append(".") .append(store.getStoreTemplate()); return template.toString(); }
@RequestMapping( value = {"/shop/home.html", "/shop/", "/shop"}, method = RequestMethod.GET) public String displayLanding( Model model, HttpServletRequest request, HttpServletResponse response, Locale locale) throws Exception { Language language = (Language) request.getAttribute(Constants.LANGUAGE); MerchantStore store = (MerchantStore) request.getAttribute(Constants.MERCHANT_STORE); Content content = contentService.getByCode("LANDING_PAGE", store, language); /** Rebuild breadcrumb * */ BreadcrumbItem item = new BreadcrumbItem(); item.setItemType(BreadcrumbItemType.HOME); item.setLabel(messages.getMessage(Constants.HOME_MENU_KEY, locale)); item.setUrl(Constants.HOME_URL); Breadcrumb breadCrumb = new Breadcrumb(); breadCrumb.setLanguage(language); List<BreadcrumbItem> items = new ArrayList<BreadcrumbItem>(); items.add(item); breadCrumb.setBreadCrumbs(items); request.getSession().setAttribute(Constants.BREADCRUMB, breadCrumb); request.setAttribute(Constants.BREADCRUMB, breadCrumb); /** * */ if (content != null) { ContentDescription description = content.getDescription(); model.addAttribute("page", description); PageInformation pageInformation = new PageInformation(); pageInformation.setPageTitle(description.getName()); pageInformation.setPageDescription(description.getMetatagDescription()); pageInformation.setPageKeywords(description.getMetatagKeywords()); request.setAttribute(Constants.REQUEST_PAGE_INFORMATION, pageInformation); } ReadableProductPopulator populator = new ReadableProductPopulator(); populator.setPricingService(pricingService); // featured items List<ProductRelationship> relationships = productRelationshipService.getByType( store, ProductRelationshipType.FEATURED_ITEM, language); List<ReadableProduct> featuredItems = new ArrayList<ReadableProduct>(); for (ProductRelationship relationship : relationships) { Product product = relationship.getRelatedProduct(); ReadableProduct proxyProduct = populator.populate(product, new ReadableProduct(), store, language); featuredItems.add(proxyProduct); } model.addAttribute("featuredItems", featuredItems); /** template * */ StringBuilder template = new StringBuilder().append("landing.").append(store.getStoreTemplate()); return template.toString(); }