XHTML fixes
[squirrelmail.git] / plugins / squirrelspell / modules / edit_dic.mod
1 <?php
2 /**
3 * edit_dic.mod
4 * -------------
5 * Squirrelspell module
6 *
7 * Copyright (c) 1999-2003 The SquirrelMail development team
8 * Licensed under the GNU GPL. For full terms see the file COPYING.
9 *
10 * This module lets the user edit his/her personal dictionary.
11 *
12 * $Id$
13 *
14 * @author Konstantin Riabitsev <icon@duke.edu> ($Author$)
15 * @version $Date
16 */
17
18 global $color;
19 /**
20 * Get the user dictionary and see if it's empty or not.
21 */
22 $words=sqspell_getWords();
23 if (!$words){
24 /**
25 * Agt. Smith: "You're empty."
26 * Neo: "So are you."
27 */
28 sqspell_makePage(_("Personal Dictionary"), null,
29 '<p>' . _("No words in your personal dictionary.")
30 . '</p>');
31 } else {
32 /**
33 * We're loaded with booty.
34 */
35 $pre_msg = '<p>'
36 . _("Please check any words you wish to delete from your dictionary.")
37 . "</p>\n";
38 $pre_msg .= "<table border=\"0\" width=\"95%\" align=\"center\">\n";
39 /**
40 * Get how many dictionaries this user has defined.
41 */
42 $langs=sqspell_getSettings($words);
43 for ($i=0; $i<sizeof($langs); $i++){
44 /**
45 * Get all words from this language dictionary.
46 */
47 $lang_words = sqspell_getLang($words, $langs[$i]);
48 if ($lang_words){
49 /**
50 * There are words in this dictionary. If this is the first
51 * language we're processing, prepend the output with the
52 * "header" message.
53 */
54 if (!isset($msg) || !$msg) {
55 $msg = $pre_msg;
56 }
57 $msg .= "<tr bgcolor=\"$color[0]\" align=\"center\"><th>"
58 . sprintf( _("%s dictionary"), $langs[$i] ) . '</th></tr>'
59 . '<tr><td align="center">'
60 . '<form method="post">'
61 . '<input type="hidden" name="MOD" value="forget_me" />'
62 . '<input type="hidden" name="sqspell_use_app" value="'
63 . $langs[$i] . '" />'
64 . '<table border="0" width="95%" align="center">'
65 . '<tr>'
66 . "<td valign=\"top\">\n";
67 $words_ary=explode("\n", $lang_words);
68 /**
69 * There are two lines we need to remove:
70 * 1st: # Language
71 * last: # End
72 */
73 array_pop($words_ary);
74 array_shift($words_ary);
75 /**
76 * Do some fancy stuff to separate the words into three
77 * columns.
78 */
79 for ($j=0; $j<sizeof($words_ary); $j++){
80 if ($j==intval(sizeof($words_ary)/3)
81 || $j==intval(sizeof($words_ary)/3*2)){
82 $msg .= "</td><td valign=\"top\">\n";
83 }
84 $msg .= "<input type=\"checkbox\" name=\"words_ary[]\" "
85 . 'value="'.htmlspecialchars($words_ary[$j]). '" /> '
86 . htmlspecialchars($words_ary[$j]) . "<br />\n";
87 }
88 $msg .= '</td></tr></table></td></tr>'
89 . "<tr bgcolor=\"$color[0]\" align=\"center\"><td>"
90 . '<input type="submit" value="' . _("Delete checked words")
91 . '" /></form>'
92 . '</td></tr><tr><td><hr />'
93 . "</td></tr>\n";
94 }
95 }
96 /**
97 * Check if all dictionaries were empty.
98 */
99 if (!$msg) {
100 $msg = '<p>' . _("No words in your personal dictionary.") . '</p>';
101 } else {
102 $msg .= '</table>';
103 }
104 sqspell_makePage(_("Edit your Personal Dictionary"), null, $msg);
105 }
106
107 /**
108 * For Emacs weenies:
109 * Local variables:
110 * mode: php
111 * End:
112 * vim: syntax=php
113 */
114
115 ?>