implement features

This commit is contained in:
Zach Prezkuta 2012-11-22 09:14:22 -07:00
commit 94204d9160
35 changed files with 262 additions and 58 deletions

View file

@ -28,9 +28,12 @@ function editpost_content(&$a) {
return;
}
$plaintext = false;
if(local_user() && intval(get_pconfig(local_user(),'system','plaintext')))
$plaintext = true;
/* $plaintext = false;
if( local_user() && intval(get_pconfig(local_user(),'system','plaintext')) || !feature_enabled(local_user(),'richtext') )
$plaintext = true;*/
$plaintext = true;
if( local_user() && feature_enabled(local_user(),'richtext') )
$plaintext = false;
$o .= '<h2>' . t('Edit post') . '</h2>';
@ -130,7 +133,7 @@ function editpost_content(&$a) {
'$title' => $itm[0]['title'],
'$placeholdertitle' => t('Set title'),
'$category' => file_tag_file_to_list($itm[0]['file'], 'category'),
'$placeholdercategory' => t('Categories (comma-separated list)'),
'$placeholdercategory' => (feature_enabled(local_user(),'categories') ? t('Categories (comma-separated list)') : ''),
'$emtitle' => t('Example: bob@example.com, mary@example.com'),
'$lockstate' => $lockstate,
'$acl' => '', // populate_acl((($group) ? $group_acl : $a->user), $celeb),

View file

@ -309,7 +309,11 @@ function item_post(&$a) {
// First figure out if it's a status post that would've been
// created using tinymce. Otherwise leave it alone.
$plaintext = (local_user() ? intval(get_pconfig(local_user(),'system','plaintext')) : 0);
/* $plaintext = (local_user() ? intval(get_pconfig(local_user(),'system','plaintext')) || !feature_enabled($profile_uid,'richtext') : 0);
if((! $parent) && (! $api_source) && (! $plaintext)) {
$body = fix_mce_lf($body);
}*/
$plaintext = (local_user() ? !feature_enabled($profile_uid,'richtext') : 0);
if((! $parent) && (! $api_source) && (! $plaintext)) {
$body = fix_mce_lf($body);
}

View file

@ -46,7 +46,11 @@ function message_post(&$a) {
// Work around doubled linefeeds in Tinymce 3.5b2
$plaintext = intval(get_pconfig(local_user(),'system','plaintext'));
/* $plaintext = intval(get_pconfig(local_user(),'system','plaintext') && !feature_enabled(local_user(),'richtext'));
if(! $plaintext) {
$body = fix_mce_lf($body);
}*/
$plaintext = intval(!feature_enabled(local_user(),'richtext'));
if(! $plaintext) {
$body = fix_mce_lf($body);
}
@ -229,9 +233,12 @@ function message_content(&$a) {
$o .= $header;
$plaintext = false;
/* $plaintext = false;
if(intval(get_pconfig(local_user(),'system','plaintext')))
$plaintext = true;
$plaintext = true;*/
$plaintext = true;
if( local_user() && feature_enabled(local_user(),'richtext') )
$plaintext = false;
$tpl = get_markup_template('msg-header.tpl');

View file

@ -181,7 +181,7 @@ function network_init(&$a) {
$a->page['content'] .= '<h2>' . t('Search Results For:') . ' ' . $search . '</h2>';
}
$a->page['aside'] .= group_side('network/0','network',true,$group_id);
$a->page['aside'] .= (feature_enabled(local_user(),'groups') ? group_side('network/0','network',true,$group_id) : '');
$a->page['aside'] .= posted_date_widget($a->get_baseurl() . '/network',local_user(),false);
$a->page['aside'] .= networks_widget($a->get_baseurl(true) . '/network',(x($_GET, 'nets') ? $_GET['nets'] : ''));
$a->page['aside'] .= saved_searches($search);
@ -191,6 +191,9 @@ function network_init(&$a) {
function saved_searches($search) {
if(! feature_enabled(local_user(),'savedsearch'))
return '';
$a = get_app();
$srchurl = '/network?f='
@ -403,30 +406,30 @@ function network_content(&$a, $update = 0) {
'title' => t('Sort by Post Date'),
),
array(
/* array(
'label' => t('Personal'),
'url' => $a->get_baseurl(true) . '/' . str_replace('/new', '', $cmd) . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : '') . '&conv=1',
'sel' => $conv_active,
'title' => t('Posts that mention or involve you'),
),
array(
),*/
/* array(
'label' => t('New'),
'url' => $a->get_baseurl(true) . '/' . str_replace('/new', '', $cmd) . ($len_naked_cmd ? '/' : '') . 'new' . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : ''),
'sel' => $new_active,
'title' => t('Activity Stream - by date'),
),
array(
),*/
/* array(
'label' => t('Starred'),
'url'=>$a->get_baseurl(true) . '/' . str_replace('/new', '', $cmd) . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : '') . '&star=1',
'sel'=>$starred_active,
'title' => t('Favourite Posts'),
),
array(
),*/
/* array(
'label' => t('Shared Links'),
'url'=>$a->get_baseurl(true) . '/' . str_replace('/new', '', $cmd) . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : '') . '&bmark=1',
'sel'=>$bookmarked_active,
'title'=> t('Interesting Links'),
),
), */
// array(
// 'label' => t('Spam'),
// 'url'=>$a->get_baseurl(true) . '/network?f=&spam=1'
@ -436,6 +439,53 @@ function network_content(&$a, $update = 0) {
);
if(feature_enabled(local_user(),'personal_tab')) {
$tabs[] = array(
'label' => t('Personal'),
'url' => $a->get_baseurl(true) . '/' . str_replace('/new', '', $cmd) . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : '') . '&conv=1',
'sel' => $conv_active,
'title' => t('Posts that mention or involve you'),
);
}
if(feature_enabled(local_user(),'new_tab')) {
$tabs[] = array(
'label' => t('New'),
'url' => $a->get_baseurl(true) . '/' . str_replace('/new', '', $cmd) . ($len_naked_cmd ? '/' : '') . 'new' . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : ''),
'sel' => $new_active,
'title' => t('Activity Stream - by date'),
);
}
if(feature_enabled(local_user(),'link_tab')) {
$tabs[] = array(
'label' => t('Shared Links'),
'url'=>$a->get_baseurl(true) . '/' . str_replace('/new', '', $cmd) . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : '') . '&bmark=1',
'sel'=>$bookmarked_active,
'title'=> t('Interesting Links'),
);
}
if(feature_enabled(local_user(),'star_posts')) {
$tabs[] = array(
'label' => t('Starred'),
'url'=>$a->get_baseurl(true) . '/' . str_replace('/new', '', $cmd) . ((x($_GET,'cid')) ? '/?f=&cid=' . $_GET['cid'] : '') . '&star=1',
'sel'=>$starred_active,
'title' => t('Favourite Posts'),
);
}
// Not yet implemented
/* if(feature_enabled(local_user(),'spam_filter')) {
$tabs[] = array(
'label' => t('Spam'),
'url'=>$a->get_baseurl(true) . '/network?f=&spam=1',
'sel'=> $spam_active,
'title' => t('Posts flagged as SPAM'),
);
}*/
// save selected tab, but only if not in search or file mode
if(!x($_GET,'search') && !x($_GET,'file')) {
set_pconfig( local_user(), 'network.view','tab.selected',array($all_active, $postord_active, $conv_active, $new_active, $starred_active, $bookmarked_active, $spam_active) );

View file

@ -554,9 +554,12 @@ function profiles_content(&$a) {
require_once('include/profile_selectors.php');
$editselect = 'textareas';
if(intval(get_pconfig(local_user(),'system','plaintext')))
$editselect = 'none';
/* $editselect = 'textareas';
if( intval(get_pconfig(local_user(),'system','plaintext')) || !feature_enabled(local_user(),'richtext') )
$editselect = 'none';*/
$editselect = 'none';
if( feature_enabled(local_user(),'richtext') )
$editselect = 'textareas';
$a->page['htmlhead'] .= replace_macros(get_markup_template('profed_head.tpl'), array(
'$baseurl' => $a->get_baseurl(true),

View file

@ -4,6 +4,9 @@ function search_saved_searches() {
$o = '';
if(! feature_enabled(local_user(),'savedsearch'))
return $o;
$r = q("select `id`,`term` from `search` WHERE `uid` = %d",
intval(local_user())
);

View file

@ -31,6 +31,11 @@ function settings_init(&$a) {
'url' => $a->get_baseurl(true).'/settings',
'selected' => (($a->argc == 1)?'active':''),
),
array(
'label' => t('Additional features'),
'url' => $a->get_baseurl(true).'/settings/features',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'features') ? 'active' : ''),
),
array(
'label' => t('Display settings'),
'url' => $a->get_baseurl(true).'/settings/display',
@ -231,7 +236,18 @@ function settings_post(&$a) {
return;
}
if(($a->argc > 1) && ($a->argv[1] == 'display')) {
if(($a->argc > 1) && ($a->argv[1] === 'features')) {
check_form_security_token_redirectOnErr('/settings/features', 'settings_features');
foreach($_POST as $k => $v) {
if(strpos($k,'feature_') === 0) {
set_pconfig(local_user(),'feature',substr($k,8),((intval($v)) ? 1 : 0));
}
}
info( t('Features updated') . EOL);
return;
}
if(($a->argc > 1) && ($a->argv[1] === 'display')) {
check_form_security_token_redirectOnErr('/settings/display', 'settings_display');
@ -612,6 +628,7 @@ function settings_content(&$a) {
return $o;
}
if(($a->argc > 1) && ($a->argv[1] === 'addon')) {
$settings_addons = "";
@ -631,6 +648,30 @@ function settings_content(&$a) {
return $o;
}
if(($a->argc > 1) && ($a->argv[1] === 'features')) {
$arr = array();
$features = get_features();
foreach($features as $fname => $fdata) {
$arr[$fname] = array();
$arr[$fname][0] = $fdata[0];
foreach(array_slice($fdata,1) as $f) {
$arr[$fname][1][] = array('feature_' .$f[0],$f[1],((intval(get_pconfig(local_user(),'feature',$f[0]))) ? "1" : ''),$f[2],array(t('Off'),t('On')));
}
}
$tpl = get_markup_template("settings_features.tpl");
$o .= replace_macros($tpl, array(
'$form_security_token' => get_form_security_token("settings_features"),
'$title' => t('Additional Features'),
'$features' => $arr,
'$submit' => t('Submit'),
'$field_yesno' => 'field_yesno.tpl',
));
return $o;
}
if(($a->argc > 1) && ($a->argv[1] === 'connectors')) {
$settings_connectors = "";