slow progress on sys publishing, making sure all the data we need is in the places we need it but validate it anyway

This commit is contained in:
friendica 2014-11-11 19:29:30 -08:00
parent 37742be6af
commit b5af667985
4 changed files with 25 additions and 10 deletions

View File

@ -677,8 +677,8 @@ class App {
public $css_sources = array();
public $js_sources = array();
public $theme_info = array();
public $nav_sel;
public $is_sys = false;
public $nav_sel;
public $category;

View File

@ -2024,7 +2024,7 @@ function design_tools() {
$channel = get_app()->get_channel();
if(array_key_exists('sys',$_REQUEST) && $_REQUEST['sys'] == 1 && is_site_admin()) {
if(get_app()->is_sys && is_site_admin()) {
require_once('include/identity.php');
$channel = get_sys_channel();
}

View File

@ -585,7 +585,7 @@ function widget_design_tools($arr) {
// otherwise local_user() is sufficient for permissions.
if($a->profile['profile_uid'])
if($a->profile['profile_uid'] != local_user())
if(($a->profile['profile_uid'] != local_user()) && (! $a->is_sys))
return '';
if(! local_user())

View File

@ -1,16 +1,33 @@
<?php
function webpages_content(&$a) {
function webpages_init(&$a) {
if(argc() > 1 && argv(1) === 'sys' && is_site_admin()) {
require_once('include/identity.php');
$sys = get_sys_channel();
if($sys && intval($sys['channel_id'])) {
$a->is_sys = true;
}
}
if(argc() > 1)
$which = argv(1);
else {
else
return;
profile_load($a,$which,$profile);
}
function webpages_content(&$a) {
if(! $a->profile) {
notice( t('Requested profile is not available.') . EOL );
$a->error = 404;
return;
}
$uid = 0;
$owner = 0;
$channel = null;
@ -19,7 +36,7 @@ function webpages_content(&$a) {
$profile = 0;
$channel = $a->get_channel();
if($which === 'sys' && is_site_admin()) {
if($a->is_sys && is_site_admin()) {
require_once('include/identity.php');
$sys = get_sys_channel();
if($sys && intval($sys['channel_id'])) {
@ -29,8 +46,6 @@ function webpages_content(&$a) {
}
}
profile_load($a,$which,$profile);
if(! $owner) {
// Figure out who the page owner is.
$r = q("select channel_id from channel where channel_address = '%s'",