List of usage examples for com.liferay.portal.kernel.xml Element attributeValue
public String attributeValue(String name);
From source file:com.liferay.journal.service.impl.JournalArticleLocalServiceImpl.java
License:Open Source License
/** * @deprecated As of 3.4.0, replaced by {@link * #createFieldsValuesMap(Element, Locale)} */// w w w .j ava2 s .co m @Deprecated protected Map<String, LocalizedValue> createFieldsValuesMap(Element parentElement) { Locale defaultLocale = LocaleUtil.fromLanguageId(parentElement.attributeValue("default-locale")); return createFieldsValuesMap(parentElement, defaultLocale); }
From source file:com.liferay.journal.service.impl.JournalArticleLocalServiceImpl.java
License:Open Source License
protected Map<String, LocalizedValue> createFieldsValuesMap(String content) { try {//from ww w . ja va2 s . c om Document document = SAXReaderUtil.read(content); Element rootElement = document.getRootElement(); Locale defaultLocale = LocaleUtil.fromLanguageId(rootElement.attributeValue("default-locale")); return createFieldsValuesMap(rootElement, defaultLocale); } catch (DocumentException de) { throw new SystemException(de); } }
From source file:com.liferay.journal.test.util.JournalTestUtil.java
License:Open Source License
public static Map<String, Map<String, String>> getXsdMap(String xsd) throws Exception { Map<String, Map<String, String>> map = new HashMap<>(); Document document = UnsecureSAXReaderUtil.read(xsd); XPath xPathSelector = SAXReaderUtil.createXPath("//dynamic-element"); List<Node> nodes = xPathSelector.selectNodes(document); for (Node node : nodes) { Element dynamicElementElement = (Element) node; String type = dynamicElementElement.attributeValue("type"); if (Objects.equals(type, "selection_break")) { continue; }/* www . ja v a2 s.c om*/ String name = dynamicElementElement.attributeValue("name"); map.put(name, _getMap(dynamicElementElement)); } return map; }
From source file:com.liferay.journal.test.util.JournalTestUtil.java
License:Open Source License
private static Map<String, String> _getMap(Element dynamicElementElement) { Map<String, String> map = new HashMap<>(); Element parentElement = dynamicElementElement.getParent(); String parentType = parentElement.attributeValue("type"); // Attributes for (Attribute attribute : dynamicElementElement.attributes()) { // Option element should not contain index type atribute if ((Objects.equals(parentType, "list") || Objects.equals(parentType, "multi-list")) && Objects.equals(attribute.getName(), "index-type")) { continue; }/*from w w w . j a v a 2 s. c o m*/ map.put(attribute.getName(), attribute.getValue()); } // Metadata Element metadadataElement = dynamicElementElement.element("meta-data"); if (metadadataElement == null) { return map; } List<Element> entryElements = metadadataElement.elements("entry"); for (Element entryElement : entryElements) { map.put(entryElement.attributeValue("name"), entryElement.getText()); } return map; }
From source file:com.liferay.journal.transformer.ContentTransformerListener.java
License:Open Source License
protected String injectEditInPlace(String script, Document document) { if (!script.contains("$editInPlace(")) { return script; }//from w ww . j ava 2 s . c o m try { List<Node> nodes = document.selectNodes("//dynamic-element"); for (Node node : nodes) { Element element = (Element) node; String name = GetterUtil.getString(element.attributeValue("name")); String type = GetterUtil.getString(element.attributeValue("type")); if (!name.startsWith("reserved-") && (type.equals("text") || type.equals("text_area") || type.equals("text_box"))) { script = wrapEditInPlaceField(script, name, type, "data"); script = wrapEditInPlaceField(script, name, type, "getData()"); } } } catch (Exception e) { if (_log.isWarnEnabled()) { _log.warn(e.getMessage()); } } return script; }
From source file:com.liferay.journal.transformer.LocaleTransformerListener.java
License:Open Source License
protected void filter(Element dynamicElementElement, DDMStructure ddmStructure, String name, String defaultLanguageId) throws PortalException { boolean localizable = GetterUtil.getBoolean(ddmStructure.getFieldProperty(name, "localizable")); List<Element> dynamicContentElements = dynamicElementElement.elements("dynamic-content"); for (Element dynamicContentElement : dynamicContentElements) { String languageId = dynamicContentElement.attributeValue("language-id"); if (!localizable && !languageId.equals(defaultLanguageId)) { dynamicElementElement.remove(dynamicContentElement); }//from ww w .j a va2 s. c om } }
From source file:com.liferay.journal.transformer.LocaleTransformerListener.java
License:Open Source License
protected void filterByLocalizability(Element root, String defaultLanguageId, DDMStructure ddmStructure) throws PortalException { for (Element element : root.elements("dynamic-element")) { String name = element.attributeValue("name"); if (!ddmStructure.hasField(name)) { continue; }// w w w .j ava 2 s . co m if (!ddmStructure.isFieldTransient(name)) { filter(element, ddmStructure, name, defaultLanguageId); } filterByLocalizability(element, defaultLanguageId, ddmStructure); } }
From source file:com.liferay.journal.util.impl.JournalConverterImpl.java
License:Open Source License
@Override public Fields getDDMFields(DDMStructure ddmStructure, Document document) throws PortalException { Field fieldsDisplayField = new Field(ddmStructure.getStructureId(), DDMImpl.FIELDS_DISPLAY_NAME, StringPool.BLANK);//from www . j a v a 2s.c o m Fields ddmFields = new Fields(); ddmFields.put(fieldsDisplayField); Element rootElement = document.getRootElement(); String[] availableLanguageIds = StringUtil.split(rootElement.attributeValue("available-locales")); String defaultLanguageId = rootElement.attributeValue("default-locale"); List<Element> dynamicElementElements = rootElement.elements("dynamic-element"); for (Element dynamicElementElement : dynamicElementElements) { addDDMFields(dynamicElementElement, ddmStructure, ddmFields, availableLanguageIds, defaultLanguageId); } return ddmFields; }
From source file:com.liferay.journal.util.impl.JournalUtil.java
License:Open Source License
public static String mergeArticleContent(String curContent, String newContent, boolean removeNullElements) { try {/*from w w w .j ava 2 s. c o m*/ Document curDocument = SAXReaderUtil.read(curContent); Document newDocument = SAXReaderUtil.read(newContent); Element curRootElement = curDocument.getRootElement(); Element newRootElement = newDocument.getRootElement(); curRootElement.addAttribute("default-locale", newRootElement.attributeValue("default-locale")); curRootElement.addAttribute("available-locales", newRootElement.attributeValue("available-locales")); _mergeArticleContentUpdate(curDocument, newRootElement, LocaleUtil.toLanguageId(LocaleUtil.getSiteDefault())); if (removeNullElements) { _mergeArticleContentDelete(curRootElement, newDocument); } curContent = XMLUtil.formatXML(curDocument); } catch (Exception e) { _log.error(e, e); } return curContent; }
From source file:com.liferay.journal.util.impl.JournalUtil.java
License:Open Source License
public static String removeArticleLocale(Document document, String content, String languageId) { try {//from www . j av a 2s .c om Element rootElement = document.getRootElement(); String availableLocales = rootElement.attributeValue("available-locales"); if (availableLocales == null) { return content; } availableLocales = StringUtil.removeFromList(availableLocales, languageId); if (availableLocales.endsWith(",")) { availableLocales = availableLocales.substring(0, availableLocales.length() - 1); } rootElement.addAttribute("available-locales", availableLocales); removeArticleLocale(rootElement, languageId); content = XMLUtil.formatXML(document); } catch (Exception e) { _log.error(e, e); } return content; }