Merge branch 'master' of https://github.com/friendica/red
This commit is contained in:
commit
5c885e91a3
1
boot.php
1
boot.php
@ -576,6 +576,7 @@ function startup() {
|
||||
|
||||
class App {
|
||||
|
||||
public $install = false; // true if we are installing the software
|
||||
|
||||
public $account = null; // account record of the logged-in account
|
||||
public $channel = null; // channel record of the current channel of the logged-in account
|
||||
|
@ -152,7 +152,7 @@ function menu_edit($arr) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return q("update menu set menu_name = '%s', menu_desc = '%s', menu_flags = %d,
|
||||
return q("update menu set menu_name = '%s', menu_desc = '%s', menu_flags = %d
|
||||
where menu_id = %d and menu_channel_id = %d limit 1",
|
||||
dbesc($menu_name),
|
||||
dbesc($menu_desc),
|
||||
|
@ -24,7 +24,7 @@ function get_perms() {
|
||||
'post_mail' => array('channel_w_mail', intval(PERMS_W_MAIL), false, t('Can send me private mail messages'), ''),
|
||||
'post_photos' => array('channel_w_photos', intval(PERMS_W_PHOTOS), false, t('Can post photos to my photo albums'), ''),
|
||||
'tag_deliver' => array('channel_w_tagwall', intval(PERMS_W_TAGWALL), false, t('Can forward to all my channel contacts via post @mentions'), t('Advanced - useful for creating group forum channels')),
|
||||
'chat' => array('channel_w_chat', intval(PERMS_W_CHAT), false, t('Can chat with me (when available)'), t('Requires compatible chat plugin')),
|
||||
'chat' => array('channel_w_chat', intval(PERMS_W_CHAT), false, t('Can chat with me (when available)'), t('')),
|
||||
'write_storage' => array('channel_w_storage', intval(PERMS_W_STORAGE), false, t('Can write to my "public" file storage'), ''),
|
||||
'write_pages' => array('channel_w_pages', intval(PERMS_W_PAGES), false, t('Can edit my "public" pages'), ''),
|
||||
|
||||
|
35
include/spam.php
Normal file
35
include/spam.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php /** @file */
|
||||
|
||||
|
||||
function string_splitter($s) {
|
||||
|
||||
if(! $s)
|
||||
return array();
|
||||
|
||||
$s = preg_replace('/\pP+/','',$s);
|
||||
|
||||
$x = mb_split("\[|\]|\s",$s);
|
||||
|
||||
$ret = array();
|
||||
if($x) {
|
||||
foreach($x as $y) {
|
||||
if(mb_strlen($y) > 2)
|
||||
$ret[] = substr($y,0,64);
|
||||
}
|
||||
}
|
||||
return $ret;
|
||||
}
|
||||
|
||||
|
||||
|
||||
function get_words($uid,$list) {
|
||||
|
||||
stringify($list,true);
|
||||
|
||||
$r = q("select * from spam where term in ( " . $list . ") and uid = %d",
|
||||
intval($uid)
|
||||
);
|
||||
|
||||
return $r;
|
||||
}
|
||||
|
10
index.php
10
index.php
@ -23,7 +23,7 @@ $a = new App;
|
||||
*
|
||||
*/
|
||||
|
||||
$install = ((file_exists('.htconfig.php') && filesize('.htconfig.php')) ? false : true);
|
||||
$a->install = ((file_exists('.htconfig.php') && filesize('.htconfig.php')) ? false : true);
|
||||
|
||||
@include(".htconfig.php");
|
||||
|
||||
@ -38,8 +38,8 @@ $a->language = get_best_language();
|
||||
|
||||
require_once("include/dba/dba_driver.php");
|
||||
|
||||
if(! $install) {
|
||||
$db = dba_factory($db_host, $db_port, $db_user, $db_pass, $db_data, $install);
|
||||
if(! $a->install) {
|
||||
$db = dba_factory($db_host, $db_port, $db_user, $db_pass, $db_data, $a->install);
|
||||
unset($db_host, $db_port, $db_user, $db_pass, $db_data);
|
||||
|
||||
/**
|
||||
@ -91,7 +91,7 @@ if((x($_SESSION,'language')) && ($_SESSION['language'] !== $lang)) {
|
||||
load_translation_table($a->language);
|
||||
}
|
||||
|
||||
if((x($_GET,'zid')) && (! $install)) {
|
||||
if((x($_GET,'zid')) && (! $a->install)) {
|
||||
$a->query_string = preg_replace('/[\?&]zid=(.*?)([\?&]|$)/is','',$a->query_string);
|
||||
if(! local_user()) {
|
||||
$_SESSION['my_address'] = $_GET['zid'];
|
||||
@ -116,7 +116,7 @@ if(! x($_SESSION,'sysmsg_info'))
|
||||
*/
|
||||
|
||||
|
||||
if($install) {
|
||||
if($a->install) {
|
||||
/* Allow an exception for the view module so that pcss will be interpreted during installation */
|
||||
if($a->module != 'view')
|
||||
$a->module = 'setup';
|
||||
|
@ -205,7 +205,7 @@ class b8_storage_frndc extends b8_storage_base
|
||||
foreach($to_create as $term) {
|
||||
if(strlen($sql))
|
||||
$sql .= ',';
|
||||
$sql .= sprintf("(term,datetime,uid) values('%s','%s',%d)",
|
||||
$sql .= sprintf("(term,date,uid) values('%s','%s',%d)",
|
||||
dbesc(str_tolower($term))
|
||||
dbesc(datetime_convert()),
|
||||
intval($uid)
|
||||
@ -280,16 +280,16 @@ class b8_storage_frndc extends b8_storage_base
|
||||
|
||||
$result = q('
|
||||
DELETE FROM ' . $this->config['table_name'] . '
|
||||
WHERE token IN ("' . implode('", "', $this->_deletes) . '") AND uid = ' . $this->uid);
|
||||
WHERE term IN ("' . implode('", "', $this->_deletes) . '") AND uid = ' . $this->uid);
|
||||
|
||||
$this->_deletes = array();
|
||||
|
||||
}
|
||||
|
||||
if(count($this->_puts) > 0) {
|
||||
|
||||
//fixme
|
||||
$result = q('
|
||||
INSERT INTO ' . $this->config['table_name'] . '(token, count, uid)
|
||||
INSERT INTO ' . $this->config['table_name'] . '(term, count, uid)
|
||||
VALUES ' . implode(', ', $this->_puts));
|
||||
|
||||
$this->_puts = array();
|
||||
|
@ -56,6 +56,7 @@ function chatsvc_content(&$a) {
|
||||
|
||||
$status = strip_tags($_REQUEST['status']);
|
||||
$room_id = intval($a->data['chat']['room_id']);
|
||||
$stopped = ((x($_REQUEST,'stopped') && intval($_REQUEST['stopped'])) ? true : false);
|
||||
|
||||
if($status && $room_id) {
|
||||
|
||||
@ -74,6 +75,7 @@ function chatsvc_content(&$a) {
|
||||
goaway(z_root() . '/chat/' . $x[0]['channel_address'] . '/' . $room_id);
|
||||
}
|
||||
|
||||
if(! $stopped) {
|
||||
|
||||
$lastseen = intval($_REQUEST['last']);
|
||||
|
||||
@ -128,6 +130,7 @@ function chatsvc_content(&$a) {
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$r = q("update chatpresence set cp_last = '%s' where cp_room = %d and cp_xchan = '%s' and cp_client = '%s' limit 1",
|
||||
dbesc(datetime_convert()),
|
||||
@ -137,9 +140,10 @@ function chatsvc_content(&$a) {
|
||||
);
|
||||
|
||||
$ret['success'] = true;
|
||||
if(! $stopped) {
|
||||
$ret['inroom'] = $inroom;
|
||||
$ret['chats'] = $chats;
|
||||
|
||||
}
|
||||
json_return_and_die($ret);
|
||||
|
||||
}
|
||||
|
@ -442,13 +442,13 @@ function connedit_content(&$a) {
|
||||
'$perms' => $perms,
|
||||
'$forum' => t('Forum Members'),
|
||||
'$soapbox' => t('Soapbox'),
|
||||
'$full' => t('Full Sharing'),
|
||||
'$full' => t('Full Sharing (typical social network permissions)'),
|
||||
'$cautious' => t('Cautious Sharing '),
|
||||
'$follow' => t('Follow Only'),
|
||||
'$permlbl' => t('Individual Permissions'),
|
||||
'$permnote' => t('Some permissions may be inherited from your channel <a href="settings">privacy settings</a>, which have higher priority. Changing those inherited settings on this page will have no effect.'),
|
||||
'$permnote' => t('Some permissions may be inherited from your channel <a href="settings">privacy settings</a>, which have higher priority than individual settings. Changing those inherited settings on this page will have no effect.'),
|
||||
'$advanced' => t('Advanced Permissions'),
|
||||
'$quick' => t('Quick Links'),
|
||||
'$quick' => t('Simple Permissions (select one and submit)'),
|
||||
'$common_link' => $a->get_baseurl(true) . '/common/loc/' . local_user() . '/' . $contact['id'],
|
||||
'$all_friends' => $all_friends,
|
||||
'$relation_text' => $relation_text,
|
||||
|
@ -8,6 +8,8 @@ function menu_post(&$a) {
|
||||
return;
|
||||
|
||||
$_REQUEST['menu_channel_id'] = local_user();
|
||||
if($_REQUEST['menu_bookmark'])
|
||||
$_REQUEST['menu_flags'] = MENU_BOOKMARK;
|
||||
|
||||
$menu_id = ((argc() > 1) ? intval(argv(1)) : 0);
|
||||
if($menu_id) {
|
||||
@ -76,6 +78,7 @@ function menu_content(&$a) {
|
||||
'$header' => t('New Menu'),
|
||||
'$menu_name' => array('menu_name', t('Menu name'), '', t('Must be unique, only seen by you'), '*'),
|
||||
'$menu_desc' => array('menu_desc', t('Menu title'), '', t('Menu title as seen by others'), ''),
|
||||
'$menu_bookmark' => array('menu_bookmark', t('Allow bookmarks'), 0 , t('Menu may be used to store saved bookmarks'), ''),
|
||||
'$submit' => t('Create')
|
||||
));
|
||||
return $o;
|
||||
@ -104,6 +107,7 @@ function menu_content(&$a) {
|
||||
'$editcontents' => t('Edit menu contents'),
|
||||
'$menu_name' => array('menu_name', t('Menu name'), $m['menu_name'], t('Must be unique, only seen by you'), '*'),
|
||||
'$menu_desc' => array('menu_desc', t('Menu title'), $m['menu_desc'], t('Menu title as seen by others'), ''),
|
||||
'$menu_bookmark' => array('menu_bookmark', t('Allow bookmarks'), (($m['menu_flags'] & MENU_BOOKMARK) ? 1 : 0), t('Menu may be used to store saved bookmarks'), ''),
|
||||
'$submit' => t('Modify')
|
||||
));
|
||||
return $o;
|
||||
|
@ -919,19 +919,21 @@ function settings_content(&$a) {
|
||||
'$defloc' => array('defloc', t('Default Post Location:'), $defloc, ''),
|
||||
'$allowloc' => array('allow_location', t('Use Browser Location:'), ((get_pconfig(local_user(),'system','use_browser_location')) ? 1 : ''), ''),
|
||||
|
||||
'$adult' => array('adult', t('Adult Content'), $adult_flag, t('This channel publishes adult content.')),
|
||||
'$adult' => array('adult', t('Adult Content'), $adult_flag, t('This channel frequently or regularly publishes adult content. (Please tag any adult material and/or nudity with #NSFW)')),
|
||||
|
||||
'$h_prv' => t('Security and Privacy Settings'),
|
||||
|
||||
'$hide_presence' => array('hide_presence', t('Hide my online presence'),$hide_presence, t('Prevents showing if you are available for chat')),
|
||||
'$hide_presence' => array('hide_presence', t('Hide my online presence'),$hide_presence, t('Prevents displaying in your profile that you are online')),
|
||||
|
||||
'$lbl_pmacro' => t('Quick Privacy Settings:'),
|
||||
'$pmacro3' => t('Very Public - extremely permissive'),
|
||||
'$pmacro2' => t('Typical - default public, privacy when desired'),
|
||||
'$pmacro1' => t('Private - default private, rarely open or public'),
|
||||
'$pmacro0' => t('Blocked - default blocked to/from everybody'),
|
||||
'$lbl_pmacro' => t('Simple Privacy Settings:'),
|
||||
'$pmacro3' => t('Very Public - <em>extremely permissive (should be used with caution)</em>'),
|
||||
'$pmacro2' => t('Typical - <em>default public, privacy when desired (similar to social network permissions but with improved privacy)</em>'),
|
||||
'$pmacro1' => t('Private - <em>default private, never open or public</em>'),
|
||||
'$pmacro0' => t('Blocked - <em>default blocked to/from everybody</em>'),
|
||||
'$permiss_arr' => $permiss,
|
||||
|
||||
'$lbl_p2macro' => t('Advanced Privacy Settings'),
|
||||
|
||||
'$maxreq' => array('maxreq', t('Maximum Friend Requests/Day:'), intval($channel['channel_max_friend_req']) , t('May reduce spam activity')),
|
||||
'$permissions' => t('Default Post Permissions'),
|
||||
'$permdesc' => t("\x28click to open/close\x29"),
|
||||
|
@ -1,23 +1,23 @@
|
||||
.chatContainer {
|
||||
#chatContainer {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.chatTopBar {
|
||||
#chatTopBar {
|
||||
float: left;
|
||||
height: 400px;
|
||||
width: 650px;
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.chatUsers {
|
||||
#chatUsers {
|
||||
float: right;
|
||||
width: 120px;
|
||||
height: 100%;
|
||||
border: 1px solid #000;
|
||||
}
|
||||
|
||||
.chatBottomBar {
|
||||
#chatBottomBar {
|
||||
position: relative;
|
||||
bottom: 0;
|
||||
height: 150px;
|
||||
|
@ -135,3 +135,17 @@
|
||||
.contact-entry-end {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
#abook-advanced-panel, #abook-advanced {
|
||||
opacity: 0.3;
|
||||
filter:alpha(opacity=30);
|
||||
}
|
||||
|
||||
#abook-advanced-panel:hover, #abook-advanced:hover {
|
||||
opacity: 1.0;
|
||||
filter:alpha(opacity=100);
|
||||
}
|
||||
|
||||
#abook-advanced {
|
||||
margin-top: 15px;
|
||||
}
|
@ -1,3 +1,17 @@
|
||||
#settings-permissions-wrapper, #settings-perm-advanced {
|
||||
opacity: 0.3;
|
||||
filter:alpha(opacity=30);
|
||||
}
|
||||
|
||||
#settings-permissions-wrapper:hover, #settings-perm-advanced:hover {
|
||||
opacity: 1.0;
|
||||
filter:alpha(opacity=100);
|
||||
}
|
||||
|
||||
#settings-perm-advanced {
|
||||
margin-top: 15px;
|
||||
}
|
||||
|
||||
#settings-permissions-wrapper .field {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
@ -74,8 +74,16 @@ function redbasic_form(&$a, $arr) {
|
||||
|
||||
$nav_colours = array (
|
||||
'' => t('Scheme Default'),
|
||||
'red' => t('red'),
|
||||
'black' => t('black'),
|
||||
'red' => 'red',
|
||||
'pink' => 'pink',
|
||||
'green' => 'green',
|
||||
'blue' => 'blue',
|
||||
'purple' => 'purple',
|
||||
'black' => 'black',
|
||||
'orange' => 'orange',
|
||||
'brown' => 'brown',
|
||||
'grey' => 'grey',
|
||||
'gold' => 'gold',
|
||||
'silver' => t('silver'),
|
||||
);
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
<?php
|
||||
|
||||
if(! $a->install) {
|
||||
// Get the UID of the channel owner
|
||||
$uid = get_theme_uid();
|
||||
|
||||
@ -32,6 +34,8 @@
|
||||
$top_photo=get_pconfig($uid,'redbasic','top_photo');
|
||||
$reply_photo=get_pconfig($uid,'redbasic','reply_photo');
|
||||
|
||||
}
|
||||
|
||||
// Now load the scheme. If a value is changed above, we'll keep the settings
|
||||
// If not, we'll keep those defined by the schema
|
||||
// Setting $scheme to '' wasn't working for some reason, so we'll check it's
|
||||
@ -133,6 +137,38 @@
|
||||
$nav_bg_1 = $nav_bg_2 = $nav_bg_3 = $nav_bg_4 = "silver";
|
||||
$search_background = '#EEEEEE';
|
||||
}
|
||||
if($nav_colour === "pink") {
|
||||
$nav_bg_1 = $nav_bg_3 = "#FFC1CA";
|
||||
$nav_bg_2 = $nav_bg_4 = "#FFC1CA";
|
||||
}
|
||||
if($nav_colour === "green") {
|
||||
$nav_bg_1 = $nav_bg_3 = "#5CD65C";
|
||||
$nav_bg_2 = $nav_bg_4 = "#5CD65C";
|
||||
}
|
||||
if($nav_colour === "blue") {
|
||||
$nav_bg_1 = $nav_bg_3 = "#1872a2";
|
||||
$nav_bg_2 = $nav_bg_4 = "#1872a2";
|
||||
}
|
||||
if($nav_colour === "purple") {
|
||||
$nav_bg_1 = $nav_bg_3 = "#551A8B";
|
||||
$nav_bg_2 = $nav_bg_4 = "#551A8B";
|
||||
}
|
||||
if($nav_colour === "orange") {
|
||||
$nav_bg_1 = $nav_bg_3 = "#FF3D0D";
|
||||
$nav_bg_2 = $nav_bg_4 = "#FF3D0D";
|
||||
}
|
||||
if($nav_colour === "brown") {
|
||||
$nav_bg_1 = $nav_bg_3 = "#330000";
|
||||
$nav_bg_2 = $nav_bg_4 = "#330000";
|
||||
}
|
||||
if($nav_colour === "grey") {
|
||||
$nav_bg_1 = $nav_bg_3 = "#2e2f2e";
|
||||
$nav_bg_2 = $nav_bg_4 = "#2e2f2e";
|
||||
}
|
||||
if($nav_colour === "gold") {
|
||||
$nav_bg_1 = $nav_bg_3 = "#FFAA00";
|
||||
$nav_bg_2 = $nav_bg_4 = "#FFAA00";
|
||||
}
|
||||
|
||||
|
||||
// Apply the settings
|
||||
|
@ -31,18 +31,6 @@
|
||||
|
||||
|
||||
|
||||
<h3>{{$permlbl}}</h3>
|
||||
<div id="perm-desc" class="descriptive-text">{{$permnote}}</div>
|
||||
|
||||
<form id="abook-edit-form" action="connedit/{{$contact_id}}" method="post" >
|
||||
<input type="hidden" name="contact_id" value="{{$contact_id}}">
|
||||
<input id="contact-closeness-mirror" type="hidden" name="closeness" value="{{$close}}" />
|
||||
|
||||
{{if $noperms}}
|
||||
<div id="noperm-msg" class="warning-text">{{$noperms}}</div>
|
||||
<div id="noperm-text" class="descriptive-text">{{$noperm_desc}}</div>
|
||||
{{/if}}
|
||||
|
||||
|
||||
{{if $is_pending}}
|
||||
<div class="abook-pending-contact">
|
||||
@ -50,8 +38,32 @@
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{if $multiprofs }}
|
||||
<div>
|
||||
<h3>{{$lbl_vis1}}</h3>
|
||||
<div>{{$lbl_vis2}}</div>
|
||||
|
||||
{{$profile_select}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
<h3>{{$permlbl}}</h3>
|
||||
<div id="perm-desc" class="descriptive-text">{{$permnote}}</div>
|
||||
|
||||
<form id="abook-edit-form" action="connedit/{{$contact_id}}" method="post" >
|
||||
<input type="hidden" name="contact_id" value="{{$contact_id}}">
|
||||
<input id="contact-closeness-mirror" type="hidden" name="closeness" value="{{$close}}" />
|
||||
|
||||
{{* {{if $noperms}}
|
||||
<div id="noperm-msg" class="warning-text">{{$noperms}}</div>
|
||||
<div id="noperm-text" class="descriptive-text">{{$noperm_desc}}</div>
|
||||
{{/if}}
|
||||
*}}
|
||||
|
||||
|
||||
|
||||
<br />
|
||||
<b>{{$quick}}</b>
|
||||
<h3>{{$quick}}</h3>
|
||||
<ul>
|
||||
{{if $self}}
|
||||
<li><span class="fakelink" onclick="connectForum(); // $('#abook-edit-form').submit();">{{$forum}}</span></li>
|
||||
@ -62,6 +74,9 @@
|
||||
<li><span class="fakelink" onclick="connectFollowOnly(); // $('#abook-edit-form').submit();">{{$follow}}</span></li>
|
||||
</ul>
|
||||
|
||||
<input class="contact-edit-submit" type="submit" name="done" value="{{$submit}}" />
|
||||
|
||||
|
||||
<div id="abook-advanced" class="fakelink" onclick="openClose('abook-advanced-panel');">{{$advanced}}</div>
|
||||
|
||||
<div id="abook-advanced-panel" style="display: block;">
|
||||
@ -76,14 +91,6 @@
|
||||
|
||||
</div>
|
||||
|
||||
{{if $multiprofs }}
|
||||
<div>
|
||||
<h3>{{$lbl_vis1}}</h3>
|
||||
<div>{{$lbl_vis2}}</div>
|
||||
|
||||
{{$profile_select}}
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
<input class="contact-edit-submit" type="submit" name="done" value="{{$submit}}" />
|
||||
|
||||
|
@ -47,8 +47,8 @@ $('#chat-form').submit(function(ev) {
|
||||
|
||||
function load_chats() {
|
||||
|
||||
$.get("chatsvc?f=&room_id=" + room_id + '&last=' + last_chat,function(data) {
|
||||
if(data.success) {
|
||||
$.get("chatsvc?f=&room_id=" + room_id + '&last=' + last_chat + ((stopped) ? '&stopped=1' : ''),function(data) {
|
||||
if(data.success && (! stopped)) {
|
||||
update_inroom(data.inroom);
|
||||
update_chats(data.chats);
|
||||
}
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
{{include file="field_input.tpl" field=$menu_name}}
|
||||
{{include file="field_input.tpl" field=$menu_desc}}
|
||||
|
||||
{{include file="field_checkbox.tpl" field=$menu_bookmark}}
|
||||
<div class="menuedit-submit-wrapper" >
|
||||
<input type="submit" name="submit" class="menuedit-submit" value="{{$submit}}" />
|
||||
</div>
|
||||
|
@ -25,15 +25,16 @@
|
||||
{{include file="field_checkbox.tpl" field=$hide_presence}}
|
||||
|
||||
|
||||
<div id="settings-privacy-macros">{{$lbl_pmacro}}</div>
|
||||
<h3 id="settings-privacy-macros">{{$lbl_pmacro}}</h3>
|
||||
<ul>
|
||||
<li><a href="#" onclick="channel_privacy_macro(3); return false" id="settings_pmacro3">{{$pmacro3}}</a></li>
|
||||
<li><a href="#" onclick="channel_privacy_macro(2); return false" id="settings_pmacro2">{{$pmacro2}}</a></li>
|
||||
<li><a href="#" onclick="channel_privacy_macro(1); return false" id="settings_pmacro1">{{$pmacro1}}</a></li>
|
||||
<li><a href="#" onclick="channel_privacy_macro(3); return false" id="settings_pmacro3">{{$pmacro3}}</a></li>
|
||||
<li><a href="#" onclick="channel_privacy_macro(0); return false" id="settings_pmacro0">{{$pmacro0}}</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3 id="settings-perm-advanced">{{$lbl_p2macro}}</h3>
|
||||
|
||||
<div id="settings-permissions-wrapper">
|
||||
{{foreach $permiss_arr as $permit}}
|
||||
|
Reference in New Issue
Block a user