diff options
-rw-r--r-- | include/notifier.php | 50 | ||||
-rw-r--r-- | view/en/jot-header.tpl | 14 |
2 files changed, 60 insertions, 4 deletions
diff --git a/include/notifier.php b/include/notifier.php index 59e29d7d1..87095e814 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -255,7 +255,7 @@ function notifier_run($argv, $argc){ $recip_str = implode(', ', $recipients); - $r = q("SELECT * FROM `contact` WHERE `id` IN ( %s ) AND `blocked` = 0 ", + $r = q("SELECT * FROM `contact` WHERE `id` IN ( %s ) AND `blocked` = 0 AND `pending` = 0 ", dbesc($recip_str) ); if(! count($r)){ @@ -370,6 +370,54 @@ function notifier_run($argv, $argc){ } } + if($notify_hub) { + + /** + * + * If you have less than 150 dfrn friends and it's a public message, + * we'll just go ahead and push them out securely with dfrn/rino. + * If you've got more than that, you'll have to rely on PuSH delivery. + * + */ + + $max_allowed = ((get_config('system','maxpubdeliver') === false) ? 150 : intval(get_config('system','maxdeliver'))); + + + /** + * + * Only get the bare essentials and go back for the full record. + * If you've got a lot of friends and we grab all the details at once it could exhaust memory. + * + */ + + $r = q("SELECT `id`, `name` FROM `contact` + WHERE `network` = 'dfrn' AND `uid` = %d AND `blocked` = 0 AND `pending` = 0 + AND `rel` != %d ", + intval($owner['uid']), + intval(REL_FAN) + ); + + if((count($r)) && ($max_allowed < count($r))) { + foreach($r as $rr) { + + /* Don't deliver to folks who have already been delivered to */ + + if(! in_array($rr['id'], $conversants)) { + $n = q("SELECT * FROM `contact` WHERE `id` = %d LIMIT 1", + intval($rr['id']) + ); + if(count($n)) { + + logger('notifier: dfrnpubdelivery: ' . $n[0]['name']); + $deliver_status = dfrn_deliver($owner,$n[0],$atom); + } + } + else + logger('notifier: dfrnpubdelivery: ignoring ' . $rr['name']); + } + } + } + return; } diff --git a/view/en/jot-header.tpl b/view/en/jot-header.tpl index b687f65a6..93eb440a4 100644 --- a/view/en/jot-header.tpl +++ b/view/en/jot-header.tpl @@ -2,17 +2,20 @@ <script language="javascript" type="text/javascript" src="$baseurl/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script> <script language="javascript" type="text/javascript"> +var editor; + tinyMCE.init({ theme : "advanced", mode : "specific_textareas", editor_selector: /(profile-jot-text|prvmail-text)/, - plugins : "bbcode", + plugins : "bbcode,paste", theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect", theme_advanced_buttons2 : "", theme_advanced_buttons3 : "", theme_advanced_toolbar_location : "top", theme_advanced_toolbar_align : "center", theme_advanced_blockformats : "blockquote,code", + paste_text_sticky : true, entity_encoding : "raw", add_unload_trigger : false, remove_linebreaks : false, @@ -43,8 +46,13 @@ tinyMCE.init({ $('#character-counter').addClass('red'); } $('#character-counter').text(text); - }); - } + }); + + ed.onInit.add(function(ed) { + ed.pasteAsPlainText = true; + }); + + } }); </script> |