@Override public URL create(E entity, Tenant tenant, URLType type) { String path = "/" + getPluralForm(entity) + "/" + entity.getSlug(); switch (type) { case API: path = "/api/" + path; return urlHelper.getTenantPlatformURL(tenant, path); case PUBLIC: default: return urlHelper.getTenantWebURL(tenant, path); } }
data.put(BasePaymentData.BASE_WEB_URL, urlHelper.getContextWebBaseURL()); data.put(BasePaymentData.BASE_PLATFORM_URL, urlHelper.getContextPlatformBaseURL()); urlHelper.getContextWebURL(CheckoutResource.PATH + "/" + CheckoutResource.PAYMENT_CANCEL_PATH + "/" + order.getId()).toString()); data.put(BasePaymentData.RETURN_URL, urlHelper.getContextWebURL(CheckoutResource.PATH + "/" + CheckoutResource.PAYMENT_RETURN_PATH + "/" + order.getId()).toString());
@GET @Path("shops") @Produces(MediaType.APPLICATION_JSON) public Response getShop(@QueryParam("offset") @DefaultValue("0") Integer offset, @QueryParam("number") @DefaultValue("25") Integer number) { Client client = getSearchEngine().getClient(); SearchResponse response = client.prepareSearch("entities").setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom(offset) .setSize(number) .setTypes("tenant") .setExplain(false) .execute() .actionGet(); List<Map<String, Object>> result = new ArrayList<Map<String, Object>>(); for (SearchHit hit : response.getHits()) { result.add(hit.getSource()); } String thisAPIHref = urlHelper.getContextPlatformURL("/marketplace/api/shops/?number=" + number + "&offset=" + offset).toString(); ResultSetRepresentation<List<Map<String, Object>>> resultSet = new ResultSetRepresentation(thisAPIHref, number, offset, result, Long.valueOf(response.getHits().getTotalHits()).intValue()); return Response.ok(resultSet).build(); }
@Override public URL create(Tenant entity, Tenant tenant, URLType type) { switch (type) { case API: return urlHelper.getTenantPlatformURL(tenant, "/api/tenant/"); case PUBLIC: default: return urlHelper.getTenantPlatformURL(tenant, ""); } } }
private void sendValidationMail(final User createdUser, AccountsSettings settings, Map<String, Object> additionalContext) { MailTemplate mailTemplate = new MailTemplate().template("account-validation").to(createdUser.getEmail()) .from(generalSettings.getNotificationsEmail()); try { Map<String, Object> context = Maps.newHashMap(); context.putAll(additionalContext); String validationUriTemplate; if (!Strings.isNullOrEmpty(settings.getUserValidationUriTemplate().getValue())) { validationUriTemplate = settings.getUserValidationUriTemplate().getValue(); } else { validationUriTemplate = urlHelper.getContextWebURL("/account/validation/${validationKey}").toString(); } SimpleTemplateEngine templateEngine = new SimpleTemplateEngine(); groovy.text.Template uriTemplate = templateEngine.createTemplate(validationUriTemplate); context.put("validationLink", uriTemplate.make(new HashMap() { { put("validationKey", createdUser.getValidationKey()); } }).toString()); context.put("siteName", siteSettings.getName()); mailTemplateService.sendTemplateMail(mailTemplate, context); } catch (MailException | ClassNotFoundException | IOException e) { logger.error("Failed to send validation email", e); } }
context.put("siteUrl", urlHelper.getTenantWebURL(tenant, "").toString()); context.put("backOfficeUrl", urlHelper.getTenantBackOfficeURL(tenant, "").toString());
@GET @Path("products") @Produces(MediaType.APPLICATION_JSON) public Response getProducts(@QueryParam("offset") @DefaultValue("0") Integer offset, @QueryParam("number") @DefaultValue("25") Integer number) { Client client = getSearchEngine().getClient(); SearchResponse response = client.prepareSearch("entities").setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom(offset) .setSize(number) .setTypes("product") .setExplain(false) .execute() .actionGet(); List<Map<String, Object>> result = new ArrayList<Map<String, Object>>(); for (SearchHit hit : response.getHits()) { result.add(hit.getSource()); } String thisAPIHref = urlHelper.getContextPlatformURL("/marketplace/api/products?number=" + number + "&offset=" + offset).toString(); ResultSetRepresentation<List<Map<String, Object>>> resultSet = new ResultSetRepresentation(thisAPIHref, number, offset, result, Long.valueOf(response.getHits().getTotalHits()).intValue()); return Response.ok(resultSet).build(); }
@Override public URL create(Attachment entity, Tenant tenant, URLType type) { String fileName = entity.getSlug() + "." + entity.getExtension(); if (!AttachmentUtils.isImage(fileName)) { throw new UnsupportedOperationException("Not implemented"); } return urlHelper.getTenantPlatformURL(tenant, "/images/" + fileName); }
private void sendPasswordResetMail(User user, final String secret, AccountsSettings settings) { MailTemplate mailTemplate = new MailTemplate().template("password-reset").to(user.getEmail()) .from(generalSettings.getNotificationsEmail()); try { Map<String, Object> context = Maps.newHashMap(); for (UserDataSupplier supplier : userDataSuppliers.values()) { supplier.supply(user, context); } String passwordResetUriLink; if (!Strings.isNullOrEmpty(settings.getUserPasswordResetUriTemplate().getValue())) { passwordResetUriLink = settings.getUserPasswordResetUriTemplate().getValue(); } else { passwordResetUriLink = urlHelper.getContextWebURL("/login/reset-password/${resetKey}").toString(); } SimpleTemplateEngine templateEngine = new SimpleTemplateEngine(); groovy.text.Template uriTemplate = templateEngine.createTemplate(passwordResetUriLink); context.put("resetLink", uriTemplate.make(new HashMap() { { put("resetKey", secret); } }).toString()); context.put("siteName", siteSettings.getName()); mailTemplateService.sendTemplateMail(mailTemplate, context); } catch (MailException | ClassNotFoundException | IOException e) { logger.error("Failed to send validation email", e); } }
public Map<String, Object> purveyDocument(Tenant tenant) { Preconditions.checkNotNull(tenant); this.dao = this.dbi.get().onDemand(CollectionDAO.class); Map<String, Object> extracted = extractSourceFromEntity(tenant, tenant); List<Collection> collections = dao.findAll("collection", tenant.getId()); List<Map<String, Object>> collectionsSource = Lists.newArrayList(); for (Collection collection : collections) { Map<String, Object> collectionSource = extractSourceFromEntity(collection, tenant); collectionSource .put("api_url", urlHelper.getContextPlatformURL("/marketplace/api/shop/" + tenant.getSlug() + "/collections/" + collection.getSlug()).toString()); collectionsSource.add(collectionSource); } extracted.put("collections", collectionsSource); return extracted; } }
context.put("siteUrl", urlHelper.getContextWebURL("").toString());
@GET @Path("shops/{shop}/products") @Produces(MediaType.APPLICATION_JSON) public Response getShopProducts(@PathParam("shop") String shop, @QueryParam("offset") @DefaultValue("0") Integer offset, @QueryParam("number") @DefaultValue("25") Integer number) { Client client = getSearchEngine().getClient(); SearchResponse response = client.prepareSearch("entities").setSearchType(SearchType.DFS_QUERY_THEN_FETCH) .setFrom(offset) .setSize(number) .setTypes("product") .setQuery(QueryBuilders.termQuery("site.slug", shop)) .setExplain(false) .execute() .actionGet(); List<Map<String, Object>> result = new ArrayList<Map<String, Object>>(); for (SearchHit hit : response.getHits()) { result.add(hit.getSource()); } String thisAPIHref = urlHelper.getContextPlatformURL("/marketplace/api/shops/" + shop + "/products?number=" + number + "&offset=" + offset).toString(); ResultSetRepresentation<List<Map<String, Object>>> resultSet = new ResultSetRepresentation(thisAPIHref, number, offset, result, Long.valueOf(response.getHits().getTotalHits()).intValue()); return Response.ok(resultSet).build(); }
urlHelper.getContextPlatformURL((webContext.getTenant() == null ? "marketplace/" : "") + "payment/" + order.getId() + "/acknowledgement/" + gatewayId));