1 | <?php |
---|
2 | # -- BEGIN LICENSE BLOCK ---------------------------------- |
---|
3 | # |
---|
4 | # This file is part of zoneclearFeedServer, a plugin for Dotclear 2. |
---|
5 | # |
---|
6 | # Copyright (c) 2009-2013 Jean-Christian Denis, BG and contributors |
---|
7 | # contact@jcdenis.fr http://jcd.lv |
---|
8 | # |
---|
9 | # Licensed under the GPL version 2.0 license. |
---|
10 | # A copy of this license is available in LICENSE file or at |
---|
11 | # http://www.gnu.org/licenses/old-licenses/gpl-2.0.html |
---|
12 | # |
---|
13 | # -- END LICENSE BLOCK ------------------------------------ |
---|
14 | |
---|
15 | if (!defined('DC_CONTEXT_ADMIN')){return;} |
---|
16 | |
---|
17 | $new_version = $core->plugins->moduleInfo('zoneclearFeedServer','version'); |
---|
18 | $old_version = $core->getVersion('zoneclearFeedServer'); |
---|
19 | |
---|
20 | if (version_compare($old_version,$new_version,'>=')) return; |
---|
21 | |
---|
22 | try |
---|
23 | { |
---|
24 | # Check DC version (dev on) |
---|
25 | if (version_compare(str_replace("-r","-p",DC_VERSION),'2.5-alpha','<')) |
---|
26 | { |
---|
27 | throw new Exception('zoneclearFeedServer requires Dotclear 2.5'); |
---|
28 | } |
---|
29 | |
---|
30 | # Tables |
---|
31 | $t = new dbStruct($core->con,$core->prefix); |
---|
32 | $t->zc_feed |
---|
33 | ->feed_id ('bigint',0,false) |
---|
34 | ->feed_creadt ('timestamp',0,false,'now()') |
---|
35 | ->feed_upddt ('timestamp',0,false,'now()') |
---|
36 | ->feed_type ('varchar',32,false,"'feed'") |
---|
37 | ->blog_id ('varchar',32,false) |
---|
38 | ->cat_id ('bigint',0,true) |
---|
39 | ->feed_upd_int ('integer',0,false,3600) |
---|
40 | ->feed_upd_last ('integer',0,false,0) |
---|
41 | ->feed_status ('smallint',0,false,0) |
---|
42 | ->feed_name ('varchar',255,false) |
---|
43 | ->feed_desc ('text',0,true) //!pgsql reserved 'desc' |
---|
44 | ->feed_url ('varchar',255,false) |
---|
45 | ->feed_feed ('varchar',255,false) |
---|
46 | ->feed_tags ('varchar',255,true) |
---|
47 | ->feed_get_tags ('smallint',0,false,1) |
---|
48 | ->feed_owner ('varchar',255,false) |
---|
49 | ->feed_tweeter ('varchar',64,false) // tweeter ident |
---|
50 | ->feed_lang ('varchar',5,true) |
---|
51 | ->feed_nb_out ('integer',0,false,0) |
---|
52 | ->feed_nb_in ('integer',0,false,0) |
---|
53 | |
---|
54 | ->primary('pk_zcfs','feed_id') |
---|
55 | ->index('idx_zcfs_type','btree','feed_type') |
---|
56 | ->index('idx_zcfs_blog','btree','blog_id'); |
---|
57 | |
---|
58 | $ti = new dbStruct($core->con,$core->prefix); |
---|
59 | $changes = $ti->synchronize($t); |
---|
60 | |
---|
61 | # Settings |
---|
62 | $core->blog->settings->addNamespace('zoneclearFeedServer'); |
---|
63 | $s = $core->blog->settings->zoneclearFeedServer; |
---|
64 | $s->put('zoneclearFeedServer_active',false,'boolean','Enable zoneclearBlogServer',false,true); |
---|
65 | $s->put('zoneclearFeedServer_pub_active',false,'boolean','Enable public page of list of feeds',false,true); |
---|
66 | $s->put('zoneclearFeedServer_post_status_new',true,'boolean','Enable auto publish new posts',false,true); |
---|
67 | $s->put('zoneclearFeedServer_bhv_pub_upd',2,'string','Auto update on public side (disable/before/after)',false,true); |
---|
68 | $s->put('zoneclearFeedServer_update_limit',1,'integer','Number of feeds to update at one time',false,true); |
---|
69 | $s->put('zoneclearFeedServer_keep_empty_feed',false,'boolean','Keep active empty feeds',false,true); |
---|
70 | $s->put('zoneclearFeedServer_tag_case',0,'integer','How to transform imported tags',false,true); |
---|
71 | $s->put('zoneclearFeedServer_user','','string','User id that has right on post',false,true); |
---|
72 | $s->put('zoneclearFeedServer_post_full_tpl',serialize(array('post','category','tag','archive')),'string','List of templates types for full feed',false,true); |
---|
73 | $s->put('zoneclearFeedServer_post_title_redir',serialize(array('feed')),'string','List of templates types for redirection to original post',false,true); |
---|
74 | |
---|
75 | # Version |
---|
76 | $core->setVersion('zoneclearFeedServer',$new_version); |
---|
77 | |
---|
78 | return true; |
---|
79 | } |
---|
80 | catch (Exception $e) |
---|
81 | { |
---|
82 | $core->error->add($e->getMessage()); |
---|
83 | } |
---|
84 | return false; |
---|
85 | ?> |
---|