language detection - result is stored in item['postopts']
This commit is contained in:
parent
085b589468
commit
9a299920eb
3 changed files with 18 additions and 1 deletions
1
boot.php
1
boot.php
|
@ -413,6 +413,7 @@ if(! class_exists('App')) {
|
||||||
. 'include' . PATH_SEPARATOR
|
. 'include' . PATH_SEPARATOR
|
||||||
. 'library' . PATH_SEPARATOR
|
. 'library' . PATH_SEPARATOR
|
||||||
. 'library/phpsec' . PATH_SEPARATOR
|
. 'library/phpsec' . PATH_SEPARATOR
|
||||||
|
. 'library/langdet' . PATH_SEPARATOR
|
||||||
. '.' );
|
. '.' );
|
||||||
|
|
||||||
if((x($_SERVER,'QUERY_STRING')) && substr($_SERVER['QUERY_STRING'],0,2) === "q=") {
|
if((x($_SERVER,'QUERY_STRING')) && substr($_SERVER['QUERY_STRING'],0,2) === "q=") {
|
||||||
|
|
|
@ -816,6 +816,12 @@ function item_store($arr,$force_parent = false) {
|
||||||
if((strpos($arr['body'],'<') !== false) || (strpos($arr['body'],'>') !== false))
|
if((strpos($arr['body'],'<') !== false) || (strpos($arr['body'],'>') !== false))
|
||||||
$arr['body'] = strip_tags($arr['body']);
|
$arr['body'] = strip_tags($arr['body']);
|
||||||
|
|
||||||
|
require_once('Text/LanguageDetect.php');
|
||||||
|
$naked_body = preg_replace('/\[(.+?)\]/','',$arr['body']);
|
||||||
|
$l = new Text_LanguageDetect;
|
||||||
|
$lng = $l->detectConfidence($naked_body);
|
||||||
|
$arr['postopts'] = (($lng['language']) ? 'lang=' . $lng['language'] . ';' . $lng['confidence'] : '');
|
||||||
|
|
||||||
|
|
||||||
$arr['wall'] = ((x($arr,'wall')) ? intval($arr['wall']) : 0);
|
$arr['wall'] = ((x($arr,'wall')) ? intval($arr['wall']) : 0);
|
||||||
$arr['uri'] = ((x($arr,'uri')) ? notags(trim($arr['uri'])) : random_string());
|
$arr['uri'] = ((x($arr,'uri')) ? notags(trim($arr['uri'])) : random_string());
|
||||||
|
|
12
mod/item.php
12
mod/item.php
|
@ -18,6 +18,7 @@
|
||||||
require_once('include/crypto.php');
|
require_once('include/crypto.php');
|
||||||
require_once('include/enotify.php');
|
require_once('include/enotify.php');
|
||||||
require_once('include/email.php');
|
require_once('include/email.php');
|
||||||
|
require_once('Text/LanguageDetect.php');
|
||||||
|
|
||||||
function item_post(&$a) {
|
function item_post(&$a) {
|
||||||
|
|
||||||
|
@ -216,6 +217,15 @@ function item_post(&$a) {
|
||||||
$emailcc = notags(trim($_REQUEST['emailcc']));
|
$emailcc = notags(trim($_REQUEST['emailcc']));
|
||||||
$body = escape_tags(trim($_REQUEST['body']));
|
$body = escape_tags(trim($_REQUEST['body']));
|
||||||
|
|
||||||
|
|
||||||
|
$naked_body = preg_replace('/\[(.+?)\]/','',$body);
|
||||||
|
$l = new Text_LanguageDetect;
|
||||||
|
$lng = $l->detectConfidence($naked_body);
|
||||||
|
|
||||||
|
$postopts = (($lng['language']) ? 'lang=' . $lng['language'] . ';' . $lng['confidence'] : '');
|
||||||
|
|
||||||
|
logger('mod_item: detect language' . print_r($lng,true) . $naked_body, LOGGER_DATA);
|
||||||
|
|
||||||
$private = ((strlen($str_group_allow) || strlen($str_contact_allow) || strlen($str_group_deny) || strlen($str_contact_deny)) ? 1 : 0);
|
$private = ((strlen($str_group_allow) || strlen($str_contact_allow) || strlen($str_group_deny) || strlen($str_contact_deny)) ? 1 : 0);
|
||||||
|
|
||||||
// If this is a comment, set the permissions from the parent.
|
// If this is a comment, set the permissions from the parent.
|
||||||
|
@ -561,7 +571,7 @@ function item_post(&$a) {
|
||||||
$datarray['attach'] = $attachments;
|
$datarray['attach'] = $attachments;
|
||||||
$datarray['bookmark'] = intval($bookmark);
|
$datarray['bookmark'] = intval($bookmark);
|
||||||
$datarray['thr-parent'] = $thr_parent;
|
$datarray['thr-parent'] = $thr_parent;
|
||||||
$datarray['postopts'] = '';
|
$datarray['postopts'] = $postopts;
|
||||||
$datarray['origin'] = $origin;
|
$datarray['origin'] = $origin;
|
||||||
$datarray['moderated'] = $allow_moderated;
|
$datarray['moderated'] = $allow_moderated;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue