remove double tags on search results, updates to install doco to get rid of Friendica name there and clarify Red requirements.

This commit is contained in:
friendica 2013-07-09 22:48:34 -07:00
parent 69d9ec9a94
commit 5a8cda632b
6 changed files with 54 additions and 85 deletions

View File

@ -584,17 +584,6 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
$tags=array(); $tags=array();
$hashtags = array(); $hashtags = array();
$mentions = array(); $mentions = array();
foreach(explode(',',$item['tag']) as $tag){
$tag = trim($tag);
if ($tag!="") {
$t = bbcode($tag);
$tags[] = $t;
if($t[0] == '#')
$hashtags[] = $t;
elseif($t[0] == '@')
$mentions[] = $t;
}
}
$sp = false; $sp = false;
$profile_link = best_link_url($item,$sp); $profile_link = best_link_url($item,$sp);
@ -650,7 +639,6 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
$tmp_item = array( $tmp_item = array(
'template' => $tpl, 'template' => $tpl,
'toplevel' => 'toplevel_item', 'toplevel' => 'toplevel_item',
'tags' => $tags,
'id' => (($preview) ? 'P0' : $item['item_id']), 'id' => (($preview) ? 'P0' : $item['item_id']),
'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, $profile_url), 'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, $profile_url),
'profile_url' => $profile_link, 'profile_url' => $profile_link,

View File

@ -1023,19 +1023,24 @@ function prepare_body($item,$attach = false) {
$s .= '<div class="clear"></div></div>'; $s .= '<div class="clear"></div></div>';
} }
if(is_array($item['term']) && count($item['term'])) { // At some point in time, posttags were removed from the threaded conversation templates, but remained in the search_item template.
$tstr = ''; // Code to put them back was added into include/conversation.php and/or include/ItemObject.php but under new class names
foreach($item['term'] as $t) { // Then it was discovered that the following bits remained of the old code.
$t1 = format_term_for_display($t); // Commented out, but we may decide to use this instead of the other version and put all the tag rendering in one place. In the other
if($t1) { // location it is more theme-able.
if($tstr) // if(is_array($item['term']) && count($item['term'])) {
$tstr .= ' '; // $tstr = '';
$tstr .= $t1; // foreach($item['term'] as $t) {
} // $t1 = format_term_for_display($t);
} // if($t1) {
if($tstr) // if($tstr)
$s .= '<br /><div class="posttags">' . $tstr . '</div>'; // $tstr .= ' ';
} // $tstr .= $t1;
// }
// }
// if($tstr)
// $s .= '<br /><div class="posttags">' . $tstr . '</div>';
// }
$writeable = ((get_observer_hash() == $item['owner_xchan']) ? true : false); $writeable = ((get_observer_hash() == $item['owner_xchan']) ? true : false);

View File

@ -1,31 +1,28 @@
Friendica Installation Red Matrix Installation
We've tried very hard to ensure that Friendica will run on commodity hosting We've tried very hard to ensure that the Red Matrix will run on commodity
platforms - such as those used to host Wordpress blogs and Drupal websites. hosting platforms - such as those used to host Wordpress blogs and Drupal
But be aware that Friendica is more than a simple web application. It is a websites. It will run on most any Linux VPS system. Windows LAMP platforms
such as XAMPP and WAMP are not officially supported at this time - however
we welcome patches if you manage to get it working.
Be aware that the Red Matrix is more than a simple web application. It is a
complex communications system which more closely resembles an email server complex communications system which more closely resembles an email server
than a web server. For reliability and performance, messages are delivered in than a web server. For reliability and performance, messages are delivered in
the background and are queued for later delivery when sites are down. This the background and are queued for later delivery when sites are down. This
kind of functionality requires a bit more of the host system than the typical kind of functionality requires a bit more of the host system than the typical
blog. Not every PHP/MySQL hosting provider will be able to support Friendica. blog. Not every PHP/MySQL hosting provider will be able to support the
Many will. But please review the requirements and confirm these with your Red Matrix. Many will - but please review the requirements and confirm these
hosting provider prior to installation. with your hosting provider prior to installation. (And preferably before
entering into a long-term contract.)
Before you begin: Choose a domain name or subdomain name for your server. Before you begin: Choose a domain name or subdomain name for your server.
Put some thought into this - because changing it is currently not-supported. Put some thought into this - because changing it is currently not-supported.
Things will break, and some of your friends may have difficulty communicating Things will break, and some of your friends may have difficulty communicating
with you. We plan to address this limitation in a future release. Also decide with you. We plan to address this limitation in a future release.
if you wish to connect with members of the Diaspora network, as this will
impact the installation requirements.
Decide if you will use SSL and obtain an SSL cert. Communications with the Decide if you will use SSL and obtain an SSL cert before software installation. You SHOULD use SSL. If you use SSL, you MUST use a "browser-valid" certificate. Please test your certificate prior to installation. A web tool for testing your certificate is available at "http://www.digicert.com/help/". When visiting your site for the first time, please use the SSL ("https://") URL if SSL is available. This will avoid problems later.
Diaspora network MAY require both SSL AND an SSL cert signed by a CA which is
recognised by the major browsers. Friendica will work with self-signed certs
but Diaspora communication may not. For best results, install your cert PRIOR
to installing Friendica and when visiting your site for the initial
installation in step 5, please use the https: link. (Use the http: or non-SSL
link if your cert is self-signed).
1. Requirements 1. Requirements
@ -35,22 +32,21 @@ local .htaccess file
- PHP 5.3+. The later the better. - PHP 5.3+. The later the better.
- PHP *command line* access with register_argc_argv set to true in the - PHP *command line* access with register_argc_argv set to true in the
php.ini file [or see 'poormancron' in section 8] php.ini file - and with no hosting provider restrictions on the use of exec()
and proc_open().
- curl, gd (with at least jpeg support), mysql, mbstring, mcrypt, and openssl extensions - curl, gd (with at least jpeg support), mysqli, mbstring, mcrypt, and openssl extensions. The imagick extension is not required but desirable.
- some form of email server or email gateway such that PHP mail() works - some form of email server or email gateway such that PHP mail() works
- Mysql 5.x - Mysql 5.x or MariaDB
- ability to schedule jobs with cron (Linux/Mac) or Scheduled Tasks - ability to schedule jobs with cron.
(Windows) [Note: other options are presented in Section 8 of this document]
- Installation into a top-level domain or sub-domain (without a - Installation into a top-level domain or sub-domain (without a
directory/path component in the URL) is preferred. This is REQUIRED if directory/path component in the URL) is REQUIRED.
you wish to communicate with the Diaspora network.
2. Unpack the Friendica files into the root of your web server document area. 2. Unpack the Red Matrix files into the root of your web server document area.
- If you copy the directory tree to your webserver, make sure - If you copy the directory tree to your webserver, make sure
that you also copy .htaccess - as "dot" files are often hidden that you also copy .htaccess - as "dot" files are often hidden
@ -66,8 +62,8 @@ write or create files in your web directory, create an empty file called
5. Visit your website with a web browser and follow the instructions. Please 5. Visit your website with a web browser and follow the instructions. Please
note any error messages and correct these before continuing. If you are using note any error messages and correct these before continuing. If you are using
SSL with a known signature authority (recommended), use the https: link to your SSL with a known signature authority, use the https: link to your
website. If you are using a self-signed cert or no cert, use the http: link. website.
6. *If* the automated installation fails for any reason, check the following: 6. *If* the automated installation fails for any reason, check the following:
@ -112,24 +108,6 @@ look like (changing it to the correct PHP location)
$a->config['system']['php_path'] = '/usr/local/php53/bin/php'; $a->config['system']['php_path'] = '/usr/local/php53/bin/php';
Alternative: You may be able to use the 'poormancron' plugin to perform this
step if you are using a recent Friendica release. 'poormancron' may result in
perfomance and memory issues and is only suitable for small sites with one or
two users and a handful of contacts. To do this, edit the file
".htconfig.php" and look for a line describing your plugins. On a fresh
installation, it will look like
$a->config['system']['addon'] = 'js_upload';
This indicates the "js_upload" addon module is enabled. You may add additional
addons/plugins using this same line in the configuration file. Change it to
read
$a->config['system']['addon'] = 'js_upload,poormancron';
and save your changes.
##################################################################### #####################################################################
@ -153,8 +131,6 @@ the database server name is "localhost".
This could be the result of one of our Apache directives not being This could be the result of one of our Apache directives not being
supported by your version of Apache. Examine your apache server logs. supported by your version of Apache. Examine your apache server logs.
You might remove the line "Options -Indexes" from the .htaccess file if
you are using a Windows server as this has been known to cause problems.
Also check your file permissions. Your website and all contents must generally Also check your file permissions. Your website and all contents must generally
be world-readable. be world-readable.
@ -200,8 +176,7 @@ likely that mod-rewrite is not installed in your web server or is not working.
distribution or (if Windows) the provider of your Apache server software if distribution or (if Windows) the provider of your Apache server software if
you need to change either of these and can not figure out how. There is you need to change either of these and can not figure out how. There is
a lot of help available on the web. Google "mod-rewrite" along with the a lot of help available on the web. Google "mod-rewrite" along with the
name of your operating system distribution or Apache package (if using name of your operating system distribution or Apache package.
Windows).
##################################################################### #####################################################################
@ -223,7 +198,7 @@ Retry the installation. As soon as the database has been created,
##################################################################### #####################################################################
- Some configurations with "suhosin" security are configured without - Some configurations with "suhosin" security are configured without
an ability to run external processes. Friendica requires this ability. an ability to run external processes. The Red Matrix requires this ability.
Following are some notes provided by one of our members. Following are some notes provided by one of our members.
##################################################################### #####################################################################
@ -233,26 +208,26 @@ certain functions like proc_open, as configured in /etc/php5/conf.d/suhosin.ini:
suhosin.executor.func.blacklist = proc_open, ... suhosin.executor.func.blacklist = proc_open, ...
For those sites like Friendica that really need these functions they can be For those sites like Red Matrix that really need these functions they can be
enabled, e.g. in /etc/apache2/sites-available/friendica: enabled, e.g. in /etc/apache2/sites-available/redmatrix:
<Directory /var/www/friendica/> <Directory /var/www/redmatrix/>
php_admin_value suhosin.executor.func.blacklist none php_admin_value suhosin.executor.func.blacklist none
php_admin_value suhosin.executor.eval.blacklist none php_admin_value suhosin.executor.eval.blacklist none
</Directory> </Directory>
This enables every function for Friendica if accessed via browser, but not for This enables every function for Red Matrix if accessed via browser, but not for
the cronjob that is called via php command line. I attempted to enable it for the cronjob that is called via php command line. I attempted to enable it for
cron by using something like cron by using something like
*/10 * * * * cd /var/www/friendica/friendica/ && sudo -u www-data /usr/bin/php */10 * * * * cd /var/www/redmatrix/ && sudo -u www-data /usr/bin/php
-d suhosin.executor.func.blacklist=none -d suhosin.executor.eval.blacklist=none -d suhosin.executor.func.blacklist=none -d suhosin.executor.eval.blacklist=none
-f include/poller.php -f include/poller.php
This worked well for simple test cases, but the friendica-cron still failed with This worked well for simple test cases, but the cron job still failed with
a fatal error: a fatal error:
suhosin[22962]: ALERT - function within blacklist called: proc_open() (attacker suhosin[22962]: ALERT - function within blacklist called: proc_open() (attacker
'REMOTE_ADDR not set', file '/var/www/friendica/friendica/boot.php', line 1341) 'REMOTE_ADDR not set', file '/var/www/redmatrix/boot.php', line 1341)
After a while I noticed, that include/poller.php calls further php script via After a while I noticed, that include/poller.php calls further php script via
proc_open. These scripts themselves also use proc_open and fail, because they proc_open. These scripts themselves also use proc_open and fail, because they
@ -264,7 +239,7 @@ So the simple solution is to put the correct parameters into .htconfig.php:
-d suhosin.executor.eval.blacklist=none'; -d suhosin.executor.eval.blacklist=none';
This is obvious as soon as you notice that the friendica-cron uses proc_open to This is obvious as soon as you notice that the cron uses proc_open to
execute php-scripts that also use proc_open, but it took me quite some time to execute php-scripts that also use proc_open, but it took me quite some time to
find that out. I hope this saves some time for other people using suhosin with find that out. I hope this saves some time for other people using suhosin with
function blacklists. function blacklists.

View File

@ -1 +1 @@
2013-07-08.368 2013-07-09.369

View File

@ -2827,7 +2827,7 @@ aside input[type='text'] {
filter:alpha(opacity=100) !important; filter:alpha(opacity=100) !important;
} }
.posttags { .posttags, .body-tag {
margin-top: 15px; margin-top: 15px;
} }

View File

@ -55,6 +55,7 @@
if ($colour_scheme === 'dark') {$colour = 'dark'; $navcolour = 'black';} if ($colour_scheme === 'dark') {$colour = 'dark'; $navcolour = 'black';}
if ($colour_scheme === 'redbasic'){$navcolour = 'red';} if ($colour_scheme === 'redbasic'){$navcolour = 'red';}
$shadows = false; $shadows = false;
$radius = 5;
} }
// This is probably the easiest place to apply global settings. Don't bother with site line height and such. Instead, check pconfig for global user settings. // This is probably the easiest place to apply global settings. Don't bother with site line height and such. Instead, check pconfig for global user settings.