From: rabuzarus <>
Date: Thu, 14 Apr 2016 14:23:51 +0000 (+0200)
Subject: Merge develop into 1404_reworked_autocomplete
X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=01b02dbcaa8532f965389375e961d9c47d74eeec;p=friendica.git
Merge develop into 1404_reworked_autocomplete
Conflicts:
include/text.php
view/templates/head.tpl
view/theme/duepuntozero/style.css
view/theme/vier/style.css
---
01b02dbcaa8532f965389375e961d9c47d74eeec
diff --cc .gitignore
index b300f579e2,b300f579e2..5b7e09b507
--- a/.gitignore
+++ b/.gitignore
@@@ -12,7 -12,7 +12,7 @@@ addo
*~
robots.txt
--#ignore documentation, it should be newly built
++#ignore documentation, it should be newly built
doc/html
#ignore reports, should be generted with every build
@@@ -23,7 -23,7 +23,7 @@@ report
.buildpath
.externalToolBuilders
.settings
--#ignore OSX .DS_Store files
++#ignore OSX .DS_Store files
.DS_Store
/nbproject/private/
diff --cc include/Smilies.php
index 193f3b555d,0000000000..9cb2d6f2b5
mode 100644,000000..100644
--- a/include/Smilies.php
+++ b/include/Smilies.php
@@@ -1,179 -1,0 +1,180 @@@
+ smilie shortcut
+ * 'icons' => icon in html
+ *
+ * @hook smilie ('texts' => smilies texts array, 'icons' => smilies html array)
+ */
+ public static function get_list() {
+
+ $texts = array(
+ '<3',
+ '</3',
+ '<\\3',
+ ':-)',
+ ';-)',
+ ':-(',
+ ':-P',
+ ':-p',
+ ':-"',
+ ':-"',
+ ':-x',
+ ':-X',
+ ':-D',
+ '8-|',
+ '8-O',
+ ':-O',
+ '\\o/',
+ 'o.O',
+ 'O.o',
+ 'o_O',
+ 'O_o',
+ ":'(",
+ ":-!",
+ ":-/",
+ ":-[",
+ "8-)",
+ ':beer',
+ ':homebrew',
+ ':coffee',
+ ':facepalm',
+ ':like',
+ ':dislike',
+ '~friendica',
+ 'red#',
+ 'red#matrix'
+
+ );
+
+ $icons = array(
- '',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '
',
- '~friendica
',
- 'red
matrix',
- 'red
matrix'
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '
',
++ '~friendica
',
++ 'red
matrix',
++ 'red
matrix'
+ );
+
+ $params = array('texts' => $texts, 'icons' => $icons);
+ call_hooks('smilie', $params);
+
+ return $params;
+
+ }
+
+ /**
+ * @brief Replaces text emoticons with graphical images
+ *
+ * It is expected that this function will be called using HTML text.
+ * We will escape text between HTML pre and code blocks from being
+ * processed.
+ *
+ * At a higher level, the bbcode [nosmile] tag can be used to prevent this
+ * function from being executed by the prepare_text() routine when preparing
+ * bbcode source for HTML display
+ *
+ * @param string $s
+ * @param boolean $sample
+ *
+ * @return string
+ */
+ public static function replace($s, $sample = false) {
+ if(intval(get_config('system','no_smilies'))
+ || (local_user() && intval(get_pconfig(local_user(),'system','no_smilies'))))
+ return $s;
+
+ $s = preg_replace_callback('/
(.*?)<\/pre>/ism','self::encode',$s);
+ $s = preg_replace_callback('/(.*?)<\/code>/ism','self::encode',$s);
+
+ $params = self::get_list();
+ $params['string'] = $s;
+
+ if($sample) {
+ $s = '';
+ for($x = 0; $x < count($params['texts']); $x ++) {
+ $s .= '- ' . $params['texts'][$x] . '
- ' . $params['icons'][$x] . '
';
+ }
+ }
+ else {
+ $params['string'] = preg_replace_callback('/<(3+)/','self::preg_heart',$params['string']);
+ $s = str_replace($params['texts'],$params['icons'],$params['string']);
+ }
+
+ $s = preg_replace_callback('/(.*?)<\/pre>/ism','self::decode',$s);
+ $s = preg_replace_callback('/(.*?)<\/code>/ism','self::decode',$s);
+
+ return $s;
+ }
+
+ private function encode($m) {
+ return(str_replace($m[1],base64url_encode($m[1]),$m[0]));
+ }
+
+ private function decode($m) {
+ return(str_replace($m[1],base64url_decode($m[1]),$m[0]));
+ }
+
+
+ /**
+ * @brief expand <3333 to the correct number of hearts
+ *
+ * @param string $x
+ * @return string
+ */
+ private function preg_heart($x) {
+ if(strlen($x[1]) == 1)
+ return $x[0];
+ $t = '';
+ for($cnt = 0; $cnt < strlen($x[1]); $cnt ++)
+ $t .= '
';
+ $r = str_replace($x[0],$t,$x[0]);
+ return $r;
+ }
+
+}
diff --cc view/templates/head.tpl
index afb7c1df27,fdf9a7716e..31555aae2b
--- a/view/templates/head.tpl
+++ b/view/templates/head.tpl
@@@ -28,21 -28,20 +28,21 @@@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
-
++
++
+
+
+
+
+
+
+
+