list.next=weiter
list.previous=zurück
+# media - used by image, audio, video and other media
+media.created=erzeugt
+media.changed=letzte änderung
+media.published=publiziert
+media.format=Format
+media.rights=Copyright
+media.type=Typ
+media.mediafolder=Mediafolder
+media.title=Titel
+media.description=Beschreibung
+media.date=Datum/Zusatz
+media.location=Ort
+media.creator=Urheber
+media.keywords=Keywords
+media.comment=Kommentar
+media.source=Quelle
+media.is_published=free to publish
+media.icon=Icon
+
+medialist.search_text_in=Text suchen in
+
# image
image.htmltitle=indymedia.de | image
-image.created=erzeugt
-image.changed=letzte änderung
-image.published=publiziert
-image.format=Format
-image.rights=Copyright
-image.type=Typ
-image.mediafolder=Mediafolder
-image.title=Titel
-image.description=Beschreibung
-image.date=Datum/Zusatz
-image.location=Ort
-image.creator=Urheber
-image.keywords=Keywords
-image.comment=Kommentar
-image.source=Quelle
-image.is_published=free to publish
-image.icon=Icon
-
imagelist.htmltitle=indymedia.de | imagelist
-imagelist.search_text_in=Text suchen in
+
+# audio
+audio.htmltitle=indymedia.de | audio
+audiolist.htmltitle=indymedia.de | audiolist
+
+# video
+video.htmltitle=indymedia.de | video
+videolist.htmltitle=indymedia.de | videolist
+
+# other
+other_media.htmltitle=indymedia.de | other media
+other_media.htmltitle=indymedia.de | other medialist
# breaking
breaking.htmltitle=indymedia.de | breaking news
start.coverage.title=SCHWERPUNKTEs
start.topics.title=THEMEN
start.images.title=BILDER
+start.audio.title=AUDIO
+start.video.title=VIDEO
+start.other_media.title=ANDERE MEDIEN
start.mediafolder.title=MEDIAFOLDER
start.languages.title=SPRACHEN
start.imcs.title=IMCS
list.next=next
list.previous=previous
+# media - used by image, audio, video and other media
+media.created=erzeugt
+media.changed=letzte änderung
+media.published=publiziert
+media.format=Format
+media.rights=Copyright
+media.type=Typ
+media.mediafolder=Mediafolder
+media.title=Titel
+media.description=Beschreibung
+media.date=Datum/Zusatz
+media.location=Ort
+media.creator=Urheber
+media.keywords=Keywords
+media.comment=Kommentar
+media.source=Quelle
+media.is_published=free to publish
+media.icon=Icon
+
+medialist.search_text_in=Text suchen in
+
# image
image.htmltitle=indymedia.de | image
-image.created=created
-image.changed=changed
-image.published=published
-image.format=format
-image.rights=copyright
-image.type=imagetype
-image.mediafolder=mediafolder
-image.title=title
-image.description=description
-image.date=datum/additional
-image.location=location
-image.creator=creator
-image.keywords=keywords
-image.comment=comment
-image.source=source
-image.is_published=free to publish
-image.icon=icon
-
imagelist.htmltitle=indymedia.de | imagelist
-imagelist.search_text_in=search text in
+
+# audio
+audio.htmltitle=indymedia.de | audio
+audiolist.htmltitle=indymedia.de | audiolist
+
+# video
+video.htmltitle=indymedia.de | video
+videolist.htmltitle=indymedia.de | videolist
+
+# other
+other_media.htmltitle=indymedia.de | other media
+other_media.htmltitle=indymedia.de | other medialist
# breaking
breaking.htmltitle=indymedia.de | breaking news
ServletModule.Images.ObjektTemplate=admin/image.template
ServletModule.Images.ListTemplate=admin/imagelist.template
ServletModule.Images.Logfile=log/mir.log
+Module.Images.Logfile=log/mir.log
Module.UploadedMedia.Logfile=log/mir.log
+ServletModule.Audio.ConfirmTemplate=admin/confirm.template
+ServletModule.Audio.ObjektTemplate=admin/audio.template
+ServletModule.Audio.ListTemplate=admin/audiolist.template
+ServletModule.Audio.Logfile=log/mir.log
+
+ServletModule.Video.ConfirmTemplate=admin/confirm.template
+ServletModule.Video.ObjektTemplate=admin/video.template
+ServletModule.Video.ListTemplate=admin/videolist.template
+ServletModule.Video.Logfile=log/mir.log
+
+ServletModule.OtherMedia.ConfirmTemplate=admin/confirm.template
+ServletModule.OtherMedia.ObjektTemplate=admin/media.template
+ServletModule.OtherMedia.ListTemplate=admin/medialist.template
+ServletModule.OtherMedia.Logfile=log/mir.log
+
ServletModule.Content.ConfirmTemplate=admin/confirm.template
ServletModule.Content.ObjektTemplate=admin/content.template
-# is the next line ever used??? dont thinks so [br1]
-#ServletModule.Content.OpTemplate=oplist.template
ServletModule.Content.ListTemplate=admin/contentlist.template
ServletModule.Content.Logfile=log/mir.log
Module.Content.Logfile=log/mir.log
tinyIcon = mediaHandler.getTinyIcon();
iconAlt = mediaHandler.getIconAlt();
}
+
}
//it only has image(s)
if (tinyIcon == null) {
package mircoders.entity;
-import java.lang.*;
-import java.io.*;
-import java.util.*;
-import java.sql.*;
+import freemarker.template.SimpleList;
+import freemarker.template.SimpleScalar;
+import freemarker.template.TemplateModel;
+import freemarker.template.TemplateModelException;
+import mir.entity.Entity;
+import mir.media.MediaHelper;
+import mir.media.MirMedia;
+import mir.storage.StorageObject;
+import mir.storage.StorageObjectException;
+import mircoders.storage.DatabaseUploadedMedia;
+
+import java.util.HashMap;
-import freemarker.template.*;
-
-import mir.entity.*;
-import mir.misc.*;
-import mir.storage.*;
-import mir.media.*;
-
-import mircoders.storage.*;
/**
* Diese Klasse enthält die Daten eines MetaObjekts
*
*/
-public class EntityUploadedMedia extends Entity
-{
+public class EntityUploadedMedia extends Entity {
- public EntityUploadedMedia(){
+ public EntityUploadedMedia() {
super();
}
- public EntityUploadedMedia(StorageObject theStorage)
- {
+ public EntityUploadedMedia(StorageObject theStorage) {
this();
setStorage(theStorage);
}
- public void setValues(HashMap theStringValues)
- {
- if (theStringValues != null) {
- if (!theStringValues.containsKey("is_published"))
- theStringValues.put("is_published","0");
- }
- super.setValues(theStringValues);
- }
-
-
- /**
- * fetches the MediaType entry assiciated w/ this media
- *
- * @return mir.entity.Entity
- */
- public Entity getMediaType() throws StorageObjectException {
- Entity ent = null;
- try {
- ent = DatabaseUploadedMedia.getInstance().getMediaType(this);
- } catch (StorageObjectException e) {
- throwStorageObjectException(e, "get MediaType failed -- ");
- }
- return ent;
- }
-
- public String getValue(String key)
- {
- String returnValue=null;
-
- if (key!=null) {
+ public void setValues(HashMap theStringValues) {
+ if (theStringValues != null) {
+ if (!theStringValues.containsKey("is_published"))
+ theStringValues.put("is_published", "0");
+ }
+ super.setValues(theStringValues);
+ }
+
+
+ /**
+ * fetches the MediaType entry assiciated w/ this media
+ *
+ * @return mir.entity.Entity
+ */
+ public Entity getMediaType() throws StorageObjectException {
+ Entity ent = null;
+ try {
+ ent = DatabaseUploadedMedia.getInstance().getMediaType(this);
+ }
+ catch (StorageObjectException e) {
+ throwStorageObjectException(e, "get MediaType failed -- ");
+ }
+ return ent;
+ }
+
+ public String getValue(String key) {
+ String returnValue = null;
+
+ if (key != null) {
if (key.equals("big_icon"))
- returnValue=getBigIcon();
+ returnValue = getBigIcon();
else if (key.equals("descr"))
- returnValue=getDescr();
+ returnValue = getDescr();
+ else if (key.equals("mediatype"))
+ returnValue = getMediaTypeString();
+ else if (key.equals("mimetype"))
+ returnValue = getMimeType();
else
- returnValue=super.getValue(key);
+ returnValue = super.getValue(key);
}
return returnValue;
}
- public TemplateModel get(java.lang.String key) throws TemplateModelException
- {
+ public TemplateModel get(java.lang.String key) throws TemplateModelException {
if (key.equals("url"))
return getUrl();
-
return new SimpleScalar(getValue(key));
}
// @todo all these methods should be merged into 1
// and the MediaHandler should be cached somehow.
- private String getBigIcon()
- {
- MirMedia mediaHandler=null;
- Entity mediaType=null;
+ private String getMediaTypeString() {
+ MirMedia mediaHandler = null;
+ Entity mediaType = null;
try {
mediaType = getMediaType();
- mediaHandler = MediaHelper.getHandler( mediaType );
+ mediaHandler = MediaHelper.getHandler(mediaType);
+ String t;
+ if (mediaHandler.isAudio())
+ return "audio";
+ else if (mediaHandler.isImage())
+ return "image";
+ else if (mediaHandler.isVideo())
+ return "video";
+ else
+ return "other";
+ }
+ catch (Exception ex) {
+ theLog.printWarning("-- getMediaTypeString: could not fetch data "
+ + this.getClass().toString() + " " + ex.toString());
+ }
+ return null;
+ }
+
+ private String getBigIcon() {
+ MirMedia mediaHandler = null;
+ Entity mediaType = null;
+
+ try {
+ mediaType = getMediaType();
+ mediaHandler = MediaHelper.getHandler(mediaType);
return mediaHandler.getBigIcon();
- } catch (Exception ex) {
+ }
+ catch (Exception ex) {
theLog.printWarning("-- getBigIcon: could not fetch data "
- + this.getClass().toString()+" "+ ex.toString());
+ + this.getClass().toString() + " " + ex.toString());
}
return null;
}
- private SimpleList getUrl()
- {
- MirMedia mediaHandler=null;
- Entity mediaType=null;
+ private SimpleList getUrl() {
+ MirMedia mediaHandler = null;
+ Entity mediaType = null;
try {
mediaType = getMediaType();
- mediaHandler = MediaHelper.getHandler( mediaType );
+ mediaHandler = MediaHelper.getHandler(mediaType);
return mediaHandler.getURL(this, mediaType);
- } catch (Exception ex) {
+ }
+ catch (Exception ex) {
theLog.printWarning("-- getUrl: could not fetch data "
- + this.getClass().toString()+" "+ ex.toString());
+ + this.getClass().toString() + " " + ex.toString());
}
return null;
}
- private String getDescr()
- {
- MirMedia mediaHandler=null;
- Entity mediaType=null;
+ private String getDescr() {
+ MirMedia mediaHandler = null;
+ Entity mediaType = null;
try {
mediaType = getMediaType();
- mediaHandler = MediaHelper.getHandler( mediaType );
+ mediaHandler = MediaHelper.getHandler(mediaType);
return mediaHandler.getDescr();
- } catch (Exception ex) {
+ }
+ catch (Exception ex) {
theLog.printWarning("-- getDescr: could not fetch data "
- + this.getClass().toString()+" "+ ex.toString());
+ + this.getClass().toString() + " " + ex.toString());
+ }
+ return null;
+ }
+ private String getMimeType() {
+ Entity mediaType = null;
+
+ try {
+ mediaType = getMediaType();
+ return mediaType.getValue("mime_type");
+ }
+ catch (Exception ex) {
+ theLog.printWarning("-- getBigIcon: could not fetch data "
+ + this.getClass().toString() + " " + ex.toString());
}
return null;
}
public ModuleImages(StorageObject theStorage) {
- if (theLog == null) theLog = Logfile.getInstance(MirConfig.getProp("Home")+MirConfig.getProp("Module.Bilder.Logfile"));
+ if (theLog == null) theLog = Logfile.getInstance(MirConfig.getProp("Home")+MirConfig.getProp("Module.Images.Logfile"));
if (theStorage == null) theLog.printWarning("StorageObject was null!");
this.theStorage = theStorage;
--- /dev/null
+package mircoders.servlet;
+
+import mir.misc.Logfile;
+import mir.misc.MirConfig;
+import mir.servlet.ServletModule;
+import mir.storage.StorageObjectException;
+import mircoders.module.ModuleUploadedMedia;
+import mircoders.storage.DatabaseAudio;
+
+/*
+ *
+ *
+ * @author br1
+ */
+
+public class ServletModuleAudio extends ServletModuleUploadedMedia {
+
+ //private static DatabaseRights dbRights;
+
+ // Singelton / Contructor
+ private static ServletModuleAudio instance = new ServletModuleAudio();
+
+ public static ServletModule getInstance() {
+ return instance;
+ }
+
+
+ private ServletModuleAudio() {
+ theLog = Logfile.getInstance(MirConfig.getProp("Home") + MirConfig.getProp("ServletModule.Audio.Logfile"));
+ templateListString = MirConfig.getProp("ServletModule.Audio.ListTemplate");
+ templateObjektString = MirConfig.getProp("ServletModule.Audio.ObjektTemplate");
+ templateConfirmString = MirConfig.getProp("ServletModule.Audio.ConfirmTemplate");
+ try {
+ mainModule = new ModuleUploadedMedia(DatabaseAudio.getInstance());
+ //dbRights = DatabaseRights.getInstance();
+ }
+ catch (StorageObjectException e) {
+ theLog.printDebugInfo("servletmodule audio could not be initialized");
+ }
+ }
+}
+
}
else throw new ServletModuleException("id nicht angeben.");
}
-
-
}
--- /dev/null
+package mircoders.servlet;
+
+import mir.misc.Logfile;
+import mir.misc.MirConfig;
+import mir.servlet.ServletModule;
+import mir.storage.StorageObjectException;
+import mircoders.module.ModuleUploadedMedia;
+import mircoders.storage.DatabaseOther;
+
+/*
+ *
+ *
+ * @author br1
+ */
+
+public class ServletModuleOtherMedia extends ServletModuleUploadedMedia {
+
+ //private static DatabaseRights dbRights;
+
+ // Singelton / Contructor
+ private static ServletModuleOtherMedia instance = new ServletModuleOtherMedia();
+
+ public static ServletModule getInstance() {
+ return instance;
+ }
+
+
+ private ServletModuleOtherMedia() {
+ theLog = Logfile.getInstance(MirConfig.getProp("Home") + MirConfig.getProp("ServletModule.OtherMedia.Logfile"));
+ templateListString = MirConfig.getProp("ServletModule.OtherMedia.ListTemplate");
+ templateObjektString = MirConfig.getProp("ServletModule.OtherMedia.ObjektTemplate");
+ templateConfirmString = MirConfig.getProp("ServletModule.OtherMedia.ConfirmTemplate");
+ try {
+ mainModule = new ModuleUploadedMedia(DatabaseOther.getInstance());
+ //dbRights = DatabaseRights.getInstance();
+ }
+ catch (StorageObjectException e) {
+ theLog.printDebugInfo("servletmodule otherMedia could not be initialized");
+ }
+ }
+}
+
package mircoders.servlet;
-import java.io.*;
-import java.lang.*;
-import java.sql.*;
-import java.util.*;
-import java.net.*;
-import java.lang.reflect.*;
-import javax.servlet.*;
-import javax.servlet.http.*;
-
-import freemarker.template.*;
-import com.oreilly.servlet.multipart.*;
-import com.oreilly.servlet.*;
-
-import mir.servlet.*;
-import mir.module.*;
-import mir.misc.*;
-import mir.entity.*;
-import mir.storage.*;
-import mir.media.*;
-
-import mircoders.entity.*;
-import mircoders.storage.*;
-import mircoders.module.*;
-import mircoders.producer.*;
+import freemarker.template.SimpleHash;
+import mir.entity.Entity;
+import mir.entity.EntityList;
+import mir.media.MediaHelper;
+import mir.media.MirMedia;
+import mir.media.MirMediaException;
+import mir.media.MirMediaUserException;
+import mir.misc.FileUtil;
+import mir.misc.MpRequest;
+import mir.misc.StringUtil;
+import mir.misc.WebdbMultipartRequest;
+import mir.module.ModuleException;
+import mir.servlet.ServletModule;
+import mir.servlet.ServletModuleException;
+import mir.servlet.ServletModuleUserException;
+import mir.storage.Database;
+import mir.storage.StorageObjectException;
+import mircoders.entity.EntityUsers;
+import mircoders.storage.DatabaseMediaType;
+import mircoders.storage.DatabaseMediafolder;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.util.GregorianCalendar;
+import java.util.HashMap;
/*
* ServletModuleBilder -
*/
public abstract class ServletModuleUploadedMedia
- extends mir.servlet.ServletModule
-{
+ extends mir.servlet.ServletModule {
//private static DatabaseRights dbRights;
- public static ServletModule getInstance() { return null; }
+ public static ServletModule getInstance() {
+ return null;
+ }
public void insert(HttpServletRequest req, HttpServletResponse res)
- throws ServletModuleException, ServletModuleUserException
- {
+ throws ServletModuleException, ServletModuleUserException {
try {
WebdbMultipartRequest mp = new WebdbMultipartRequest(req);
HashMap parameters = mp.getParameters();
- EntityUsers user = _getUser(req);
- String mediaId=null;
- MpRequest mpReq = (MpRequest)mp.requestList.get(0);
+ EntityUsers user = _getUser(req);
+ String mediaId = null;
+ MpRequest mpReq = (MpRequest) mp.requestList.get(0);
String mediaTypeId; //= null;
MirMedia mediaHandler;
Database mediaStorage;
// sends us. (the "Oreilly method")
String contentType = mpReq.getContentType();
String fileName = mpReq.getFilename();
- theLog.printInfo("CONTENT-TYPE FROM BROWSER: "+contentType);
+ theLog.printInfo("CONTENT-TYPE FROM BROWSER: " + contentType);
// if the client browser sent us unknown (text/plain is default)
// or if we got application/octet-stream, it's possible that
// the browser is in error, better check against the file extension
if (contentType.equals("text/plain") ||
- contentType.equals("application/octet-stream")) {
+ contentType.equals("application/octet-stream")) {
/**
* This is just a temporary way to get the content-type via
* the .extension , we could maybe use a magic method, by looking
* sure that it is in this file -mh
*/
contentType = FileUtil.guessContentTypeFromName(fileName);
- if (contentType==null)
+ if (contentType == null)
contentType = "text/plain"; // rfc1867 says this is the default
}
- theLog.printInfo("CONTENT TYPE IS: "+contentType);
+ theLog.printInfo("CONTENT TYPE IS: " + contentType);
if (contentType.equals("text/plain") ||
- contentType.equals("application/octet-stream")) {
+ contentType.equals("application/octet-stream")) {
throw new ServletModuleUserException(
- "One or more files of unrecognized types");
+ "One or more files of unrecognized types");
}
parameters.put("date", StringUtil.date2webdbDate(new GregorianCalendar()));
// @todo this should probably be moved to DatabaseMediaType or
// somewhere else appropriate -mh
String[] contentTypeSplit = StringUtil.split(contentType, "/");
- String wc = " mime_type LIKE '"+contentTypeSplit[0]+"%'";
+ String wc = " mime_type LIKE '" + contentTypeSplit[0] + "%'";
DatabaseMediaType mediaTypeStor = DatabaseMediaType.getInstance();
EntityList mediaTypesList = mediaTypeStor.selectByWhereClause(wc);
throw new MirMediaUserException("One or more files of unrecognized type");
}
Entity mediaType = null;
-
+
// find out if we an exact content-type match if so take it.
// otherwise just use the first one.
// @todo this should probably be moved to DatabaseMediaType -mh
- for(int j=0;j<mediaTypesList.size();j++) {
- if(contentType.equals(
- mediaTypesList.elementAt(j).getValue("mime_type")))
+ for (int j = 0; j < mediaTypesList.size(); j++) {
+ if (contentType.equals(
+ mediaTypesList.elementAt(j).getValue("mime_type")))
mediaType = mediaTypesList.elementAt(j);
}
// if no exact match, whatever foo/* might match
- if( mediaType == null )
+ if (mediaType == null)
mediaType = mediaTypesList.elementAt(0);
-
+
// get the class names from the media_type table.
mediaTypeId = mediaType.getId();
try {
// along with media_type
mediaHandler = MediaHelper.getHandler(mediaType);
mediaStorage = MediaHelper.getStorage(mediaType,
- "mircoders.storage.Database");
- } catch (Exception e) {
- theLog.printError("getting media handler failed: "+e.toString());
+ "mircoders.storage.Database");
+ }
+ catch (Exception e) {
+ theLog.printError("getting media handler failed: " + e.toString());
throw new MirMediaException("getting media handler failed: "
- +e.toString());
+ + e.toString());
}
- parameters.put("to_media_type",mediaTypeId);
+ parameters.put("to_media_type", mediaTypeId);
//load the classes via reflection
Entity mediaEnt = null;
try {
- mediaEnt = (Entity)mediaStorage.getEntityClass().newInstance();
+ mediaEnt = (Entity) mediaStorage.getEntityClass().newInstance();
mediaEnt.setStorage(mediaStorage);
mediaEnt.setValues(parameters);
// unfortunatly we have to insert it first because of the way
//were done with mpReq at this point, dereference it.
//as it contains mucho mem. -mh 01.10.2001
- mpReq=null;
-
+ mpReq = null;
+
//we got this far, associate the media to the article
- mediaEnt.setValueForProperty("is_published","1");
+ mediaEnt.setValueForProperty("is_published", "1");
mediaEnt.update();
- } catch (Exception e) {
+ }
+ catch (Exception e) {
try {
mediaStorage.delete(mediaId);
- } catch (Exception e2) {
+ }
+ catch (Exception e2) {
// dont't do anything here as the error was setting the media,
// this just means that the entity may not have been inserted yet
}
- theLog.printError("setting media failed: "+e.toString());
- throw new MirMediaException("setting media failed: "+e.toString());
+ theLog.printError("setting media failed: " + e.toString());
+ throw new MirMediaException("setting media failed: " + e.toString());
}
_edit(mediaId, req, res);
}
- catch (MirMediaException e) { throw new ServletModuleException(
- "upload -- media handling exception " +e.toString());}
- catch (MirMediaUserException e) { throw new ServletModuleUserException(
- e.getMsg());}
- catch (IOException e) { throw new ServletModuleException("upload -- ioexception " + e.toString());}
- catch (StorageObjectException e) { throw new ServletModuleException("StorageObjectException" + e.toString());}
+ catch (MirMediaException e) {
+ throw new ServletModuleException(
+ "upload -- media handling exception " + e.toString());
+ }
+ catch (MirMediaUserException e) {
+ throw new ServletModuleUserException(
+ e.getMsg());
+ }
+ catch (IOException e) {
+ throw new ServletModuleException("upload -- ioexception " + e.toString());
+ }
+ catch (StorageObjectException e) {
+ throw new ServletModuleException("StorageObjectException" + e.toString());
+ }
}
- public void update(HttpServletRequest req, HttpServletResponse res) throws ServletModuleException
- {
+ public void update(HttpServletRequest req, HttpServletResponse res) throws ServletModuleException {
try {
WebdbMultipartRequest mp = new WebdbMultipartRequest(req);
HashMap parameters = mp.getParameters();
- EntityUsers user = _getUser(req);
+ EntityUsers user = _getUser(req);
parameters.put("to_publisher", user.getId());
parameters.put("is_produced", "0");
if (!parameters.containsKey("is_published"))
- parameters.put("is_published","0");
+ parameters.put("is_published", "0");
String id = mainModule.set(parameters);
- theLog.printError("media ID"+id);
+ theLog.printError("media ID" + id);
_edit(id, req, res);
}
- catch (IOException e) { throw new ServletModuleException("upload -- ioexception " + e.toString());}
- catch (ModuleException e) { throw new ServletModuleException("upload -- moduleexception " + e.toString());}
+ catch (IOException e) {
+ throw new ServletModuleException("upload -- ioexception " + e.toString());
+ }
+ catch (ModuleException e) {
+ throw new ServletModuleException("upload -- moduleexception " + e.toString());
+ }
}
public void list(HttpServletRequest req, HttpServletResponse res)
- throws ServletModuleException {
+ throws ServletModuleException {
// Parameter auswerten
SimpleHash mergeData = new SimpleHash();
- SimpleHash popups = new SimpleHash();
-
- String query_text = req.getParameter("query_text");
- mergeData.put("query_text",query_text);
- if (query_text!=null) mergeData.put("query_text_encoded",URLEncoder.encode(query_text));
- String query_field = req.getParameter("query_field");
- mergeData.put("query_field",query_field);
- String query_is_published = req.getParameter("query_is_published");
- mergeData.put("query_is_published",query_is_published);
- String query_media_folder = req.getParameter("query_media_folder");
- mergeData.put("query_media_folder",query_media_folder);
- String offset = req.getParameter("offset");
- if (offset==null || offset.equals("")) offset="0";
- mergeData.put("offset",offset);
-
- String order = req.getParameter("order");
- if (order==null) order="webdb_lastchange desc";
-
- // if in connection mode to content
- String cid = req.getParameter("cid");
- mergeData.put("cid",cid);
-
-
- // sql basteln
- String whereClause=""; boolean isFirst=true;
- if (query_text!=null && !query_text.equalsIgnoreCase("")) {
- whereClause += "lower("+query_field+") like lower('%"+query_text+"%')"; isFirst=false;}
- if (query_is_published != null && !query_is_published.equals("")) {
- if (isFirst==false) whereClause+=" and ";
- whereClause += "is_published='"+query_is_published+"'";
- isFirst=false;
- }
- if (query_media_folder != null && !query_media_folder.equals("")) {
- if (isFirst==false) whereClause+=" and ";
- whereClause += "to_media_folder='"+query_media_folder+"'";
- }
- //theLog.printDebugInfo("sql-whereclause: " + whereClause + " order: " + order + " offset: " + offset);
-
- // fetch und ausliefern
- try {
- if (query_text!=null || query_is_published!=null || query_media_folder!=null) {
- EntityList theList = mainModule.getByWhereClause(whereClause, order, (new Integer(offset)).intValue(),10);
- if (theList != null) {
- mergeData.put("contentlist",theList);
- if(theList.getOrder()!=null) {
- mergeData.put("order", theList.getOrder());
- mergeData.put("order_encoded", URLEncoder.encode(theList.getOrder()));
- }
- mergeData.put("count", (new Integer(theList.getCount())).toString());
- mergeData.put("from", (new Integer(theList.getFrom())).toString());
- mergeData.put("to", (new Integer(theList.getTo())).toString());
- if (theList.hasNextBatch())
- mergeData.put("next", (new Integer(theList.getNextBatch())).toString());
- if (theList.hasPrevBatch())
- mergeData.put("prev", (new Integer(theList.getPrevBatch())).toString());
- }
- //fetch the popups
- popups.put("mediafolderPopupData",DatabaseMediafolder.getInstance().getPopupData());
- }
- // raus damit
- deliver(req, res, mergeData, popups, templateListString);
- } catch (ModuleException e) {
- throw new ServletModuleException(e.toString());
- } catch (Exception e) {
- throw new ServletModuleException(e.toString());
- }
+ SimpleHash popups = new SimpleHash();
+
+ String query_text = req.getParameter("query_text");
+ mergeData.put("query_text", query_text);
+ if (query_text != null) mergeData.put("query_text_encoded", URLEncoder.encode(query_text));
+ String query_field = req.getParameter("query_field");
+ mergeData.put("query_field", query_field);
+ String query_is_published = req.getParameter("query_is_published");
+ mergeData.put("query_is_published", query_is_published);
+ String query_media_folder = req.getParameter("query_media_folder");
+ mergeData.put("query_media_folder", query_media_folder);
+ String offset = req.getParameter("offset");
+ if (offset == null || offset.equals("")) offset = "0";
+ mergeData.put("offset", offset);
+
+ String order = req.getParameter("order");
+ if (order == null) order = "webdb_lastchange desc";
+
+ // if in connection mode to content
+ String cid = req.getParameter("cid");
+ mergeData.put("cid", cid);
+
+
+ // sql basteln
+ String whereClause = "";
+ boolean isFirst = true;
+ if (query_text != null && !query_text.equalsIgnoreCase("")) {
+ whereClause += "lower(" + query_field + ") like lower('%" + query_text + "%')";
+ isFirst = false;
+ }
+ if (query_is_published != null && !query_is_published.equals("")) {
+ if (isFirst == false) whereClause += " and ";
+ whereClause += "is_published='" + query_is_published + "'";
+ isFirst = false;
+ }
+ if (query_media_folder != null && !query_media_folder.equals("")) {
+ if (isFirst == false) whereClause += " and ";
+ whereClause += "to_media_folder='" + query_media_folder + "'";
+ }
+ //theLog.printDebugInfo("sql-whereclause: " + whereClause + " order: " + order + " offset: " + offset);
+
+ // fetch und ausliefern
+ try {
+ if (query_text != null || query_is_published != null || query_media_folder != null) {
+ EntityList theList = mainModule.getByWhereClause(whereClause, order, (new Integer(offset)).intValue(), 10);
+ if (theList != null) {
+ mergeData.put("contentlist", theList);
+ if (theList.getOrder() != null) {
+ mergeData.put("order", theList.getOrder());
+ mergeData.put("order_encoded", URLEncoder.encode(theList.getOrder()));
+ }
+ mergeData.put("count", (new Integer(theList.getCount())).toString());
+ mergeData.put("from", (new Integer(theList.getFrom())).toString());
+ mergeData.put("to", (new Integer(theList.getTo())).toString());
+ if (theList.hasNextBatch())
+ mergeData.put("next", (new Integer(theList.getNextBatch())).toString());
+ if (theList.hasPrevBatch())
+ mergeData.put("prev", (new Integer(theList.getPrevBatch())).toString());
+ }
+ //fetch the popups
+ popups.put("mediafolderPopupData", DatabaseMediafolder.getInstance().getPopupData());
+ }
+ // raus damit
+ deliver(req, res, mergeData, popups, templateListString);
+ }
+ catch (ModuleException e) {
+ throw new ServletModuleException(e.toString());
+ }
+ catch (Exception e) {
+ throw new ServletModuleException(e.toString());
+ }
}
public void add(HttpServletRequest req, HttpServletResponse res)
- throws ServletModuleException
- {
+ throws ServletModuleException {
try {
SimpleHash mergeData = new SimpleHash();
mergeData.put("new", "1");
- SimpleHash popups = new SimpleHash();
- popups.put("mediafolderPopupData",DatabaseMediafolder.getInstance().getPopupData());
+ SimpleHash popups = new SimpleHash();
+ popups.put("mediafolderPopupData", DatabaseMediafolder.getInstance().getPopupData());
deliver(req, res, mergeData, popups, templateObjektString);
}
- catch (Exception e) { throw new ServletModuleException(e.toString());}
+ catch (Exception e) {
+ throw new ServletModuleException(e.toString());
+ }
}
public void edit(HttpServletRequest req, HttpServletResponse res)
- throws ServletModuleException {
+ throws ServletModuleException {
String idParam = req.getParameter("id");
_edit(idParam, req, res);
}
private void _edit(String idParam, HttpServletRequest req, HttpServletResponse res)
- throws ServletModuleException {
- if (idParam!=null && !idParam.equals("")) {
+ throws ServletModuleException {
+ if (idParam != null && !idParam.equals("")) {
try {
- SimpleHash popups = new SimpleHash();
- popups.put("mediafolderPopupData",DatabaseMediafolder.getInstance().getPopupData());
- deliver(req, res, mainModule.getById(idParam),popups,
- templateObjektString);
- } catch (ModuleException e) {
- throw new ServletModuleException(e.toString());
- } catch (StorageObjectException e) {
- throw new ServletModuleException(e.toString());
- }
- } else {
- throw new ServletModuleException("ServletmoduleUploadedMedia :: _edit without id");
- }
+ SimpleHash popups = new SimpleHash();
+ popups.put("mediafolderPopupData", DatabaseMediafolder.getInstance().getPopupData());
+ deliver(req, res, mainModule.getById(idParam), popups,
+ templateObjektString);
+ }
+ catch (ModuleException e) {
+ throw new ServletModuleException(e.toString());
+ }
+ catch (StorageObjectException e) {
+ throw new ServletModuleException(e.toString());
+ }
+ }
+ else {
+ throw new ServletModuleException("ServletmoduleUploadedMedia :: _edit without id");
+ }
}
/** @todo should be in ServletModule.java */
- private EntityUsers _getUser(HttpServletRequest req)
- {
- HttpSession session=req.getSession(false);
- return (EntityUsers)session.getAttribute("login.uid");
+ private EntityUsers _getUser(HttpServletRequest req) {
+ HttpSession session = req.getSession(false);
+ return (EntityUsers) session.getAttribute("login.uid");
}
}
--- /dev/null
+package mircoders.servlet;
+
+import mir.misc.Logfile;
+import mir.misc.MirConfig;
+import mir.servlet.ServletModule;
+import mir.storage.StorageObjectException;
+import mircoders.module.ModuleUploadedMedia;
+import mircoders.storage.DatabaseVideo;
+
+/*
+ *
+ *
+ * @author br1
+ */
+
+public class ServletModuleVideo extends ServletModuleUploadedMedia {
+
+ //private static DatabaseRights dbRights;
+
+ // Singelton / Contructor
+ private static ServletModuleVideo instance = new ServletModuleVideo();
+
+ public static ServletModule getInstance() {
+ return instance;
+ }
+
+
+ private ServletModuleVideo() {
+ theLog = Logfile.getInstance(MirConfig.getProp("Home") + MirConfig.getProp("ServletModule.Video.Logfile"));
+ templateListString = MirConfig.getProp("ServletModule.Video.ListTemplate");
+ templateObjektString = MirConfig.getProp("ServletModule.Video.ObjektTemplate");
+ templateConfirmString = MirConfig.getProp("ServletModule.Video.ConfirmTemplate");
+ try {
+ mainModule = new ModuleUploadedMedia(DatabaseVideo.getInstance());
+ //dbRights = DatabaseRights.getInstance();
+ }
+ catch (StorageObjectException e) {
+ theLog.printDebugInfo("servletmodule video could not be initialized");
+ }
+ }
+}
+
--- /dev/null
+<html>
+<head>
+<title>
+${lang("audio.htmltitle")}
+</title>
+<head>
+<SCRIPT LANGUAGE="JavaScript">
+function openWin(url) {
+ window.open(url,"vc","scrollbars=0,height=${data.img_height},width=${data.img_width}");
+}
+</SCRIPT>
+<body bgcolor="#FFFFFF">
+<include "admin/head.template">
+
+<form enctype="multipart/form-data" method="post" action="${config.actionRoot}?module=Audio&do=<if data.new>insert<else>update</if>&id=${data.id}">
+<if data.icon_data=="" || data.icon_data=="0">
+ <INPUT TYPE="file" NAME="mptest">
+</if>
+
+ <input type="hidden" name="where" value="${data.where}">
+ <input type="hidden" name="offset" value="${data.offset}">
+ <input type="hidden" name="order" value="${data.order}">
+ <input type="hidden" name="id" value="${data.id}">
+
+ <table border="0">
+ <tr>
+ <td align="right" bgcolor="#006600">
+ <font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <img src="${config.docRoot}/img/${data.big_icon}" border=0></font></td>
+ <td valign="bottom"><font color="Silver" face="Verdana, Arial, Helvetica, sans-serif" size=1>
+ ${lang("media.created")}: ${data.webdb_create}
+ <if data.webdb_lastchange>/ ${lang("media.changed")} ${data.webdb_lastchange}</if><br>
+ <if data.is_published=="1">${lang("media.published")}: ${data.publish_date} / ${data.publish_server}${data.publish_path}<br></if>
+ ${lang("media.format")}: ${data.mimetype} / ${data.descr}<br>
+ ${lang("media.rights")}: <b>${data.rightsHashdata[to_rights]["name"]}</b><br>
+ </td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.mediafolder")}:</B></font></td>
+ <td>
+ <select name="to_media_folder">
+ <list popups.mediafolderPopupData as m>
+ <option value="${m.key}" <if m.key == data.to_media_folder>selected</if>>${m.value}</option>
+ </list>
+ </select>
+ </td>
+ </tr>
+
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.title")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="255" name="title" value="${data.title}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.description")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="255" name="description" value="${data.description}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.date")}:</B></font></td>
+ <td><input type="text" size="8" maxlength="8" name="date" value="${data.date}">
+ <input type="text" size="20" maxlength="40" name="year" value="${data.year}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.location")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="80" name="place" value="${data.place}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.creator")}:</B></font></td>
+ <td>
+ <input type="text" size="40" maxlength="80" name="creator" value="${data.creator}">
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.keywords")}:</B></font></td>
+ <td><textarea cols="40" rows="2" name="keywords">${data.keywords}</textarea></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.comment")}:</B></font></td>
+ <td><textarea cols="40" rows="2" name="comment">${data.comment}</textarea></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.source")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="80" name="source" value="${data.source}"></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="right"> <font color="black">
+ ${lang("media.is_published")} <input type="checkbox" name="is_published" value="1"<if data.is_published!="0" && data.is_published!=""> checked</if>>
+ <if data.new>
+ <input type="submit" name="save" value="${lang("insert")}">
+ <else>
+ <input type="submit" name="save" value="${lang("save")}">
+ </if> </font></form></font>
+ </td>
+</table>
+<include "admin/foot.template">
+</body>
+</html>
--- /dev/null
+<html>
+<head>
+ <title>${lang("audiolist.htmltitle")}</title>
+</head>
+
+<body bgcolor="#FFFFFF">
+<include "admin/head.template">
+
+<table border="0" cellpadding="2" cellspacing="1">
+ <tr>
+ <td colspan="5"><form method="post" action="${config.actionRoot}">
+ <input type="hidden" name="module" value="Audio">
+ <input type="hidden" name="do" value="list">
+ <input type="hidden" name="cid" value="${data.cid}">
+ <table border="0">
+ <tr bgcolor="Pink">
+ <td>${lang("medialist.search_text_in")}:</td>
+ <td>${lang("media.published")}:</td>
+ <td>${lang("media.mediafolder")}:</td>
+ <td> </td>
+ </tr>
+
+ <tr>
+ <td>
+ <input type="text" size="10" maxlength="20" name="query_text" value="${data.query_text}">
+ <select name="query_field">
+ <option value="title"<if data.query_field=="title"> selected</if>>${lang("media.title")}</option>
+ <option value="creator"<if data.query_field=="creator"> selected</if>>${lang("media.creator")}</option>
+ <option value="place"<if data.query_field=="place"> selected</if>>${lang("media.location")}</option>
+ <option value="keywords"<if data.query_field=="keywords"> selected</if>>${lang("media.keywords")}</option>
+ </select>
+ </td>
+ <td>
+ <select name="query_is_published">
+ <option value="">${lang("dontcare")}</option>
+ <option value="0" <if data.query_is_published=="0"> selected</if>>${lang("no")}</option>
+ <option value="1" <if data.query_is_published=="1"> selected</if>>${lang("yes")}</option>
+ </select>
+ </td>
+ <td>
+ <select name="query_media_folder">
+ <list popups.mediafolderPopupData as m>
+ <option value="${m.key}" <if m.key == query_media_folder>selected</if>>${m.value}</option>
+ </list>
+ </select>
+ </td>
+ <td>
+ <input type="submit" name="search" value="${lang("filter")}">
+ </td>
+ </tr>
+ </table>
+ </form>
+ </td>
+ </tr>
+
+ <tr bgcolor="#006600" >
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.icon")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.title")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.mediafolder")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.creator")}</b></font></td>
+ </tr>
+ <if data.contentlist>
+ <list data.contentlist as entry>
+ <tr <if grey=="1"><assign grey="0">bgcolor="#dddddd" <else><assign grey="1"> </if>>
+ <td>
+ <img src="${config.docRoot}/img/${entry.big_icon}" border=0></font></td>
+ <td>${entry.title}
+ <if entry.decription><br>${entry.description}</if></td>
+ <td>${data.mediafolderHashdata[entry.to_media_folder]["name"]} </td>
+ <td>${entry.creator} </td>
+ <td><font size="1">
+ <if data.cid><a href="${config.actionRoot}?module=Content&do=attach&mid=${entry.id}&cid=${data.cid}">${lang("attach")}</a>
+ <else>
+ <a href="${config.actionRoot}?module=Audio&do=delete&id=${entry.id}">${lang("delete")}</a>
+ | <a href="${config.actionRoot}?module=Audio&do=edit&id=${entry.id}">${lang("edit")}</a>
+ </if>
+ </font></td>
+ </tr>
+ </list>
+ <tr>
+ <td colspan="4" bgcolor="#006600"><font color="#ffffff">${data.count} ${lang("records")}
+ / ${lang("show_from_to", data.from, data.to)}</font></td>
+ <td> </td>
+ </tr>
+
+<tr><td>
+<if data.prev>
+ <a href="${config.actionRoot}?module=Audio&do=list&query_text=${data.query_text_encoded}&query_field=${data.query_field}&query_is_published=${data.query_is_published}&query_media_folder=${data.query_media_folder}&offset=${data.prev}&prev=zurück&cid=${data.cid}">zurueck</a>
+</if>
+<if data.next>
+<a href="${config.actionRoot}?module=Audio&do=list&query_text=${data.query_text_encoded}&query_field=${data.query_field}&query_is_published=${data.query_is_published}&query_media_folder=${data.query_media_folder}&offset=${data.next}&next=weiter&cid=${data.cid}">weiter</a>
+</if>
+</td></tr>
+<else>
+ <tr><td align="center">${lang("no_matches_found")}</td></tr>
+</if>
+</table>
+<include "admin/foot.template">
+</body>
+</html>
<img src="${config.actionRoot}?module=Images&do=showicon&id=${data.id}" border=0></a></font></td>
</if>
<td valign="bottom"><font color="Silver" face="Verdana, Arial, Helvetica, sans-serif" size=1>
- ${lang("image.created")}: ${data.webdb_create} <if data.webdb_lastchange>/ ${lang("image.changed")} ${data.webdb_lastchange}</if><br>
- <if data.is_published=="1">${lang("image.published")}: ${data.publish_date} / ${data.publish_server}${data.publish_path}<br></if>
- ${lang("image.format")}: ${data.img_width}x${data.img_height} / ${data.imgformatHashdata[to_img_format]["name"]} / ${data.imglayoutHashdata[to_img_layout]["name"]} / ${data.imgcolorHashdata[to_img_color]["name"]}<br>
- ${lang("image.rights")}: <b>${data.rightsHashdata[to_rights]["name"]}</b><br>
- ${lang("image.type")}: <b>${data.imgtypeHashdata[to_img_type]["name"]}</b><br>
+ ${lang("media.created")}: ${data.webdb_create} <if data.webdb_lastchange>/ ${lang("media.changed")} ${data.webdb_lastchange}</if><br>
+ <if data.is_published=="1">${lang("media.published")}: ${data.publish_date} / ${data.publish_server}${data.publish_path}<br></if>
+ ${lang("media.format")}: ${data.img_width}x${data.img_height} / ${data.imgformatHashdata[to_img_format]["name"]} / ${data.imglayoutHashdata[to_img_layout]["name"]} / ${data.imgcolorHashdata[to_img_color]["name"]}<br>
+ ${lang("media.rights")}: <b>${data.rightsHashdata[to_rights]["name"]}</b><br>
+ ${lang("media.type")}: <b>${data.imgtypeHashdata[to_img_type]["name"]}</b><br>
</td>
</tr>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.mediafolder")}:</B></font></td>
+ <B>${lang("media.mediafolder")}:</B></font></td>
<td>
<select name="to_media_folder">
<list extra.mediafolderPopupData as m>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.title")}:</B></font></td>
+ <B>${lang("media.title")}:</B></font></td>
<td><input type="text" size="40" maxlength="255" name="title" value="${data.title}"></td>
</tr>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.description")}:</B></font></td>
+ <B>${lang("media.description")}:</B></font></td>
<td><input type="text" size="40" maxlength="255" name="description" value="${data.description}"></td>
</tr>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.date")}:</B></font></td>
+ <B>${lang("media.date")}:</B></font></td>
<td><input type="text" size="8" maxlength="8" name="date" value="${data.date}">
<input type="text" size="20" maxlength="40" name="year" value="${data.year}"></td>
</tr>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.location")}:</B></font></td>
+ <B>${lang("media.location")}:</B></font></td>
<td><input type="text" size="40" maxlength="80" name="place" value="${data.place}"></td>
</tr>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.creator")}:</B></font></td>
+ <B>${lang("media.creator")}:</B></font></td>
<td>
<input type="text" size="40" maxlength="80" name="creator" value="${data.creator}">
</tr>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.keywords")}:</B></font></td>
+ <B>${lang("media.keywords")}:</B></font></td>
<td><textarea cols="40" rows="2" name="keywords">${data.keywords}</textarea></td>
</tr>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.comment")}:</B></font></td>
+ <B>${lang("media.comment")}:</B></font></td>
<td><textarea cols="40" rows="2" name="comment">${data.comment}</textarea></td>
</tr>
<tr>
<td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <B>${lang("image.source")}:</B></font></td>
+ <B>${lang("media.source")}:</B></font></td>
<td><input type="text" size="40" maxlength="80" name="source" value="${data.source}"></td>
</tr>
<tr>
<td colspan="2" align="right"> <font color="black">
- ${lang("image.is_published")} <input type="checkbox" name="is_published" value="1"<if data.is_published!="0" && data.is_published!=""> checked</if>>
+ ${lang("media.is_published")} <input type="checkbox" name="is_published" value="1"<if data.is_published!="0" && data.is_published!=""> checked</if>>
<if data.new>
<input type="submit" name="save" value="${lang("insert")}">
<else>
<input type="hidden" name="cid" value="${data.cid}">
<table border="0">
<tr bgcolor="Pink">
- <td>${lang("imagelist.search_text_in")}:</td>
- <td>${lang("image.published")}:</td>
- <td>${lang("image.mediafolder")}:</td>
+ <td>${lang("medialist.search_text_in")}:</td>
+ <td>${lang("media.published")}:</td>
+ <td>${lang("media.mediafolder")}:</td>
<td> </td>
</tr>
<td>
<input type="text" size="10" maxlength="20" name="query_text" value="${data.query_text}">
<select name="query_field">
- <option value="title"<if data.query_field=="title"> selected</if>>${lang("image.title")}</option>
- <option value="creator"<if data.query_field=="creator"> selected</if>>${lang("image.creator")}</option>
- <option value="place"<if data.query_field=="place"> selected</if>>${lang("image.location")}</option>
- <option value="keywords"<if data.query_field=="keywords"> selected</if>>${lang("image.keywords")}</option>
+ <option value="title"<if data.query_field=="title"> selected</if>>${lang("media.title")}</option>
+ <option value="creator"<if data.query_field=="creator"> selected</if>>${lang("media.creator")}</option>
+ <option value="place"<if data.query_field=="place"> selected</if>>${lang("media.location")}</option>
+ <option value="keywords"<if data.query_field=="keywords"> selected</if>>${lang("media.keywords")}</option>
</select>
</td>
<td>
<tr bgcolor="#006600" >
<td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <b>${lang("image.icon")}</b></font></td>
+ <b>${lang("media.icon")}</b></font></td>
<td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <b>${lang("image.title")}</b></font></td>
+ <b>${lang("media.title")}</b></font></td>
<td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <b>${lang("image.mediafolder")}</b></font></td>
+ <b>${lang("media.mediafolder")}</b></font></td>
<td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
- <b>${lang("image.creator")}</b></font></td>
+ <b>${lang("media.creator")}</b></font></td>
</tr>
<if data.contentlist>
<list data.contentlist as entry>
--- /dev/null
+<html>
+<head>
+<title>
+${lang("other_media.htmltitle")}
+</title>
+<head>
+<SCRIPT LANGUAGE="JavaScript">
+function openWin(url) {
+ window.open(url,"vc","scrollbars=0,height=${data.img_height},width=${data.img_width}");
+}
+</SCRIPT>
+<body bgcolor="#FFFFFF">
+<include "admin/head.template">
+
+<form enctype="multipart/form-data" method="post" action="${config.actionRoot}?module=OtherMedia&do=<if data.new>insert<else>update</if>&id=${data.id}">
+<if data.icon_data=="" || data.icon_data=="0">
+ <INPUT TYPE="file" NAME="mptest">
+</if>
+
+ <input type="hidden" name="where" value="${data.where}">
+ <input type="hidden" name="offset" value="${data.offset}">
+ <input type="hidden" name="order" value="${data.order}">
+ <input type="hidden" name="id" value="${data.id}">
+
+ <table border="0">
+ <tr>
+ <td align="right" bgcolor="#006600">
+ <font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <img src="${config.docRoot}/img/${data.big_icon}" border=0></font></td>
+ <td valign="bottom"><font color="Silver" face="Verdana, Arial, Helvetica, sans-serif" size=1>
+ ${lang("media.created")}: ${data.webdb_create}
+ <if data.webdb_lastchange>/ ${lang("media.changed")} ${data.webdb_lastchange}</if><br>
+ <if data.is_published=="1">${lang("media.published")}: ${data.publish_date} / ${data.publish_server}${data.publish_path}<br></if>
+ ${lang("media.format")}: ${data.mimetype} / ${data.descr}<br>
+ ${lang("media.rights")}: <b>${data.rightsHashdata[to_rights]["name"]}</b><br>
+ </td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.mediafolder")}:</B></font></td>
+ <td>
+ <select name="to_media_folder">
+ <list popups.mediafolderPopupData as m>
+ <option value="${m.key}" <if m.key == data.to_media_folder>selected</if>>${m.value}</option>
+ </list>
+ </select>
+ </td>
+ </tr>
+
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.title")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="255" name="title" value="${data.title}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.description")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="255" name="description" value="${data.description}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.date")}:</B></font></td>
+ <td><input type="text" size="8" maxlength="8" name="date" value="${data.date}">
+ <input type="text" size="20" maxlength="40" name="year" value="${data.year}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.location")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="80" name="place" value="${data.place}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.creator")}:</B></font></td>
+ <td>
+ <input type="text" size="40" maxlength="80" name="creator" value="${data.creator}">
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.keywords")}:</B></font></td>
+ <td><textarea cols="40" rows="2" name="keywords">${data.keywords}</textarea></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.comment")}:</B></font></td>
+ <td><textarea cols="40" rows="2" name="comment">${data.comment}</textarea></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.source")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="80" name="source" value="${data.source}"></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="right"> <font color="black">
+ ${lang("media.is_published")} <input type="checkbox" name="is_published" value="1"<if data.is_published!="0" && data.is_published!=""> checked</if>>
+ <if data.new>
+ <input type="submit" name="save" value="${lang("insert")}">
+ <else>
+ <input type="submit" name="save" value="${lang("save")}">
+ </if> </font></form></font>
+ </td>
+</table>
+<include "admin/foot.template">
+</body>
+</html>
--- /dev/null
+<html>
+<head>
+ <title>${lang("other_media.htmltitle")}</title>
+</head>
+
+<body bgcolor="#FFFFFF">
+<include "admin/head.template">
+
+<table border="0" cellpadding="2" cellspacing="1">
+ <tr>
+ <td colspan="5"><form method="post" action="${config.actionRoot}">
+ <input type="hidden" name="module" value="OtherMedia">
+ <input type="hidden" name="do" value="list">
+ <input type="hidden" name="cid" value="${data.cid}">
+ <table border="0">
+ <tr bgcolor="Pink">
+ <td>${lang("medialist.search_text_in")}:</td>
+ <td>${lang("media.published")}:</td>
+ <td>${lang("media.mediafolder")}:</td>
+ <td> </td>
+ </tr>
+
+ <tr>
+ <td>
+ <input type="text" size="10" maxlength="20" name="query_text" value="${data.query_text}">
+ <select name="query_field">
+ <option value="title"<if data.query_field=="title"> selected</if>>${lang("media.title")}</option>
+ <option value="creator"<if data.query_field=="creator"> selected</if>>${lang("media.creator")}</option>
+ <option value="place"<if data.query_field=="place"> selected</if>>${lang("media.location")}</option>
+ <option value="keywords"<if data.query_field=="keywords"> selected</if>>${lang("media.keywords")}</option>
+ </select>
+ </td>
+ <td>
+ <select name="query_is_published">
+ <option value="">${lang("dontcare")}</option>
+ <option value="0" <if data.query_is_published=="0"> selected</if>>${lang("no")}</option>
+ <option value="1" <if data.query_is_published=="1"> selected</if>>${lang("yes")}</option>
+ </select>
+ </td>
+ <td>
+ <select name="query_media_folder">
+ <list popups.mediafolderPopupData as m>
+ <option value="${m.key}" <if m.key == query_media_folder>selected</if>>${m.value}</option>
+ </list>
+ </select>
+ </td>
+ <td>
+ <input type="submit" name="search" value="${lang("filter")}">
+ </td>
+ </tr>
+ </table>
+ </form>
+ </td>
+ </tr>
+
+ <tr bgcolor="#006600" >
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.icon")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.title")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.mediafolder")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.creator")}</b></font></td>
+ </tr>
+ <if data.contentlist>
+ <list data.contentlist as entry>
+ <tr <if grey=="1"><assign grey="0">bgcolor="#dddddd" <else><assign grey="1"> </if>>
+ <td>
+ <img src="${config.docRoot}/img/${entry.big_icon}" border=0></font></td>
+ <td>${entry.title}
+ <if entry.decription><br>${entry.description}</if></td>
+ <td>${data.mediafolderHashdata[entry.to_media_folder]["name"]} </td>
+ <td>${entry.creator} </td>
+ <td><font size="1">
+ <if data.cid><a href="${config.actionRoot}?module=Content&do=attach&mid=${entry.id}&cid=${data.cid}">${lang("attach")}</a>
+ <else>
+ <a href="${config.actionRoot}?module=OtherMedia&do=delete&id=${entry.id}">${lang("delete")}</a>
+ | <a href="${config.actionRoot}?module=OtherMedia&do=edit&id=${entry.id}">${lang("edit")}</a>
+ </if>
+ </font></td>
+ </tr>
+ </list>
+ <tr>
+ <td colspan="4" bgcolor="#006600"><font color="#ffffff">${data.count} ${lang("records")}
+ / ${lang("show_from_to", data.from, data.to)}</font></td>
+ <td> </td>
+ </tr>
+
+<tr><td>
+<if data.prev>
+ <a href="${config.actionRoot}?module=OtherMedia&do=list&query_text=${data.query_text_encoded}&query_field=${data.query_field}&query_is_published=${data.query_is_published}&query_media_folder=${data.query_media_folder}&offset=${data.prev}&prev=zurück&cid=${data.cid}">zurueck</a>
+</if>
+<if data.next>
+<a href="${config.actionRoot}?module=OtherMedia&do=list&query_text=${data.query_text_encoded}&query_field=${data.query_field}&query_is_published=${data.query_is_published}&query_media_folder=${data.query_media_folder}&offset=${data.next}&next=weiter&cid=${data.cid}">weiter</a>
+</if>
+</td></tr>
+<else>
+ <tr><td align="center">${lang("no_matches_found")}</td></tr>
+</if>
+</table>
+<include "admin/foot.template">
+</body>
+</html>
<img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("add")}</a>
<p>
+
+ <font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#663399">
+ <b>${lang("start.audio.title")}</b></font>
+
+ <p>
+ <a href="${config.actionRoot}?module=Audio&do=list">
+ <img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("edit")}</a><br>
+ <a href="${config.actionRoot}?module=Audio&do=add" >
+ <img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("add")}</a>
+
+ <p>
+
+ <font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#663399">
+ <b>${lang("start.video.title")}</b></font>
+
+ <p>
+ <a href="${config.actionRoot}?module=Video&do=list">
+ <img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("edit")}</a><br>
+ <a href="${config.actionRoot}?module=Video&do=add" >
+ <img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("add")}</a>
+
+ <p>
+
+ <font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#663399">
+ <b>${lang("start.other_media.title")}</b></font>
+
+ <p>
+ <a href="${config.actionRoot}?module=OtherMedia&do=list">
+ <img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("edit")}</a><br>
+ <a href="${config.actionRoot}?module=OtherMedia&do=add" >
+ <img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("add")}</a>
+
+ <p>
+
<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#663399">
<b>${lang("start.mediafolder.title")}</b></font>
<img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("add")}</a>
<p>
- <font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#663399">
+<!--
+ <font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#663399">
<b>${lang("start.languages.title")}</b></font>
<p>
<img src="${config.docRoot}/img/pointgris.gif" border=0> ${lang("add")}</a>
<p>
+-->
<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#663399">
<b>${lang("start.imcs.title")}</b></font>
--- /dev/null
+<html>
+<head>
+<title>
+${lang("video.htmltitle")}
+</title>
+<head>
+<SCRIPT LANGUAGE="JavaScript">
+function openWin(url) {
+ window.open(url,"vc","scrollbars=0,height=${data.img_height},width=${data.img_width}");
+}
+</SCRIPT>
+<body bgcolor="#FFFFFF">
+<include "admin/head.template">
+
+<form enctype="multipart/form-data" method="post" action="${config.actionRoot}?module=Video&do=<if data.new>insert<else>update</if>&id=${data.id}">
+<if data.icon_data=="" || data.icon_data=="0">
+ <INPUT TYPE="file" NAME="mptest">
+</if>
+
+ <input type="hidden" name="where" value="${data.where}">
+ <input type="hidden" name="offset" value="${data.offset}">
+ <input type="hidden" name="order" value="${data.order}">
+ <input type="hidden" name="id" value="${data.id}">
+
+ <table border="0">
+ <tr>
+ <td align="right" bgcolor="#006600">
+ <font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <img src="${config.docRoot}/img/${data.big_icon}" border=0></font></td>
+ <td valign="bottom"><font color="Silver" face="Verdana, Arial, Helvetica, sans-serif" size=1>
+ ${lang("media.created")}: ${data.webdb_create}
+ <if data.webdb_lastchange>/ ${lang("media.changed")} ${data.webdb_lastchange}</if><br>
+ <if data.is_published=="1">${lang("media.published")}: ${data.publish_date} / ${data.publish_server}${data.publish_path}<br></if>
+ ${lang("media.format")}: ${data.mimetype} / ${data.descr}<br>
+ ${lang("media.rights")}: <b>${data.rightsHashdata[to_rights]["name"]}</b><br>
+ </td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.mediafolder")}:</B></font></td>
+ <td>
+ <select name="to_media_folder">
+ <list popups.mediafolderPopupData as m>
+ <option value="${m.key}" <if m.key == data.to_media_folder>selected</if>>${m.value}</option>
+ </list>
+ </select>
+ </td>
+ </tr>
+
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.title")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="255" name="title" value="${data.title}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.description")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="255" name="description" value="${data.description}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.date")}:</B></font></td>
+ <td><input type="text" size="8" maxlength="8" name="date" value="${data.date}">
+ <input type="text" size="20" maxlength="40" name="year" value="${data.year}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.location")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="80" name="place" value="${data.place}"></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.creator")}:</B></font></td>
+ <td>
+ <input type="text" size="40" maxlength="80" name="creator" value="${data.creator}">
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.keywords")}:</B></font></td>
+ <td><textarea cols="40" rows="2" name="keywords">${data.keywords}</textarea></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.comment")}:</B></font></td>
+ <td><textarea cols="40" rows="2" name="comment">${data.comment}</textarea></td>
+ </tr>
+
+ <tr>
+ <td align="right" bgcolor="#006600"><font color="#ffffff" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <B>${lang("media.source")}:</B></font></td>
+ <td><input type="text" size="40" maxlength="80" name="source" value="${data.source}"></td>
+ </tr>
+ <tr>
+ <td colspan="2" align="right"> <font color="black">
+ ${lang("media.is_published")} <input type="checkbox" name="is_published" value="1"<if data.is_published!="0" && data.is_published!=""> checked</if>>
+ <if data.new>
+ <input type="submit" name="save" value="${lang("insert")}">
+ <else>
+ <input type="submit" name="save" value="${lang("save")}">
+ </if> </font></form></font>
+ </td>
+</table>
+<include "admin/foot.template">
+</body>
+</html>
--- /dev/null
+<html>
+<head>
+ <title>${lang("video.htmltitle")}</title>
+</head>
+
+<body bgcolor="#FFFFFF">
+<include "admin/head.template">
+
+<table border="0" cellpadding="2" cellspacing="1">
+ <tr>
+ <td colspan="5"><form method="post" action="${config.actionRoot}">
+ <input type="hidden" name="module" value="Video">
+ <input type="hidden" name="do" value="list">
+ <input type="hidden" name="cid" value="${data.cid}">
+ <table border="0">
+ <tr bgcolor="Pink">
+ <td>${lang("medialist.search_text_in")}:</td>
+ <td>${lang("media.published")}:</td>
+ <td>${lang("media.mediafolder")}:</td>
+ <td> </td>
+ </tr>
+
+ <tr>
+ <td>
+ <input type="text" size="10" maxlength="20" name="query_text" value="${data.query_text}">
+ <select name="query_field">
+ <option value="title"<if data.query_field=="title"> selected</if>>${lang("media.title")}</option>
+ <option value="creator"<if data.query_field=="creator"> selected</if>>${lang("media.creator")}</option>
+ <option value="place"<if data.query_field=="place"> selected</if>>${lang("media.location")}</option>
+ <option value="keywords"<if data.query_field=="keywords"> selected</if>>${lang("media.keywords")}</option>
+ </select>
+ </td>
+ <td>
+ <select name="query_is_published">
+ <option value="">${lang("dontcare")}</option>
+ <option value="0" <if data.query_is_published=="0"> selected</if>>${lang("no")}</option>
+ <option value="1" <if data.query_is_published=="1"> selected</if>>${lang("yes")}</option>
+ </select>
+ </td>
+ <td>
+ <select name="query_media_folder">
+ <list popups.mediafolderPopupData as m>
+ <option value="${m.key}" <if m.key == query_media_folder>selected</if>>${m.value}</option>
+ </list>
+ </select>
+ </td>
+ <td>
+ <input type="submit" name="search" value="${lang("filter")}">
+ </td>
+ </tr>
+ </table>
+ </form>
+ </td>
+ </tr>
+
+ <tr bgcolor="#006600" >
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.icon")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.title")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.mediafolder")}</b></font></td>
+ <td><font color="#FFFFFF" face="Verdana, Arial, Helvetica, sans-serif" size="-1">
+ <b>${lang("media.creator")}</b></font></td>
+ </tr>
+ <if data.contentlist>
+ <list data.contentlist as entry>
+ <tr <if grey=="1"><assign grey="0">bgcolor="#dddddd" <else><assign grey="1"> </if>>
+ <td>
+ <img src="${config.docRoot}/img/${entry.big_icon}" border=0></font></td>
+ <td>${entry.title}
+ <if entry.decription><br>${entry.description}</if></td>
+ <td>${data.mediafolderHashdata[entry.to_media_folder]["name"]} </td>
+ <td>${entry.creator} </td>
+ <td><font size="1">
+ <if data.cid><a href="${config.actionRoot}?module=Content&do=attach&mid=${entry.id}&cid=${data.cid}">${lang("attach")}</a>
+ <else>
+ <a href="${config.actionRoot}?module=Video&do=delete&id=${entry.id}">${lang("delete")}</a>
+ | <a href="${config.actionRoot}?module=Video&do=edit&id=${entry.id}">${lang("edit")}</a>
+ </if>
+ </font></td>
+ </tr>
+ </list>
+ <tr>
+ <td colspan="4" bgcolor="#006600"><font color="#ffffff">${data.count} ${lang("records")}
+ / ${lang("show_from_to", data.from, data.to)}</font></td>
+ <td> </td>
+ </tr>
+
+<tr><td>
+<if data.prev>
+ <a href="${config.actionRoot}?module=Video&do=list&query_text=${data.query_text_encoded}&query_field=${data.query_field}&query_is_published=${data.query_is_published}&query_media_folder=${data.query_media_folder}&offset=${data.prev}&prev=zurück&cid=${data.cid}">zurueck</a>
+</if>
+<if data.next>
+<a href="${config.actionRoot}?module=Video&do=list&query_text=${data.query_text_encoded}&query_field=${data.query_field}&query_is_published=${data.query_is_published}&query_media_folder=${data.query_media_folder}&offset=${data.next}&next=weiter&cid=${data.cid}">weiter</a>
+</if>
+</td></tr>
+<else>
+ <tr><td align="center">${lang("no_matches_found")}</td></tr>
+</if>
+</table>
+<include "admin/foot.template">
+</body>
+</html>