provide get_server_role() to abstract different roles and capabilities

This commit is contained in:
redmatrix 2016-02-07 18:11:10 -08:00
parent ec950de205
commit d8e6fd5df0
4 changed files with 9 additions and 2 deletions

View File

@ -2394,3 +2394,9 @@ function get_site_icon() {
return z_root() . '/images/hz-32.png';
}
function get_server_role() {
if(UNO)
return 'basic';
return 'advanced';
}

View File

@ -484,7 +484,7 @@ function identity_basic_export($channel_id, $items = false) {
// use constants here as otherwise we will have no idea if we can import from a site
// with a non-standard platform and version.
$ret['compatibility'] = array('project' => PLATFORM_NAME, 'version' => RED_VERSION, 'database' => DB_UPDATE_VERSION, 'server_role' => UNO );
$ret['compatibility'] = array('project' => PLATFORM_NAME, 'version' => RED_VERSION, 'database' => DB_UPDATE_VERSION, 'server_role' => get_server_role());
$r = q("select * from channel where channel_id = %d limit 1",
intval($channel_id)

View File

@ -1805,6 +1805,7 @@ function get_site_info() {
$data = Array(
'version' => $version,
'version_tag' => $tag,
'server_role' => get_server_role(),
'commit' => $commit,
'url' => z_root(),
'plugins' => $visible_plugins,

View File

@ -120,7 +120,7 @@ function import_account(&$a, $account_id) {
notice($t);
}
if(array_key_exists('server_role',$data['compatibility'])
&& $data['compatibility']['server_role'] != UNO) {
&& $data['compatibility']['server_role'] != get_server_role()) {
notice( t('Server platform is not compatible. Operation not permitted.') . EOL);
return;
}