2 This XML file defines a set of producers intended for a typical indymedia
14 <nodedefinition name="Language">
16 <string name="languagecondition" defaultvalue=""/>
17 <string name="bundle" defaultvalue="bundles.producer" />
22 <List key="languages" table="language" selection="${languagecondition}" order="code"/>
23 <Enumerate key="language" table="language" selection="${languagecondition}" order="code">
24 <Resource bundle="${bundle}" key="lang" language="${language.code}"/>
25 <Define key="pathprefix" value="${language.code}" />
31 <producer name="articles">
33 <verb name="changed" default="1">
34 <Define key="verbcondition" value="(not is_produced)"/>
35 <Set key="limit" value="10"/>
38 <Define key="verbcondition" value=""/>
39 <Set key="limit" value="-1"/>
43 <Define key="verbcondition" value=""/>
44 <Set key="limit" value="10"/>
48 <Enumerate key="article" table="content" selection="${verbcondition}"
49 limit="limit" order="webdb_create desc">
50 <If condition="article.is_published == '1'">
54 generator="/article.template"
55 destination="${config.storageRoot}/${pathprefix}/${article.date.formatted.yyyy}/${article.date.formatted.MM}/${article.id}.shtml"/>
60 numLinesBetweenImages="3"
63 contentAreaWidthCM="16"
66 generator="/printablecontent.template"
67 destination="${config.storageRoot}/${pathprefix}/${article.date.formatted.yyyy}/${article.date.formatted.MM}/${article.id}.fo"
70 generator="${config.storageRoot}/${pathprefix}/${article.date.formatted.yyyy}/${article.date.formatted.MM}/${article.id}.fo"
71 destination="${config.storageRoot}/${pathprefix}/${article.date.formatted.yyyy}/${article.date.formatted.MM}/${article.id}.pdf"
72 stylesheet="${config['Producer.HTML2FOStyleSheet']}" /> -->
74 <IndexContent key="article" pathToIndex="${config['IndexPath']}"/>
77 <UnIndexContent key="article" pathToIndex="${config['IndexPath']}"/>
80 <MarkContent key="article"/>
85 <producer name="navigation">
87 <verb name="generate" default="1" description="generates the left column"/>
92 generator="/navigation.template"
93 destination="${config.storageRoot}/${pathprefix}/navigation.inc"/>
98 <producer name="staticimages">
100 <verb name="generate" default="1" description="copies all the static image files into place"/>
103 <CopyDir destination="img" source="etc/producer/images"/>
107 <producer name="newswirearchive">
110 <Set key="pages" value="3"/>
113 <Set key="pages" value="-1"/>
117 <Define key="docSuffix" value=".shtml"/>
118 <Define key="storageSuffix" value=".shtml"/>
120 <Batch key="articles" infokey="batch" table="content"
121 process="pages" batchsize="20" minbatchsize="10"
122 selection="is_published='1' and to_article_type = ${articletype.newswire}"
123 order="webdb_create asc">
126 <Define key="pagePrefix" value="${pathprefix}/newswire/archive"/>
127 <Define key="storagePrefix" value="${config["Producer.StorageRoot"]}/${pagePrefix}"/>
128 <Define key="docPrefix" value="${config["Producer.DocRoot"]}/${pagePrefix}"/>
131 generator="newswirearchive.template"
132 destination="${storagePrefix}${batch.current.identifier}${storageSuffix}"/>
138 <Define key="pagePrefix" value="${pathprefix}/newswire/archive"/>
139 <Define key="storagePrefix" value="${config["Producer.StorageRoot"]}/${pagePrefix}"/>
140 <Define key="docPrefix" value="${config["Producer.DocRoot"]}/${pagePrefix}"/>
142 generator="batchnav.template"
143 destination="${storagePrefix}nav${storageSuffix}"/>
150 <producer name="featurearchive">
153 <Set key="pages" value="3"/>
156 <Set key="pages" value="-1"/>
160 <Define key="docSuffix" value=".shtml"/>
161 <Define key="storageSuffix" value=".shtml"/>
163 <Batch key="articles" infokey="batch" table="content"
164 process="pages" batchsize="20" minbatchsize="10"
165 selection="is_published='1' and to_article_type in (${articletype.feature}, ${articletype.startspecial})"
166 order="webdb_create asc">
169 <Define key="pagePrefix" value="${pathprefix}/feature/archive"/>
170 <Define key="storagePrefix" value="${config["Producer.StorageRoot"]}/${pagePrefix}"/>
171 <Define key="docPrefix" value="${config["Producer.DocRoot"]}/${pagePrefix}"/>
174 generator="featurearchive.template"
175 destination="${storagePrefix}${batch.current.identifier}${storageSuffix}"/>
181 <Define key="pagePrefix" value="${pathprefix}/feature/archive"/>
182 <Define key="storagePrefix" value="${config["Producer.StorageRoot"]}/${pagePrefix}"/>
183 <Define key="docPrefix" value="${config["Producer.DocRoot"]}/${pagePrefix}"/>
185 generator="batchnav.template"
186 destination="${storagePrefix}nav${storageSuffix}"/>
193 <producer name="topicpages">
196 <Set key="_topics" value="-1"/>
197 <Set key="pages" value="3"/>
200 <Set key="_topics" value="-1"/>
201 <Set key="pages" value="-1"/>
204 <Set key="_topics" value="2"/>
205 <Set key="pages" value="4"/>
209 <Enumerate key="topic" table="topic" limit="_topics">
210 <Define key="docSuffix" value=".shtml"/>
211 <Define key="storageSuffix" value=".shtml"/>
213 <List key="special" table="content c"
214 selection="c.is_published='1' and c.to_article_type = ${articletype.topicspecial} and c.id=cxt.content_id cxt.topic_id = ${topic.id})"
215 order = "webdb_create desc" limit="1"
216 extratables="content_x_topic cxt"/>
218 <Batch key="articles" infokey="batch" table="content c"
219 process="pages" batchsize="20" minbatchsize="10"
220 selection="c.is_published='1' and c.to_article_type in (${articletype.newswire}, ${articletype.feature}) and c.id=cxt.content_id and cxt.topic_id = ${topic.id})"
221 order="webdb_create asc" extratables="content_x_topic cxt">
224 <Define key="pagePrefix" value="${pathprefix}/${topic.filename}/archive"/>
225 <Define key="storagePrefix" value="${config["Producer.StorageRoot"]}/${pagePrefix}"/>
226 <Define key="docPrefix" value="${config["Producer.DocRoot"]}/${pagePrefix}"/>
229 generator="topicpage.template"
230 destination="${storagePrefix}${batch.current.identifier}${storageSuffix}"/>
236 <Define key="pagePrefix" value="${pathprefix}/${topic.filename}/archive"/>
237 <Define key="storagePrefix" value="${config["Producer.StorageRoot"]}/${pagePrefix}"/>
238 <Define key="docPrefix" value="${config["Producer.DocRoot"]}/${pagePrefix}"/>
240 generator="batchnav.template"
241 destination="${storagePrefix}nav${storageSuffix}"/>
249 <producer name="startpage">
251 <verb name="generate" default="1" description="Generates the startpage"/>
255 <List key="startspecial" table="content" limit="1"
256 selection="is_published=true and to_article_type=${articletype.startspecial}"
257 order="webdb_create desc"/>
259 <List key="features" table="content" limit="10"
260 selection="is_published=true and to_article_type=${articletype.feature}"
261 order="webdb_create desc"/>
263 <List key="newswire" table="content" limit="30"
264 selection="is_published=true and to_article_type=${articletype.newswire}"
265 order="webdb_create desc"/>
267 <List key="breakingnews" table="breakingNews" limit="10"
268 order="webdb_create desc"/>
272 generator="/startpage.template"
273 destination="${config.storageRoot}/${pathprefix}/index.shtml"/>
278 <producer name="synchronization">
280 <verb name="run" default="1" description="Synchronizes the publication site with the production site"/>
284 <If condition="config['Rsync'] in ('1', 'y', 'yes', 'Y')">
286 <Execute command="${config['Rsync.Script.Path']}"/>
293 <producer name="media">
295 <verb name="new" default="1">
296 <Define key="verbcondition" value="(not is_produced)"/>
297 <Set key="limit" value="10"/>
300 <Define key="verbcondition" value=""/>
301 <Set key="limit" value="-1"/>
305 <Define key="verbcondition" value=""/>
306 <Set key="limit" value="10"/>
311 key="media" table="image"
312 selection="${verbcondition}"
314 order="webdb_create desc">
316 <GenerateMedia key="media" />
319 key="media" table="video"
320 selection="${verbcondition}"
322 order="webdb_create desc">
324 <GenerateMedia key="media" />
327 key="media" table="audio"
328 selection="${verbcondition}"
330 order="webdb_create desc">
332 <GenerateMedia key="media" />
335 key="media" table="otherMedia"
336 selection="${verbcondition}"
338 order="webdb_create desc">
340 <GenerateMedia key="media" />