rev |
line source |
jbe@326
|
1 request.set_absolute_baseurl(request.get_relative_baseurl())
|
jbe@326
|
2 -- request.set_absolute_baseurl("http://www.example.com/lf/")
|
jbe@326
|
3
|
jbe@326
|
4 config.app_name = "LiquidFeedback"
|
bsw@544
|
5 config.app_version = "2.beta6"
|
jbe@326
|
6
|
bsw@525
|
7 config.instance_name = request.get_config_name()
|
bsw@525
|
8
|
jbe@326
|
9 config.app_title = config.app_name .. " (" .. request.get_config_name() .. " environment)"
|
jbe@326
|
10
|
jbe@326
|
11 config.app_logo = nil
|
jbe@326
|
12
|
jbe@326
|
13 config.app_service_provider = "Snake Oil<br/>10000 Berlin<br/>Germany"
|
jbe@326
|
14
|
jbe@326
|
15 --config.footer_html = '<a href="somewhere">some link</a>'
|
jbe@326
|
16
|
jbe@326
|
17 config.use_terms = "=== Terms of Use ===\nNothing is allowed."
|
jbe@326
|
18 --config.use_terms_html = ""
|
jbe@326
|
19
|
jbe@326
|
20 config.use_terms_checkboxes = {
|
jbe@326
|
21 {
|
jbe@326
|
22 name = "terms_of_use_v1",
|
jbe@326
|
23 html = "I accept the terms of use.",
|
jbe@326
|
24 not_accepted_error = "You have to accept the terms of use to be able to register."
|
jbe@326
|
25 }
|
jbe@326
|
26 }
|
jbe@326
|
27
|
jbe@326
|
28 config.locked_profile_fields = {
|
jbe@326
|
29 login = false,
|
jbe@326
|
30 notify_email = false,
|
jbe@326
|
31 name = false,
|
jbe@326
|
32 organizational_unit = false,
|
jbe@326
|
33 internal_posts = false,
|
jbe@326
|
34 realname = false,
|
jbe@326
|
35 birthday = false,
|
jbe@326
|
36 address = false,
|
jbe@326
|
37 email = false
|
jbe@326
|
38 }
|
jbe@326
|
39
|
jbe@326
|
40 config.member_image_content_type = "image/jpeg"
|
jbe@326
|
41 config.member_image_convert_func = {
|
jbe@326
|
42 avatar = function(data) return os.pfilter(data, "convert", "jpeg:-", "-thumbnail", "48x48", "jpeg:-") end,
|
jbe@326
|
43 photo = function(data) return os.pfilter(data, "convert", "jpeg:-", "-thumbnail", "240x240", "jpeg:-") end
|
jbe@326
|
44 }
|
jbe@326
|
45
|
jbe@326
|
46 config.member_image_default_file = {
|
jbe@326
|
47 avatar = "avatar.jpg",
|
jbe@326
|
48 photo = nil
|
jbe@326
|
49 }
|
jbe@326
|
50
|
jbe@326
|
51 config.default_lang = "en"
|
jbe@326
|
52
|
jbe@326
|
53 -- after how long is a user considered inactive and the trustee will see warning
|
jbe@326
|
54 -- notation is according to postgresql intervals
|
jbe@326
|
55 config.delegation_warning_time = '6 months'
|
jbe@326
|
56
|
jbe@326
|
57 config.mail_subject_prefix = "[LiquidFeedback] "
|
jbe@326
|
58
|
jbe@326
|
59 config.fastpath_url_func = nil
|
jbe@326
|
60
|
jbe@326
|
61 config.download_dir = nil
|
jbe@326
|
62
|
jbe@326
|
63 config.download_use_terms = "=== Nutzungsbedingungen ===\nAlles ist verboten"
|
jbe@326
|
64
|
jbe@326
|
65 config.public_access = false -- Available options: "anonymous", "pseudonym"
|
jbe@326
|
66
|
jbe@326
|
67 config.api_enabled = true
|
jbe@326
|
68
|
jbe@326
|
69 config.feature_rss_enabled = false -- feature is broken
|
jbe@326
|
70
|
jbe@326
|
71 config.single_unit_id = false
|
jbe@326
|
72
|
jbe@326
|
73 -- OpenID authentication is not fully implemented yet, DO NOT USE BEFORE THIS NOTICE HAS BEEN REMOVED!
|
jbe@326
|
74 config.auth_openid_enabled = false
|
jbe@326
|
75 config.auth_openid_https_as_default = true
|
jbe@326
|
76 config.auth_openid_identifier_check_func = function(uri) return false end
|
jbe@326
|
77
|
jbe@326
|
78 request.set_allowed_json_request_slots{ "title", "actions", "support", "default", "trace", "system_error" }
|
jbe@326
|
79
|
jbe@326
|
80 if request.get_json_request_slots() then
|
jbe@326
|
81 request.force_absolute_baseurl()
|
jbe@326
|
82 end
|
jbe@326
|
83
|
jbe@326
|
84 request.set_404_route{ module = 'index', view = '404' }
|
jbe@326
|
85
|
jbe@326
|
86 -- uncomment the following two lines to use C implementations of chosen
|
jbe@326
|
87 -- functions and to disable garbage collection during the request, to
|
jbe@326
|
88 -- increase speed:
|
jbe@326
|
89 --
|
jbe@326
|
90 -- require 'webmcp_accelerator'
|
jbe@326
|
91 -- collectgarbage("stop")
|
jbe@326
|
92
|
jbe@326
|
93 -- open and set default database handle
|
jbe@326
|
94 db = assert(mondelefant.connect{
|
jbe@326
|
95 engine='postgresql',
|
jbe@326
|
96 dbname='liquid_feedback_p'
|
jbe@326
|
97 })
|
jbe@326
|
98 at_exit(function()
|
jbe@326
|
99 db:close()
|
jbe@326
|
100 end)
|
jbe@326
|
101 function mondelefant.class_prototype:get_db_conn() return db end
|
jbe@326
|
102
|
jbe@326
|
103 -- enable output of SQL commands in trace system
|
jbe@326
|
104 function db:sql_tracer(command)
|
jbe@326
|
105 return function(error_info)
|
jbe@326
|
106 local error_info = error_info or {}
|
jbe@326
|
107 trace.sql{ command = command, error_position = error_info.position }
|
jbe@326
|
108 end
|
jbe@326
|
109 end
|
jbe@326
|
110
|
jbe@326
|
111
|
jbe@326
|
112 -- TODO abstraction
|
jbe@326
|
113 -- get record by id
|
jbe@326
|
114 function mondelefant.class_prototype:by_id(id)
|
jbe@326
|
115 local selector = self:new_selector()
|
jbe@326
|
116 selector:add_where{ 'id = ?', id }
|
jbe@326
|
117 selector:optional_object_mode()
|
jbe@326
|
118 return selector:exec()
|
jbe@326
|
119 end
|
jbe@326
|
120
|
jbe@326
|
121 config.formatting_engine_executeables = {
|
jbe@326
|
122 rocketwiki= "/opt/rocketwiki-lqfb/rocketwiki-lqfb",
|
jbe@326
|
123 compat = "/opt/rocketwiki-lqfb/rocketwiki-lqfb-compat"
|
jbe@326
|
124 }
|
jbe@326
|
125
|
jbe@326
|
126 config.fastpath_url_func = function(member_id, image_type)
|
jbe@326
|
127 return request.get_absolute_baseurl() .. "fastpath/getpic?" .. tostring(member_id) .. "+" .. tostring(image_type)
|
jbe@326
|
128 end
|
jbe@326
|
129
|