re-work installation to use a bse.cfg style file
[bse.git] / site / cgi-bin / bse.cfg
1 [site]
2 name=SomeSite
3 ; url should not include a trailing /
4 url=http://your.site.base
5 secureurl=$(url)
6
7 [basic]
8 randomdata = /dev/urandom
9 access_control=0
10 file_handlers=flv
11 preload_template=preload.tmpl
12
13 [paths]
14 ; the following needs to be set to a path writable by the BSE processes
15 ; set [paths].siteroot
16 downloads = $(siteroot)/uploads
17 siteuser_images = $(downloads)
18 dynamic_cache=$(siteroot)/cache
19 backgroundlogs=$(siteroot)/backlogs
20 public_html=$(siteroot)/htdocs
21 public_files=$(public_html)/managed_assets
22 images=$(public_html)/managed_assets
23 data=$(siteroot)/data
24 templates=$(siteroot)/templates
25 cgi-bin=$(siteroot)/cgi-bin
26 util=$(siteroot)/util
27
28 [uri]
29 images=/managed_assets
30 public_files=/managed_assets/
31
32 [pregenerate]
33
34 ; the following are required by the system - don't modify them
35 user/editbooking.tmpl = user,user/base_editbooking.tmpl
36 user/bookingdetail.tmpl = user,user/base_bookingdetail.tmpl
37 user/cancelbooking.tmpl = user,user/base_cancelbooking.tmpl
38 user/bookinglist.tmpl = user,user/base_bookinglist.tmpl
39 user/orderdetail.tmpl = user,user/base_orderdetail.tmpl
40 user/orderdetaila.tmpl = user,user/base_orderdetail.tmpl
41 user/alreadyblacklisted.tmpl = user,user/alreadyblacklisted_base.tmpl
42 user/blacklistdone.tmpl = user,user/blacklistdone_base.tmpl
43 user/cantunsub.tmpl = user,user/cantunsub_base.tmpl
44 user/confirmed.tmpl = user,user/confirmed_base.tmpl
45 user/confsent.tmpl = user,user/confsent_base.tmpl
46 user/confsent_nop.tmpl = user,user/confsent_nop_base.tmpl
47 user/email_conferror.tmpl = user,user/email_conferror_base.tmpl
48 user/logon.tmpl = user,user/logon_base.tmpl
49 user/lostemailsent.tmpl = user,user/lostemailsent_base.tmpl
50 user/lostpassword.tmpl = user,user/lostpassword_base.tmpl
51 user/lost_prompt.tmpl = user,user/base_lost_prompt.tmpl
52 user/nopassword.tmpl = user,user/nopassword_base.tmpl
53 user/options.tmpl = user,user/options_base.tmpl
54 user/options_saved.tmpl = user,user/options_saved_base.tmpl
55 user/options_delivery.tmpl = user,user/options_delivery_base.tmpl
56 user/options_images.tmpl = user,user/options_images_base.tmpl
57 user/register.tmpl = user,user/register_base.tmpl
58 user/toomany.tmpl = user,user/toomany_base.tmpl
59 user/toosoon.tmpl = user,user/toosoon_base.tmpl
60 user/unsuball.tmpl = user,user/unsuball_base.tmpl
61 user/unsubone.tmpl = user,user/unsubone_base.tmpl
62 user/userpage.tmpl = user,user/userpage_base.tmpl
63 user/userpage_wishlist.tmpl = user,user/base_userpage_wishlist.tmpl
64 user/userpage_files.tmpl = user,user/base_userpage_files.tmpl
65 user/userpage_orders.tmpl = user,user/base_userpage_orders.tmpl
66 user/wishlist.tmpl = user,user/base_wishlist.tmpl
67 user/bookseminar.tmpl = user,user/base_bookseminar.tmpl
68 user/bookconfirm.tmpl = user,user/base_bookconfirm.tmpl
69 user/bookcomplete.tmpl = user,user/base_bookcomplete.tmpl
70 user/redirect.tmpl = user,user/base_redirect.tmpl
71 interest/confirm.tmpl = interest,interest/confirm_base.tmpl
72 interest/askagain.tmpl = interest,interest/askagain_base.tmpl
73 interest/error.tmpl = interest,interest/error_base.tmpl
74 formmail/defquery.tmpl = formmail,formmail/defquery_base.tmpl
75 formmail/defdone.tmpl = formmail,formmail/defdone_base.tmpl
76 error.tmpl = error,error_base.tmpl
77 tellafriend/form.tmpl = user,tellafriend/base_form.tmpl
78 tellafriend/done.tmpl = user,tellafriend/base_done.tmpl
79
80 [user settings]
81 title = My $(site/name)
82
83 [interest settings]
84 title = $(site/name) Interest Registration
85
86 [formmail settings]
87 title = Send us a comment
88
89 [error settings]
90 title = Error
91 dynamic = 0
92
93 [messages]
94 user/notyourorder = Order $1 isn't your order
95 shop/fileitems = You have products in your cart that include downloadable files.  Please logon or register before checking out.
96 shop/logonrequired = This site requires that you be logged on to make a purchase.  Please logon or register before checking out.
97
98 [downloads]
99 ; if true, an order must be marked paid for before the user can download
100 ; the files attached to the products
101 ;must_be_paid = yes
102 ; if true, an order must be marked filled before the user can download the
103 ; files attached to the products
104 ;must_be_filled = yes
105
106 [children of 5]
107 template=common/sidebar.tmpl
108 template_dirs=sidebar
109
110 [extra tags]
111 siteUrl = $(site/url)
112 siteName = $(site/name)
113 ; You can add any static tag definitions you like here
114 ; salesEmail = someone@yoursite.com
115 ; salesPhoneNo = 61 2 9999 8888
116
117 [datadump]
118 # where to email the data dump
119 #to = someone@somewhere
120 # program to run to do the dump
121 # must take the same parameters as mysqldump
122 #mysqldump = /usr/local/mysql/bin/mysqldump
123
124 [subscriptions]
125 # if override is non-zero then the fields for the archiving and templates
126 # will be available when sending a subscription
127 override=1
128
129 [level names]
130 0=Your Site
131 1=Page Lev1
132 2=Page Lev2
133 3=Page Lev3
134 4=Page Lev4
135 5=Page Lev5
136
137 [articles]
138 shop=3
139
140 [shop]
141 payment_types=0,1,2
142 address1=First address line in configuration
143 address2=Second address line in configuration
144 address3=Third address line in configuration
145 enabled=1
146
147 [level 1]
148 template=common/default.tmpl
149
150 [level 2]
151 template=common/default.tmpl
152
153 [level 3]
154 template=common/default.tmpl
155
156 [level 4]
157 template=common/default.tmpl
158
159 [level 5]
160 template=common/default.tmpl
161
162 [catalogs]
163 template=catalog.tmpl
164
165 [products]
166 template=shopitem.tmpl
167
168 [templates]
169 admin/edit_2=admin/edit_1
170 admin/edit_3=admin/edit_1
171 admin/edit_4=admin/edit_1
172 admin/edit_5=admin/edit_1
173 admin/edit_img=admin/article_img
174 admin/edit_file=admin/filelist
175
176 ; this used to be handled via the edit target, but since CVS sucks
177 ; I won't rename the template
178 admin/users/view_orders=admin/users/edit_orders
179
180 [Global permissions]
181 change_body = 8
182 change_body_no_shop = 9
183 full_access = 0
184 full_access_no_shop = 3
185 shop_access = 1
186 shop_orders = 5
187 subscriptions = 4
188 users_and_groups = 6
189 confirm_members = 12
190 manage_members = 13
191
192 [Article permissions]
193 change_body_doc = 2
194 change_body_decendants = 10
195 full_access_doc = 7
196 full_access_decendants = 11
197
198 [permission change_body]
199 brief=Title & body (Site)
200 help=The user has permission to change only the title & body of all articles or products.
201 permissions=edit_field_edit_body,edit_field_edit_title,edit_save
202 descendants=1
203 articles=-1
204
205 [permission change_body_no_shop]
206 brief=Title & body except shop admin
207 help=The user has permission to change only the title & body of all 
208 articles except for the shop.
209 permissions=edit_field_edit_body,edit_field_edit_title,edit_save
210 descendants=1
211 articles=not(3)
212
213 [permission full_access]
214 brief=Full access (Site)
215 help=Full access to the article.  The user can modify all modifiable fields, delete and add articles at will.
216 permissions=edit_*,regen_*,bse_*,admin_*
217 descendants=1
218 articles=-1
219
220 [permission full_access_no_shop]
221 brief=Full access except shop admin
222 help=The user has complete access to all articles except for the shop.
223 permissions=edit_*,regen_*
224 descendants=1
225 articles=not(3)
226
227 [permission shop_access]
228 brief=Shop administration
229 help=The user has complete access to catalogs or products in the shop.
230 permissions=not(admin_*)
231 descendants=1
232 articles=3
233
234 [permission shop_orders]
235 brief=Shop orders management
236 help=The user can view the order list, order details, and mark orders filled.
237 permissions=shop_order_*
238 articles=-1
239
240 [permission subscriptions]
241 brief=Subscriptions management
242 help=The user can create, edit and send subscriptions.
243 permissions=subs_*
244 articles=-1
245
246 [permission users_and_groups]
247 brief=User/Group management
248 help=The user can manage users, groups and their permissions.
249 permissions=admin_*
250 articles=-1
251
252 [permission change_body_doc]
253 brief=Title & body (Article)
254 help=The user has permission to change only the title & body of this 
255 article or product.
256 permissions=edit_field_edit_body,edit_field_edit_title,edit_save
257
258 [permission change_body_decendants]
259 brief=Title & body (Article + Decendants)
260 help=The user has permission to change only the title & body of this article or product and it's decendants.
261 permissions=edit_field_edit_body,edit_field_edit_title,edit_save
262 descendants=1
263
264 [permission full_access_doc]
265 brief=Full access (Article)
266 help=Full access to the article.  The user can modify all modifiable 
267 fields for this article or product.
268 permissions=edit_*,regen_*
269
270 [permission full_access_decendants]
271 brief=Full access (Article + Decendants)
272 help=Full access to the article and it's decendants.  The user can modify all modifiable fields for this article or product.
273 permissions=edit_*,regen_*
274 descendants=1
275
276 [permission confirm_members]
277 brief=Confirm member email address
278 help=The user can manually mark a members email address as confirmed.
279 permissions=bse_members_confirm
280 articles=-1
281
282 [permission manage_members]
283 brief=Member management
284 help=The user can manage site members
285 permissions=bse_members_user_*,bse_members_group_*
286 articles=-1
287
288 [article flags]
289 A=Disallow browser caching (default, dynamic articles only)
290 B=Allow browser caching (dynamic articles only)
291 C=Don't index this article or it's descendants
292 D=Disable linking
293 F=Descendants inherit Always Dynamic
294 I=Index even if hidden
295 N=Don't index even if listed
296 R=Regenerate even if we're using JIT regen (dynamic pages only)
297 P=Link to parent
298
299 [article 1]
300 extra_templates=index.tmpl
301
302 [article 2]
303 extra_templates=index2.tmpl
304
305 [reports]
306 sales_summ_by_product=Sales Summary By Product
307 product_sales_over_time=Product Sales Over Time
308 monthly_sales=Monthly Sales
309 quarterly_sales=Quarterly Sales
310 weekly_sales=Weekly Sales
311 yearly_sales=Yearly Sales
312 total_sales=Total Sales
313 users_vs_orders=Users vs Orders
314 user_products=Products bought by User
315 bse_test=Test report
316 bse_recent_regos=Recent registrations
317
318 [report sales_summ_by_product]
319 sql1=select pr.articleId as "Id", ar.title as "Product", count(*) as "Units" from article ar, product pr, order_item oi where ar.id = pr.articleId and pr.articleId = oi.productId group by pr.articleId, ar.title
320 sql1link1=<a href="/cgi-bin/admin/report.pl?s_show=1&r=product_sales_over_time&p1=${Id}">Sales Over Time</a>
321 sql1link2=<a href="/cgi-bin/admin/add.pl?id=${Id}">Edit</a>
322 sort1=-Units;By Unit from highest;order by 3 desc
323 sort2=+Units;By Unit;order by 3
324 sort3=+Product;Product name;order by 2
325 sort4=-Product;Reverse product name;order by 2 desc
326
327 [report product_sales_over_time]
328 sql1=select year(od.orderDate) as "Year", month(od.orderDate) as "Month", count(*) as 'Units' from order_item oi, orders od where oi.orderId = od.id and productId = ? group by year(od.orderDate), month(od.orderDate) order by 1 DESC, 2 DESC
329 sql1params=1
330 param1=product,Product
331 sort1=-Year;Reverse time order;order by 1 desc, 2 desc
332 sort2=+Year;Time order;order by 1 asc, 2 asc
333 sort3=-Units;By units desc;order by 3 desc
334 sort4=+Units;By units asc;order by 3 asc
335
336 [report weekly_sales]
337 sql1=select year(od.orderDate) as "Year", week(od.orderDate) as "Week", count(*) as 'Orders', format(sum(od.total)/100.0,2) as '$ Total', count(su.userId) as 'Logon Orders' from orders od left join bse_siteusers su on od.userId =su.userId group by year(od.orderDate), week(od.orderDate) order by 1 DESC, 2 DESC
338
339 [report monthly_sales]
340 sql1=select year(od.orderDate) as "Year", month(od.orderDate) as "Month", format(sum(od.total)/100.0,2) as 'Total', count(*) as 'Count', count(su.userId) as 'User Registered' from orders od left join bse_siteusers su on od.userId = su.userId group by year(od.orderDate), month(od.orderDate) order by 1 DESC, 2 DESC
341
342 [report quarterly_sales]
343 sql1=select year(od.orderDate) as "Year", quarter(od.orderDate) as "Quarter", format(sum(od.total)/100.0,2) as 'Total', count(*) as 'Count' from orders od group by year(od.orderDate), quarter(od.orderDate) order by 1 DESC, 2 DESC
344
345 [report yearly_sales]
346 sql1=select year(od.orderDate) as "Year", count(*) as "Orders",format(sum(od.total)/100.0,2) as '$ Total', count(su.userId) as 'Logon Orders' from orders od left join bse_siteusers su on od.userId = su.userId group by year(od.orderDate) order by 1 DESC
347
348 [report total_sales]
349 sql1=select count(*) as "Orders", format(sum(total)/100.0,2) as '$ Total', count(su.userId) as 'Logon Orders' from orders od left join bse_siteusers su on od.userId = su.userId
350
351 [report user_products]
352 sql1=select pr.title, count(*) as 'Count' from orders od, order_item oi, article pr, bse_siteusers su where oi.orderId = od.id and oi.productId = pr.id and su.userId = od.userId and su.id = ? group by pr.id
353 sql1params=1
354 param1=site_user,User
355
356 [report users_vs_orders]
357 sql1=select delivFirstName as "First Name", delivLastName as "Last Name", userId as "Logon", format(sum(total)/100.0,2) as '$ Total', count(*) as "Orders" from orders group by delivFirstName, delivLastName order by 5 DESC, 2
358
359 [report datatype product]
360 type=sql
361 sql=select ar.id as "id", ar.title as "label" from article ar, product pr where ar.id = pr.articleId order by 2
362 novalues=[ You don't have any products ]
363
364 [report bse_recent_regos]
365 sql1=<<SQL
366 select id, userId as "Logon", name1 as "First Name", name2 as "Last Name", whenRegistered as "When Registered"
367 from bse_siteusers
368 where whenRegistered > date_sub(now(), interval 7 day)
369 order by whenRegistered desc
370 SQL
371
372
373 [report datatype article]
374 type=sql
375 sql=select id, concat(title, ' (', id, ')') as "label" from article
376
377 [report datatype site_user]
378 type=sql
379 sql=select id, userId as "label" from bse_siteusers
380 novalues=[ There are no registered users ]
381
382 [report bse_test]
383 sql1=select id, title from article where id = ?
384 hide=1
385 param1=article,Article
386 sql1params=1
387
388 [valid child types]
389 Article=Article
390 Catalog=Catalog,Product
391 Product=
392
393 [protect link]
394 ; articles for which the link field should not be overwritten
395 ; the values are ignored, but you can include descriptions
396 1=home page
397 3=shop
398 6=formatting guide
399 7=RDF
400
401 [editor]
402 ;allow_thumbs=1
403 ;thumbs_class=BSE::Thumb::Imager
404 file_display=small
405
406 [site users]
407 display_name1=First Name
408 display_name2=Last Name
409 display_street=Street
410 display_postcode=Post code
411 display_telephone=Phone
412
413 [nonajax user agents]
414 ie4=MSIE 4
415 ie5=MSIE 5.01
416
417 [ajax user agents]
418 mozilla=^Mozilla/5\.0
419 ie5=MSIE 5.5
420 ie6=MSIE 6
421 ie7=MSIE 7
422 ie8=MSIE 8
423 safari=Safari
424 khtml=KHTML
425 opera=Opera
426
427 [ajax definitions]
428 includes=<<INLINE
429 inline:<script type="text/javascript" src="/js/prototype.js"></script>
430 <script type="text/javascript" src="/js/scriptaculous.js"></script>
431 <script type="text/javascript" src="/js/scriptoverride.js"></script>
432 INLINE
433
434 [nuser controllers]
435 user=BSE::UI::User
436 redirect=BSE::UI::Redirect
437 shop=BSE::UI::Shop
438 search=BSE::UI::Search
439 page=BSE::UI::Page
440 tellafriend=BSE::UI::Tellafriend
441 default=shop
442
443 [nadmin controllers]
444 shopadmin=BSE::UI::AdminShop
445 modules=BSE::UI::AdminModules
446 log=BSE::UI::AdminAudit
447 importer=BSE::UI::AdminImporter
448 ipaddress=BSE::UI::AdminIPAddress
449
450 [includes]
451 00install=bse-install.cfg
452 10bsecfg_d=cfg/
453
454 [mail resources]
455 stylesheet=email/email.css,text/css,1
456
457 [targets]
458 tellafriend=/cgi-bin/nuser.pl/tellafriend/TARGET
459 tellafriend_n=/cgi-bin/nuser.pl/tellafriend
460
461 [thumb geometries]
462 editor=scale(200x200)
463 sadmingall=scale(120x120),dropshadow(),canvas(140x140,bgalpha:0),format(png)
464 search=scale(150x120)
465
466 [file handlers]
467 flv=BSE::FileHandler::FLV
468
469 [template descriptions]
470 common/default.tmpl=Default template
471
472 [nightly work]
473 bse_session_clean=1
474 bse_audit_log_clean=1
475
476 [undeletable articles]
477 1=home page
478 2=more home page
479 5=sidebar
480
481 [number money]
482 divisor=100
483 places=2