X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fplugin.php;h=4c07f6d3f1dcd89c97886da86332d3c5e1bcaf1a;hb=d2dc61c246fcbb896f33f23698426893148b2f65;hp=3a24235754a0c9c6af1cd546624d59697a36ba48;hpb=03b86d37662c59b5ec838105c3e6801b453d8996;p=friendica.git diff --git a/include/plugin.php b/include/plugin.php index 3a24235754..4c07f6d3f1 100644 --- a/include/plugin.php +++ b/include/plugin.php @@ -6,6 +6,7 @@ */ use Friendica\App; +use Friendica\Core\System; /** * @brief uninstalls an addon. @@ -56,9 +57,7 @@ function install_plugin($plugin) { // This way the system won't fall over dead during the update. if (file_exists('addon/' . $plugin . '/.hidden')) { - q("UPDATE `addon` SET `hidden` = 1 WHERE `name` = '%s'", - dbesc($plugin) - ); + dba::update('addon', array('hidden' => true), array('name' => $plugin)); } return true; } @@ -106,10 +105,7 @@ function reload_plugins() { $func = $pl . '_install'; $func(); } - q("UPDATE `addon` SET `timestamp` = %d WHERE `id` = %d", - intval($t), - intval($i['id']) - ); + dba::update('addon', array('timestamp' => $t), array('id' => $i['id'])); } } } @@ -126,8 +122,7 @@ function reload_plugins() { * @return boolean */ function plugin_enabled($plugin) { - $r = q("SELECT * FROM `addon` WHERE `installed` = 1 AND `name` = '%s'", $plugin); - return ((dbm::is_result($r)) && (count($r) > 0)); + return dba::exists('addon', array('installed' => true, 'name' => $plugin)); } @@ -187,6 +182,7 @@ function load_hooks() { } $a->hooks[$rr['hook']][] = array($rr['file'],$rr['function']); } + dba::close($r); } /** @@ -406,10 +402,10 @@ function get_theme_screenshot($theme) { $exts = array('.png','.jpg'); foreach ($exts as $ext) { if (file_exists('view/theme/' . $theme . '/screenshot' . $ext)) { - return(App::get_baseurl() . '/view/theme/' . $theme . '/screenshot' . $ext); + return(System::baseUrl() . '/view/theme/' . $theme . '/screenshot' . $ext); } } - return(App::get_baseurl() . '/images/blank.png'); + return(System::baseUrl() . '/images/blank.png'); } // install and uninstall theme @@ -447,96 +443,6 @@ function install_theme($theme) { }} - - -// check service_class restrictions. If there are no service_classes defined, everything is allowed. -// if $usage is supplied, we check against a maximum count and return true if the current usage is -// less than the subscriber plan allows. Otherwise we return boolean true or false if the property -// is allowed (or not) in this subscriber plan. An unset property for this service plan means -// the property is allowed, so it is only necessary to provide negative properties for each plan, -// or what the subscriber is not allowed to do. - - -function service_class_allows($uid,$property,$usage = false) { - - if ($uid == local_user()) { - $service_class = $a->user['service_class']; - } else { - $r = q("SELECT `service_class` FROM `user` WHERE `uid` = %d LIMIT 1", - intval($uid) - ); - if (dbm::is_result($r)) { - $service_class = $r[0]['service_class']; - } - } - - if (! x($service_class)) { - // everything is allowed - return true; - } - - $arr = get_config('service_class',$service_class); - if (! is_array($arr) || (! count($arr))) { - return true; - } - - if ($usage === false) { - return ((x($arr[$property])) ? (bool) $arr['property'] : true); - } else { - if (! array_key_exists($property,$arr)) { - return true; - } - return (((intval($usage)) < intval($arr[$property])) ? true : false); - } -} - - -function service_class_fetch($uid,$property) { - - if ($uid == local_user()) { - $service_class = $a->user['service_class']; - } else { - $r = q("SELECT `service_class` FROM `user` WHERE `uid` = %d LIMIT 1", - intval($uid) - ); - if (dbm::is_result($r)) { - $service_class = $r[0]['service_class']; - } - } - if (! x($service_class)) - return false; // everything is allowed - - $arr = get_config('service_class',$service_class); - if (! is_array($arr) || (! count($arr))) - return false; - - return((array_key_exists($property,$arr)) ? $arr[$property] : false); - -} - -function upgrade_link($bbcode = false) { - $l = get_config('service_class','upgrade_link'); - if (! $l) { - return ''; - } - if ($bbcode) { - $t = sprintf('[url=%s]' . t('Click here to upgrade.') . '[/url]', $l); - } else { - $t = sprintf('' . t('Click here to upgrade.') . '', $l); - } - return $t; -} - -function upgrade_message($bbcode = false) { - $x = upgrade_link($bbcode); - return t('This action exceeds the limits set by your subscription plan.') . (($x) ? ' ' . $x : '') ; -} - -function upgrade_bool_message($bbcode = false) { - $x = upgrade_link($bbcode); - return t('This action is not available under your subscription plan.') . (($x) ? ' ' . $x : '') ; -} - /** * @brief Get the full path to relevant theme files by filename * @@ -549,6 +455,8 @@ function upgrade_bool_message($bbcode = false) { * @return string Path to the file or empty string if the file isn't found */ function theme_include($file, $root = '') { + $file = basename($file); + // Make sure $root ends with a slash / if it's not blank if ($root !== '' && $root[strlen($root)-1] !== '/') { $root = $root . '/';