theme name cleanup - rename default to loozah, provide sane fallbacks and change system primary theme.

Provide indication on contact edit page of last update success/failure - can be extended later to
show actual timestamp of last successful update.
This commit is contained in:
Friendika 2011-02-06 15:50:50 -08:00
parent 8e988341d0
commit 147d7f3bbf
23 changed files with 107 additions and 26 deletions

View file

@ -2,7 +2,7 @@
set_time_limit(0);
define ( 'BUILD_ID', 1035 );
define ( 'BUILD_ID', 1036 );
define ( 'FRIENDIKA_VERSION', '2.10.0905' );
define ( 'DFRN_PROTOCOL_VERSION', '2.1' );
@ -2275,3 +2275,33 @@ function proc_run($cmd){
proc_close(proc_open($cmdline." &",array(),$foo));
}}
/*
* Return full URL to theme which is currently in effect.
* Provide a sane default if nothing is chosen or the specified theme does not exist.
*/
if(! function_exists('current_theme_url')) {
function current_theme_url() {
$app_base_themes = array('duepuntozero', 'loozah');
$a = get_app();
$system_theme = ((isset($a->config['system']['theme'])) ? $a->config['system']['theme'] : '');
$theme_name = ((x($_SESSION,'theme')) ? $_SESSION['theme'] : $system_theme);
if($theme_name && file_exists('view/theme/' . $theme_name . '/style.css'))
return($a->get_baseurl() . '/view/theme/' . $theme_name . '/style.css');
foreach($app_base_themes as $t) {
if(file_exists('view/theme/' . $t . '/style.css'))
return($a->get_baseurl() . '/view/theme/' . $t . '/style.css');
}
$fallback = glob('view/theme/*/style.css');
if(count($fallback))
return($a->get_baseurl() . $fallback[0]);
}}

View file

@ -77,6 +77,7 @@ CREATE TABLE IF NOT EXISTS `contact` (
`subhub` tinyint(1) NOT NULL DEFAULT '0',
`hub-verify` char(255) NOT NULL,
`last-update` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`success_update` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`name-date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`uri-date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`avatar-date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',

View file

@ -64,6 +64,10 @@ $a->config['system']['huburl'] = 'http://pubsubhubbub.appspot.com';
$a->config['system']['rino_encrypt'] = true;
// default system theme
$a->config['system']['theme'] = 'duepuntozero';
// Addons or plugins are configured here.
// This is a comma seperated list of addons to enable. Example:

View file

@ -239,6 +239,7 @@ function poller_run($argv, $argc){
$xml = post_url($contact['poll'],$postvars);
}
else {
// $contact['network'] !== 'dfrn'
$xml = fetch_url($contact['poll']);
@ -246,8 +247,14 @@ function poller_run($argv, $argc){
logger('poller: received xml : ' . $xml, LOGGER_DATA);
if(! strlen($xml))
if(! strstr($xml,'<?xml')) {
logger('poller: post_handshake: response from ' . $url . ' did not contain XML.');
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
intval($contact['id'])
);
continue;
}
consume_feed($xml,$importer,$contact,$hub,1);
@ -271,8 +278,11 @@ function poller_run($argv, $argc){
}
$r = q("UPDATE `contact` SET `last-update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc(datetime_convert()),
$updated = datetime_convert();
$r = q("UPDATE `contact` SET `last-update` = '%s', `success_update` = '%s' WHERE `id` = %d LIMIT 1",
dbesc($updated),
dbesc($updated),
intval($contact['id'])
);

View file

@ -238,21 +238,10 @@ if($a->module != 'install')
require_once('nav.php');
/**
*
* Build the page - now that we have all the components
* Make sure the desired theme exists, though if the default theme doesn't exist we're stuffed.
*
*/
$default_theme = ((isset($a->config['system']['theme'])) ? $a->config['system']['theme'] : 'default');
if((x($_SESSION,'theme')) && (! file_exists('view/theme/' . $_SESSION['theme'] . '/style.css')))
unset($_SESSION['theme']);
$a->page['htmlhead'] = replace_macros($a->page['htmlhead'], array(
'$stylesheet' => $a->get_baseurl() . '/view/theme/'
. ((x($_SESSION,'theme')) ? $_SESSION['theme'] : $default_theme)
. '/style.css'
));
$a->page['htmlhead'] = replace_macros($a->page['htmlhead'], array('$stylesheet' => current_theme_url()));
$page = $a->page;
$profile = $a->profile;

View file

@ -245,6 +245,13 @@ function contacts_content(&$a) {
$sparkle = '';
}
$last_update = (($r[0]['last-update'] == '0000-00-00 00:00:00')
? t('Never')
: datetime_convert('UTC',date_default_timezone_get(),$r[0]['last-update'],'D, j M Y, g:i A'));
if($r[0]['last-update'] !== '0000-00-00 00:00:00')
$last_update .= ' ' . (($r[0]['last-update'] == $r[0]['success_update']) ? t("\x28Update was successful\x29") : t("\x28Update was not successful\x29"));
$o .= replace_macros($tpl,array(
'$header' => t('Contact Editor'),
'$visit' => t('Visit $name\'s profile'),
@ -254,9 +261,7 @@ function contacts_content(&$a) {
'$poll_interval' => contact_poll_interval($r[0]['priority']),
'$lastupdtext' => t('Last updated: '),
'$updpub' => t('Update public posts: '),
'$last_update' => (($r[0]['last-update'] == '0000-00-00 00:00:00')
? t('Never')
: datetime_convert('UTC',date_default_timezone_get(),$r[0]['last-update'],'D, j M Y, g:i A')),
'$last_update' => $last_update,
'$udnow' => t('Update now'),
'$profile_select' => contact_profile_assign($r[0]['profile-id'],(($r[0]['network'] !== 'dfrn') ? true : false)),
'$contact_id' => $r[0]['id'],

View file

@ -342,3 +342,10 @@ function update_1034() {
q("DELETE FROM `item` WHERE `parent` = 0 AND `created` < UTC_TIMESTAMP() - INTERVAL 2 MINUTE");
}
function update_1035() {
q("ALTER TABLE `contact` ADD `success_update` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' AFTER `last-update` ");
}

View file

@ -62,3 +62,13 @@ $a->config['system']['huburl'] = 'http://pubsubhubbub.appspot.com';
$a->config['system']['rino_encrypt'] = true;
// default system theme
$a->config['system']['theme'] = 'duepuntozero';
// Addons or plugins are configured here.
// This is a comma seperated list of addons to enable. Example:
// $a->config['system']['addon'] = 'js_upload,randplace,oembed';
$a->config['system']['addon'] = 'js_upload';

View file

@ -62,6 +62,10 @@ $a->config['system']['huburl'] = 'http://pubsubhubbub.appspot.com';
$a->config['system']['rino_encrypt'] = true;
// default system theme
$a->config['system']['theme'] = 'duepuntozero';
// Addons or plugins are configured here.
// This is a comma seperated list of addons to enable. Example:
// $a->config['system']['addon'] = 'js_upload,randplace,oembed';

View file

@ -62,3 +62,12 @@ $a->config['system']['huburl'] = 'http://pubsubhubbub.appspot.com';
$a->config['system']['rino_encrypt'] = true;
// default system theme
$a->config['system']['theme'] = 'duepuntozero';
// Addons or plugins are configured here.
// This is a comma seperated list of addons to enable. Example:
// $a->config['system']['addon'] = 'js_upload,randplace,oembed';
$a->config['system']['addon'] = 'js_upload';

View file

@ -62,3 +62,12 @@ $a->config['system']['huburl'] = 'http://pubsubhubbub.appspot.com';
$a->config['system']['rino_encrypt'] = true;
// default system theme
$a->config['system']['theme'] = 'duepuntozero';
// Addons or plugins are configured here.
// This is a comma seperated list of addons to enable. Example:
// $a->config['system']['addon'] = 'js_upload,randplace,oembed';
$a->config['system']['addon'] = 'js_upload';

View file

@ -1,4 +1,4 @@
@import url('../default/style.css');
@import url('../loozah/style.css');
footer {
background: #CCC;

View file

@ -1,4 +1,4 @@
@import url('../default/style.css');
@import url('../loozah/style.css');
nav {
background: #CCC;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

View file

@ -1210,7 +1210,8 @@ input#dfrn-url {
margin-top: 30px;
}
#contact-edit-poll-text {
margin-bottom: 10px;
margin-top: 15px;
margin-bottom: 5px;
}
#contact-edit-update-now {

View file

@ -1,4 +1,4 @@
@import url('../default/style.css');
@import url('../loozah/style.css');
footer {
background: #CCC;

View file

Before

Width:  |  Height:  |  Size: 644 B

After

Width:  |  Height:  |  Size: 644 B

View file

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View file

Before

Width:  |  Height:  |  Size: 237 B

After

Width:  |  Height:  |  Size: 237 B

View file

@ -1335,8 +1335,10 @@ input#dfrn-url {
margin-top: 30px;
}
#contact-edit-poll-text {
margin-bottom: 10px;
margin-top: 15px;
margin-bottom: 5px;
}
#contact-edit-update-now {
margin-top: 15px;
}

View file

@ -1,4 +1,4 @@
@import url('../default/style.css');
@import url('../loozah/style.css');
body {
background: #DDDDDD;

View file

@ -1,4 +1,4 @@
@import url('../default/style.css');
@import url('../loozah/style.css');
.error-message {
-moz-box-shadow: 5px 5px 5px #888888;