From 89d6ce68463b92641946551b07ec49b023d56d90 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Thu, 1 May 2014 11:48:29 +0200 Subject: Update to TinyMCE 4.x --- program/steps/utils/spell_html.inc | 30 +++++++++++------------------- 1 file changed, 11 insertions(+), 19 deletions(-) (limited to 'program/steps/utils') diff --git a/program/steps/utils/spell_html.inc b/program/steps/utils/spell_html.inc index 27b14acef..b31d6ed86 100644 --- a/program/steps/utils/spell_html.inc +++ b/program/steps/utils/spell_html.inc @@ -19,31 +19,23 @@ +-----------------------------------------------------------------------+ */ -// read input data -$data = file_get_contents('php://input'); -// Decode JSON input -$request = json_decode($data, true); +$lang = rcube_utils::get_input_value('lang', rcube_utils::INPUT_POST); +$data = rcube_utils::get_input_value('text', rcube_utils::INPUT_POST); +$data = html_entity_decode($data, ENT_QUOTES, RCUBE_CHARSET); $result = array(); -$lang = $request['params'][0]; -$data = $request['params'][1]; -$data = implode("\n", (array) $data); - -$result['id'] = $request['id']; - $spellchecker = new rcube_spellchecker($lang); -if ($request['method'] == 'checkWords') { - $result['result'] = $spellchecker->get_words($data); -} -else if ($request['method'] == 'getSuggestions') { - $result['result'] = $spellchecker->get_suggestions($data); -} -else if ($request['method'] == 'learnWord') { +if ($method == 'learnWord') { $spellchecker->add_word($data); $result['result'] = true; } +else if ($data) { + if (!$spellchecker->check($data)) { + $result['words'] = $spellchecker->get(); + } +} if ($error = $spellchecker->error()) { rcube::raise_error(array('code' => 500, 'type' => 'php', @@ -51,12 +43,12 @@ if ($error = $spellchecker->error()) { 'message' => sprintf("Spell check engine error: " . $error)), true, false); - echo '{"error":{"errstr":"' . addslashes($error) . '","errfile":"","errline":null,"errcontext":"","level":"FATAL"}}'; + echo json_encode(array('error' => $error)); exit; } // send output -header("Content-Type: text/xml; charset=".RCUBE_CHARSET); +header("Content-Type: application/json; charset=".RCUBE_CHARSET); echo json_encode($result); exit; -- cgit v1.2.3 From f41912e4cb4281358de8c22c72d47b05d2b8ec8f Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Tue, 6 May 2014 08:38:19 +0200 Subject: Allow <> characters in spellchecking text --- program/steps/utils/spell_html.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'program/steps/utils') diff --git a/program/steps/utils/spell_html.inc b/program/steps/utils/spell_html.inc index b31d6ed86..0b274493f 100644 --- a/program/steps/utils/spell_html.inc +++ b/program/steps/utils/spell_html.inc @@ -21,7 +21,7 @@ $lang = rcube_utils::get_input_value('lang', rcube_utils::INPUT_POST); -$data = rcube_utils::get_input_value('text', rcube_utils::INPUT_POST); +$data = rcube_utils::get_input_value('text', rcube_utils::INPUT_POST, true); $data = html_entity_decode($data, ENT_QUOTES, RCUBE_CHARSET); $result = array(); -- cgit v1.2.3 From 2f1a81fa4004de46fd796eea087b7824fd45b591 Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Wed, 28 May 2014 13:56:25 +0200 Subject: Bring back "Add To Dictionary" feature --- program/steps/utils/spell_html.inc | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'program/steps/utils') diff --git a/program/steps/utils/spell_html.inc b/program/steps/utils/spell_html.inc index 0b274493f..6722f8787 100644 --- a/program/steps/utils/spell_html.inc +++ b/program/steps/utils/spell_html.inc @@ -20,20 +20,25 @@ */ +$method = rcube_utils::get_input_value('method', rcube_utils::INPUT_POST); $lang = rcube_utils::get_input_value('lang', rcube_utils::INPUT_POST); -$data = rcube_utils::get_input_value('text', rcube_utils::INPUT_POST, true); -$data = html_entity_decode($data, ENT_QUOTES, RCUBE_CHARSET); $result = array(); $spellchecker = new rcube_spellchecker($lang); -if ($method == 'learnWord') { +if ($method == 'addToDictionary') { + $data = rcube_utils::get_input_value('word', rcube_utils::INPUT_POST); + $spellchecker->add_word($data); $result['result'] = true; } -else if ($data) { - if (!$spellchecker->check($data)) { - $result['words'] = $spellchecker->get(); +else { + $data = rcube_utils::get_input_value('text', rcube_utils::INPUT_POST, true); + $data = html_entity_decode($data, ENT_QUOTES, RCUBE_CHARSET); + + if ($data && !$spellchecker->check($data)) { + $result['words'] = $spellchecker->get(); + $result['dictionary'] = (bool) $RCMAIL->config->get('spellcheck_dictionary'); } } @@ -51,4 +56,3 @@ if ($error = $spellchecker->error()) { header("Content-Type: application/json; charset=".RCUBE_CHARSET); echo json_encode($result); exit; - -- cgit v1.2.3