* MediaWikiPlugin Class
*
* Copyright 2000-2011, Fusionforge Team
- * Copyright 2012,2014,2016-2017, Franck Villaume - TrivialDev
+ * Copyright 2012,2014,2016-2017,2022, Franck Villaume - TrivialDev
* http://fusionforge.org
*
* This file is part of FusionForge.
*/
require_once 'plugins_utils.php';
-if(is_dir("/usr/share/mediawiki")){
-forge_define_config_item('src_path','mediawiki', "/usr/share/mediawiki");
-forge_define_config_item('mwdata_path', 'mediawiki', '$core/data_path/plugins/mediawiki');
-forge_define_config_item('projects_path', 'mediawiki', '$mediawiki/mwdata_path/projects');
-forge_define_config_item('master_path', 'mediawiki', '$mediawiki/mwdata_path/master');
-forge_define_config_item('enable_uploads', 'mediawiki', false);
-forge_set_config_item_bool('enable_uploads', 'mediawiki');
+if (is_dir("/usr/share/mediawiki")) {
+ forge_define_config_item('src_path','mediawiki', "/usr/share/mediawiki");
+ forge_define_config_item('mwdata_path', 'mediawiki', '$core/data_path/plugins/mediawiki');
+ forge_define_config_item('projects_path', 'mediawiki', '$mediawiki/mwdata_path/projects');
+ forge_define_config_item('master_path', 'mediawiki', '$mediawiki/mwdata_path/master');
+ forge_define_config_item_bool('enable_uploads', 'mediawiki', false);
+ forge_define_config_item('mw_dbtype', 'mediawiki', 'postgres');
}
require_once $gfcommon.'include/SysTasksQ.class.php';
$params['TITLES'][] = $this->text;
$params['DIRS'][] = util_make_uri('/plugins/'.$this->name.'/wiki/'.$project->getUnixName().'/index.php');
if (session_loggedin()) {
- $user = session_get_user();
$userperm = $project->getPermission();
if ($userperm->isAdmin()) {
$params['ADMIN'][] = util_make_uri('/plugins/'.$this->name.'/plugin_admin.php?group_id='.$project->getID());
if ( $project->usesPlugin($this->name)) {
$params['result'] .= '<div class="public-area-box">';
$params['result'] .= util_make_link('/plugins/'.$this->name.'/wiki/'.$project->getUnixName().'/index.php',
- html_abs_image(util_make_url('/plugins/'.$this->name.'/wiki/'.$project->getUnixName().'/skins/monobook/wiki.png'),'20','20',array('alt'=>'Mediawiki')).
- ' '.'Mediawiki');
+ html_abs_image(util_make_url('/plugins/'.$this->name.'/wiki.png'),'20','20',array('alt'=>'Mediawiki')).
+ ' Mediawiki');
$params['result'] .= '</div>';
}
} elseif ($hookname == 'role_get') {
} elseif ($hookname == 'project_admin_plugins') {
$group_id = $params['group_id'];
$group = group_get_object($group_id);
- if ($group->usesPlugin($this->name))
+ if ($group->usesPlugin($this->name)) {
echo util_make_link('/plugins/mediawiki/plugin_admin.php?group_id='. $group->getID(), _('MediaWiki Plugin admin')).'<br />';
+ }
} elseif ($hookname == 'clone_project_from_template') {
$template = $params['template'];
$project = $params['project'];
if (!$project->usesPlugin($this->name)) {
return false;
}
+ if (isset($params['exclusive_area']) && ($params['exclusive_area'] != $this->name)) {
+ return false;
+ }
if (in_array($this->name, $params['show']) || (count($params['show']) < 1)) {
$protocol = forge_get_config('use_ssl') ? 'https://' : 'http://';
$script_url = $protocol.forge_get_config('web_host').forge_get_config('url_prefix').'/plugins/'.$this->name.'/wiki/'.$project->getUnixName().'/api.php'
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $script_url);
curl_setopt($ch, CURLOPT_FILE, $f);
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
+ curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, forge_get_config('use_ssl_verification'));
+ curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, forge_get_config('use_ssl_verification'));
curl_setopt($ch, CURLOPT_COOKIE, @$_SERVER['HTTP_COOKIE']); // for session validation
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // for session validation
curl_setopt($ch, CURLOPT_HTTPHEADER,
}
$title .= $recentchanges['title'];
$result['title'] = $title;
- $result['icon'] = html_abs_image('/plugins/'.$this->name.'/wiki/'.$project->getUnixName().'/skins/monobook/wiki.png','20','20',array('alt'=>'Mediawiki'));
+ $result['icon'] = html_abs_image('/plugins/'.$this->name.'/wiki.png','20','20',array('alt'=>'Mediawiki'));
if (isset($recentchanges['user'])) {
$userObject = user_get_object_by_name(strtolower($recentchanges['user']));
if (is_a($userObject, 'FFUser')) {
$params['ids'][] = $this->name;
$params['texts'][] = _('Mediawiki Changes');
}
- return true;
}
+ return true;
}
function groupisactivecheckboxpost(&$params) {
- if (!parent::groupisactivecheckboxpost($params))
- return false;
- if (getIntFromRequest('use_mediawiki') == 1) {
- $systasksq = new SystasksQ();
- $group_id = $params['group'];
- $systasksq->add($this->getID(), 'MEDIAWIKI_CREATE_WIKI', $group_id);
- $systasksq->add($this->getID(), 'MEDIAWIKI_CREATE_IMAGEDIR', $group_id);
- }
- return true;
+ if (!parent::groupisactivecheckboxpost($params)) {
+ return false;
+ }
+ if (getIntFromRequest('use_mediawiki') == 1) {
+ $systasksq = new SystasksQ();
+ $group_id = $params['group'];
+ $systasksq->add($this->getID(), 'MEDIAWIKI_CREATE_WIKI', $group_id);
+ $systasksq->add($this->getID(), 'MEDIAWIKI_CREATE_IMAGEDIR', $group_id);
+ }
+ return true;
}
}
-
-// Local Variables:
-// mode: php
-// c-file-style: "bsd"
-// End: