package org.smartly.packages.cms.impl.cms.page.mongodb.entities;
import com.mongodb.DBObject;
import org.smartly.commons.util.StringUtils;
import org.smartly.packages.mongo.impl.MongoObject;
import org.smartly.packages.mongo.impl.util.MongoUtils;
import java.util.List;
/**
* Userpage.
* Users can create pages and every page is positioned into this collection.
*/
public class CMSPageEntity extends MongoObject {
// ------------------------------------------------------------------------
// Constants
// ------------------------------------------------------------------------
public static final String COLLECTION = "cmspages";
public static final String PARENT = "parent";
public static final String TEMPLATE = "template";
public static final String TITLE = "title";
public static final String SUBTITLE = "subtitle";
public static final String DESCRIPTION = "description";
public static final String KEYWORDS = "keywords";
public static final String LOGO = "logo";
public static final String DATA = "data";
public static final String EXCERPT = "excerpt";
public static final String CONTENT = "content";
// --------------------------------------------------------------------
// Constructor
// --------------------------------------------------------------------
public CMSPageEntity() {
this.init();
}
// ------------------------------------------------------------------------
// p r i v a t e
// ------------------------------------------------------------------------
private void init() {
CMSPageEntity.setId(this, MongoUtils.createUUID());
}
// --------------------------------------------------------------------
// S T A T I C
// --------------------------------------------------------------------
public static String getId(final DBObject item) {
return MongoUtils.getString(item, ID);
}
public static void setId(final DBObject item, final String value) {
MongoUtils.put(item, ID, value);
}
public static String getParent(final DBObject item) {
return MongoUtils.getString(item, PARENT);
}
public static void setParent(final DBObject item, final String value) {
MongoUtils.put(item, PARENT, value);
}
public static String getTemplate(final DBObject item, final String lang) {
final String field = TEMPLATE;
final String result = MongoUtils.getString(item, field.concat("_").concat(lang));
return StringUtils.hasText(result) ? result : MongoUtils.getString(item, field);
}
public static void setTemplate(final DBObject item, final String lang, final String value) {
final String field = TEMPLATE;
final String key = StringUtils.hasText(lang) ? field.concat("_").concat(lang) : field;
MongoUtils.put(item, key, value);
}
public static String getTitle(final DBObject item, final String lang) {
final String field = TITLE;
final String result = MongoUtils.getString(item, field.concat("_").concat(lang));
return StringUtils.hasText(result) ? result : MongoUtils.getString(item, field);
}
public static void setTitle(final DBObject item, final String lang, final String value) {
final String field = TITLE;
final String key = StringUtils.hasText(lang) ? field.concat("_").concat(lang) : field;
MongoUtils.put(item, key, value);
}
public static void setLogo(final DBObject item, final String lang, final String value) {
final String field = SUBTITLE;
final String key = StringUtils.hasText(lang) ? field.concat("_").concat(lang) : field;
MongoUtils.put(item, key, value);
}
public static String getSubtitle(final DBObject item, final String lang) {
final String field = SUBTITLE;
final String result = MongoUtils.getString(item, field.concat("_").concat(lang));
return StringUtils.hasText(result) ? result : MongoUtils.getString(item, field);
}
public static String getDescription(final DBObject item, final String lang) {
final String field = DESCRIPTION;
final String result = MongoUtils.getString(item, field.concat("_").concat(lang));
return StringUtils.hasText(result) ? result : MongoUtils.getString(item, field);
}
public static void setDescription(final DBObject item, final String lang, final String value) {
final String field = DESCRIPTION;
final String key = StringUtils.hasText(lang) ? field.concat("_").concat(lang) : field;
MongoUtils.put(item, key, value);
}
public static String getLogo(final DBObject item, final String lang) {
final String field = LOGO;
final String result = MongoUtils.getString(item, field.concat("_").concat(lang));
return StringUtils.hasText(result) ? result : MongoUtils.getString(item, field);
}
public static void setSubtitle(final DBObject item, final String lang, final String value) {
final String field = LOGO;
final String key = StringUtils.hasText(lang) ? field.concat("_").concat(lang) : field;
MongoUtils.put(item, key, value);
}
}