christian@6197: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde bh@6189: * Software engineering by Intevation GmbH bh@6189: * bh@6189: * This file is Free Software under the GNU AGPL (>=v3) bh@6189: * and comes with ABSOLUTELY NO WARRANTY! Check out the bh@6189: * documentation coming with Dive4Elements River for details. bh@6189: */ bh@6189: bh@6189: package org.dive4elements.river.client.client.ui; bh@6189: rrenkert@6272: import com.smartgwt.client.types.FormMethod; rrenkert@6272: import com.smartgwt.client.widgets.form.DynamicForm; rrenkert@6272: import com.smartgwt.client.widgets.form.fields.LinkItem; rrenkert@6272: import com.smartgwt.client.widgets.form.fields.events.ClickEvent; rrenkert@6272: import com.smartgwt.client.widgets.form.fields.events.ClickHandler; bh@6189: import com.google.gwt.safehtml.shared.SafeHtmlUtils; bh@6189: bh@6189: import org.dive4elements.river.client.client.FLYS; bh@6189: bh@6189: public class WikiLinks bh@6189: { aheinecke@6230: public static String imageLinkHTML(FLYS instance, String url, String imageUrl) { aheinecke@6230: String saml = null; aheinecke@6230: if (instance != null && instance.getCurrentUser() != null) { aheinecke@6230: saml = instance.getCurrentUser().getSamlXMLBase64(); aheinecke@6230: } aheinecke@6230: String quotedUrl = SafeHtmlUtils.htmlEscape(url); aheinecke@6230: String quotedImage = SafeHtmlUtils.htmlEscape(imageUrl); aheinecke@6230: aheinecke@6230: if (saml != null) { aheinecke@6230: return "
" aheinecke@6230: + "" aheinecke@6230: + "" aheinecke@6230: + "
"; aheinecke@6230: } aheinecke@6230: else { aheinecke@6230: return ""; aheinecke@6230: } aheinecke@6230: } aheinecke@6230: rrenkert@6272: public static DynamicForm linkHTML(FLYS flys, String url, String text) { bh@6189: String saml = flys.getCurrentUser().getSamlXMLBase64(); bh@6189: String quotedUrl = SafeHtmlUtils.htmlEscape(url); bh@6189: String quotedText = SafeHtmlUtils.htmlEscape(text); bh@6189: if (saml != null) { rrenkert@6272: final DynamicForm form = new DynamicForm(); rrenkert@6272: form.setMethod(FormMethod.POST); rrenkert@6272: form.setTarget("_blank"); rrenkert@6272: form.setAction(quotedUrl); rrenkert@6272: form.setCanSubmit(true); rrenkert@6272: LinkItem item = new LinkItem("saml"); rrenkert@6272: item.setShowTitle(false); rrenkert@6272: item.setLinkTitle(quotedText); rrenkert@6272: item.setValue(SafeHtmlUtils.htmlEscape(saml)); rrenkert@6272: item.addClickHandler(new ClickHandler() { rrenkert@6272: @Override rrenkert@6272: public void onClick(ClickEvent event) { rrenkert@6272: form.submitForm(); rrenkert@6272: } rrenkert@6272: }); rrenkert@6272: form.setFields(item); rrenkert@6272: return form; bh@6189: } bh@6189: else { rrenkert@6272: DynamicForm form = new DynamicForm(); rrenkert@6272: LinkItem item = new LinkItem(quotedText); rrenkert@6272: item.setShowTitle(false); rrenkert@6272: item.setTarget(quotedUrl); rrenkert@6272: return form; bh@6189: } bh@6189: } bh@6189: }