XPressME Integration Kit

Trac

source: trunk/xpressme_integration_kit/xoops_version.php @ 546

Last change on this file since 546 was 546, checked in by toemon, 15 years ago

MultiBlogの時、メニューにyour primary blog へのリンクを表示 Fixes #308
既にブログを持つユーザにはメニューcreate new blogを表示しないようにする。 Fixes #309

File size: 15.9 KB
Line 
1<?php
2/**
3 * XPressME - WordPress for XOOPS
4 *
5 * Adding multi-author features to XPress
6 *
7 * @copyright   toemon
8 * @license             GNU public license
9 * @author              "toemon ( http://ja.xpressme.info)"
10 * @package             module::xpressme
11 */
12 
13if( ! defined( 'XOOPS_ROOT_PATH' ) ) exit ;
14
15if (!function_exists('wp_version_compare')){
16        function wp_version_compare($wp_version , $operator='==',$comp_version){
17                $inc_wp_version = str_replace("ME", "", $wp_version);
18                return version_compare($inc_wp_version, $comp_version, $operator);
19        }
20}
21
22if (!function_exists('mod_access_level')){
23function mod_access_level(){
24        global $current_user;
25       
26        $level = @$current_user->user_level;
27        $role = @$current_user->roles[0];
28        switch ($role){
29                case 'administrator':
30                        $role_level = 10;
31                        break;
32                case 'editor':
33                        $role_level = 7;
34                        break;
35                case 'author':
36                        $role_level = 2;
37                        break;         
38                case 'contributor':
39                        $role_level = 1;
40                        break;
41                default:
42                        $role_level = 0;
43        }
44       
45        if ($level > $role_level){
46                return $level;
47        } else {
48                return $role_level;
49        }
50}
51}
52
53$mydirpath = dirname(__FILE__);
54$mydirname = basename($mydirpath);
55
56$lang = @$GLOBALS["xoopsConfig"]['language'];
57
58// language file (modinfo.php)
59
60if( file_exists( $mydirpath .'/language/'.$lang.'/modinfo.php' ) ) {
61        include_once $mydirpath .'/language/'.$lang.'/modinfo.php' ;
62} else if( file_exists(  $mydirpath .'/language/english/modinfo.php' ) ) {
63        include_once $mydirpath .'/language/english/modinfo.php' ;
64}
65global $wp_db_version,$wp_version;
66
67include $mydirpath .'/wp-includes/version.php' ;
68
69$modversion['name'] = ucfirst($mydirname) . ' ' . constant('_MI_XP2_NAME') ;
70$modversion['description'] = constant( '_MI_XP2_DESC');
71$modversion['version'] = "2.25";
72$modversion['credits'] = "Wordpress DEV (http://wordpress.org/) XPressME DEV Toemon) (http://ja.xpressme.info) ;";
73$modversion['author'] = "toemon (http://ja.xpressme.info)";
74$modversion['license'] = "GPL see LICENSE";
75$modversion['official'] = 0 ;
76$modversion['image'] =  'module_icon.php' ;
77$modversion['dirname'] = $mydirname;
78
79// status
80$modversion['codename'] = "";
81
82// onInstall, onUpdate, onUninstall
83$modversion['onInstall'] = 'include/oninstall.php' ;
84$modversion['onUpdate'] = 'include/onupdate.php' ;
85$modversion['onUninstall'] = 'include/onuninstall.php' ;
86
87// Sql file (must contain sql generated by phpMyAdmin or phpPgAdmin)
88//$modversion['sqlfile']['mysql'] = "sql/mysql.sql";
89
90$db_prefix = $mydirname;
91if ($mydirname == 'wordpress') {
92        $db_prefix = 'wp';
93}
94
95/*
96 * Table information is not described.
97 *
98 * The create of the table is do with oninstall.php.
99 * The drop of the table is do with onuninstall.php.
100 *
101 * $modversion['tables'] = array( ,,,);
102 */
103
104       
105// Search
106$modversion['hasSearch'] = 1 ;
107$modversion['search']['file'] = 'include/search.php' ;
108$modversion['search']['func'] = $mydirname.'_global_search' ;
109//Admin things
110$modversion['hasAdmin'] = 1;
111$modversion['adminindex'] = "admin/index.php";
112$modversion['adminmenu'] = "admin/menu.php";
113
114$modversion['hasMain'] = 1;
115
116if (function_exists('get_bloginfo')){
117        //$add_url for wpmu multiblog
118        $pattern = '/.*\/' . $mydirname . '/';
119        $add_url = preg_replace($pattern,'',get_bloginfo('url'));
120        if (!empty($add_url)){
121            $pattern = '/^\//';
122            $add_url = preg_replace($pattern,'',$add_url) . '/';
123        }
124
125        if(is_object($GLOBALS["xoopsUser"])){
126                global $current_user , $xoops_config;
127                if (mod_access_level() > 0) {
128                $modversion['sub'][1]['name'] = constant( '_MI_XP2_MENU_POST_NEW');
129                if (wp_version_compare($wp_version, '>=','2.1'))
130                        $modversion['sub'][1]['url'] = $add_url . "wp-admin/post-new.php";
131                else
132                        $modversion['sub'][1]['url'] = $add_url . "wp-admin/post.php";
133                $modversion['sub'][2]['name'] = constant( '_MI_XP2_MENU_EDIT');
134                $modversion['sub'][2]['url'] = $add_url . "wp-admin/edit.php";
135                $modversion['sub'][3]['name'] = constant( '_MI_XP2_MENU_ADMIN');
136                $modversion['sub'][3]['url'] = $add_url . "wp-admin/";
137                }
138                if (mod_access_level() > 9) {
139                        $modversion['sub'][4]['name'] = constant( '_MI_XP2_MENU_XPRESS');
140                        $modversion['sub'][4]['url'] = $add_url . "wp-admin/admin.php?page=xpressme" . DIRECTORY_SEPARATOR . "xpressme.php";
141                }
142                if($GLOBALS["xoopsUserIsAdmin"]){
143                        $modversion['sub'][5]['name'] = constant( '_MI_XP2_MOD_ADMIN');
144                        $modversion['sub'][5]['url'] = "admin/index.php";
145                }
146                $create_new_blog = xpress_create_new_blog();
147                if(!empty($create_new_blog)){
148                        $modversion['sub'][6]['name'] = $create_new_blog['title'];
149                        $modversion['sub'][6]['url'] = $create_new_blog['menu_url'];
150                }
151                $primaryw_blog = xpress_primary_blog_link();
152                if(!empty($primaryw_blog)){
153                        $modversion['sub'][6]['name'] = $primaryw_blog['title'];
154                        $modversion['sub'][6]['url'] = $primaryw_blog['menu_url'];
155                }
156        }
157}
158
159// Use smarty
160$modversion["use_smarty"] = 1;
161
162/**
163* Templates
164*/
165// All Templates can't be touched by modulesadmin.
166$modversion['templates'] = array() ;
167
168$modversion['hasconfig'] = 1;
169$modversion['config'][] = array(
170        'name'                  => 'libxml_patch' ,
171        'title'                 =>  '_MI_LIBXML_PATCH' ,
172        'description'   =>  '_MI_LIBXML_PATCH_DESC' ,
173        'formtype'              => 'yesno' ,
174        'valuetype'             => 'int' ,
175        'default'               => 0 ,
176);
177$modversion['config'][] = array(
178        'name'                  => 'memory_limit' ,
179        'title'                 =>  '_MI_MEMORY_LIMIT' ,
180        'description'   =>  '_MI_MEMORY_LIMIT_DESC' ,
181        'formtype'              => 'textbox' ,
182        'valuetype'             => 'int' ,
183        'default'               => 64 ,
184);
185
186//BLOCKS
187$b_no =1;
188$modversion['blocks'][$b_no] = array(
189        'file'                  => 'recent_posts_content_block.php' ,
190        'name'                  => constant('_MI_XP2_BLOCK_CONTENT') ,
191        'description'   => '' ,
192        'show_func'     => "b_". $mydirname . "_content_show" ,
193        'edit_func'     => "b_". $mydirname . "_content_edit" ,
194        'template'              => '' ,
195        'options'               => $mydirname. '||10|0|100||||0|0|0' ,
196        'can_clone'             => true ,
197        'func_num'              => $b_no,
198);
199$b_no++;
200$modversion['blocks'][$b_no] = array(
201        'file'                  => 'recent_posts_list_block.php' ,
202        'name'                  => constant('_MI_XP2_BLOCK_POSTS') ,
203        'description'   => '' ,
204        'show_func'     => "b_". $mydirname . "_posts_show" ,
205        'edit_func'     => "b_". $mydirname . "_posts_edit" ,
206        'options'               => $mydirname. '||10|1|7||||0' ,
207        'can_clone'             => true ,
208        'func_num'              => $b_no,       
209);
210$b_no++;
211$modversion['blocks'][$b_no] = array(
212        'file'                  => 'popular_posts_block.php' ,
213        'name'                  => constant('_MI_XP2_BLOCK_POPULAR') ,
214        'description'   => '' ,
215        'show_func'     => "b_". $mydirname . "_popular_show" ,
216        'edit_func'     => "b_". $mydirname . "_popular_edit" ,
217        'options'               => $mydirname. '||10|0||||0' ,
218        'can_clone'             => true ,
219        'func_num'              => $b_no,       
220);
221$b_no++;
222$modversion['blocks'][$b_no] = array(
223        'file'                  => 'page_block.php' ,
224        'name'                  => constant('_MI_XP2_BLOCK_PAGE') ,
225        'description'   => '' ,
226        'show_func'     => "b_". $mydirname . "_page_show" ,
227        'edit_func'     => "b_". $mydirname . "_page_edit" ,
228        'options'               => $mydirname. '||post_title|asc||||0|0|none||1||' ,
229        'can_clone'             => true ,
230        'func_num'              => $b_no,
231);
232$b_no++;
233$modversion['blocks'][$b_no] = array(
234        'file'                  => 'recent_comments_block.php' ,
235        'name'                  => constant('_MI_XP2_BLOCK_COMMENTS') ,
236        'description'   => '' ,
237        'show_func'     => "b_". $mydirname . "_comments_show" ,
238        'edit_func'     => "b_". $mydirname . "_comments_edit" ,
239        'template'              => '' ,
240        'options'               => $mydirname. '||10|30|||0' ,
241        'can_clone'             => true ,
242        'func_num'              => $b_no,       
243);
244$b_no++;
245$modversion['blocks'][$b_no] = array(
246        'file'                  => 'sidebar_block.php' ,
247        'name'                  => constant('_MI_XP2_BLOCK_SIDEBAR') ,
248        'description'   => '' ,
249        'show_func'     => "b_". $mydirname . "_sidebar_show" ,
250        'edit_func'     => '' ,
251        'options'               => '' ,
252        'can_clone'             => false ,
253        'func_num'              => $b_no,       
254);
255$b_no++;
256$modversion['blocks'][$b_no] = array(
257        'file'                  => 'search_block.php' ,
258        'name'                  => constant('_MI_XP2_BLOCK_SEARCH') ,
259        'description'   => '' ,
260        'show_func'     => "b_". $mydirname . "_search_show" ,
261        'edit_func'     => "b_". $mydirname . "_search_edit" ,
262        'options'               => $mydirname. '||18' ,
263        'can_clone'             => false ,
264        'func_num'              => $b_no ,     
265);
266$b_no++;
267$modversion['blocks'][$b_no] = array(
268        'file'                  => 'calender_block.php' ,
269        'name'                  => constant('_MI_XP2_BLOCK_CALENDER') ,
270        'description'   => '' ,
271        'show_func'     => "b_". $mydirname . "_calender_show" ,
272        'edit_func'     => "b_". $mydirname . "_calender_edit" ,
273        'options'               => $mydirname. '||#DB0000|#004D99' ,
274        'can_clone'             => false ,
275        'func_num'              => $b_no,
276);
277$b_no++;
278$modversion['blocks'][$b_no] = array(
279        'file'                  => 'archives_block.php' ,
280        'name'                  => constant('_MI_XP2_BLOCK_ARCHIVE') ,
281        'description'   => '' ,
282        'show_func'     => "b_". $mydirname . "_archives_show" ,
283        'edit_func'     => "b_". $mydirname . "_archives_edit" ,
284        'options'               => $mydirname. '||monthly|0|1|0' ,
285        'can_clone'             => true ,
286        'func_num'              => $b_no,       
287);
288$b_no++;
289$modversion['blocks'][$b_no] = array(
290        'file'                  => 'authors_block.php' ,
291        'name'                  => constant('_MI_XP2_BLOCK_AUTHORS') ,
292        'description'   => '' ,
293        'show_func'     => "b_". $mydirname . "_authors_show" ,
294        'edit_func'     => "b_". $mydirname . "_authors_edit" ,
295        'options'               => $mydirname. '||0|1|0|1' ,
296        'can_clone'             => false ,
297        'func_num'              => $b_no,       
298);
299if (wp_version_compare($wp_version, '>=','2.3')){
300        $b_no++;
301        $modversion['blocks'][$b_no] = array(
302                'file'                  => 'tag_cloud_block.php' ,
303                'name'                  => constant('_MI_XP2_BLOCK_TAG') ,
304                'description'   => '' ,
305                'show_func'     => "b_". $mydirname . "_tag_cloud_show" ,
306                'edit_func'     => "b_". $mydirname . "_tag_cloud_edit" ,
307                'options'               => $mydirname. '||8|22|pt|45|flat|name|ASC||' ,
308                'can_clone'             => false ,
309                'func_num'              => $b_no,       
310        );
311}
312$b_no++;
313$modversion['blocks'][$b_no] = array(
314        'file'                  => 'category_block.php' ,
315        'name'                  => constant('_MI_XP2_BLOCK_CATEGORY') ,
316        'description'   => '' ,
317        'show_func'     => "b_". $mydirname . "_category_show" ,
318        'edit_func'     => "b_". $mydirname . "_category_edit" ,
319        'options'               => $mydirname. '||ALL|name|ASC|0|0|1|1|||1|0' ,
320        'can_clone'             => false ,
321        'func_num'              => $b_no,       
322);
323$b_no++;
324$modversion['blocks'][$b_no] = array(
325        'file'                  => 'meta_block.php' ,
326        'name'                  => constant('_MI_XP2_BLOCK_META') ,
327        'description'   => '' ,
328        'show_func'     => "b_". $mydirname . "_meta_show" ,
329        'edit_func'     => "b_". $mydirname . "_meta_edit" ,
330        'options'               => $mydirname. '||1|1|1|1|1|1|1|1' ,
331        'can_clone'             => false ,
332        'func_num'              => $b_no,       
333);
334if (wp_version_compare($wp_version, '>=','2.7')){
335        $b_no++;
336        $modversion['blocks'][$b_no] = array(
337                'file'                  => 'widget_block.php' ,
338                'name'                  => constant('_MI_XP2_BLOCK_WIDGET') ,
339                'description'   => '' ,
340                'show_func'     => "b_". $mydirname . "_widget_show" ,
341                'edit_func'     => "b_". $mydirname . "_widget_edit" ,
342                'options'               => $mydirname. '||1|' ,
343                'can_clone'             => true ,
344                'func_num'              => $b_no,       
345        );
346}
347$b_no++;
348$modversion['blocks'][$b_no] = array(
349        'file'                  => 'enhanced_block.php' ,
350        'name'                  => constant('_MI_XP2_BLOCK_ENHANCED') ,
351        'description'   => '' ,
352        'show_func'     => "b_". $mydirname . "_enhanced_show" ,
353        'edit_func'     => "b_". $mydirname . "_enhanced_edit" ,
354        'options'               => $mydirname. '||' ,
355        'can_clone'             => true ,
356        'func_num'              => $b_no,       
357);
358
359if (wp_version_compare($wp_version, '>=','2.9')){
360        $b_no++;
361        $modversion['blocks'][$b_no] = array(
362                'file'                  => 'blog_list_block.php' ,
363                'name'                  => constant('_MI_XP2_BLOCK_BLOG_LIST') ,
364                'description'   => '' ,
365                'show_func'     => "b_". $mydirname . "_blog_list_show" ,
366                'edit_func'     => "b_". $mydirname . "_blog_list_edit" ,
367                'options'               => $mydirname. '||name|ASC' ,
368                'can_clone'             => false ,
369                'func_num'              => $b_no,
370        );
371        $b_no++;
372        $modversion['blocks'][$b_no] = array(
373                'file'                  => 'global_recent_posts_list_block.php' ,
374                'name'                  => constant('_MI_XP2_BLOCK_GLOBAL_POSTS') ,
375                'description'   => '' ,
376                'show_func'     => "b_". $mydirname . "_global_posts_show" ,
377                'edit_func'     => "b_". $mydirname . "_global_posts_edit" ,
378                'options'               => $mydirname. '||10|1|7||' ,
379                'can_clone'             => true ,
380                'func_num'              => $b_no,       
381        );
382        $b_no++;
383        $modversion['blocks'][$b_no] = array(
384                'file'                  => 'global_recent_comments_block.php' ,
385                'name'                  => constant('_MI_XP2_BLOCK_GLOBAL_COMM') ,
386                'description'   => '' ,
387                'show_func'     => "b_". $mydirname . "_global_comments_show" ,
388                'edit_func'     => "b_". $mydirname . "_global_comments_edit" ,
389                'template'              => '' ,
390                'options'               => $mydirname. '||10|30|||0' ,
391                'can_clone'             => true ,
392                'func_num'              => $b_no,       
393        );
394
395}
396
397// Notification
398$modversion['hasNotification'] = 1;
399$modversion['notification'] = array(
400        'lookup_file' => 'include/notification.inc.php' ,
401        'lookup_func' => "xpress_notify" ,
402        'category' => array(
403                array(
404                        'name' => 'global' ,
405                        'title' => constant('_MI_XP2_NOTCAT_GLOBAL') ,
406                        'description' => constant('_MI_XP2_NOTCAT_GLOBALDSC') ,
407                        'subscribe_from' => 'index.php' ,
408                ) ,
409                array(
410                        'name' => 'category' ,
411                        'title' => constant('_MI_XP2_NOTCAT_CAT') ,
412                        'description' => constant('_MI_XP2_NOTCAT_CATDSC') ,
413                        'subscribe_from' => 'index.php' ,
414                        'item_name' => 'cat' ,
415                        'allow_bookmark' => 1 ,
416                ) ,
417                array(
418                        'name' => 'author' ,
419                        'title' => constant('_MI_XP2_NOTCAT_AUTHOR') ,
420                        'description' => constant('_MI_XP2_NOTCAT_AUTHORDSC') ,
421                        'subscribe_from' => 'index.php' ,
422                        'item_name' => 'author' ,
423                        'allow_bookmark' => 1 ,
424                ) ,
425                array(
426                        'name' => 'post' ,
427                        'title' => constant('_MI_XP2_NOTCAT_POST') ,
428                        'description' => constant('_MI_XP2_NOTCAT_POSTDSC') ,
429                        'subscribe_from' => 'index.php' ,
430                        'item_name' => 'p' ,
431                        'allow_bookmark' => 1 ,
432                ) ,
433        ) ,
434        'event' => array(
435                array(
436                        'name' => 'waiting' ,
437                        'category' => 'global' ,
438                        'title' => constant('_MI_XP2_NOTIFY_GLOBAL_WAITING') ,
439                        'caption' => constant('_MI_XP2_NOTIFY_GLOBAL_WAITINGCAP') ,
440                        'description' => constant('_MI_XP2_NOTIFY_GLOBAL_WAITINGCAP') ,
441                        'mail_template' => 'global_waiting' ,
442                        'mail_subject' => constant('_MI_XP2_NOTIFY_GLOBAL_WAITINGSBJ') ,
443                        'admin_only' => 1 ,
444                ) ,
445                array(
446                        'name' => 'newpost' ,
447                        'category' => 'global' ,
448                        'title' => constant('_MI_XP2_NOTIFY_GLOBAL_NEWPOST') ,
449                        'caption' => constant('_MI_XP2_NOTIFY_GLOBAL_NEWPOSTCAP') ,
450                        'description' => constant('_MI_XP2_NOTIFY_GLOBAL_NEWPOSTCAP') ,
451                        'mail_template' => 'global_newpost' ,
452                        'mail_subject' => constant('_MI_XP2_NOTIFY_GLOBAL_NEWPOSTSBJ') ,
453                ) ,
454                array(
455                        'name' => 'comment' ,
456                        'category' => 'global' ,
457                        'title' => constant('_MI_XP2_NOTIFY_GLOBAL_NEWCOMMENT') ,
458                        'caption' => constant('_MI_XP2_NOTIFY_GLOBAL_NEWCOMMENTCAP') ,
459                        'description' => constant('_MI_XP2_NOTIFY_GLOBAL_NEWCOMMENTCAP') ,
460                        'mail_template' => 'global_newcomment' ,
461                        'mail_subject' => constant('_MI_XP2_NOTIFY_GLOBAL_NEWCOMMENTSBJ') ,
462                ) ,
463               
464                array(
465                        'name' => 'newpost' ,
466                        'category' => 'category' ,
467                        'title' => constant('_MI_XP2_NOTIFY_CAT_NEWPOST') ,
468                        'caption' => constant('_MI_XP2_NOTIFY_CAT_NEWPOSTCAP') ,
469                        'description' => constant('_MI_XP2_NOTIFY_CAT_NEWPOSTCAP') ,
470                        'mail_template' => 'category_newpost' ,
471                        'mail_subject' => constant('_MI_XP2_NOTIFY_CAT_NEWPOSTSBJ') ,
472                ) ,
473                array(
474                        'name' => 'comment' ,
475                        'category' => 'category' ,
476                        'title' => constant('_MI_XP2_NOTIFY_CAT_NEWCOMMENT') ,
477                        'caption' => constant('_MI_XP2_NOTIFY_CAT_NEWCOMMENTCAP') ,
478                        'description' => constant('_MI_XP2_NOTIFY_CAT_NEWCOMMENTCAP') ,
479                        'mail_template' => 'category_newcomment' ,
480                        'mail_subject' => constant('_MI_XP2_NOTIFY_CAT_NEWCOMMENTSBJ') ,
481                ) ,
482
483                array(
484                        'name' => 'newpost' ,
485                        'category' => 'author' ,
486                        'title' => constant('_MI_XP2_NOTIFY_AUT_NEWPOST') ,
487                        'caption' => constant('_MI_XP2_NOTIFY_AUT_NEWPOSTCAP') ,
488                        'description' => constant('_MI_XP2_NOTIFY_AUT_NEWPOSTCAP') ,
489                        'mail_template' => 'author_newpost' ,
490                        'mail_subject' => constant('_MI_XP2_NOTIFY_AUT_NEWPOSTSBJ') ,
491                ) ,
492                array(
493                        'name' => 'comment' ,
494                        'category' => 'author' ,
495                        'title' => constant('_MI_XP2_NOTIFY_AUT_NEWCOMMENT') ,
496                        'caption' => constant('_MI_XP2_NOTIFY_AUT_NEWCOMMENTCAP') ,
497                        'description' => constant('_MI_XP2_NOTIFY_AUT_NEWCOMMENTCAP') ,
498                        'mail_template' => 'author_newcomment' ,
499                        'mail_subject' => constant('_MI_XP2_NOTIFY_AUT_NEWCOMMENTSBJ') ,
500                ) ,
501
502                array(
503                        'name' => 'comment' ,
504                        'category' => 'post' ,
505                        'title' => constant('_MI_XP2_NOTIFY_POST_NEWCOMMENT') ,
506                        'caption' => constant('_MI_XP2_NOTIFY_POST_NEWCOMMENTCAP') ,
507                        'description' => constant('_MI_XP2_NOTIFY_POST_NEWCOMMENTCAP') ,
508                        'mail_template' => 'post_newcomment' ,
509                        'mail_subject' => constant('_MI_XP2_NOTIFY_POST_NEWCOMMENTSBJ') ,
510                ) ,
511        ) ,
512) ;
513
514
515?>
Note: See TracBrowser for help on using the repository browser.