[Web-cyradm] Various Fixes and Changes
Erhard Schwenk
eschwenk@fto.de
Thu Nov 14 21:02:34 CET 2002
--=-UH+afQGWQOofn1kKE9ql
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: quoted-printable
Hello,
The last days, I set up a new Mailserver for some ISP usage. Since we
want to use cyrus imapd and some kind of web administration interface, I
came to web-cyradm.
During setup I made some fixes and additions, and some of them seem
worth to be discussed here or could be integrated in the main branch.
Also, I have a small Problem with german localisation - perhaps someone
can help me.
But from the Beginning:
First of all, there are some Bugs with use of Password encryption. Since
We use mysql encryption (e.g. PASSWORD function in SQL), I just hacked
the sql statements so it is working for me. A real fix will have to make
some if/elseif or select/case.
I found following locations buggy:
auth.inc.php:7 (checking adminuser access)
newadminuser.inc.php:611 (create new adminuser)
Next, there are some typos in locales/de/LC_MESSAGES/web-cyradm.po. In
Germany, we write "Standard". *not* "Standart".=20
And last (but not least) I added a "change password" command to normal
user accounts and made some cosmetic changes (for me) to
editaccount.inc.php:=20
- deleted the column "password" since there is no information in it
(only stars)=20
- deleted the column "username" since this is already readable in the
headline
- moved the used quota amount to top of the table.=20
Of course, this is my personal preference.
To create the "change password" function, I did the following:
changed editaccount.inc.php to the version attached to this mail
created changepass.php - see attachement number two
(I hope, the Listserver allows plain text attachements)
Added to index.php in line 131a:
case "changepass":=20
include ("changepass.php");
break;
I tried to make additional entries to localize the new Strings by adding
them to the .po-file mentioned above and=20
msgfmt -o web-cyradm.mo web-cyradm.po
But that did not succeed - after that, no german was in web-cyradm at
all. Perhaps soeone cann tell me how to do this, I am not (yet ;) a
gettext guru.
Of course, someone will have to go over this work for additional
straightness like doing different password encryption methods, but I
hope this helps anyway and I would like to see this functionality in the
main branch so I wont have to patch myself in the future again and
again.
--=20
Erhard Schwenk
Akkordeonjugend Baden-W=FCrttemberg - http://www.akkordeonjugend.de
--=-UH+afQGWQOofn1kKE9ql
Content-Disposition: attachment; filename=editaccount.php
Content-Type: application/x-php; name=editaccount.php
Content-Transfer-Encoding: base64
ICAgICAgICAgPHRyPgogICAgICAgIDx0ZCB3aWR0aD0iMTAiPiZuYnNwOyA8L3RkPgogICAgICAg
IDx0ZCB2YWxpZ249InRvcCI+Cgo8P3BocAoKICAgICAgICRjeXJfY29ubiA9IG5ldyBjeXJhZG07
CgogICAgICAgJGN5cl9jb25uIC0+IGltYXBfbG9naW4oKTsKCglwcmludCI8aDM+Ii5fKCJFbWFp
bCBhZHJlc3NlcyBkZWZpbmVkIGZvciB1c2VyIikuIiA8Zm9udCBjb2xvcj1yZWQ+Ii4kdXNlcm5h
bWUuIjwvZm9udD48L2gzPiI7CgoJJHF1ZXJ5PSJzZWxlY3QgKiBmcm9tIHZpcnR1YWwgd2hlcmUg
dXNlcm5hbWU9JyR1c2VybmFtZSciOwogICAgICAgICRoYW5kbGU9REI6OmNvbm5lY3QoJERTTiwg
dHJ1ZSk7CiAgICAgICAgJGhuZD0kaGFuZGxlLT5xdWVyeSgkcXVlcnkpOwogICAgICAgICRjbnQ9
JGhuZC0+bnVtUm93cygpOwoJcHJpbnQgIjx0YWJsZSBjZWxsc3BhY2luZz1cIjJcIiBjZWxscGFk
ZGluZz1cIjBcIj48dHI+IjsKICAgICAgICBwcmludCAiPHRkIGNsYXNzPVwibmF2aVwiPiI7Cglw
cmludCAiPGEgaHJlZj1cImluZGV4LnBocD9hY3Rpb249bmV3ZW1haWwmZG9tYWluPSRkb21haW4m
dXNlcm5hbWU9JHVzZXJuYW1lXCI+Ii5fKCJOZXcgZW1haWwgYWRkcmVzcyIpLiI8L2E+IjsJCglw
cmludCAiPC90ZD48dGQgY2xhc3M9XCJuYXZpXCI+IjsKCXByaW50ICI8YSBocmVmPVwiaW5kZXgu
cGhwP2FjdGlvbj1jaGFuZ2VwYXNzJmRvbWFpbj0kZG9tYWluJnVzZXJuYW1lPSR1c2VybmFtZVwi
PiIuXygiQ2hhbmdlIFBhc3N3b3JkIikuIjwvYT4iOwoJcHJpbnQgIjwvdGQ+PC90cj48L3RhYmxl
PjxwPiI7CgoJaWYgKCRET01BSU5fQVNfUFJFRklYKSB7CgkJJHF1b3RhPSAkY3lyX2Nvbm4tPmdl
dHF1b3RhKCJ1c2VyLyR1c2VybmFtZSIpOwoJfQoJZWxzZSB7CgkJJHF1b3RhPSAkY3lyX2Nvbm4t
PmdldHF1b3RhKCJ1c2VyLiR1c2VybmFtZSIpOwoJfQogICAgICAgIGlmICgkcXVvdGFbdXNlZF0h
PSJOT1QtU0VUIil7CiAgCSAgICAgIHByaW50IF8oIlF1b3RhIHVzZWQiKSAuICI6ICI7CiAgICAg
ICAgICAgICAgJHFfdXNlZD0kcXVvdGFbdXNlZF07CiAgICAgICAgICAgICAgJHFfdG90YWw9JHF1
b3RhW3FtYXhdOwogICAgICAgICAgICAgICRxX3BlcmNlbnQ9MTAwKiRxX3VzZWQvJHFfdG90YWw7
CiAgICAgICAgICAgICAgcHJpbnQgJHF1b3RhW3VzZWRdLiIgS2lsb2J5dGVzICIuXygib3V0IG9m
IikuIiAiOwogICAgICAgICAgICAgIHByaW50ICRxdW90YVtxbWF4XS4iIEtpbG9ieXRlcyAoIi4k
cV9wZXJjZW50LiIgJSkiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgCXByaW50IF8oIlF1b3Rh
IG5vdCBzZXQiKTsKICAgICAgICB9CiAgICAgICAgCgoKICAgICAgICAkYj0wOwogICAgICAgIHBy
aW50ICI8cD48dGFibGUgYm9yZGVyPTA+IjsKICAgICAgICBwcmludCAiPHRyPiI7CiAgICAgICAg
cHJpbnQgIjx0aCBjb2xzcGFuPVwiMlwiPiIuXygiYWN0aW9uIikuIjwvdGg+IjsKICAgICAgICBw
cmludCAiPHRoPiIuXygiRW1haWwgYWRkcmVzcyIpLiI8L3RoPiI7CiAgICAgICAgcHJpbnQgIjwv
dHI+IjsKCgogICAgICAgIGZvciAoJGM9MDskYzwkY250OyRjKyspewoKICAgICAgICAgIGlmICgk
Yj09MCl7CgkJJGNzc3Jvdz0icm93MSI7CiAgICAgICAgICAgICRiPTE7CiAgICAgICAgICB9CiAg
ICAgICAgICBlbHNlewoJCSRjc3Nyb3c9InJvdzIiOwogICAgICAgICAgICAkYj0wOwogICAgICAg
ICAgfQoJICAkcm93PSRobmQtPmZldGNoUm93KERCX0ZFVENITU9ERV9BU1NPQywgJGMpOwoJICAk
YWxpYXM9JHJvd1snYWxpYXMnXTsJCiAgICAgICAgICBwcmludCAiPHRyIGNsYXNzPVwiJGNzc3Jv
d1wiPiBcbiI7CiAgCSAgcHJpbnQgIjx0ZD48YSBocmVmPVwiaW5kZXgucGhwP2FjdGlvbj1lZGl0
ZW1haWwmZG9tYWluPSRkb21haW4mYWxpYXM9JGFsaWFzJnVzZXJuYW1lPSR1c2VybmFtZVwiPiIu
XygiRWRpdCBFbWFpbGFkcmVzcyIpLiI8L2E+PC90ZD4gXG4iOwogICAgICAgICAgcHJpbnQgIjx0
ZD48YSBocmVmPVwiaW5kZXgucGhwP2FjdGlvbj1kZWxldGVlbWFpbCZkb21haW49JGRvbWFpbiZh
bGlhcz0kYWxpYXMmdXNlcm5hbWU9JHVzZXJuYW1lXCI+Ii5fKCJEZWxldGUgRW1haWxhZHJlc3Mi
KS4iPC9hPjwvdGQ+IFxuIjsKICAgICAgICAgIHByaW50ICI8dGQ+IjsKCSAgcHJpbnQgJGFsaWFz
OwogICAgICAgICAgcHJpbnQgIjwvdGQ+XG4iOwoKLy8JICBpZiAoJGM9PTApIHsKLy8JCXByaW50
ICI8dGQgcm93c3Bhbj1cIiRjbnRcIj4iOwovLwkgICAgICAgIHByaW50ICRyb3dbJ2Rlc3QnXTsK
Ly8JICAgICAgICBwcmludCAkcm93WycxJ107Ci8vCQlwcmludCAiPC90ZD5cbjwvdHI+IjsKLy8J
ICB9CgkKCXByaW50ICI8L3RyPlxuIjsKCiAgICAgICAgfQogICAgICAgIHByaW50ICI8L3RhYmxl
PiI7CiAgICAgICAgCgoKCj8+CjwvdGQ+PC90cj4KCgo=
--=-UH+afQGWQOofn1kKE9ql
Content-Disposition: attachment; filename=changepass.php
Content-Type: application/x-php; name=changepass.php
Content-Transfer-Encoding: base64
ICAgICAgICAgIDx0cj4KICAgICAgICA8dGQgd2lkdGg9IjEwIj4mbmJzcDsgPC90ZD4KICAgICAg
ICA8dGQgdmFsaWduPSJ0b3AiPgoKPD9waHAKCmlmICghJGNvbmZpcm1lZCB8fCAoJHBhc3N3b3Jk
ICE9ICRwYXNzd29yZDIpICl7Cgo/Pgo8P3BocCAKCiAgcHJpbnQgIjxoMz4iIC4gXygiQ2hhbmdl
IFBhc3N3b3JkIGZvciB1c2VyICIpIC4gIjxmb250IGNvbG9yPXJlZD4kdXNlcm5hbWU8L2ZvbnQ+
PC9oMz4iOyAKCiAgaWYgKCRwYXNzd29yZCAhPSAkcGFzc3dvcmQyKSB7CiAgICBwcmludCAiPGgz
PiIgLiBfKCJQYXNzd29yZHMgZG8gbm90IG1hdGNoIikgLiAiPC9oMz4iOwogIH0KPz4KCjxmb3Jt
IGFjdGlvbj0iaW5kZXgucGhwIj4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iYWN0aW9uIiB2
YWx1ZT0iY2hhbmdlcGFzcyI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImNvbmZpcm1lZCIg
dmFsdWU9InRydWUiPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJkb21haW4iIHZhbHVlPSI8
P3BocCBwcmludCAkZG9tYWluPz4iPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ1c2VybmFt
ZSIgdmFsdWU9Ijw/cGhwIHByaW50ICR1c2VybmFtZT8+Ij4KPGlucHV0IHR5cGU9ImhpZGRlbiIg
bmFtZT0iYWxpYXMiIHZhbHVlPSI8P3BocCBwcmludCAkYWxpYXM/PiI+Cgo8dGFibGU+Cjx0cj4K
PHRkIHdpZHRoPTE1MD48P3BocCBwcmludCBfKCJOZXcgUGFzc3dvcmQiKSA/PjwvdGQ+Cjx0ZD48
P3BocCBwcmludCAiPGlucHV0IHR5cGU9XCJwYXNzd29yZFwiIHNpemU9XCIzMFwiIG5hbWU9XCJw
YXNzd29yZFwiIHZhbHVlPVwiXCI+IjsgPz48L3RkPgo8L3RyPgo8dHI+Cjx0ZCB3aWR0aD0iMTUw
Ij48P3BocCBwcmludCBfKCJDb25maXJtIikgPz48L3RkPgo8dGQ+PD9waHAgZWNobyAiPGlucHV0
IHR5cGU9XCJwYXNzd29yZFwiIHNpemU9XCIzMFwiIG5hbWU9XCJwYXNzd29yZDJcIiB2YWx1ZT1c
IlwiPiI7ID8+PC90ZD4KPC90cj4KPC90YWJsZT4KPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0i
Y29uZmlybWVkIiB2YWx1ZT0iPD9waHAgcHJpbnQgXygiQ2hhbmdlIFBhc3N3b3JkIikgPz4iPgo8
aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJjYW5jZWwiIHZhbHVlPSI8P3BocCBwcmludCBfKCJD
YW5jZWwiKSA/PiI+CjwvZm9ybT4KCgoKCjw/cGhwCgp9CgplbHNlIGlmICgkY2FuY2VsKXsKCXBy
aW50ICI8aDM+Ii5fKCJBY3Rpb24gY2FuY2VsbGVkLCBub3RoaW5nIGNoYW5nZWQiKS4iPC9oMz4i
OwoJaW5jbHVkZSAoImVkaXRhY2NvdW50LnBocCIpOwp9CgplbHNlewoKJGhhbmRsZT1EQjo6Y29u
bmVjdCgkRFNOLCB0cnVlKTsKJHF1ZXJ5PSJ1cGRhdGUgYWNjb3VudHVzZXIgc2V0IHBhc3N3b3Jk
PVBBU1NXT1JEKCckcGFzc3dvcmQnKSB3aGVyZSB1c2VybmFtZT0nJHVzZXJuYW1lJyI7CiRyZXN1
bHQ9JGhhbmRsZS0+cXVlcnkoJHF1ZXJ5KTsKCmluY2x1ZGUgKCJlZGl0YWNjb3VudC5waHAiKTsK
Cgp9CgoKPz4KPC90ZD48L3RyPg==
--=-UH+afQGWQOofn1kKE9ql--
More information about the Web-cyradm
mailing list