X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Flocalizer%2Fbasic%2FMirBasicAdminInterfaceLocalizer.java;h=da30fb266dd482e8bbac7e4efdb374b3b3de1149;hb=2d3a3231809a1af4e373c3fd13902eeee26728c9;hp=7196ea11618da1f5f1d160286b747cfdf1e16da9;hpb=aa0e25363f8099782b07ad71a627da64ef65ba09;p=mir.git diff --git a/source/mircoders/localizer/basic/MirBasicAdminInterfaceLocalizer.java b/source/mircoders/localizer/basic/MirBasicAdminInterfaceLocalizer.java index 7196ea11..da30fb26 100755 --- a/source/mircoders/localizer/basic/MirBasicAdminInterfaceLocalizer.java +++ b/source/mircoders/localizer/basic/MirBasicAdminInterfaceLocalizer.java @@ -30,39 +30,83 @@ package mircoders.localizer.basic; -import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; import java.util.GregorianCalendar; import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; import java.util.List; -import java.util.*; -import java.util.Vector; +import java.util.Map; +import java.util.Set; +import mir.bundle.Bundle; +import mir.config.MirPropertiesConfiguration; import mir.entity.Entity; import mir.entity.adapter.EntityAdapter; +import mir.entity.adapter.EntityAdapterFailure; +import mir.generator.Generator; +import mir.generator.GeneratorExc; +import mir.log.LoggerWrapper; import mir.misc.StringUtil; -import mir.storage.StorageObjectFailure; +import mir.module.ModuleExc; +import mir.storage.DatabaseFailure; +import mir.util.DateTimeFunctions; +import mir.util.EntityUtility; import mir.util.StringRoutines; +import mir.util.generator.BundleGeneratorFunction; import mircoders.entity.EntityComment; import mircoders.entity.EntityContent; +import mircoders.global.MirGlobal; import mircoders.localizer.MirAdminInterfaceLocalizer; import mircoders.localizer.MirLocalizerExc; import mircoders.localizer.MirLocalizerFailure; +import mircoders.module.ModuleLanguage; import mircoders.storage.DatabaseContent; public class MirBasicAdminInterfaceLocalizer implements MirAdminInterfaceLocalizer { - private Vector simpleCommentOperations; - private Vector simpleArticleOperations; + /** preview page name (String) -> generator name (String) */ + private Map previewPages; + private List previewPageNames; + + private List simpleCommentOperations; + private List simpleArticleOperations; private Map simpleCommentOperationsMap; private Map simpleArticleOperationsMap; - private static SimpleDateFormat dateFormatter = new SimpleDateFormat("dd.MM.yyyy HH:mm"); - public MirBasicAdminInterfaceLocalizer() throws MirLocalizerFailure, MirLocalizerExc { - simpleCommentOperations = new Vector(); - simpleArticleOperations = new Vector(); + protected static LoggerWrapper logger = new LoggerWrapper("Localizer.AdminInterface"); + protected MirPropertiesConfiguration configuration = MirPropertiesConfiguration.instance(); + + public MirBasicAdminInterfaceLocalizer() throws MirLocalizerFailure { + simpleCommentOperations = new ArrayList(); + simpleArticleOperations = new ArrayList(); simpleCommentOperationsMap = new HashMap(); simpleArticleOperationsMap = new HashMap(); + previewPages = new HashMap(); + previewPageNames = new ArrayList(); + + String[] previewConfiguration = configuration.getStringArray("Mir.Localizer.Admin.ArticlePreview"); + + for (int i = 0; i0 && comment.charAt(comment.length()-1)!='\n') { - comment.append('\n'); - } - comment.append(dateFormatter.format((new GregorianCalendar()).getTime())); - comment.append(" "); - try { - comment.append(StringRoutines.interpretAsString(aUser.get("login"))); - } - catch (Throwable t) { - } - comment.append(" "); - comment.append(getName()); - anEntity.setValueForProperty("comment", comment.toString()); - } - }; + anEntity.setFieldValue("is_produced", "0"); + } - protected abstract boolean isAvailable(EntityContent anArticle) throws StorageObjectFailure ; - protected abstract void performModification(EntityAdapter aUser, EntityContent anArticle) throws StorageObjectFailure ; + protected abstract boolean isAvailable(EntityContent anArticle) throws DatabaseFailure ; + protected abstract void performModification(EntityAdapter aUser, EntityContent anArticle) throws DatabaseFailure ; } protected static class SetCommentFieldOperation extends CommentModifyingOperation { @@ -231,11 +332,38 @@ public class MirBasicAdminInterfaceLocalizer implements MirAdminInterfaceLocaliz return true; } - protected void performModification(EntityAdapter aUser, EntityComment aComment) throws StorageObjectFailure { - aComment.setValueForProperty(field, value); + protected void performModification(EntityAdapter aUser, EntityComment aComment) throws DatabaseFailure { + aComment.setFieldValue(field, value); } } + protected static class SetCommentFieldsOperation extends CommentModifyingOperation { + private Map values; + + public SetCommentFieldsOperation(String aName, String aFields[], String aValues[]) { + super(aName); + + values = new HashMap(); + + for (int i=0; i