import mir.entity.Entity;
import mir.misc.StringUtil;
-import mir.session.*;
+import mir.session.Request;
+import mir.session.Response;
+import mir.session.Session;
+import mir.session.SessionExc;
+import mir.session.SessionFailure;
+import mir.session.ValidationHelper;
+import mir.util.EntityUtility;
import mircoders.entity.EntityContent;
import mircoders.global.MirGlobal;
import mircoders.media.MediaUploadProcessor;
import mircoders.module.ModuleArticleType;
-import mircoders.module.ModuleContent;
import mircoders.module.ModuleMediafolder;
-import mircoders.storage.*;
+import mircoders.storage.DatabaseContent;
+import mircoders.storage.DatabaseContentToMedia;
+import mircoders.storage.DatabaseContentToTopics;
-import java.util.*;
+import java.util.GregorianCalendar;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
/**
* Extensible handler for open article postings
*/
public class MirBasicArticlePostingHandler extends MirBasicPostingSessionHandler {
- protected ModuleContent contentModule = new ModuleContent();
protected DatabaseContentToMedia contentToMedia = DatabaseContentToMedia.getInstance();
protected DatabaseContent contentDatabase = DatabaseContent.getInstance();
protected void initializeResponseData(Request aRequest, Session aSession, Response aResponse) throws SessionExc, SessionFailure {
super.initializeResponseData(aRequest, aSession, aResponse);
- Iterator i = DatabaseContent.getInstance().getFields().iterator();
+ Iterator i = DatabaseContent.getInstance().getFieldNames().iterator();
while (i.hasNext()) {
String field = (String) i.next();
aResponse.setResponseValue(field, aRequest.getParameter(field));
String id;
Map values = getIntersectingValues(aRequest, DatabaseContent.getInstance());
- EntityContent article = (EntityContent) contentModule.createNew();
+ EntityContent article = (EntityContent) contentDatabase.createNewEntity();
article.setFieldValues(values);
finalizeArticle(aRequest, aSession, article);
}
}
+ public void processAttachmentError(Request aRequest, Session aSession, Attachment aFile, Throwable anError) {
+ EntityUtility.appendLineToField( ((EntityContent) aSession.getAttribute("content")), "comment",
+ "error with attachment: " + anError.toString());
+ ((EntityContent) aSession.getAttribute("content")).update();
+ }
+
public void processAttachment(Request aRequest, Session aSession, Attachment aFile) throws SessionExc, SessionFailure {
try {
Map values = new HashMap();
MirGlobal.abuse().checkArticle(article, aRequest, null);
try {
- MirGlobal.localizer().openPostings().afterContentPosting(article);
+ MirGlobal.localizer().openPostings().afterArticlePosting(article);
}
catch (Throwable t) {
throw new SessionFailure(t);
}
logger.info("article posted");
- };
+ }
}