+ addSimpleCommentOperation(new DeleteEntityOperation("delete"));
+ }
+
+ /** {@inheritDoc} */
+ public String getAdminPageGenerator(String aPage, Map aTemplateData, EntityAdapter aUser,
+ String aDefault) throws MirLocalizerExc {
+ return aDefault;
+ }
+
+ /** {@inheritDoc} */
+ public Generator prepareArticlePreview(String aPreviewPage, EntityAdapter anArticle,
+ Map aContext) throws MirLocalizerExc {
+ MirGlobal.localizer().producerAssistant().initializeGenerationValueSet(aContext);
+ aContext.put("article", anArticle);
+
+ try {
+ aContext.put(
+ "language",
+ MirGlobal.localizer().dataModel().adapterModel().makeEntityAdapter("language",
+ new ModuleLanguage().languageForCode(configuration.getString("Mir.Localizer.Admin.ArticlePreviewLanguage"))));
+ }
+ catch (EntityAdapterFailure e) {
+ throw new MirLocalizerFailure("Can't create entity adapter", e);
+ }
+ catch (ModuleExc e) {
+ throw new MirLocalizerFailure("Can't find language", e);
+ }
+ aContext.put("pathprefix", configuration.getString("Mir.Localizer.Admin.ArticlePreviewLanguage"));
+
+ aContext.put("lang",
+ new BundleGeneratorFunction(
+ new Bundle[] {
+ MirGlobal.getBundleFactory().getBundle(
+ "etc/bundles/producer",
+ new String[] {
+ configuration.getString("Mir.Localizer.Admin.ArticlePreviewLanguage") }) }));
+
+
+ if (previewPages.containsKey(aPreviewPage)) {
+ try {
+ return MirGlobal.localizer().generators().makeAdminGeneratorLibrary().
+ makeGenerator((String) previewPages.get(aPreviewPage), null);
+ }
+ catch (GeneratorExc e) {
+ throw new MirLocalizerFailure(e);
+ }
+ }
+ throw new MirLocalizerExc("Unknown preview: " + aPreviewPage);