You can subscribe to this list here.
2012 |
Jan
|
Feb
(214) |
Mar
(139) |
Apr
(198) |
May
(187) |
Jun
(151) |
Jul
(210) |
Aug
(169) |
Sep
(58) |
Oct
(53) |
Nov
(54) |
Dec
(301) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2013 |
Jan
(348) |
Feb
(178) |
Mar
(219) |
Apr
(154) |
May
(117) |
Jun
(194) |
Jul
(61) |
Aug
(132) |
Sep
(121) |
Oct
(110) |
Nov
(11) |
Dec
(18) |
2014 |
Jan
(34) |
Feb
(50) |
Mar
(82) |
Apr
(98) |
May
(39) |
Jun
(111) |
Jul
(67) |
Aug
(36) |
Sep
(33) |
Oct
(26) |
Nov
(53) |
Dec
(44) |
2015 |
Jan
(29) |
Feb
(47) |
Mar
(25) |
Apr
(19) |
May
(23) |
Jun
(20) |
Jul
(49) |
Aug
(7) |
Sep
(10) |
Oct
(10) |
Nov
(4) |
Dec
(25) |
2016 |
Jan
(8) |
Feb
(7) |
Mar
(1) |
Apr
|
May
(3) |
Jun
|
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
(7) |
Dec
(5) |
2017 |
Jan
(4) |
Feb
|
Mar
|
Apr
|
May
(15) |
Jun
|
Jul
(18) |
Aug
(24) |
Sep
|
Oct
(14) |
Nov
|
Dec
|
2018 |
Jan
|
Feb
(22) |
Mar
|
Apr
(11) |
May
(1) |
Jun
(17) |
Jul
(2) |
Aug
(2) |
Sep
|
Oct
(6) |
Nov
(5) |
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(2) |
From: <chr...@us...> - 2019-12-29 12:52:35
|
Revision: 13402 http://sourceforge.net/p/xoops/svn/13402 Author: chronolabscoop Date: 2019-12-29 12:51:37 +0000 (Sun, 29 Dec 2019) Log Message: ----------- Next generation of Email-API-PHP -- Not completely finished! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/LICENSE *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/.htaccess *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/activation.html.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/activation.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/callback.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/help.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/index.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/peers.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/api/uploading.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/apiconfig.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/css/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/css/gradients.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/css/shadowing.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/css/style.css *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/.~lock.csv-prop-spreedsheet.ods# *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.ods *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.xlsx *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/index.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/jquery.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/index.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.form.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.jgrowl.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.lightbox.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.tablesorter.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.ui.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.afm *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.bin *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.cef *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.cff *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.dfont *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.eot *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.fon *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.gai *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.gsf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.hqx *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ik *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.mf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.otf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pcf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pf3 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pfa *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pfb *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pmf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pt3 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.sfd *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.svg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.t42 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttd *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufm *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/feature.fea *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/fontinfo.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_ring.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/B_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/C_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/C_cedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/D_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_th.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/F_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/G_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/H_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/J_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/K_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/L_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/M_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/N_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/N_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/P_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Q_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/R_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/S_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/T_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/T_horn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/V_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/W_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/X_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Y_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Y_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Z_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/_notdef.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/_null.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/a.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/aacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/acircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/adieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ae.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/afii10050.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/agrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ampersand.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/aring.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asciicircum.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asciitilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asterisk.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/at.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/atilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/b.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/backslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/braceleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/braceright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bracketleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bracketright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/c.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ccedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/cedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/cent.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/colon.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/comma.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/contents.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/copyright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/currency.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/d.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/degree.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/dollar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/e.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ecircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/edieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/egrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eight.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/equal.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eth.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/exclam.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/exclamdown.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/f.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/five.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/florin.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/four.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/g.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/germandbls.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/glyph4.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/greater.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/guillemotleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/guillemotright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/h.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/hyphen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/i.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/iacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/icircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/idieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/igrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/j.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/k.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/l.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/less.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/m.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/n.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/nine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/nonmarkingreturn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ntilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/numbersign.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/o.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ocircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/odieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oe.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ograve.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/one.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ordmasculine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/otilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/p.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/parenleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/parenright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/percent.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/period.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/perthousand.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/plus.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/q.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/question.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/questiondown.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedbl.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblbase.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quoteleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quoteright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotesinglbase.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotesingle.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/r.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/registered.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/s.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/semicolon.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/seven.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/six.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/space.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/sterling.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/t.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/thorn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/three.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/trademark.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/two.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/u.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/uacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ucircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/udieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ugrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/underscore.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/v.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/w.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/x.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/y.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/yacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ydieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/yen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/z.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/zero.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/groups.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/kerning.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/metainfo.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.woff *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LICENSE *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/Preview for LHF Matthews Thin.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/lhf matthews thin.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/lhf matthews thin.z *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-barcode-gayqi.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-referee-isiweowakiakeg.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-resource.json *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/index.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/style.css *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/LICENSE *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.afm *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.bin *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.cef *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.cff *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.dfont *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.eot *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.fon *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.gai *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.gsf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.hqx *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ik *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.mf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.otf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pcf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pf3 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pfa *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pfb *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pmf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pt3 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.sfd *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.svg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.t42 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ttd *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ttf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ttg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufm *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/feature.fea *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/fontinfo.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_ring.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/B_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/C_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/C_cedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/D_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_th.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/F_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/G_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/G_breve.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/H_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/J_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/K_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/L_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/L_slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/M_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/N_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/N_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/P_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Q_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/R_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/S_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/S_caron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/T_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/T_horn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/V_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/W_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/X_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Z_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Z_caron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/_notdef.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/_null.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/a.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/aacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/acircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/adieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ae.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/agrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ampersand.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/apple.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/aring.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asciicircum.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asciitilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asterisk.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/at.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/atilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/b.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/backslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/braceleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/braceright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bracketleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bracketright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/brokenbar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bullet.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/c.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/caron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ccaron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ccedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/cedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/cent.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/colon.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/comma.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/contents.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/copyright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/currency.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/d.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dagger.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/daggerdbl.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dcroat.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/degree.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/divide.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dollar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dotlessi.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/e.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ecircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/edieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/egrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eight.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ellipsis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/emdash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/endash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/equal.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eth.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/exclam.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/exclamdown.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/f.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/fi.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/five.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/fl.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/florin.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/four.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/g.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/gbreve.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/germandbls.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph111.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph112.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph113.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph114.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph227.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph228.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph98.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph99.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/greater.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guillemotleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guillemotright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guilsinglleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guilsinglright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/h.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/hyphen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/i.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/iacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/icircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/idieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/igrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/j.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/k.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/l.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/less.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/logicalnot.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/lslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/m.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/macron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/minus.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/mu.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/multiply.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/n.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nonbreakingspace.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nonmarkingreturn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ntilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/numbersign.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/o.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ocircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/odieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oe.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ograve.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/one.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onehalf.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onequarter.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onesuperior.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ordfeminine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ordmasculine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/otilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/p.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/paragraph.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/parenleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/parenright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/percent.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/period.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/periodcentered.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/perthousand.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/plus.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/plusminus.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/q.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/question.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/questiondown.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedbl.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblbase.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quoteleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quoteright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotesinglbase.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotesingle.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/r.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/registered.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/s.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/scaron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/section.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/semicolon.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/seven.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/sfthyphen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/six.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/space.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/sterling.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/t.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/thorn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/three.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/threequarters.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/threesuperior.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/trademark.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/two.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/twosuperior.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/u.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/uacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ucircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/udieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ugrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/underscore.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/v.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/w.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/x.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/La... [truncated message content] |
From: <chr...@us...> - 2019-12-18 11:53:50
|
Revision: 13401 http://sourceforge.net/p/xoops/svn/13401 Author: chronolabscoop Date: 2019-12-18 11:53:09 +0000 (Wed, 18 Dec 2019) Log Message: ----------- XOOPS 2.6 - Composer Third Party - Resources! Added Paths: ----------- ThirdParty/composer/ ThirdParty/composer/XOOPS 2.6/ ThirdParty/composer/XOOPS 2.6/composer.json ThirdParty/composer/XOOPS 2.6/composer.json.dist ThirdParty/composer/XOOPS 2.6/composer.lock ThirdParty/composer/XOOPS 2.6/console/ ThirdParty/composer/XOOPS 2.6/console/Commands/ ThirdParty/composer/XOOPS 2.6/console/Commands/ActivateModuleCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/CiBootstrapCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/CiInstallCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/DeactivateModuleCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/InstallModuleCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/RenameSystemTablesCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/SetConfigCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/TestCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/UninstallModuleCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/UpdateModuleCommand.php ThirdParty/composer/XOOPS 2.6/console/Commands/Utf8mb4ModuleCommand.php ThirdParty/composer/XOOPS 2.6/console/Library/ ThirdParty/composer/XOOPS 2.6/console/Library/SimpleContainer.php ThirdParty/composer/XOOPS 2.6/console/Library/XCApplication.php ThirdParty/composer/XOOPS 2.6/console/config.php ThirdParty/composer/XOOPS 2.6/console/console.php ThirdParty/composer/XOOPS 2.6/extras/ ThirdParty/composer/XOOPS 2.6/extras/altsys_functions.php ThirdParty/composer/XOOPS 2.6/extras/altsys_functions.txt ThirdParty/composer/XOOPS 2.6/extras/login.php ThirdParty/composer/XOOPS 2.6/extras/mainfile.php ThirdParty/composer/XOOPS 2.6/tests/ ThirdParty/composer/XOOPS 2.6/tests/unit/ ThirdParty/composer/XOOPS 2.6/tests/unit/.htaccess_save ThirdParty/composer/XOOPS 2.6/tests/unit/bootstrap.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/cache/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/cache/apcTest_.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/cache/fileTest_.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/cache/memcacheTest_.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/cache/modelTest_.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/cache/xcacheTest_.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/cache/xoopscacheTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/config.imageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/config.recaptchaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/config.textTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/configTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/image/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/image/scripts/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/image/scripts/imageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/image/scripts/imageclassTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/imageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/recaptcha/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/recaptcha/recaptchalibTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/recaptchaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/textTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/xoopscaptchaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/captcha/xoopscaptchamethodTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/class.tarTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/class.zipfileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/criteriaCompoTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/criteriaElementTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/criteriaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/database/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/database/databaseTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/database/databasefactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/database/managerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/database/mysqldatabaseTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/database/mysqldatabaseproxyTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/database/mysqldatabasesafeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/database/sqlutilityTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/downloaderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/file/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/file/fileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/file/folderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/file/xoopsfileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/logger/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/logger/xoopsloggerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/module.textsanitizerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/pagenavTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/preloadItemTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/preloadTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/tardownloaderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/templateTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/themeFactoryAdminTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/themeFactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/themeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/theme_blocksTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/treeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/uploaderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/userutilityTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/utility/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/utility/xoopsutilityTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/vendor/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/vendor/snoopyTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/bloggerapiTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/metaweblogapiTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/movabletypeapiTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcapiTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserArrayHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserBase64HandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserBooleanHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserDateTimeHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserDoubleHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserIntHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserMemberHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserMethodNameHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserNameHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserStringHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserStructHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpcparserValueHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagArrayTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagBase64Test.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagBooleanTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagDatetimeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagDocumentTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagDoubleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagFaultTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagIntTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagRequestTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagResponseTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagStringTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagStructTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xmlrpctagTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/rpc/xoopsapiTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetAuthorHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetDateCreatedHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetDescriptionHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetEmailHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetFileTypeHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetGeneratorHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetImageHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetLinkHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetModuleHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetNameHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetTagHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xml/themesetparserThemeSetTemplateHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/dhtmltextarea/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/dhtmltextarea/dhtmltextareaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/dhtmltextarea/editor_registryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/textarea/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/textarea/editor_registryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/textarea/textareaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/xoopseditorHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopseditor/xoopseditorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsfilterinputTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/ ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formbuttonTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formbuttontrayTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formcaptchaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formcheckboxTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formcolorpickerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formdatetimeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formdhtmltextareaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formeditorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formelementTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formelementtrayTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formfileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formhiddenTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formhiddentokenTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formlabelTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formpasswordTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formradioTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formradioynTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselectTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselectcheckgroupTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselectcountryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselecteditorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselectgroupTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselectlangTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselectmatchoptionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselectthemeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselecttimezoneTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formselectuserTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formtextTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formtextareaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/formtextdateselectTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/grouppermformTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/simpleformTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/tableformTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsform/themeformTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopslistsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsloadTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsmailerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsmultimailerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopsrequestTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/xoopssecurityTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/class/zipdownloaderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/common_phpunit.php ThirdParty/composer/XOOPS 2.6/tests/unit/init_new.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/ ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/blockHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/blockTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/blockmodulelinkHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/blockmodulelinkTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/configHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/configitemHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/configitemTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/configoptionHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/configoptionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/groupHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/groupTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/grouppermHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/grouppermTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/memberTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/membershipHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/membershipTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/moduleHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/moduleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/objectHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/objectTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/objectpersistableHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/onlineHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/onlineTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/privmessageHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/privmessageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/tplfileHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/tplfileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/tplsetHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/tplsetTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/userHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/kernel/userTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/testClass.xml ThirdParty/composer/XOOPS 2.6/tests/unit/testKernel.xml ThirdParty/composer/XOOPS 2.6/tests/unit/testXoopsLib.xml ThirdParty/composer/XOOPS 2.6/tests/unit/verifyTestFiles.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/AssertTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Database/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Database/MigrateTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Database/TableLoadTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Database/TablesTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/DebugTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/FilterInputTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/HighlighterTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/IPAddressTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Jwt/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Jwt/JsonWebTokenTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Jwt/KeyFactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Jwt/TokenFactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Jwt/TokenReaderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Key/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Key/ArrayStorageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Key/BasicTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Key/FileStorageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Key/KeyAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Key/StorageInterfaceTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/LanguageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/MetagenTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/AdminTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/Helper/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/Helper/AbstractHelperTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/Helper/CacheTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/Helper/GenericHelperTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/Helper/PermissionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/Helper/SessionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/Module/HelperTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/RandomTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/RequestTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/StopWordsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/UuidTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xmf/YamlTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Auth/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Auth/AdsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Auth/AuthAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Auth/FactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Auth/LdapTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Auth/ProvisioningTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Auth/XoopsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/CacheTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/AssetsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Cache/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Cache/AccessTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Cache/CacheManagerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Cache/DriverListTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Cache/LegacyTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/ConnectionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/FactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/Logging/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/Logging/XoopsDebugStackTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/QueryBuilderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/Schema/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/Schema/ExportVisitorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/Schema/ImportSchemaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/Schema/PrefixStripperTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Database/Schema/RemovePrefixesTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/EventsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Exception/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Exception/InvalidHandlerSpecExceptionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Exception/NoHandlerExceptionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Exception/NotSupportedExceptionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/FilterInputTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/FixedGroupsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Handler/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Handler/FactorySpecTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Handler/FactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Handler/Scheme/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Handler/Scheme/FQNTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Handler/Scheme/KernelTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Handler/Scheme/LegacyModuleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Handler/Scheme/SchemeInterfaceTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/HttpRequestTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/CriteriaCompoTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/CriteriaElementTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/CriteriaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeArrayTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeDateTimeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeDecimalTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeEmailTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeEnumerationTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeFloatTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeIntTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeJsonTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeMoneyTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeOtherTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeSimpleTimeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeSourceTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeTextAreaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeTextBoxTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeTimeZoneTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Dtype/DtypeUrlTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/DtypeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsBlockHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsBlockModuleLinkHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsBlockModuleLinkTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsBlockTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsConfigHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsConfigItemHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsConfigItemTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsConfigOptionHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsConfigOptionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsGroupHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsGroupPermHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsGroupPermTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsGroupTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsMemberHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsMembershipHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsMembershipTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsModuleHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsModuleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsOnlineHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsOnlineTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsPrivateMessageHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsPrivateMessageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsTplFileHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsTplFileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsTplSetHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsTplSetTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsUserHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Handlers/XoopsUserTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Model/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Model/JointTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Model/ReadTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Model/StatsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Model/SyncTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/Model/WriteTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/XoopsModelAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/XoopsModelFactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/XoopsObjectHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/XoopsObjectTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Kernel/XoopsPersistableObjectHandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/CountryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/DirectoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/EditorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/FileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/HtmlFileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/ImageFileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/ListAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/LocaleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/ModuleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/MonthTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/SubSetTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/SubjectIconTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/ThemeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/TimeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Lists/TimeZoneTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Locale/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Locale/LegacyCodesTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Locale/TimeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/LoggerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/MediaUploaderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/MimeTypesTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/ObjectTreeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/PreloadItemTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Psr0ClassLoaderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Psr4ClassLoaderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/RegistryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/RequestTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/SecurityTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/AbstractContractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/Data/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/Data/EmailAddressListTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/Data/EmailAddressTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/Data/EmailAttachmentSetTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/Data/EmailAttachmentTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/Data/EmailTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/Data/MessageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/Data/test.png ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/ManagerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/NullProviderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/ProviderTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Service/ResponseTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Session/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Session/FingerprintTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Session/HandlerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Session/ManagerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Session/RememberMeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Session/SessionUserTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/ConfigurationAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/ConfigurationTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/DefaultConfigurationTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/ExtensionAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/CensorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/ClickableTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/EmbedTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/FlashTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/IframeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/ImageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/MmsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/Mp3Test.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/QuoteTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/RtspTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/SoundCloudTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/SyntaxHighlightTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/TextFilterTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/UnorderedListTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/WikiTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/WmpTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/XoopsCodeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/XssTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/Extensions/YouTubeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/FilterAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/NullExtensionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/NullFilterTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/SanitizerComponentTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/Sanitizer/SanitizerConfigurableTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/SanitizerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Text/ShortCodesTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Theme/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Theme/AdminFactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Theme/FactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Theme/NullThemeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Theme/PluginAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Theme/Plugins/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Theme/Plugins/BlocksTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/Theme/XoopsThemeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/XoopsArrayTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Core/XoopsTplTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/BlockFormTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ButtonTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ButtonTrayTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/CaptchaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/CheckboxTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ColorPickerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ContainerInterfaceTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/DateSelectTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/DateTimeSelectTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/DhtmlTextAreaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/EditorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ElementFactoryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ElementTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ElementTrayTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/FileTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/FormTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/GroupCheckboxTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/GroupFormCheckboxTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/GroupPermissionFormTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/HiddenTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/LabelTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/MailTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/OptionElementTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/PasswordTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/RadioTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/RadioYesNoTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/RawTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectCountryTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectEditorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectGroupTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectLanguageTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectLocaleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectMatchOptionTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectThemeTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectTimeZoneTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SelectUserTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/SimpleFormTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/TabTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/TabTrayTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/TableFormTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/TextAreaTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/TextTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/ThemeFormTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/TokenTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Form/UrlTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/AttributesTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/ButtonTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/ImgTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/DividerTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/ItemListTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/ItemTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/LinkTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/Render/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/Render/BreadCrumbTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/Render/DropDownButtonTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Html/Menu/Render/RenderAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Locale/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Locale/AbstractLocaleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Locale/Mailer/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Locale/Mailer/AbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Locale/MessageFormatterTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/LocaleTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/AdminTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/Helper/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/Helper/DummyTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/Helper/HelperAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/HelperTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/Plugin/ ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/Plugin/ConfigCollectorTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/Plugin/PluginAbstractTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/Module/PluginTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/Xoops/UtilsTest.php ThirdParty/composer/XOOPS 2.6/tests/unit/xoopsLib/XoopsTest.php ThirdParty/composer/XOOPS 2.6/xoops_data/ ThirdParty/composer/XOOPS 2.6/xoops_data/.htaccess ThirdParty/composer/XOOPS 2.6/xoops_data/caches/ ThirdParty/composer/XOOPS 2.6/xoops_data/caches/index.html ThirdParty/composer/XOOPS 2.6/xoops_data/caches/smarty_cache/ ThirdParty/composer/XOOPS 2.6/xoops_data/caches/smarty_cache/index.html ThirdParty/composer/XOOPS 2.6/xoops_data/caches/smarty_compile/ ThirdParty/composer/XOOPS 2.6/xoops_data/caches/smarty_compile/index.html ThirdParty/composer/XOOPS 2.6/xoops_data/caches/xoops_cache/ ThirdParty/composer/XOOPS 2.6/xoops_data/caches/xoops_cache/index.html ThirdParty/composer/XOOPS 2.6/xoops_data/configs/ ThirdParty/composer/XOOPS 2.6/xoops_data/configs/index.html ThirdParty/composer/XOOPS 2.6/xoops_data/configs/system_configs.php ThirdParty/composer/XOOPS 2.6/xoops_data/data/ ThirdParty/composer/XOOPS 2.6/xoops_data/data/.htaccess ThirdParty/composer/XOOPS 2.6/xoops_data/data/index.html ThirdParty/composer/XOOPS 2.6/xoops_data/data/secure.dist.php ThirdParty/composer/XOOPS 2.6/xoops_data/index.html ThirdParty/composer/XOOPS 2.6/xoops_data/logs/ ThirdParty/composer/XOOPS 2.6/xoops_data/logs/.htaccess ThirdParty/composer/XOOPS 2.6/xoops_data/logs/index.html ThirdParty/composer/XOOPS 2.6/xoops_data/readme.txt ThirdParty/composer/XOOPS 2.6/xoops_data/stash/ ThirdParty/composer/XOOPS 2.6/xoops_data/stash/index.html ThirdParty/composer/XOOPS 2.6/xoops_lib/ ThirdParty/composer/XOOPS 2.6/xoops_lib/.htaccess ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Assert.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Database/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Database/Migrate.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Database/TableLoad.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Database/Tables.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Database/index.html ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Debug.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/FilterInput.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Highlighter.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/IPAddress.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Jwt/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Jwt/JsonWebToken.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Jwt/KeyFactory.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Jwt/TokenFactory.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Jwt/TokenReader.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Key/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Key/ArrayStorage.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Key/Basic.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Key/FileStorage.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Key/KeyAbstract.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Key/StorageInterface.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Language.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Metagen.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/Admin.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/Helper/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/Helper/AbstractHelper.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/Helper/Cache.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/Helper/GenericHelper.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/Helper/Permission.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/Helper/Session.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/Helper.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Module/index.html ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Random.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Request.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/StopWords.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Uuid.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/Yaml.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xmf/index.html ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Auth/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Auth/Ads.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Auth/AuthAbstract.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Auth/Factory.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Auth/Ldap.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Auth/Provisioning.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Auth/Xoops.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Auth/index.html ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Cache.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Assets.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/AttributeInterface.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Cache/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Cache/Access.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Cache/CacheManager.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Cache/DriverList.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Cache/Legacy.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Connection.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Factory.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Logging/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Logging/XoopsDebugStack.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/QueryBuilder.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Schema/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Schema/ExportVisitor.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Schema/ImportSchema.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Schema/PrefixStripper.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Database/Schema/RemovePrefixes.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Events.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Exception/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Exception/InvalidHandlerSpecException.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Exception/NoHandlerException.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Exception/NotSupportedException.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/FilterInput.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/FixedGroups.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Handler/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Handler/Factory.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Handler/FactorySpec.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Handler/Scheme/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Handler/Scheme/FQN.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Handler/Scheme/Kernel.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Handler/Scheme/LegacyModule.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Handler/Scheme/SchemeInterface.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/HttpRequest.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Criteria.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/CriteriaCompo.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/CriteriaElement.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeAbstract.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeArray.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeDateTime.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeDecimal.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeEmail.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeEnumeration.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeFloat.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeInt.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeJson.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeMoney.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeOther.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeSimpleTime.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeSource.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeTextArea.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeTextBox.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeTimeZone.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/DtypeUrl.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype/index.html ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Dtype.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsBlock.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsBlockHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsBlockModuleLink.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsBlockModuleLinkHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsConfigHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsConfigItem.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsConfigItemHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsConfigOption.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsConfigOptionHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsGroup.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsGroupHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsGroupPerm.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsGroupPermHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsMemberHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsMembership.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsMembershipHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsModule.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsModuleHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsOnline.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsOnlineHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsPrivateMessage.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsPrivateMessageHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsTplFile.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsTplFileHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsTplSet.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsTplSetHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsUser.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Handlers/XoopsUserHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Model/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Model/Joint.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Model/Read.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Model/Stats.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Model/Sync.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Model/Write.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/Model/index.html ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/XoopsModelAbstract.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/XoopsModelFactory.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/XoopsObject.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/XoopsObjectHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/XoopsPersistableObjectHandler.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Kernel/index.html ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/Country.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/Directory.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/Editor.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/File.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/HtmlFile.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/ImageFile.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/ListAbstract.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/Locale.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/Module.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/Month.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/SubSet.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/SubjectIcon.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/Theme.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/Time.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Lists/TimeZone.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Locale/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Locale/LegacyCodes.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Locale/Punic/ ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Locale/Punic/Calendar.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Locale/Time.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/Logger.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/MediaUploader.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/MimeTypes.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/ObjectTree.php ThirdParty/composer/XOOPS 2.6/xoops_lib/Xoops/Core/PreloadItem.php ThirdParty/composer/XOOPS 2.6/xoop... [truncated message content] |
From: <chr...@us...> - 2019-04-28 16:27:50
|
Revision: 13400 http://sourceforge.net/p/xoops/svn/13400 Author: chronolabscoop Date: 2019-04-28 16:27:43 +0000 (Sun, 28 Apr 2019) Log Message: ----------- Email API PHP version 1.1.11! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/help.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Precise (12.04)/smtp.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Trusty (14.04)/smtp.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/json.getconfig.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/.~lock.csv-prop-spreedsheet.ods# *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.ods *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.xlsx *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/class/csv.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/generate-aliases-keys.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/new-alias-service.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/license.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.groups.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/uploading.php Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess 2019-04-28 16:27:43 UTC (rev 13400) @@ -12,6 +12,7 @@ RewriteRule ^v([0-9]{1,2})/callback.api ./callback.php?version=$1&mode=callback [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-zA-Z])/callback.api ./callback.php?version=$1&mode=$2 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-zA-Z])/([0-9a-z]{32})/callback.api ./callback.php?version=$1&mode=$2&key=$3 [L,NC,QSA] +RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/uploading.api ./uploading.php?version=$1&authkey=$2 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/authkey.api ./index.php?version=$1&mode=authkey [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/pgpkey.api ./index.php?version=$1&mode=pgpkey [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z])/activation.html ./activation.php?version=$1&mode=activation&emailkey=$2&actkey=$3 [L,NC,QSA] Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2019-04-28 16:27:43 UTC (rev 13400) @@ -2,9 +2,9 @@ # Emails/Aliases Account's Propogation REST API Services -## Version: 1.0.7 (stable) +## Version: 1.1.11 (stable) -### Author: Dr. Simon Antony Roberts <simon@ordinance.space> +### Author: Dr. Simon Antony Roberts <wis...@us...> #### Demo: http://emails.snails.email @@ -34,6 +34,7 @@ RewriteRule ^v([0-9]{1,2})/callback.api ./callback.php?version=$1&mode=callback [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-zA-Z])/callback.api ./callback.php?version=$1&mode=$2 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-zA-Z])/([0-9a-z]{32})/callback.api ./callback.php?version=$1&mode=$2&key=$3 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/uploading.api ./uploading.php?version=$1&authkey=$2 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/authkey.api ./index.php?version=$1&mode=authkey [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/pgpkey.api ./index.php?version=$1&mode=pgpkey [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z])/activation.html ./activation.php?version=$1&mode=activation&emailkey=$2&actkey=$3 [L,NC,QSA] @@ -61,6 +62,7 @@ */11 */7 * * * /usr/bin/php /var/www/emails.snails.email/crons/peer-services.php */11 */7 * * * /usr/bin/php /var/www/emails.snails.email/crons/get-spam-training.php */5 * * * * sh /var/www/emails.snails.email/crons/*.sh + */23 * * * * /usr/bin/php /var/www/emails.snails.email/crons/generate-alias-keys.php ## Licensing Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/.~lock.csv-prop-spreedsheet.ods# =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/.~lock.csv-prop-spreedsheet.ods# (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/.~lock.csv-prop-spreedsheet.ods# 2019-04-28 16:27:43 UTC (rev 13400) @@ -0,0 +1 @@ +,antiquith,asquith,26.01.2019 02:31,file:///home/antiquith/.config/libreoffice/4; \ No newline at end of file Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/.~lock.csv-prop-spreedsheet.ods# ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.ods =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.ods =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.ods 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.ods 2019-04-28 16:27:43 UTC (rev 13400) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.ods ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.xlsx =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.xlsx =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.xlsx 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.xlsx 2019-04-28 16:27:43 UTC (rev 13400) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/docs/csv-prop-spreedsheet.xlsx ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/class/csv.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/class/csv.php (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/class/csv.php 2019-04-28 16:27:43 UTC (rev 13400) @@ -0,0 +1,93 @@ +<?php +/** + * DNS Zone Propogation REST Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright Chronolabs Cooperative http://syd.au.snails.email + * @license ACADEMIC APL 2 (https://sourceforge.net/u/chronolabscoop/wiki/Academic%20Public%20License%2C%20version%202.0/) + * @license GNU GPL 3 (http://www.gnu.org/licenses/gpl.html) + * @package emails-api + * @since 1.0.3 + * @author Dr. Simon Antony Roberts <simon@snails.email> + * @version 1.0.3 + * @description A REST API for the creation and management of emails/forwarders and domain name parks for email + * @link http://internetfounder.wordpress.com + * @link https://github.com/Chronolabs-Cooperative/Emails-API-PHP + * @link https://sourceforge.net/p/chronolabs-cooperative + * @link https://facebook.com/ChronolabsCoop + * @link https://twitter.com/ChronolabsCoop + * + */ + +class CSV +{ + private $fp; + private $parse_header; + private $header; + private $delimiter; + private $length; + + function __construct($file_name, $parse_header=false, $delimiter="\t", $length=8000) + { + $this->fp = fopen($file_name, "r"); + $this->parse_header = $parse_header; + $this->delimiter = $delimiter; + $this->length = $length; + $this->lines = $lines; + + if ($this->parse_header) + { + $this->header = fgetcsv($this->fp, $this->length, $this->delimiter); + } + + } + //-------------------------------------------------------------------- + function __destruct() + { + if ($this->fp) + { + fclose($this->fp); + } + } + //-------------------------------------------------------------------- + function get($max_lines=0) + { + //if $max_lines is set to 0, then get all the data + + $data = array(); + + if ($max_lines > 0) + $line_count = 0; + else + $line_count = -1; // so loop limit is ignored + + while ($line_count < $max_lines && ($row = fgetcsv($this->fp, $this->length, $this->delimiter)) !== FALSE) + { + if ($this->parse_header) + { + foreach ($this->header as $i => $heading_i) + { + $row_new[$heading_i] = $row[$i]; + } + $data[] = $row_new; + } + else + { + $data[] = $row; + } + + if ($max_lines > 0) + $line_count++; + } + return $data; + } + //-------------------------------------------------------------------- + +} +?> \ No newline at end of file Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/class/csv.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/generate-aliases-keys.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/generate-aliases-keys.php (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/generate-aliases-keys.php 2019-04-28 16:27:43 UTC (rev 13400) @@ -0,0 +1,173 @@ +<?php +/** + * Email Account Propogation REST Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright Chronolabs Cooperative http://syd.au.snails.email + * @license ACADEMIC APL 2 (https://sourceforge.net/u/chronolabscoop/wiki/Academic%20Public%20License%2C%20version%202.0/) + * @license GNU GPL 3 (http://www.gnu.org/licenses/gpl.html) + * @package emails-api + * @since 1.1.11 + * @author Dr. Simon Antony Roberts <simon@snails.email> + * @version 1.1.11 + * @description A REST API for the creation and management of emails/forwarders and domain name parks for email + * @link http://internetfounder.wordpress.com + * @link https://github.com/Chronolabs-Cooperative/Emails-API-PHP + * @link https://sourceforge.net/p/chronolabs-cooperative + * @link https://facebook.com/ChronolabsCoop + * @link https://twitter.com/ChronolabsCoop + * + */ + +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'apiconfig.php'; +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'apimailer.php'; + +$start = time(); +if ($staters = APICache::read('generate-aliases-keys')) +{ + $staters[] = $start; + sort($staters, SORT_ASC); + if (count($starters)>50) + unset($starters[0]); + sort($staters, SORT_ASC); + APICache::write('generate-aliases-keys', $staters, 3600 * 24 * 7 * 4 * 6); + $keys = array_key($starters); + $avg = array(); + foreach($starters as $key => $starting) { + if (isset($keys[$key - 1])) { + $avg[] = abs($starting - $starters[$keys[$key - 1]]); + } + } + if (count($avg) > 0 ) { + foreach($avg as $average) + $seconds += $average; + $seconds = $seconds / count($avg); + } else + $seconds = 1800; +} else { + APICache::write('generate-aliases-keys', array(0=>$start), 3600 * 24 * 7 * 4 * 6); + $seconds = 1800; +} + + +$result = $GLOBALS['APIDB']->queryF("SELECT DISTINCT `email_full` FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE `kid` = 0 "); +$emails = $keyedemails = array(); +while($addy = $GLOBALS['APIDB']->fetchArray($result)) + $emails[$addy['email_full']] = $addy['email_full']; + +$result = $GLOBALS['APIDB']->queryF($sql = "SELECT `email`, `kid` as `key` FROM `" . $GLOBALS['APIDB']->prefix('pgpkeys') . "` WHERE `email` IN ('" . implode("', '", $emails) . "')"); +while($addy = $GLOBALS['APIDB']->fetchArray($result)) + foreach($emails as $key => $email) + if ($email == $addy['email']) { + $keyedemails[$key][$addy['key']] = $emails[$key]; + unset($emails[$key]); + } + +echo "PGP Key Unassigned Addresses: " . print_r($emails, true) . "\n\n"; +foreach($emails as $key => $email) { + $domainid = 0; + $domainkey = ''; + $parts = explode("@", $email); + $domain = $parts[1]; + $domainpath = implode(DS, array_reverse(explode('.', $domain))); + $result = $GLOBALS['APIDB']->queryF("SELECT `domain`, `id`, md5(concat(`id`, '" . API_URL . "', 'domain')) as `key` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "`"); + while($record = $GLOBALS['APIDB']->fetchArray($result)) { + if (empty($domainid) && empty($domainkey) && $record['domain'] == $domain) + { + $domainid = $record['id']; + $domainkey = $record['key']; + continue; + } + } + if (!is_dir(API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys')) + mkdir(API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys', 0777, true); + + if (!file_exists(API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . "$email.diz") && !file_exists(API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . $email . ".asc")) { + writeRawFile($diz = API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . "$email.diz", str_replace('%name', $email, str_replace('%email', "$email", str_replace('%subbits', mt_rand(API_MINBITS_PGP_KEYS, API_MAXBITS_PGP_KEYS), str_replace('%bits', mt_rand(API_MINBITS_PGP_KEYS, API_MAXBITS_PGP_KEYS), file_get_contents(dirname(__DIR__) . DS . 'include' . DS . 'data' . DS . 'gen-key-script.diz')))))); + shell_exec($exe = "gpg --batch --gen-key \"$diz\""); + echo "Executed: $exe\n"; + shell_exec($exe = "unlink \"$diz\""); + echo "Executed: $exe\n"; + shell_exec($exe = "gpg --armor --export $email > \"" . API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . $email . ".asc\""); + echo "Executed: $exe\n"; + foreach(file(dirname(__DIR__) . DS . 'include' . DS . 'data' . DS . 'keyservers-hostnames.diz') as $keyserver) + shell_exec($exe = "gpg --keyserver " . str_replace(array("\n", "\r", "\t"), "", trim($keyserver)) . " --send-key $email"); + echo "Executed: $exe\n"; + } elseif (file_exists($keyfile = API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . $email . ".asc")) { + $ctime = filectime($keyfile); + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('pgpkeys') . "` (`typal`, `domainid`, `name`, `email`, `key`, `created`, `imported`) VALUES('internal', '$domainid', '" . $GLOBALS['APIDB']->escape($email) . "', '$email', '". $GLOBALS['APIDB']->escape($pgpkey = file_get_contents($keyfile)) . "', UNIX_TIMESTAMP(), '$ctime')"; + if ($GLOBALS['APIDB']->queryF($sql)) + echo "PGP Key Insert: " . $email . "\n\n"; + } +} + +$result = $GLOBALS['APIDB']->queryF("SELECT `email`, `kid` as `key` FROM `" . $GLOBALS['APIDB']->prefix('pgpkeys') . "` WHERE `email` IN ('" . implode("', '", $emails) . "')"); +while($addy = $GLOBALS['APIDB']->fetchArray($result)) + foreach($emails as $key => $email) + if ($email == $addy['email']) { + $keyedemails[$key][$addy['key']] = $emails[$key]; + unset($emails[$key]); + } + +echo "PGP Key Assigned Addresses: " . print_r($keyedemails) . "\n\n"; +foreach($keyedemails as $key => $kids) + foreach($kids as $kid => $email) + { + $domainid = 0; + $domainkey = ''; + $parts = explode("@", $email); + $domain = $parts[1]; + $domainpath = implode(DS, array_reverse(explode('.', $domain))); + $result = $GLOBALS['APIDB']->queryF("SELECT `domain`, `id`, md5(concat(`id`, '" . API_URL . "', 'domain')) as `key` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "`"); + while($record = $GLOBALS['APIDB']->fetchArray($result)) { + if (empty($domainid) && empty($domainkey) && $record['domain'] == $domain) + { + $domainid = $record['id']; + $domainkey = $record['key']; + continue; + } + } + $keyfile = API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . "$email.asc"; + if (file_exists($keyfile)) { + list($numalias) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF("SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE `email_full` LIKE '$email'")); + $result = $GLOBALS['APIDB']->queryF("SELECT `id`, `callback`, `destination` FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE `kid` = 0 AND `emailed` = 0 AND `email_full` LIKE '$email' ORDER BY RAND() LIMIT 7"); + while($alias = $GLOBALS['APIDB']->fetchArray($result)) + { + $sql = "SELECT md5(concat(`id`, '" . API_URL . "', 'alias')) FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE `id` = '".$GLOBALS['APIDB']->getInsertId()."'"; + list($aliaskey) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); + + $from = $GLOBALS['APIDB']->fetchArray($GLOBALS['APIDB']->queryF("SELECT * FROM `" . $GLOBALS['APIDB']->prefix('users') . "` WHERE `uid` = '" . API_PRIMARY_SYSOP_UID . "'")); + $to = array($alias['destination']); + $mailers = new APIMailer($from['email'], $from['name']); + $body = file_get_contents(__DIR__ . DIRECTORY_SEPARATOR . 'new-alias-service.html'); + $body = str_replace("%apiurl", API_URL, $body); + $body = str_replace('%company', API_LICENSE_COMPANY, $body); + $body = str_replace('%domain', $domain, $body); + $body = str_replace('%fromname', $from['name'], $body); + $body = str_replace('%fromemail', $from['email'], $body); + $body = str_replace('%email', $email, $body); + $body = str_replace('%aliases', $numalias, $body); + $body = str_replace('%destination', $alias['destination'], $body); + $body = str_replace('%pgpkey', $pgpkey = file_get_contents($keyfile), $body); + if ($mailers->sendMail($to, array(), array($from['email']), "Your New Alias Address :: " . $email, $body, array($keyfile), array(), true)) + { + if (!$GLOBALS['APIDB']->queryF($sql = "UPDATE `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` SET `emailed` = UNIX_TIMESTAMP(), `kid` = '$kid' WHERE `id` = " . $alias['id'])) + die("SQL Failed: $sql;"); + else + echo("\nSQL Success: $sql;"); + } else { + echo "Failed to email: " . $alias['destination'] . " from " . $from['email'] . "\n"; + } + if (strlen($alias['callback']) > 0) + addCallback($alias['callback'], array("op" => 'email-alias', "aliaskey" => $aliaskey, "email" => $email, "destination" => $alias['destination'], 'pgpkey' => $pgpkey)); + } + } + } + +?> Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/generate-aliases-keys.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/new-alias-service.html =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/new-alias-service.html (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/new-alias-service.html 2019-04-28 16:27:43 UTC (rev 13400) @@ -0,0 +1,15 @@ +<center> + <img src="%apiurl/assets/images/logo_350x350.png" /> +</center> +<p style="margin-top: 9px; font-weight: bold; font-size: 456%; text-align: center;">New Alias Address for you by %company</p> +<p style="margin-top: 26px; font-weight: 500; font-size: 210%;">You are being contacted as the notification address for the email '%destination' and you're the contact for it an alias forwarder with PGP Key Encryption for ( <strong>%aliases</strong> ) total email contacts exist for the forwarder: %email!</p> +<h1>Email Alias Details</h1> +<pre style="margin-top: 13px; margin-left: 25px; font-weight: 300; font-size: 269%;"> +Address: %email +Destination: %destination +</pre> +<h2>PGP Key (Attached Also)</h2> +<p style="margin-top: 18px; font-size: 277%; font-weight: 600;">PGP Key For: "%email" <%email></p> +<pre style="margin-top: 13px; margin-left: 25px; font-weight: 300; font-size: 169%;"> +%pgpkey +</pre> \ No newline at end of file Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/new-alias-service.html ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/help.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/help.php 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/help.php 2019-04-28 16:27:43 UTC (rev 13400) @@ -144,6 +144,15 @@ <pre style="max-height: 300px; overflow: scroll;"> <?php echo htmlspecialchars(getHTMLForm('newalias', $authkey)); ?> </pre> + <h2>UPLOADING Document Output</h2> + <p>This is done with the <em>uploading.api</em> extension at the end of the url, you replace the example address with either a domain!</p> + <blockquote> + <?php echo getHTMLForm('uploadalias', $authkey); ?> + </blockquote> + <h3>This the HTML Code surrounding the api call</h3> + <pre style="max-height: 300px; overflow: scroll;"> + <?php echo htmlspecialchars(getHTMLForm('uploadalias', $authkey)); ?> + </pre> <h2>PGPKEY Document Output</h2> <p>This is done with the <em>pgpkey.api</em> extension at the end of the url, you replace the example address with either a domain! You can also include PGP Keys with emailing the key in the body or as an attachment to: <strong><em><?php echo API_EMAIL_PGP_KEYS; ?></em></strong></p> <blockquote> Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2019-04-28 16:27:43 UTC (rev 13400) @@ -404,7 +404,7 @@ list($count) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); if ($count==0) { - $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mail_users') . "` (`mode`, `name`, `email`, `username`, `notify`, `actkey`, `password`, `password_enc`, `uid`, `pid`, `homedir`, `maildir`, `postfix`, `domainid`, `pop3`, `imap`, `mboxsize`, `mboxonline`, `mboxoffline`, `created`, `callback`) VALUES ('new', '" . $GLOBALS['APIDB']->escape($name) . "', '$username@$domain', '$username@$domain', '$notify', '" . substr(sha1(microtime(true)), mt_rand(0, 34), mt_rand(4,6)) . "', DES_ENCRYPT('$password', '$username@$domain'), ENCRYPT('$password'), '" . $GLOBALS['uid'] . "', '$pid', '" . ($homedir = API_HOMEDIR_PATH . DS . $domainpath . DS . $username) . "', '" . ($maildir = API_MAILDIR_PATH . DS . $domainpath . DS . $username) . "', 'Y', '$domainid', 1, 1, '" . (API_INTIALISE_INBOX_SIZES * 1024 * 1024 * 1024) . "', '$bytessize', '" . (API_OFFLINE_INBOX_SIZES * 1024 * 1024 * 1024) . "', UNIX_TIMESTAMP(), '" . $GLOBALS['APIDB']->escape($callback) . "')"; + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mail_users') . "` (`mode`, `name`, `email`, `username`, `notify`, `actkey`, `password`, `password_enc`, `uid`, `pid`, `homedir`, `maildir`, `postfix`, `domainid`, `pop3`, `imap`, `mboxsize`, `mboxonline`, `mboxoffline`, `created`, `callback`) VALUES ('new', '" . $GLOBALS['APIDB']->escape($name) . "', '" . $GLOBALS['APIDB']->escape("$username@$domain") ."', '" . $GLOBALS['APIDB']->escape("$username@$domain") ."', '" . $GLOBALS['APIDB']->escape($notify) . "', '" . substr(sha1(microtime(true)), mt_rand(0, 34), mt_rand(4,6)) . "', DES_ENCRYPT('$password', '" . $GLOBALS['APIDB']->escape("$username@$domain") . "'), ENCRYPT('$password'), '" . $GLOBALS['uid'] . "', '$pid', '" . ($homedir = API_HOMEDIR_PATH . DS . $domainpath . DS . $username) . "', '" . ($maildir = API_MAILDIR_PATH . DS . $domainpath . DS . $username) . "', 'Y', '$domainid', 1, 1, '" . (API_INTIALISE_INBOX_SIZES * 1024 * 1024 * 1024) . "', '$bytessize', '" . (API_OFFLINE_INBOX_SIZES * 1024 * 1024 * 1024) . "', UNIX_TIMESTAMP(), '" . $GLOBALS['APIDB']->escape($callback) . "')"; if ($GLOBALS['APIDB']->queryF($sql)) { $sql = "SELECT md5(concat(`id`, '" . API_URL . "', 'email')) FROM `" . $GLOBALS['APIDB']->prefix('mail_users') . "` WHERE `id` = '".$GLOBALS['APIDB']->getInsertId()."'"; @@ -453,7 +453,7 @@ } -if (!function_exists("addEmail")) { +if (!function_exists("addAlias")) { /** * addEmail() * @@ -479,11 +479,11 @@ if (empty($return)) { - $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE ((`email` LIKE '$username@$domain' OR `email_full` = '$username@$domain') AND `destination` = '$destination')"; + $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE ((`email` LIKE '" . $GLOBALS['APIDB']->escape("$username@$domain") . "' OR `email_full` = '$username@$domain') AND `destination` = '" . $GLOBALS['APIDB']->escape($destination) . "')"; list($count) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); if ($count==0) { - $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` (`name`, `email`, `email_full`, `destination`, `domainid`, `uid`, `pid`, `created`, `callback`) VALUES ('" . $GLOBALS['APIDB']->escape($name) . "', '$username@$domain', '$username@$domain', '$destination', '$domainid', '" . $GLOBALS['uid'] . "', '$pid', UNIX_TIMESTAMP(), '" . $GLOBALS['APIDB']->escape($callback) . "')"; + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` (`name`, `email`, `email_full`, `destination`, `domainid`, `uid`, `pid`, `created`, `callback`) VALUES ('" . $GLOBALS['APIDB']->escape($name) . "', '" . $GLOBALS['APIDB']->escape("$username@$domain") . "', '" . $GLOBALS['APIDB']->escape("$username@$domain") . "', '" . $GLOBALS['APIDB']->escape($destination) . "', '$domainid', '" . $GLOBALS['uid'] . "', '$pid', UNIX_TIMESTAMP(), '" . $GLOBALS['APIDB']->escape($callback) . "')"; if ($GLOBALS['APIDB']->queryF($sql)) { $sql = "SELECT md5(concat(`id`, '" . API_URL . "', 'alias')) FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE `id` = '".$GLOBALS['APIDB']->getInsertId()."'"; @@ -525,10 +525,10 @@ $return = array('code' => 201, 'aliaskey' => $_SESSION['aliaskey'], 'errors' => array()); } } else { - $return = array('code' => 501, 'emailkey' => md5(NULL. 'email'), 'errors' => array('sql' => $sql, $GLOBALS['APIDB']->errno() => $GLOBALS['APIDB']->error())); + $return = array('code' => 501, 'aliaskey' => md5(NULL. 'email'), 'errors' => array('sql' => $sql, $GLOBALS['APIDB']->errno() => $GLOBALS['APIDB']->error())); } } else { - $return = array('code' => 501, 'emailkey' => md5(NULL. 'email'), 'errors' => array('103' => 'Record Already Exists!!!')); + $return = array('code' => 501, 'aliaskey' => md5(NULL. 'email'), 'errors' => array('103' => 'Record Already Exists!!!')); } } } @@ -1517,7 +1517,7 @@ $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<input type='textbox' name='username' id='username' size='23' /> <strong style='font-size: 247%'>@</strong> "; $form[] = "\t\t\t\t<select name='domain' id='format'/>"; - $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() ORDER BY `domain` ASC"); + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` >= UNIX_TIMESTAMP() ORDER BY `domain` ASC"); while($row = $GLOBALS['APIDB']->fetchArray($result)) $form[] = "\t\t\t\t\t<option value='".$row['key']."'>".$row['domain']."</option>"; $form[] = "\t\t\t\t</select>"; @@ -1563,6 +1563,53 @@ $form[] = "\t</table>"; $form[] = "</form>"; break; + case "uploadalias": + $form[] = "<form name='upload-aliases' method=\"POST\" enctype=\"multipart/form-data\" action=\"" . API_URL . '/v1/'.$authkey.'/uploading.api">'; + $form[] = "\t<table class='upload-aliases' id='auth-key' style='vertical-align: top !important; min-width: 98%;'>"; + $form[] = "\t\t<tr>"; + $form[] = "\t\t\t<td style='width: 320px;'>"; + $form[] = "\t\t\t\t<label for='filename'>CSV List of Aliases: <font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold'>*</font></label>"; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t\t<td>"; + $form[] = "\t\t\t\t<input type='file' name='filename' id='filename' size='21' /> "; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t\t<td> </td>"; + $form[] = "\t\t</tr>"; + $form[] = "\t\t<tr>"; + $form[] = "\t\t\t<td style='width: auto; background-color: #feedcc; padding: 10px;' colspan='2'>"; + $form[] = "\t\t\t\tThe CSV must be a standard excel or linux format and have the four captioned top row fields of: Name, Email, Alias, Domain!<br/><br/>There is two example spreedsheets with the titles in place you can populate you can download these from: <a href='" . API_URL . "/assets/docs/csv-prop-spreedsheet.xlsx' target='_blank'>csv-prop-spreedsheet.xlsx</a> or <a href='" . API_URL . "/assets/docs/csv-prop-spreedsheet.ods' target='_blank'>csv-prop-spreedsheet.ods</a>; thanks for using the example spreedsheets to generate the correct titled CSV in the right formating!"; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t</tr>"; + $form[] = "\t\t<tr>"; + $form[] = "\t\t\t<td>"; + $form[] = "\t\t\t\t<label for='format'>Output Format: <font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold'>*</font></label>"; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t\t<td style='width: 320px;'>"; + $form[] = "\t\t\t\t<select name='format' id='format'/>"; + $form[] = "\t\t\t\t\t<option value='raw'>RAW PHP Output</option>"; + $form[] = "\t\t\t\t\t<option value='json' selected='selected'>JSON Output</option>"; + $form[] = "\t\t\t\t\t<option value='serial'>Serialisation Output</option>"; + $form[] = "\t\t\t\t\t<option value='xml'>XML Output</option>"; + $form[] = "\t\t\t\t</select>"; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t\t<td> </td>"; + $form[] = "\t\t</tr>"; + $form[] = "\t\t<tr>"; + $form[] = "\t\t\t<td colspan='3' style='padding-left:64px;'>"; + $form[] = "\t\t\t\t<input type='hidden' value='".$authkey."' name='authkey'>"; + $form[] = "\t\t\t\t<input type='hidden' value='alias' name='mode'>"; + $form[] = "\t\t\t\t<input type='submit' value='Upload *.csv and propogate email aliases!' name='submit' style='padding:11px; font-size:122%;'>"; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t</tr>"; + $form[] = "\t\t<tr>"; + $form[] = "\t\t\t<td colspan='3' style='padding-top: 8px; padding-bottom: 14px; padding-right:35px; text-align: right;'>"; + $form[] = "\t\t\t\t<font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold;'>* </font><font style='color: rgb(10,10,10); font-size: 99%; font-weight: bold'><em style='font-size: 76%'>~ Required Field for Form Submission</em></font>"; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t</tr>"; + $form[] = "\t\t<tr>"; + $form[] = "\t</table>"; + $form[] = "</form>"; + break; case "newemail": $form[] = "<form name='new-record' method=\"POST\" enctype=\"multipart/form-data\" action=\"" . API_URL . '/v1/' . $authkey . '/emails.api">'; $form[] = "\t<table class='new-record' id='auth-record' style='vertical-align: top !important; min-width: 98%;'>"; @@ -1582,7 +1629,7 @@ $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<input type='textbox' name='email[username]' id='email' size='23' /> <strong style='font-size: 247%'>@</strong> "; $form[] = "\t\t\t\t<select name='email[domainkey]' id='format'/>"; - $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() ORDER BY `domain` ASC"); + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` >= UNIX_TIMESTAMP() ORDER BY `domain` ASC"); while($row = $GLOBALS['APIDB']->fetchArray($result)) $form[] = "\t\t\t\t\t<option value='".$row['key']."'>".$row['domain']."</option>"; $form[] = "\t\t\t\t</select>"; Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/license.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/license.php (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/license.php 2019-04-28 16:27:43 UTC (rev 13400) @@ -0,0 +1,52 @@ +<?php +/** + * Email Account Propogation REST Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright Chronolabs Cooperative http://syd.au.snails.email + * @license ACADEMIC APL 2 (https://sourceforge.net/u/chronolabscoop/wiki/Academic%20Public%20License%2C%20version%202.0/) + * @license GNU GPL 3 (http://www.gnu.org/licenses/gpl.html) + * @package emails-api + * @since 1.1.11 + * @author Dr. Simon Antony Roberts <simon@snails.email> + * @version 1.1.11 + * @description A REST API for the creation and management of emails/forwarders and domain name parks for email + * @link http://internetfounder.wordpress.com + * @link https://github.com/Chronolabs-Cooperative/Emails-API-PHP + * @link https://sourceforge.net/p/chronolabs-cooperative + * @link https://facebook.com/ChronolabsCoop + * @link https://twitter.com/ChronolabsCoop + * + */ + +defined('API_ROOT_PATH') || exit('Restricted access'); + +define('API_LICENSE_CODE', 'GPL'); +define('API_LICENSE_TEXT', 'GPL General Public License (GPL) (v. 2.0)'); +define('API_LICENSE_KEY', '27a75e-2569f0-82df1e-25b7d9-d6267c'); +define('API_LICENSE_COMPANY', 'Chronolabs Cooperative'); +define('API_LICENSE_UNAME', 'mynamesnot'); +define('API_LICENSE_EMAIL', 'simon@ordinance.space'); +define('API_LICENSE_PASSWORD', 'd41d8cd98f00b204e9800998ecf8427e'); +define('API_LICENSE_PROTOCOL', 'http'); +define('API_LICENSE_REALM', 'emails.localhost'); +define('API_LICENSE_PATH', ''); +define('API_LICENSE_TYPE', 'emails-api'); + + + + +/** + * Peering Services notified over cURL on installations:~ + * + * Errored Announcing: http://peers.snails.email/v1/register/json.api + * + * Errored Announcing: http://peers.xortify.com/v1/register/json.api + * +*/ \ No newline at end of file Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/license.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2019-04-28 16:27:43 UTC (rev 13400) @@ -41,5 +41,5 @@ /** * Define API version */ -define('API_VERSION', 'Emails Propogation REST Services API 1.0.7'); +define('API_VERSION', 'Emails Propogation REST Services API 1.1.11'); define('API_TYPE', 'emails-api'); Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Precise (12.04)/smtp.html =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Precise (12.04)/smtp.html 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Precise (12.04)/smtp.html 2019-04-28 16:27:43 UTC (rev 13400) @@ -1,4 +1,3 @@ - <article> <section> <div class="pushbot"> @@ -86,8 +85,8 @@ virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_mailbox_domains.cf virtual_alias_maps = mysql:/etc/postfix/mysql-virtual_alias_maps.cf smtpd_sender_login_maps = mysql:/etc/postfix/mysql-virtual_sender_permissions.cf -virtual_uid_maps = static:2000 -virtual_gid_maps = static:2000 +virtual_uid_maps = mysql:/etc/postfix/mysql-virtual_uid_maps.cf +virtual_gid_maps = mysql:/etc/postfix/mysql-virtual_gid_maps.cf # Local delivery settings local_transport = local @@ -132,7 +131,7 @@ password = %dbpassword dbname = %dbname hosts = %dbhost -query = SELECT destination FROM %tablemailvirtual WHERE email = '%s' AND trim(destination) <> ''</textarea> +query = SELECT `destination` FROM `%tablemailvirtual` WHERE email = '%s';</textarea> </div> <div class="pushbot"> @@ -152,7 +151,7 @@ password = %dbpassword dbname = %dbname hosts = %dbhost -query = SELECT domain FROM %tablepaneldomains WHERE domain = '%s' AND isemaildomain = '1'</textarea> +query = SELECT `domain` FROM `%tablepaneldomains` as `a` INNER JOIN `%tablemailusers` as `b` ON `a`.`id` = `b`.`domainid` WHERE `b`.`email` = '%s' AND `a`.`isemaildomain` = '1' AND `a`.`mxcheck` >= UNIX_TIMESTAMP();</textarea> </div> <div class="pushbot"> @@ -173,7 +172,7 @@ dbname = %dbname expansion_limit = 1 hosts = %dbhost -query = SELECT CONCAT(homedir,maildir) FROM %tablemailusers WHERE email = '%s'</textarea> +query = SELECT `maildir` FROM %tablemailusers WHERE email = '%s'</textarea> </div> <div class="pushbot"> @@ -212,9 +211,15 @@ <textarea class="filecontent" rows="6" readonly>user = %dbuser password = %dbpassword dbname = %dbname -expansion_limit = 1 hosts = %dbhost -query = SELECT uid FROM %tablemailusers WHERE email = '%s'</textarea> +query = SELECT `a`.`homedir` as `home`, (`a`.`id`+9999) as `uid`, `gid`, + CONCAT('*:bytes=', (mboxsize - (mboxsize * (`quotashot` / 100)))) AS `quota_rule`, + "/" AS "namespace/default/separator" + FROM `%tableemailusers` as `a` + INNER JOIN `%tablepaneldomains` as `b` + ON `a`.`domainid` = `b`.`id` + WHERE `a`.`username` LIKE '%s' + AND `b`.`mxcheck` >= UNIX_TIMESTAMP();</textarea> </div> <div class="pushbot"> @@ -235,7 +240,8 @@ dbname = %dbname expansion_limit = 1 hosts = %dbhost -query = SELECT gid FROM %tablemailusers WHERE email = '%s'</textarea> +query = SELECT DISTINCT `a`.`id` as `gid` FROM `%tablegroups` as `a` INNER JOIN `%tablemailusers` as `b` ON `a`.`id` = `b`.`gid` WHERE `b`.`email` = '%s' +</textarea> </div> <div class="pushbot"> @@ -299,7 +305,7 @@ </div> <div class="pushbot"> <textarea class="shell" rows="2" readonly>newaliases -/etc/init.d/postfix restart</textarea> +service postfix restart</textarea> </div> </section> Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Trusty (14.04)/smtp.html =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Trusty (14.04)/smtp.html 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Trusty (14.04)/smtp.html 2019-04-28 16:27:43 UTC (rev 13400) @@ -85,8 +85,8 @@ virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_mailbox_domains.cf virtual_alias_maps = mysql:/etc/postfix/mysql-virtual_alias_maps.cf smtpd_sender_login_maps = mysql:/etc/postfix/mysql-virtual_sender_permissions.cf -virtual_uid_maps = static:2000 -virtual_gid_maps = static:2000 +virtual_uid_maps = mysql:/etc/postfix/mysql-virtual_uid_maps.cf +virtual_gid_maps = mysql:/etc/postfix/mysql-virtual_gid_maps.cf # Local delivery settings local_transport = local @@ -131,7 +131,7 @@ password = %dbpassword dbname = %dbname hosts = %dbhost -query = SELECT destination FROM %tablemailvirtual WHERE email = '%s' AND trim(destination) <> ''</textarea> +query = SELECT `destination` FROM `%tablemailvirtual` WHERE email = '%s';</textarea> </div> <div class="pushbot"> @@ -151,7 +151,7 @@ password = %dbpassword dbname = %dbname hosts = %dbhost -query = SELECT domain FROM %tablepaneldomains WHERE domain = '%s' AND isemaildomain = '1'</textarea> +query = SELECT `domain` FROM `%tablepaneldomains` as `a` INNER JOIN `%tablemailusers` as `b` ON `a`.`id` = `b`.`domainid` WHERE `b`.`email` = '%s' AND `a`.`isemaildomain` = '1' AND `a`.`mxcheck` >= UNIX_TIMESTAMP();</textarea> </div> <div class="pushbot"> @@ -172,7 +172,7 @@ dbname = %dbname expansion_limit = 1 hosts = %dbhost -query = SELECT CONCAT(homedir,maildir) FROM %tablemailusers WHERE email = '%s'</textarea> +query = SELECT `maildir` FROM %tablemailusers WHERE email = '%s'</textarea> </div> <div class="pushbot"> @@ -211,9 +211,15 @@ <textarea class="filecontent" rows="6" readonly>user = %dbuser password = %dbpassword dbname = %dbname -expansion_limit = 1 hosts = %dbhost -query = SELECT uid FROM %tablemailusers WHERE email = '%s'</textarea> +query = SELECT `a`.`homedir` as `home`, (`a`.`id`+9999) as `uid`, `gid`, + CONCAT('*:bytes=', (mboxsize - (mboxsize * (`quotashot` / 100)))) AS `quota_rule`, + "/" AS "namespace/default/separator" + FROM `%tableemailusers` as `a` + INNER JOIN `%tablepaneldomains` as `b` + ON `a`.`domainid` = `b`.`id` + WHERE `a`.`username` LIKE '%s' + AND `b`.`mxcheck` >= UNIX_TIMESTAMP();</textarea> </div> <div class="pushbot"> @@ -234,7 +240,8 @@ dbname = %dbname expansion_limit = 1 hosts = %dbhost -query = SELECT gid FROM %tablemailusers WHERE email = '%s'</textarea> +query = SELECT DISTINCT `a`.`id` as `gid` FROM `%tablegroups` as `a` INNER JOIN `%tablemailusers` as `b` ON `a`.`id` = `b`.`gid` WHERE `b`.`email` = '%s' +</textarea> </div> <div class="pushbot"> Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/json.getconfig.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/json.getconfig.php 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/json.getconfig.php 2019-04-28 16:27:43 UTC (rev 13400) @@ -45,6 +45,7 @@ $article = str_replace('%tablemailusers', '`' . $GLOBALS['APIDB']->prefix('mail_users') . '`', $article); $article = str_replace('%tablemailvirtual', '`' . $GLOBALS['APIDB']->prefix('mail_virtual') . '`', $article); $article = str_replace('%tablepaneldomains', '`' . $GLOBALS['APIDB']->prefix('domains') . '`', $article); +$article = str_replace('%tablegroups', '`' . $GLOBALS['APIDB']->prefix('groups') . '`', $article); $article = str_replace('%apidomain', parse_url(API_URL, PHP_URL_HOST), $article); $article = str_replace('%licenseemail', API_LICENSE_EMAIL, $article); Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.groups.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.groups.sql (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.groups.sql 2019-04-28 16:27:43 UTC (rev 13400) @@ -0,0 +1,63 @@ +-- phpMyAdmin SQL Dump +-- version 4.6.6deb5 +-- https://www.phpmyadmin.net/ +-- +-- Host: localhost:3306 +-- Generation Time: Apr 23, 2019 at 08:37 PM +-- Server version: 5.7.25-0ubuntu0.18.04.2 +-- PHP Version: 7.2.15-0ubuntu0.18.04.2 + +SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; +SET time_zone = "+00:00"; + + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; + +-- +-- Database: `emails-snails-email` +-- + +-- -------------------------------------------------------- + +-- +-- Table structure for table `groups` +-- + +CREATE TABLE `groups` ( + `id` int(8) UNSIGNED NOT NULL, + `name` varchar(128) NOT NULL DEFAULT '', + `created` int(12) UNSIGNED NOT NULL DEFAULT '0' +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Dumping data for table `groups` +-- + +INSERT INTO `groups` (`id`, `name`, `created`) VALUES +(1000, 'Mail User', 1555767902); + +-- +-- Indexes for dumped tables +-- + +-- +-- Indexes for table `groups` +-- +ALTER TABLE `groups` + ADD PRIMARY KEY (`id`); + +-- +-- AUTO_INCREMENT for dumped tables +-- + +-- +-- AUTO_INCREMENT for table `groups` +-- +ALTER TABLE `groups` + MODIFY `id` int(8) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1001; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql 2018-11-27 00:19:12 UTC (rev 13399) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql 2019-04-28 16:27:43 UTC (rev 13400) @@ -14,6 +14,7 @@ `username` varchar(255) NOT NULL DEFAULT '', `password` tinyblob, `password_enc` tinyblob, + `gid` int(8) unsigned NOT NULL DEFAULT '1000', `uid` int(11) unsigned NOT NULL DEFAULT '0', `pid` int(11) unsigned NOT NULL DEFAULT '0', `kid` mediumint(32) unsigned NOT NULL DEFAULT '0', Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/uploading.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/uploading.php (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/uploading.php 2019-04-28 16:27:43 UTC (rev 13400) @@ -0,0 +1,187 @@ +<?php +/** + * DNS Zone Propogation REST Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright Chronolabs Cooperative http://syd.au.snails.email + * @license ACADEMIC APL 2 (https://sourceforge.net/u/chronolabscoop/wiki/Academic%20Public%20License%2C%20version%202.0/) + * @license GNU GPL 3 (http://www.gnu.org/licenses/gpl.html) + * @package emails-api + * @since 1.0.3 + * @author Dr. Simon Antony Roberts <simon@snails.email> + * @version 1.0.3 + * @description A REST API for the creation and management of emails/forwarders and domain name parks for email + * @link http://internetfounder.wordpress.com + * @link https://github.com/Chronolabs-Cooperative/Emails-API-PHP + * @link https://sourceforge.net/p/chronolabs-cooperative + * @link https://facebook.com/ChronolabsCoop + * @link https://twitter.com/ChronolabsCoop + * + */ + + + require_once __DIR__ . DIRECTORY_SEPARATOR . 'apiconfig.php'; + require_once __DIR__ . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'csv.php'; + + error_reporting(E_ALL); + ini_set('display_errors', true); + set_time_limit(3600*36*9*14*28); + + /** + * URI Path Finding of API URL Source Locality + * @var unknown_type + */ + $odds = $inner = array(); + foreach($_GET as $key => $values) { + if (!isset($inner[$key])) { + $inner[$key] = $values; + } elseif (!in_array(!is_array($values) ? $values : md5(json_encode($values, true)), array_keys($odds[$key]))) { + if (is_array($values)) { + $odds[$key][md5(json_encode($inner[$key] = $values, true))] = $values; + } else { + $odds[$key][$inner[$key] = $values] = "$values--$key"; + } + } + } + + foreach($_POST as $key => $values) { + if (!isset($inner[$key])) { + $inner[$key] = $values; + } elseif (!in_array(!is_array($values) ? $values : md5(json_encode($values, true)), array_keys($odds[$key]))) { + if (is_array($values)) { + $odds[$key][md5(json_encode($inner[$key] = $values, true))] = $values; + } else { + $odds[$key][$inner[$key] = $values] = "$values--$key"; + } + } + } + + foreach(parse_url('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].(strpos($_SERVER['REQUEST_URI'], '?')?'&':'?').$_SERVER['QUERY_STRING'], PHP_URL_QUERY) as $key => $values) { + if (!isset($inner[$key])) { + $inner[$key] = $values; + } elseif (!in_array(!is_array($values) ? $values : md5(json_encode($values, true)), array_keys($odds[$key]))) { + if (is_array($values)) { + $odds[$key][md5(json_encode($inner[$key] = $values, true))] = $values; + } else { + $odds[$key][$inner[$key] = $values] = "$values--$key"; + } + } + } + + //echo "Processed Upload Form Fine<br/>"; + $time = time(); + $error = array(); + if (isset($_FILES['filename']) || !empty($_FILES['filename'])) { + if (empty($_FILES['filename']['tmp_name'])) + $error[] = 'No file uploaded in the correct field name of: "' . $inner['field'] . '"'; + else { + if (strtolower(substr($_FILES['filename']['name'], strlen($_FILES['filename']['name']) - 3, 3)) != 'csv') + $error[] = 'The file extension type of <strong>'.$_FILES['filename']['name'].'</strong> is not valid you can only upload the following file types: <em>'.implode("</em> <em>*.", array('csv', 'CSV')).'</em>!'; + else + $filetype = 'csv'; + } + } else + $error[] = 'File uploaded field name not specified in the URL!'; + + $uploadpath = "/tmp/" . dirname(__DIR__) . '-' . microtime(true); + if (!is_dir($uploadpath)) { + if (!mkdir($uploadpath, 0777, true)) { + $error[] = 'Unable to make path: '."/tmp/" . dirname(__DIR__); + } + } + + $data = $domainkeys = array(); + $file = ''; + if (empty($error)) + switch ($filetype) + { + case "csv": + if (!move_uploaded_file($_FILES['filename']['tmp_name'], $file = $uploadpath . DIRECTORY_SEPARATOR . $_FILES['filename']['name'])) { + $error[] = 'The file type of <strong>'.$_FILES['filename']['name'].'</strong> could not be uploaded to the path of: $uploadpath!!'; + break; + } else { + if (filesize($file)>0) { + $csv = array_map('str_getcsv', file($file)); + array_walk($csv, function(&$a) use ($csv) { + $a = array_combine($csv[0], $a); + }); + array_shift($csv); + $aliases = $csv; + unset($csv); + if (count($aliases)>0) + if (isset($aliases[0]['Name']) && isset($aliases[0]['Email']) && isset($aliases[0]['Alias']) && isset($aliases[0]['Domain'])) { + foreach($aliases as $alias) { + if (!empty($alias['Name']) && !empty($alias['Email']) && !empty($alias['Alias']) && !empty($alias['Domain'])) { + if (!isset($domainkeys[$alias['Domain']])) { + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() AND `domain` LIKE '" . $alias['Domain'] . "' ORDER BY `domain` ASC"); + list($key) = $GLOBALS['APIDB']->fetchRow($result); + if (!empty($key)) + $domainkeys[$alias['Domain']] = $key; + } + if (!empty($domainkeys[$alias['Domain']])) { + $result = addAlias($inner['authkey'], $alias['Name'], $alias['Alias'], $domainkeys[$alias['Domain']], $alias['Email'], $alias['Callback'], $inner['format']); + $data['code'] = $result['code']; + unset($result['code']); + $data['passed'][$alias['Alias']."@".$alias['Domain']][$alias['Name']][$alias['Email']] = $result; + } + } else { + $data['failed'][$alias['Alias']."@".$alias['Domain']][$alias['Name']] = $alias['Email']; + } + } + + } else { + $error[] = 'The file extension type of <strong>*.csv</strong> is not valid you need to have the four required titles listed to import this file!'; + break; + } + + } + } + break; + } + if (!empty($error)) { + $data['errors'] = $error; + $data['code'] = 501; + } + shell_exec("rm -Rf '$uploadpath'"); + + /** + * Commences Execution of API Functions + */ + if (function_exists("http_response_code")) + http_response_code((isset($data['code'])?$data['code']:200)); + if (isset($data['code'])) + unset($data['code']); + + switch ($inner['format']) { + default: + echo '<pre style="font-family: \'Courier New\', Courier, Terminal; font-size: 0.77em;">'; + echo var_dump($data, true); + echo '</pre>'; + break; + case 'raw': + echo "<?php\n\n return " . var_export($data, true) . ";\n\n?>"; + break; + case 'json': + header('Content-type: application/json'); + echo json_encode($data); + break; + case 'serial': + header('Content-type: text/html'); + echo serialize($data); + break; + case 'xml': + header('Content-type: application/xml'); + $dom = new XmlDomConstruct('1.0', 'utf-8'); + $dom->fromMixed(array('root'=>$data)); + echo $dom->saveXML(); + break; + } + exit(0); + +?> \ No newline at end of file Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/uploading.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property |
From: <chr...@us...> - 2018-11-27 00:21:41
|
Revision: 13399 http://sourceforge.net/p/xoops/svn/13399 Author: chronolabscoop Date: 2018-11-27 00:19:12 +0000 (Tue, 27 Nov 2018) Log Message: ----------- Publisher Module for XOOPS 2.5.x + 2.6.x - v1.0.7 Modified Paths: -------------- XoopsModules/publisher/trunk/publisher/admin/about.php XoopsModules/publisher/trunk/publisher/admin/admin_header.php XoopsModules/publisher/trunk/publisher/admin/category.php XoopsModules/publisher/trunk/publisher/admin/clone.php XoopsModules/publisher/trunk/publisher/admin/file.php XoopsModules/publisher/trunk/publisher/admin/import/ams.php XoopsModules/publisher/trunk/publisher/admin/import/cjaycontent.php XoopsModules/publisher/trunk/publisher/admin/import/fmcontent.php XoopsModules/publisher/trunk/publisher/admin/import/news.php XoopsModules/publisher/trunk/publisher/admin/import/smartsection.php XoopsModules/publisher/trunk/publisher/admin/import/wfsection.php XoopsModules/publisher/trunk/publisher/admin/import/xfsection.php XoopsModules/publisher/trunk/publisher/admin/import/xnews.php XoopsModules/publisher/trunk/publisher/admin/import.php XoopsModules/publisher/trunk/publisher/admin/index.php XoopsModules/publisher/trunk/publisher/admin/item.php XoopsModules/publisher/trunk/publisher/admin/main.php XoopsModules/publisher/trunk/publisher/admin/menu.php XoopsModules/publisher/trunk/publisher/admin/mimetypes.php XoopsModules/publisher/trunk/publisher/admin/pagewrap.php XoopsModules/publisher/trunk/publisher/admin/permissions.php XoopsModules/publisher/trunk/publisher/admin/preferences.php XoopsModules/publisher/trunk/publisher/admin/pw_delete_file.php XoopsModules/publisher/trunk/publisher/admin/pw_upload_file.php XoopsModules/publisher/trunk/publisher/archive.php XoopsModules/publisher/trunk/publisher/assets/css/jquery.popeye.css XoopsModules/publisher/trunk/publisher/assets/css/jquery.popeye.style.css XoopsModules/publisher/trunk/publisher/assets/css/publisher.css XoopsModules/publisher/trunk/publisher/assets/index.html XoopsModules/publisher/trunk/publisher/assets/js/ajaxupload.3.9.js XoopsModules/publisher/trunk/publisher/assets/js/behavior.js XoopsModules/publisher/trunk/publisher/assets/js/cookies.js XoopsModules/publisher/trunk/publisher/assets/js/funcs.js XoopsModules/publisher/trunk/publisher/assets/js/index.html XoopsModules/publisher/trunk/publisher/assets/js/jquery.easing.js XoopsModules/publisher/trunk/publisher/assets/js/jquery.popeye-2.1.js XoopsModules/publisher/trunk/publisher/assets/js/jquery.popeye-2.1.min.js XoopsModules/publisher/trunk/publisher/assets/js/publisher.js XoopsModules/publisher/trunk/publisher/assets/js/rating.js XoopsModules/publisher/trunk/publisher/assets/js/script.easing.js XoopsModules/publisher/trunk/publisher/author_items.php XoopsModules/publisher/trunk/publisher/backend.php XoopsModules/publisher/trunk/publisher/blocks/category_items_sel.php XoopsModules/publisher/trunk/publisher/blocks/date_to_date.php XoopsModules/publisher/trunk/publisher/blocks/items_columns.php XoopsModules/publisher/trunk/publisher/blocks/items_menu.php XoopsModules/publisher/trunk/publisher/blocks/items_new.php XoopsModules/publisher/trunk/publisher/blocks/items_random_item.php XoopsModules/publisher/trunk/publisher/blocks/items_recent.php XoopsModules/publisher/trunk/publisher/blocks/items_spot.php XoopsModules/publisher/trunk/publisher/blocks/latest_files.php XoopsModules/publisher/trunk/publisher/blocks/latest_news.php XoopsModules/publisher/trunk/publisher/blocks/search.php XoopsModules/publisher/trunk/publisher/category.php XoopsModules/publisher/trunk/publisher/class/plugins/plugin.tag.php XoopsModules/publisher/trunk/publisher/comment_delete.php XoopsModules/publisher/trunk/publisher/comment_edit.php XoopsModules/publisher/trunk/publisher/comment_new.php XoopsModules/publisher/trunk/publisher/comment_post.php XoopsModules/publisher/trunk/publisher/comment_reply.php XoopsModules/publisher/trunk/publisher/docs/ajaxrating.txt XoopsModules/publisher/trunk/publisher/docs/changelog.txt XoopsModules/publisher/trunk/publisher/docs/credits.txt XoopsModules/publisher/trunk/publisher/docs/index.html XoopsModules/publisher/trunk/publisher/docs/install.txt XoopsModules/publisher/trunk/publisher/docs/lang_diff.txt XoopsModules/publisher/trunk/publisher/docs/license.txt XoopsModules/publisher/trunk/publisher/docs/readme.txt XoopsModules/publisher/trunk/publisher/extra/seo/sample.htaccess XoopsModules/publisher/trunk/publisher/extra/seo/seo.txt XoopsModules/publisher/trunk/publisher/file.php XoopsModules/publisher/trunk/publisher/footer.php XoopsModules/publisher/trunk/publisher/header.php XoopsModules/publisher/trunk/publisher/include/ajax_rating.php XoopsModules/publisher/trunk/publisher/include/ajax_upload.php XoopsModules/publisher/trunk/publisher/include/comment_functions.php XoopsModules/publisher/trunk/publisher/include/common.php XoopsModules/publisher/trunk/publisher/include/config.php XoopsModules/publisher/trunk/publisher/include/notification.inc.php XoopsModules/publisher/trunk/publisher/include/oninstall.php XoopsModules/publisher/trunk/publisher/include/onupdate.php XoopsModules/publisher/trunk/publisher/include/plugin.tag.php XoopsModules/publisher/trunk/publisher/include/search.inc.php XoopsModules/publisher/trunk/publisher/include/seo.inc.php XoopsModules/publisher/trunk/publisher/index.php XoopsModules/publisher/trunk/publisher/item.php XoopsModules/publisher/trunk/publisher/language/english/admin.php XoopsModules/publisher/trunk/publisher/language/english/blocks.php XoopsModules/publisher/trunk/publisher/language/english/common.php XoopsModules/publisher/trunk/publisher/language/english/help/index.html XoopsModules/publisher/trunk/publisher/language/english/mail_template/category_item_published.tpl XoopsModules/publisher/trunk/publisher/language/english/mail_template/category_item_submitted.tpl XoopsModules/publisher/trunk/publisher/language/english/mail_template/global_item_category_created.tpl XoopsModules/publisher/trunk/publisher/language/english/mail_template/global_item_published.tpl XoopsModules/publisher/trunk/publisher/language/english/mail_template/global_item_submitted.tpl XoopsModules/publisher/trunk/publisher/language/english/mail_template/item_approved.tpl XoopsModules/publisher/trunk/publisher/language/english/mail_template/item_rejected.tpl XoopsModules/publisher/trunk/publisher/language/english/main.php XoopsModules/publisher/trunk/publisher/language/english/modinfo.php XoopsModules/publisher/trunk/publisher/list.tag.php XoopsModules/publisher/trunk/publisher/makepdf.php XoopsModules/publisher/trunk/publisher/notification_update.php XoopsModules/publisher/trunk/publisher/pop.php XoopsModules/publisher/trunk/publisher/print.php XoopsModules/publisher/trunk/publisher/rate.php XoopsModules/publisher/trunk/publisher/search.php XoopsModules/publisher/trunk/publisher/sql/mysql.sql XoopsModules/publisher/trunk/publisher/submit.php XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_category_items_sel.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_date_to_date.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_items_columns.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_items_menu.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_items_new.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_items_random_item.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_items_recent.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_items_spot.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_latest_files.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_latest_news.tpl XoopsModules/publisher/trunk/publisher/templates/blocks/publisher_search_block.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_addfile.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_archive.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_author_items.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_categories_table.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_display_full.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_display_list.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_display_summary.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_display_wfsection.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_footer.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_header.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_item.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_print.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_rss.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_search.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_singleitem.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_singleitem_block.tpl XoopsModules/publisher/trunk/publisher/templates/publisher_submit.tpl XoopsModules/publisher/trunk/publisher/thumb.php XoopsModules/publisher/trunk/publisher/view.tag.php XoopsModules/publisher/trunk/publisher/visit.php XoopsModules/publisher/trunk/publisher/xoops_version.php Added Paths: ----------- XoopsModules/publisher/releases/1.0.8/ XoopsModules/publisher/releases/1.0.8/modules/ XoopsModules/publisher/releases/1.0.8/modules/publisher/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.codeclimate.yml XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/HEAD XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/branches/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/config XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/description XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/applypatch-msg.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/commit-msg.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/fsmonitor-watchman.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/post-update.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/pre-applypatch.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/pre-commit.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/pre-push.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/pre-rebase.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/pre-receive.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/prepare-commit-msg.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/update.sample XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/index XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/info/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/info/exclude XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/logs/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/logs/HEAD XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/logs/refs/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/logs/refs/heads/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/logs/refs/heads/master XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/logs/refs/remotes/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/logs/refs/remotes/origin/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/logs/refs/remotes/origin/HEAD XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/objects/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/objects/info/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/objects/pack/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/objects/pack/pack-f020c1f427943201f79b3d903bbaa1c75e21d760.idx XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/objects/pack/pack-f020c1f427943201f79b3d903bbaa1c75e21d760.pack XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/packed-refs XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/refs/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/refs/heads/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/refs/heads/master XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/refs/remotes/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/refs/remotes/origin/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/refs/remotes/origin/HEAD XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/refs/tags/ XoopsModules/publisher/releases/1.0.8/modules/publisher/.gitattributes XoopsModules/publisher/releases/1.0.8/modules/publisher/.gitignore XoopsModules/publisher/releases/1.0.8/modules/publisher/.scrutinizer.yml XoopsModules/publisher/releases/1.0.8/modules/publisher/CONTRIBUTING.md XoopsModules/publisher/releases/1.0.8/modules/publisher/LICENSE XoopsModules/publisher/releases/1.0.8/modules/publisher/README.md XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/ XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/about.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/admin_footer.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/admin_header.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/blockform.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/blocksadmin.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/category.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/clone.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/file.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/ XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/ams.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/cjaycontent.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/fmcontent.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/news.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/smartsection.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/wfsection.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/xfsection.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import/xnews.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/import.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/index.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/item.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/main.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/menu.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/mimetypes.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/pagewrap.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/permissions.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/preferences.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/pw_delete_file.php XoopsModules/publisher/releases/1.0.8/modules/publisher/admin/pw_upload_file.php XoopsModules/publisher/releases/1.0.8/modules/publisher/archive.php XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-bg_flat_0_aaaaaa_40x100.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-bg_flat_75_ffffff_40x100.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-bg_glass_55_fbf9ee_1x400.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-bg_glass_65_ffffff_1x400.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-bg_glass_75_dadada_1x400.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-bg_glass_75_e6e6e6_1x400.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-bg_glass_95_fef1ec_1x400.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-bg_highlight-soft_75_cccccc_1x100.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-icons_222222_256x240.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-icons_2e83ff_256x240.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-icons_454545_256x240.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-icons_888888_256x240.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/images/ui-icons_cd0a0a_256x240.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/jquery.popeye.css XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/jquery.popeye.style.css XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/publisher.css XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/css/style.css XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/VeraBd.ttf XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/arrow-bg.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/bg.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/blank.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/bullet.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/button_delete.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/button_edit.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/dot-grey.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/count-2.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/enlarge-1.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/enlarge-2.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/loading.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/next-1.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/next-2.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/next.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/prev-1.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/prev-2.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/gfx/prev.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/grad-bg.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/approve.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/cat.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/clone.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/close12.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/delete.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/delete.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/doc.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/edit.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/edit.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/editcopy.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/file.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/friend.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/newanswer.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/open12.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/pdf.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/print.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icon/subcat.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/arrow.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/asc.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/desc.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/off.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/on.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/selasc.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/16/seldesc.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/32/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/32/editcopy.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/32/folder_txt.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/32/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/icons/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/important-32.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/item_icon.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/left_both.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/approve.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/cat.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/clone.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/close12.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/delete.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/delete.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/doc.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/edit.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/edit.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/editcopy.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/file.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/friend.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/newanswer.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/next.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/open12.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/pdf.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/previous.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/print.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/links/subcat.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/loadingbar.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/logoModule.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/no.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/off.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/on.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/bg1.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/compact1.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/compact2.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/compact3.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/compact4.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/enlarge1.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/enlarge2.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/enlarge3.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/enlarge4.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/loading1.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/loading2.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/loading3.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/next1.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/next3.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/pause3.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/play3.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/prev1.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/popeye/prev3.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/right_both.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/rss.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/span-bg.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/starrating.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/transparent_bg.png XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/images/working.gif XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/ XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/ajaxupload.3.9.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/behavior.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/cookies.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/funcs.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/jquery.easing.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/jquery.popeye-2.1.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/jquery.popeye-2.1.min.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/publisher.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/rating.js XoopsModules/publisher/releases/1.0.8/modules/publisher/assets/js/script.easing.js XoopsModules/publisher/releases/1.0.8/modules/publisher/author_items.php XoopsModules/publisher/releases/1.0.8/modules/publisher/backend.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/ XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/category_items_sel.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/date_to_date.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/items_columns.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/items_menu.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/items_new.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/items_random_item.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/items_recent.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/items_spot.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/latest_files.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/latest_news.php XoopsModules/publisher/releases/1.0.8/modules/publisher/blocks/search.php XoopsModules/publisher/releases/1.0.8/modules/publisher/category.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/ XoopsModules/publisher/releases/1.0.8/modules/publisher/class/BaseObjectHandler.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/BlockForm.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Category.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/CategoryHandler.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Cloner.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Common/ XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Common/Breadcrumb.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Common/Configurator.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Common/FilesManagement.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Common/ServerStats.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Common/VersionChecks.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Common/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Constants.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/File.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/FileHandler.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Form/ XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Form/CategoryForm.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Form/FileForm.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Form/ItemForm.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Form/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/class/FormDateTime.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/GroupPermHandler.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Helper.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Highlighter.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Item.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/ItemHandler.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Metagen.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Mimetype.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/MimetypeHandler.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/MimetypesUtility.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/MyTextSanitizerExtension.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/PermissionHandler.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Rating.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/RatingHandler.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Seo.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Session.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/ThemeTabForm.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/Utility.php XoopsModules/publisher/releases/1.0.8/modules/publisher/class/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/class/plugins/ XoopsModules/publisher/releases/1.0.8/modules/publisher/class/plugins/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/class/plugins/plugin.tag.php XoopsModules/publisher/releases/1.0.8/modules/publisher/codeception.yml XoopsModules/publisher/releases/1.0.8/modules/publisher/comment_delete.php XoopsModules/publisher/releases/1.0.8/modules/publisher/comment_edit.php XoopsModules/publisher/releases/1.0.8/modules/publisher/comment_new.php XoopsModules/publisher/releases/1.0.8/modules/publisher/comment_post.php XoopsModules/publisher/releases/1.0.8/modules/publisher/comment_reply.php XoopsModules/publisher/releases/1.0.8/modules/publisher/config/ XoopsModules/publisher/releases/1.0.8/modules/publisher/config/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/ XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/ajaxrating.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/changelog.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/credits.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/install.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/lang_diff.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/license.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/readme.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/docs/todo.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/extra/ XoopsModules/publisher/releases/1.0.8/modules/publisher/extra/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/extra/seo/ XoopsModules/publisher/releases/1.0.8/modules/publisher/extra/seo/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/extra/seo/sample.htaccess XoopsModules/publisher/releases/1.0.8/modules/publisher/extra/seo/seo.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/file.php XoopsModules/publisher/releases/1.0.8/modules/publisher/footer.php XoopsModules/publisher/releases/1.0.8/modules/publisher/header.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/ XoopsModules/publisher/releases/1.0.8/modules/publisher/include/ajax_rating.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/ajax_upload.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/comment_functions.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/common.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/config.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/include/notification.inc.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/oninstall.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/onupdate.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/plugin.tag.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/search.inc.php XoopsModules/publisher/releases/1.0.8/modules/publisher/include/seo.inc.php XoopsModules/publisher/releases/1.0.8/modules/publisher/index.php XoopsModules/publisher/releases/1.0.8/modules/publisher/item.php XoopsModules/publisher/releases/1.0.8/modules/publisher/language/ XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/ XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/admin.php XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/blocks.php XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/common.php XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/help/ XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/help/disclaimer.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/help/help.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/help/helpheader.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/help/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/help/license.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/help/support.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/ XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/category_item_published.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/category_item_submitted.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/global_item_category_created.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/global_item_published.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/global_item_submitted.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/item_approved.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/mail_template/item_rejected.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/main.php XoopsModules/publisher/releases/1.0.8/modules/publisher/language/english/modinfo.php XoopsModules/publisher/releases/1.0.8/modules/publisher/language/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/list.tag.php XoopsModules/publisher/releases/1.0.8/modules/publisher/makepdf.php XoopsModules/publisher/releases/1.0.8/modules/publisher/notification_update.php XoopsModules/publisher/releases/1.0.8/modules/publisher/pop.php XoopsModules/publisher/releases/1.0.8/modules/publisher/preloads/ XoopsModules/publisher/releases/1.0.8/modules/publisher/preloads/autoloader.php XoopsModules/publisher/releases/1.0.8/modules/publisher/preloads/core.php XoopsModules/publisher/releases/1.0.8/modules/publisher/preloads/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/print.php XoopsModules/publisher/releases/1.0.8/modules/publisher/rate.php XoopsModules/publisher/releases/1.0.8/modules/publisher/search.php XoopsModules/publisher/releases/1.0.8/modules/publisher/sql/ XoopsModules/publisher/releases/1.0.8/modules/publisher/sql/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/sql/mysql.sql XoopsModules/publisher/releases/1.0.8/modules/publisher/submit.php XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/ XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/ XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_category_items_sel.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_date_to_date.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_items_columns.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_items_menu.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_items_new.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_items_random_item.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_items_recent.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_items_spot.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_latest_files.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_latest_news.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/blocks/publisher_search_block.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_addfile.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_archive.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_author_items.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_categories_table.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_display_full.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_display_list.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_display_summary.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_display_wfsection.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_footer.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_header.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_item.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_print.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_rss.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_search.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_singleitem.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_singleitem_block.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/templates/publisher_submit.tpl XoopsModules/publisher/releases/1.0.8/modules/publisher/testdata/ XoopsModules/publisher/releases/1.0.8/modules/publisher/testdata/cat-data.yml XoopsModules/publisher/releases/1.0.8/modules/publisher/testdata/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/testdata/index.php XoopsModules/publisher/releases/1.0.8/modules/publisher/testdata/item-data.yml XoopsModules/publisher/releases/1.0.8/modules/publisher/tests/ XoopsModules/publisher/releases/1.0.8/modules/publisher/tests/index.html XoopsModules/publisher/releases/1.0.8/modules/publisher/tests/todo.txt XoopsModules/publisher/releases/1.0.8/modules/publisher/thumb.php XoopsModules/publisher/releases/1.0.8/modules/publisher/view.tag.php XoopsModules/publisher/releases/1.0.8/modules/publisher/visit.php XoopsModules/publisher/releases/1.0.8/modules/publisher/xoops_version.php XoopsModules/publisher/trunk/publisher/.codeclimate.yml XoopsModules/publisher/trunk/publisher/.git/ XoopsModules/publisher/trunk/publisher/.git/HEAD XoopsModules/publisher/trunk/publisher/.git/branches/ XoopsModules/publisher/trunk/publisher/.git/config XoopsModules/publisher/trunk/publisher/.git/description XoopsModules/publisher/trunk/publisher/.git/hooks/ XoopsModules/publisher/trunk/publisher/.git/hooks/applypatch-msg.sample XoopsModules/publisher/trunk/publisher/.git/hooks/commit-msg.sample XoopsModules/publisher/trunk/publisher/.git/hooks/fsmonitor-watchman.sample XoopsModules/publisher/trunk/publisher/.git/hooks/post-update.sample XoopsModules/publisher/trunk/publisher/.git/hooks/pre-applypatch.sample XoopsModules/publisher/trunk/publisher/.git/hooks/pre-commit.sample XoopsModules/publisher/trunk/publisher/.git/hooks/pre-push.sample XoopsModules/publisher/trunk/publisher/.git/hooks/pre-rebase.sample XoopsModules/publisher/trunk/publisher/.git/hooks/pre-receive.sample XoopsModules/publisher/trunk/publisher/.git/hooks/prepare-commit-msg.sample XoopsModules/publisher/trunk/publisher/.git/hooks/update.sample XoopsModules/publisher/trunk/publisher/.git/index XoopsModules/publisher/trunk/publisher/.git/info/ XoopsModules/publisher/trunk/publisher/.git/info/exclude XoopsModules/publisher/trunk/publisher/.git/logs/ XoopsModules/publisher/trunk/publisher/.git/logs/HEAD XoopsModules/publisher/trunk/publisher/.git/logs/refs/ XoopsModules/publisher/trunk/publisher/.git/logs/refs/heads/ XoopsModules/publisher/trunk/publisher/.git/logs/refs/heads/master XoopsModules/publisher/trunk/publisher/.git/logs/refs/remotes/ XoopsModules/publisher/trunk/publisher/.git/logs/refs/remotes/origin/ XoopsModules/publisher/trunk/publisher/.git/logs/refs/remotes/origin/HEAD XoopsModules/publisher/trunk/publisher/.git/objects/ XoopsModules/publisher/trunk/publisher/.git/objects/info/ XoopsModules/publisher/trunk/publisher/.git/objects/pack/ XoopsModules/publisher/trunk/publisher/.git/objects/pack/pack-f020c1f427943201f79b3d903bbaa1c75e21d760.idx XoopsModules/publisher/trunk/publisher/.git/objects/pack/pack-f020c1f427943201f79b3d903bbaa1c75e21d760.pack XoopsModules/publisher/trunk/publisher/.git/packed-refs XoopsModules/publisher/trunk/publisher/.git/refs/ XoopsModules/publisher/trunk/publisher/.git/refs/heads/ XoopsModules/publisher/trunk/publisher/.git/refs/heads/master XoopsModules/publisher/trunk/publisher/.git/refs/remotes/ XoopsModules/publisher/trunk/publisher/.git/refs/remotes/origin/ XoopsModules/publisher/trunk/publisher/.git/refs/remotes/origin/HEAD XoopsModules/publisher/trunk/publisher/.git/refs/tags/ XoopsModules/publisher/trunk/publisher/.gitattributes XoopsModules/publisher/trunk/publisher/.gitignore XoopsModules/publisher/trunk/publisher/.scrutinizer.yml XoopsModules/publisher/trunk/publisher/CONTRIBUTING.md XoopsModules/publisher/trunk/publisher/LICENSE XoopsModules/publisher/trunk/publisher/README.md XoopsModules/publisher/trunk/publisher/admin/admin_footer.php XoopsModules/publisher/trunk/publisher/admin/blockform.php XoopsModules/publisher/trunk/publisher/admin/blocksadmin.php XoopsModules/publisher/trunk/publisher/assets/images/icons/ XoopsModules/publisher/trunk/publisher/assets/images/icons/16/ XoopsModules/publisher/trunk/publisher/assets/images/icons/16/arrow.gif XoopsModules/publisher/trunk/publisher/assets/images/icons/16/asc.png XoopsModules/publisher/trunk/publisher/assets/images/icons/16/desc.png XoopsModules/publisher/trunk/publisher/assets/images/icons/16/index.html XoopsModules/publisher/trunk/publisher/assets/images/icons/16/off.png XoopsModules/publisher/trunk/publisher/assets/images/icons/16/on.png XoopsModules/publisher/trunk/publisher/assets/images/icons/16/selasc.png XoopsModules/publisher/trunk/publisher/assets/images/icons/16/seldesc.png XoopsModules/publisher/trunk/publisher/assets/images/icons/32/ XoopsModules/publisher/trunk/publisher/assets/images/icons/32/editcopy.png XoopsModules/publisher/trunk/publisher/assets/images/icons/32/folder_txt.png XoopsModules/publisher/trunk/publisher/assets/images/icons/32/index.html XoopsModules/publisher/trunk/publisher/assets/images/icons/index.html XoopsModules/publisher/trunk/publisher/assets/images/logoModule.png XoopsModules/publisher/trunk/publisher/class/BaseObjectHandler.php XoopsModules/publisher/trunk/publisher/class/BlockForm.php XoopsModules/publisher/trunk/publisher/class/Category.php XoopsModules/publisher/trunk/publisher/class/CategoryHandler.php XoopsModules/publisher/trunk/publisher/class/Cloner.php XoopsModules/publisher/trunk/publisher/class/Common/ XoopsModules/publisher/trunk/publisher/class/Common/Breadcrumb.php XoopsModules/publisher/trunk/publisher/class/Common/Configurator.php XoopsModules/publisher/trunk/publisher/class/Common/FilesManagement.php XoopsModules/publisher/trunk/publisher/class/Common/ServerStats.php XoopsModules/publisher/trunk/publisher/class/Common/VersionChecks.php XoopsModules/publisher/trunk/publisher/class/Common/index.html XoopsModules/publisher/trunk/publisher/class/Constants.php XoopsModules/publisher/trunk/publisher/class/File.php XoopsModules/publisher/trunk/publisher/class/FileHandler.php XoopsModules/publisher/trunk/publisher/class/Form/ XoopsModules/publisher/trunk/publisher/class/Form/CategoryForm.php XoopsModules/publisher/trunk/publisher/class/Form/FileForm.php XoopsModules/publisher/trunk/publisher/class/Form/ItemForm.php XoopsModules/publisher/trunk/publisher/class/Form/index.html XoopsModules/publisher/trunk/publisher/class/FormDateTime.php XoopsModules/publisher/trunk/publisher/class/GroupPermHandler.php XoopsModules/publisher/trunk/publisher/class/Helper.php XoopsModules/publisher/trunk/publisher/class/Highlighter.php XoopsModules/publisher/trunk/publisher/class/Item.php XoopsModules/publisher/trunk/publisher/class/ItemHandler.php XoopsModules/publisher/trunk/publisher/class/Metagen.php XoopsModules/publisher/trunk/publisher/class/Mimetype.php XoopsModules/publisher/trunk/publisher/class/MimetypeHandler.php XoopsModules/publisher/trunk/publisher/class/MimetypesUtility.php XoopsModules/publisher/trunk/publisher/class/MyTextSanitizerExtension.php XoopsModules/publisher/trunk/publisher/class/PermissionHandler.php XoopsModules/publisher/trunk/publisher/class/Rating.php XoopsModules/publisher/trunk/publisher/class/RatingHandler.php XoopsModules/publisher/trunk/publisher/class/Seo.php XoopsModules/publisher/trunk/publisher/class/Session.php XoopsModules/publisher/trunk/publisher/class/ThemeTabForm.php XoopsModules/publisher/trunk/publisher/class/Utility.php XoopsModules/publisher/trunk/publisher/class/plugins/index.html XoopsModules/publisher/trunk/publisher/codeception.yml XoopsModules/publisher/trunk/publisher/docs/todo.txt XoopsModules/publisher/trunk/publisher/language/english/help/disclaimer.tpl XoopsModules/publisher/trunk/publisher/language/english/help/help.tpl XoopsModules/publisher/trunk/publisher/language/english/help/helpheader.tpl XoopsModules/publisher/trunk/publisher/language/english/help/license.tpl XoopsModules/publisher/trunk/publisher/language/english/help/support.tpl XoopsModules/publisher/trunk/publisher/preloads/ XoopsModules/publisher/trunk/publisher/preloads/autoloader.php XoopsModules/publisher/trunk/publisher/preloads/core.php XoopsModules/publisher/trunk/publisher/preloads/index.html XoopsModules/publisher/trunk/publisher/testdata/ XoopsModules/publisher/trunk/publisher/testdata/cat-data.yml XoopsModules/publisher/trunk/publisher/testdata/index.html XoopsModules/publisher/trunk/publisher/testdata/index.php XoopsModules/publisher/trunk/publisher/testdata/item-data.yml Added: XoopsModules/publisher/releases/1.0.8/modules/publisher/.codeclimate.yml =================================================================== --- XoopsModules/publisher/releases/1.0.8/modules/publisher/.codeclimate.yml (rev 0) +++ XoopsModules/publisher/releases/1.0.8/modules/publisher/.codeclimate.yml 2018-11-27 00:19:12 UTC (rev 13399) @@ -0,0 +1,34 @@ +engines: + eslint: + enabled: true + csslint: + enabled: true + duplication: + enabled: true + config: + languages: + - javascript + - php + fixme: + enabled: true + phpmd: + enabled: true + config: + file_extensions: + - php + - inc + phpcodesniffer: + enabled: true + config: + file_extensions: "php,inc,lib" + standard: "PSR1,PSR2" + checks: + Generic Files LineLength TooLong: + enabled: false +ratings: + paths: + - "**.inc" + - "**.js" + - "**.lib" + - "**.php" +exclude_paths: [] Property changes on: XoopsModules/publisher/releases/1.0.8/modules/publisher/.codeclimate.yml ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/HEAD =================================================================== --- XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/HEAD (rev 0) +++ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/HEAD 2018-11-27 00:19:12 UTC (rev 13399) @@ -0,0 +1 @@ +ref: refs/heads/master Property changes on: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/HEAD ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/config =================================================================== --- XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/config (rev 0) +++ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/config 2018-11-27 00:19:12 UTC (rev 13399) @@ -0,0 +1,11 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = false + logallrefupdates = true +[remote "origin"] + url = https://github.com/XoopsModules25x/publisher.git + fetch = +refs/heads/*:refs/remotes/origin/* +[branch "master"] + remote = origin + merge = refs/heads/master Property changes on: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/config ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/description =================================================================== --- XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/description (rev 0) +++ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/description 2018-11-27 00:19:12 UTC (rev 13399) @@ -0,0 +1 @@ +Unnamed repository; edit this file 'description' to name the repository. Property changes on: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/description ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/applypatch-msg.sample =================================================================== --- XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/applypatch-msg.sample (rev 0) +++ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/applypatch-msg.sample 2018-11-27 00:19:12 UTC (rev 13399) @@ -0,0 +1,15 @@ +#!/bin/sh +# +# An example hook script to check the commit log message taken by +# applypatch from an e-mail message. +# +# The hook should exit with non-zero status after issuing an +# appropriate message if it wants to stop the commit. The hook is +# allowed to edit the commit message file. +# +# To enable this hook, rename this file to "applypatch-msg". + +. git-sh-setup +commitmsg="$(git rev-parse --git-path hooks/commit-msg)" +test -x "$commitmsg" && exec "$commitmsg" ${1+"$@"} +: Property changes on: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/applypatch-msg.sample ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/commit-msg.sample =================================================================== --- XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/commit-msg.sample (rev 0) +++ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/commit-msg.sample 2018-11-27 00:19:12 UTC (rev 13399) @@ -0,0 +1,24 @@ +#!/bin/sh +# +# An example hook script to check the commit log message. +# Called by "git commit" with one argument, the name of the file +# that has the commit message. The hook should exit with non-zero +# status after issuing an appropriate message if it wants to stop the +# commit. The hook is allowed to edit the commit message file. +# +# To enable this hook, rename this file to "commit-msg". + +# Uncomment the below to add a Signed-off-by line to the message. +# Doing this in a hook is a bad idea in general, but the prepare-commit-msg +# hook is more suited to it. +# +# SOB=$(git var GIT_AUTHOR_IDENT | sed -n 's/^\(.*>\).*$/Signed-off-by: \1/p') +# grep -qs "^$SOB" "$1" || echo "$SOB" >> "$1" + +# This example catches duplicate Signed-off-by lines. + +test "" = "$(grep '^Signed-off-by: ' "$1" | + sort | uniq -c | sed -e '/^[ ]*1[ ]/d')" || { + echo >&2 Duplicate Signed-off-by lines. + exit 1 +} Property changes on: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/commit-msg.sample ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/fsmonitor-watchman.sample =================================================================== --- XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/fsmonitor-watchman.sample (rev 0) +++ XoopsModules/publisher/releases/1.0.8/modules/publisher/.git/hooks/fsmonitor-watchman.sample 2018-11-27 00:19:12 UTC (rev 13399) @@ -0,0 +1,114 @@ +#!/usr/bin/perl + +use strict; +use warnings; +use IPC::Open2; + +# An example hook script to integrate Watchman +# (https://facebook.github.io/watchman/) with git to speed up detecting +# new and modified files. +# +# The hook is passed a version (currently 1) and a time in nanoseconds +# formatted as a string and outputs to stdout all files that have been +# modified since the given time. Paths must be relative to the root of +# the working tree and separated by a single NUL. +# +# To enable this hook, rename this file to "query-watchman" and set +# 'git config core.fsmonitor .git/hooks/query-watchman' +# +my ($version, $time) = @ARGV; + +# Chec... [truncated message content] |
From: <chr...@us...> - 2018-11-26 21:45:35
|
Revision: 13398 http://sourceforge.net/p/xoops/svn/13398 Author: chronolabscoop Date: 2018-11-26 21:45:32 +0000 (Mon, 26 Nov 2018) Log Message: ----------- Emails/Aliases Account's Propogation REST API Services - v1.0.7 Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-11-26 20:05:07 UTC (rev 13397) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-11-26 21:45:32 UTC (rev 13398) @@ -8,7 +8,7 @@ #### Demo: http://emails.snails.email -[](http://www.youtube.com/watch?v=MK4CwDk_bXE) +[](http://www.youtube.com/watch?v=qCABctfNaaA) This API allows for a REST API to generate email addresses with IMAP, POP, SMTP resolve as well as maintenance and a client directory for each domain which can be assigned. The installation include configuration of dovecove in a number of linux formats, but you will have to still configure manually your postfix smtp relay settings, these are not included in the instructions for installation. |
From: <chr...@us...> - 2018-11-26 20:05:12
|
Revision: 13397 http://sourceforge.net/p/xoops/svn/13397 Author: chronolabscoop Date: 2018-11-26 20:05:07 +0000 (Mon, 26 Nov 2018) Log Message: ----------- Emails/Aliases Account's Propogation REST API Services - v1.0.7 Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php 2018-11-26 19:35:19 UTC (rev 13396) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php 2018-11-26 20:05:07 UTC (rev 13397) @@ -138,7 +138,7 @@ $mailers = new APIMailer($from['email'], $from['name']); $body = file_get_contents(__DIR__ . DIRECTORY_SEPARATOR . 'email-mx-service.html'); $mailers->multimailer->IsHTML(true); - if ($mailers->send($to, $cc, array($from['email']), "MX DNS Record Required for: " . $domain['domain'], str_replace("%apiurl", API_URL, str_replace('%company', API_LICENSE_COMPANY, str_replace('%domain', $domain['domain'], str_replace('%mx', $mx['mx'], str_replace('%target', $mx['target'], str_replace('%pirority', $mx['pirority'], str_replace('%fromname', $from['name'], str_replace('%fromemail', $from['email'], $body)))))))))) + if ($mailers->sendMail($to, $cc, array($from['email']), "MX DNS Record Required for: " . $domain['domain'], str_replace("%apiurl", API_URL, str_replace('%company', API_LICENSE_COMPANY, str_replace('%domain', $domain['domain'], str_replace('%mx', $mx['mx'], str_replace('%target', $mx['target'], str_replace('%pirority', $mx['pirority'], str_replace('%fromname', $from['name'], str_replace('%fromemail', $from['email'], $body))))))))), array(), "", true) { if (!$GLOBALS['APIDB']->queryF($sql = "UPDATE `" . $GLOBALS['APIDB']->prefix('domains') . "` SET `mxemail` = UNIX_TIMESTAMP() + " . (3600 * 24 * mt_rand(2, 5)) . " WHERE `id` = " . $domain['id'])) die("SQL Failed: $sql;"); Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-11-26 19:35:19 UTC (rev 13396) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-11-26 20:05:07 UTC (rev 13397) @@ -1517,7 +1517,7 @@ $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<input type='textbox' name='username' id='username' size='23' /> <strong style='font-size: 247%'>@</strong> "; $form[] = "\t\t\t\t<select name='domain' id='format'/>"; - $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` > UNIX_TIMESTAMP() ORDER BY `domain` ASC"); + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() ORDER BY `domain` ASC"); while($row = $GLOBALS['APIDB']->fetchArray($result)) $form[] = "\t\t\t\t\t<option value='".$row['key']."'>".$row['domain']."</option>"; $form[] = "\t\t\t\t</select>"; @@ -1582,7 +1582,7 @@ $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<input type='textbox' name='email[username]' id='email' size='23' /> <strong style='font-size: 247%'>@</strong> "; $form[] = "\t\t\t\t<select name='email[domainkey]' id='format'/>"; - $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` > UNIX_TIMESTAMP() ORDER BY `domain` ASC"); + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() ORDER BY `domain` ASC"); while($row = $GLOBALS['APIDB']->fetchArray($result)) $form[] = "\t\t\t\t\t<option value='".$row['key']."'>".$row['domain']."</option>"; $form[] = "\t\t\t\t</select>"; |
From: <chr...@us...> - 2018-11-26 19:35:27
|
Revision: 13396 http://sourceforge.net/p/xoops/svn/13396 Author: chronolabscoop Date: 2018-11-26 19:35:19 +0000 (Mon, 26 Nov 2018) Log Message: ----------- Emails/Aliases Account's Propogation REST API Services - v1.0.7 Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/help.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/index.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/config.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/language/english/install.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_virtual.sql Removed Paths: ------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/data/emails.localhost/ Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess 2018-11-26 19:35:19 UTC (rev 13396) @@ -17,5 +17,5 @@ RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z])/activation.html ./activation.php?version=$1&mode=activation&emailkey=$2&actkey=$3 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/(aliases|emails|domains).api ./index.php?version=$1&authkey=$2&mode=$3 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/(aliases|domains|users)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&mode=$3&format=$4 [L,NC,QSA] -RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(emails|pgpkeys)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&format=$5 [L,NC,QSA] +RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(emails|pgpkeys|aliases)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&format=$5 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(edit|delete)/(email|alias|domain|user)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&type=$5&format=$6 [L,NC,QSA] Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-11-26 19:35:19 UTC (rev 13396) @@ -2,12 +2,14 @@ # Emails/Aliases Account's Propogation REST API Services -## Version: 1.0.4 (stable) +## Version: 1.0.7 (stable) -### Author: Dr. Simon Antony Roberts <simon@snails.email> +### Author: Dr. Simon Antony Roberts <simon@ordinance.space> #### Demo: http://emails.snails.email +[](http://www.youtube.com/watch?v=MK4CwDk_bXE) + This API allows for a REST API to generate email addresses with IMAP, POP, SMTP resolve as well as maintenance and a client directory for each domain which can be assigned. The installation include configuration of dovecove in a number of linux formats, but you will have to still configure manually your postfix smtp relay settings, these are not included in the instructions for installation. This REST API allows for configuration of email account remotely from other websites and sources via REST API calling, and it is protected by the requirement of using an admin username and password for this defining purposes! @@ -37,7 +39,7 @@ RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z])/activation.html ./activation.php?version=$1&mode=activation&emailkey=$2&actkey=$3 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/(aliases|emails|domains).api ./index.php?version=$1&authkey=$2&mode=$3 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/(aliases|domains|users)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&mode=$3&format=$4 [L,NC,QSA] - RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(emails|pgpkeys)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&format=$5 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(emails|pgpkeys|aliases)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&format=$5 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(edit|delete)/(email|alias|domain|user)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&type=$5&format=$6 [L,NC,QSA] ## Scheduled Cron Job Details., Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/help.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/help.php 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/help.php 2018-11-26 19:35:19 UTC (rev 13396) @@ -147,11 +147,11 @@ <h2>PGPKEY Document Output</h2> <p>This is done with the <em>pgpkey.api</em> extension at the end of the url, you replace the example address with either a domain! You can also include PGP Keys with emailing the key in the body or as an attachment to: <strong><em><?php echo API_EMAIL_PGP_KEYS; ?></em></strong></p> <blockquote> - <?php echo getHTMLForm('newpgpkey', $authkey); ?> + <?php echo getHTMLForm('addpgpkey', $authkey); ?> </blockquote> <h3>This the HTML Code surrounding the api call</h3> <pre style="max-height: 300px; overflow: scroll;"> - <?php echo htmlspecialchars(getHTMLForm('newpgpkey', $authkey)); ?> + <?php echo htmlspecialchars(getHTMLForm('addpgpkey', $authkey)); ?> </pre> <h2>RAW Document Output</h2> <p>This is done with the <em>raw.api</em> extension at the end of the url, you replace the example address with either a domain, an IPv4 or IPv6 address the following example is of calls to the api</p> Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-11-26 19:35:19 UTC (rev 13396) @@ -453,6 +453,90 @@ } +if (!function_exists("addEmail")) { + /** + * addEmail() + * + * @param mixed $email + * @param mixed $antispam + * @return bool|mixed + */ + function addAlias($authkey, $name = '', $username = '', $domainkey = '', $destination = '', $callback = '', $format = 'json') + { + $return = checkAuthKey($authkey); + if (empty($return)) + { + if (strlen($domainkey)==32) { + $domainid = getDomainID($domainkey); + $sql = "SELECT `domain`, `pid`, `zonekey` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `id` = '$domainid'"; + list($domain, $pid, $zonekey) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); + $domainpath = implode(DS, array_reverse(explode('.', $domain))); + } else + $return = array('code' => 501, 'aliaskey' => md5(NULL. 'alias'), 'errors' => array('123' => 'Domain Key not Found!!!')); + + if (empty($return) && !checkEmail($destination)) + $return = array('code' => 501, 'aliaskey' => md5(NULL. 'alias'), 'errors' => array('126' => 'Destination Email Address is not an addressed formating correctly!!!')); + + if (empty($return)) + { + $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE ((`email` LIKE '$username@$domain' OR `email_full` = '$username@$domain') AND `destination` = '$destination')"; + list($count) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); + if ($count==0) + { + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` (`name`, `email`, `email_full`, `destination`, `domainid`, `uid`, `pid`, `created`, `callback`) VALUES ('" . $GLOBALS['APIDB']->escape($name) . "', '$username@$domain', '$username@$domain', '$destination', '$domainid', '" . $GLOBALS['uid'] . "', '$pid', UNIX_TIMESTAMP(), '" . $GLOBALS['APIDB']->escape($callback) . "')"; + if ($GLOBALS['APIDB']->queryF($sql)) + { + $sql = "SELECT md5(concat(`id`, '" . API_URL . "', 'alias')) FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE `id` = '".$GLOBALS['APIDB']->getInsertId()."'"; + list($aliaskey) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); + $_SESSION['aliaskey'] = $aliaskey; + setcookie('aliaskey', $_SESSION['aliaskey'], 3600 + $time, '/', API_COOKIE_DOMAIN); + + if (!is_dir($maildir)) + mkdir($maildir, 0777, true); + + if (!is_dir(API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys')) + mkdir(API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys', 0777, true); + + if (!file_exists(API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . $username . '@' . $domain . ".asc")) { + if (file_exists($script = dirname(__DIR__) . DS . 'crons' . DS . 'generate-pgpkeys.sh')) + $sh = file($script); + else { + $sh = array(); + $sh[] = "unlink \"" . dirname(__DIR__) . DS . 'crons' . DS . 'generate-pgpkeys.sh' . "\"\n"; + } + + writeRawFile($diz = API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . "$username@$domain.diz", str_replace('%name', "$username@$domain", str_replace('%email', "$username@$domain", str_replace('%subbits', mt_rand(API_MINBITS_PGP_KEYS, API_MAXBITS_PGP_KEYS), str_replace('%bits', mt_rand(API_MINBITS_PGP_KEYS, API_MAXBITS_PGP_KEYS), file_get_contents(__DIR__ . DS . 'data' . DS . 'gen-key-script.diz')))))); + $sh[] = "gpg --batch --gen-key \"$diz\"\n"; + $sh[] = "unlink \"$diz\"\n"; + $sh[] = "gpg --armor --export $username@$domain > \"" . API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . $username . '@' . $domain . ".asc\"\n"; + foreach(file(__DIR__ . DS . 'data' . DS . 'keyservers-hostnames.diz') as $keyserver) + $sh[] = "gpg --keyserver " . str_replace(array("\n", "\r", "\t"), "", trim($keyserver)) . " --send-key $username@$domain\n"; + writeRawFile($script, implode("", $sh)); + + if (strlen($callback) > 0) + addCallback($callback, array('op' => 'created-alias', 'aliaskey' => $aliaskey, 'alias' => '$username@$domain', 'username' => $username, 'domain' => $domain, 'domainkey' => $domainkey, 'destination' => $destination)); + + $return = array('code' => 201, 'aliaskey' => $_SESSION['aliaskey'], 'errors' => array()); + } else { + + if (strlen($callback) > 0) + addCallback($callback, array('op' => 'created-alias', 'aliaskey' => $aliaskey, 'alias' => '$username@$domain', 'username' => $username, 'domain' => $domain, 'domainkey' => $domainkey, 'destination' => $destination, 'pgpkey' => file_get_contents(API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . $username . '@' . $domain . ".asc"))); + + $return = array('code' => 201, 'aliaskey' => $_SESSION['aliaskey'], 'errors' => array()); + } + } else { + $return = array('code' => 501, 'emailkey' => md5(NULL. 'email'), 'errors' => array('sql' => $sql, $GLOBALS['APIDB']->errno() => $GLOBALS['APIDB']->error())); + } + } else { + $return = array('code' => 501, 'emailkey' => md5(NULL. 'email'), 'errors' => array('103' => 'Record Already Exists!!!')); + } + } + } + return $return; + } +} + + if (!function_exists("addUser")) { /** * checkEmail() @@ -713,6 +797,61 @@ } } + +if (!function_exists("getEmail")) { + /** + * checkEmail() + * + * @param mixed $email + * @param mixed $antispam + * @return bool|mixed + */ + function getEmail($authkey, $emailkey = '', $format = 'json') + { + $return = checkAuthKey($authkey); + if (empty($return)) + { + $return['code'] = 201; + $sql = "SELECT * FROM `" . $GLOBALS['APIDB']->prefix('mail_users') . "` WHERE `id` = " . getEmailID($emailkey); + $result = $GLOBALS['APIDB']->queryF($sql); + while($email = $GLOBALS['APIDB']->fetchArray($result)) { + unset($email['id']); + unset($email['password']); + unset($email['password_enc']); + $return[$emailkey][] = $email; + } + } + return $return; + } +} + + + +if (!function_exists("getAlias")) { + /** + * checkEmail() + * + * @param mixed $email + * @param mixed $antispam + * @return bool|mixed + */ + function getAlias($authkey, $aliaskey = '', $format = 'json') { + $return = checkAuthKey($authkey); + if (empty($return)) + { + $return['code'] = 201; + $sql = "SELECT * FROM `" . $GLOBALS['APIDB']->prefix('mail_virtual') . "` WHERE `id` = " . getAliasID($aliaskey); + $result = $GLOBALS['APIDB']->queryF($sql); + while($alias = $GLOBALS['APIDB']->fetchArray($result)) { + unset($alias['id']); + $return[$aliaskey][] = $alias; + } + } + return $return; + } +} + + if (!function_exists("checkEmail")) { /** * checkEmail() @@ -1272,11 +1411,14 @@ $form[] = "\t\t\t\t<label for='pgpkey'>PGP Key: <font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold'>*</font></label>"; $form[] = "\t\t\t</td>"; $form[] = "\t\t\t<td>"; - $form[] = "\t\t\t\t<textarea name='pgpkey' id='pgpkey' col='41' row='11'></textarea>"; + $form[] = "\t\t\t\t<textarea name='pgpkey' id='pgpkey' cols='42' rows='17'></textarea>"; $form[] = "\t\t\t</td>"; $form[] = "\t\t\t<td> </td>"; $form[] = "\t\t</tr>"; $form[] = "\t\t\t<td style='width: 320px;'>"; + $form[] = "\t\t\t\t<label for='pgpkey'>Format: <font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold'>*</font></label>"; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<select name='format' id='format'/>"; $form[] = "\t\t\t\t\t<option value='raw'>RAW PHP Output</option>"; $form[] = "\t\t\t\t\t<option value='json' selected='selected'>JSON Output</option>"; @@ -1360,7 +1502,16 @@ $form[] = "<form name='new-alias' method=\"POST\" enctype=\"multipart/form-data\" action=\"" . API_URL . '/v1/' . $authkey . '/aliases.api">'; $form[] = "\t<table class='new-alias' id='alias-record' style='vertical-align: top !important; min-width: 98%;'>"; $form[] = "\t\t<tr>"; + $form[] = "\t\t\t<td style='width: 320px;'>"; + $form[] = "\t\t\t\t<label for='notify'>Email Alias Name: <font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold'>*</font></label>"; + $form[] = "\t\t\t</td>"; $form[] = "\t\t\t<td>"; + $form[] = "\t\t\t\t<input type='textbox' name='name' id='name' size='41' maxlen='255' value='' /> "; + $form[] = "\t\t\t</td>"; + $form[] = "\t\t\t<td> </td>"; + $form[] = "\t\t</tr>"; + $form[] = "\t\t<tr>"; + $form[] = "\t\t\t<td>"; $form[] = "\t\t\t\t<label for='email'>Email: <font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold'>*</font></label>"; $form[] = "\t\t\t</td>"; $form[] = "\t\t\t<td style='width: 320px;'>"; @@ -1398,6 +1549,7 @@ $form[] = "\t\t</tr>"; $form[] = "\t\t<tr>"; $form[] = "\t\t\t<td colspan='3' style='padding-left:64px;'>"; + $form[] = "\t\t\t\t<input type='hidden' value='' name='callback'> <!-- Callback URL for PGP Key etc -->"; $form[] = "\t\t\t\t<input type='hidden' value='newalias' name='mode'>"; $form[] = "\t\t\t\t<input type='submit' value='Create New Email Alias' name='submit' style='padding:11px; font-size:122%;'>"; $form[] = "\t\t\t</td>"; @@ -1460,7 +1612,7 @@ $form[] = "\t\t\t\t<label for='size'>Mailbox Size (Bytes): <font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold'>*</font></label>"; $form[] = "\t\t\t</td>"; $form[] = "\t\t\t<td>"; - $form[] = "\t\t\t\t<input type='textbox' name='size' id='size' size='41' maxlen='255' value='" . (1024 * 1024 * 100) . "' /> "; + $form[] = "\t\t\t\t<input type='textbox' name='size' id='size' size='41' maxlen='255' value='" . mt_rand((API_MINIMUM_INBOX_SIZES * 1024 * 1024 * 1024), (API_MAXIMUM_INBOX_SIZES * 1024 * 1024 * 1024)) . "' /> "; $form[] = "\t\t\t</td>"; $form[] = "\t\t\t<td> </td>"; $form[] = "\t\t</tr>"; Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-11-26 19:35:19 UTC (rev 13396) @@ -41,5 +41,5 @@ /** * Define API version */ -define('API_VERSION', 'Emails Propogation REST Services API 1.0.4'); +define('API_VERSION', 'Emails Propogation REST Services API 1.0.7'); define('API_TYPE', 'emails-api'); Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/index.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/index.php 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/index.php 2018-11-26 19:35:19 UTC (rev 13396) @@ -96,14 +96,14 @@ if (!empty($inner['email']['username']) && !empty($inner['email']['domainkey']) && !empty($inner['name']) && !empty($inner['password']) && !empty($inner['vpass']) && !empty($inner['size']) && !empty($inner['notify'])) $data = addEmail($inner['authkey'], $inner['name'], $inner['email']['username'], $inner['email']['domainkey'], $inner['password'], $inner['vpass'], $inner['size'], $inner['notify'], $inner['callback'], $inner['format']); elseif (!empty($inner['authkey']) && !empty($inner['key'])) - $data = getEmails($inner['authkey'], $inner['key']); + $data = getEmail($inner['authkey'], $inner['key']); break; case 'newalias': case 'aliases': - if (!empty($inner['domain']) && !empty($inner['username']) && !empty($inner['domain']) && !empty($inner['destination'])) - $data = addAlias($inner['authkey'], $inner['username'], $inner['domain'], $inner['destination'], $inner['format']); - elseif (!empty($inner['authkey']) && !empty($inner['key'])) - $data = getAliases($inner['authkey'], $inner['key']); + if (!empty($inner['domain']) && !empty($inner['username']) && !empty($inner['destination']) && !empty($inner['name'])) + $data = addAlias($inner['authkey'], $inner['name'], $inner['username'], $inner['domain'], $inner['destination'], $inner['callback'], $inner['format']); + elseif (!empty($inner['authkey']) && !empty($inner['key'])) + $data = getAlias($inner['authkey'], $inner['key']); break; case 'users': if (!empty($inner['uname']) && !empty($inner['email']) && !empty($inner['pass']) && !empty($inner['vpass'])) Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/config.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/config.php 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/config.php 2018-11-26 19:35:19 UTC (rev 13396) @@ -107,11 +107,11 @@ $configs['pgp_keys'] = array( 'email' => 'pgpkeys@'.parse_url($_SESSION['settings']['URL'], PHP_URL_HOST), 'imap' => 'imap.'.parse_url($_SESSION['settings']['URL'], PHP_URL_HOST), - 'port' => '143', + 'port' => '993', 'user' => '', 'pass' => '', - 'maxbits' => '4096', - 'minbits' => '1024', + 'maxbits' => mt_rand(2048, 4096), + 'minbits' => mt_rand(1024, 2047), ); $configs['inbox_sizes'] = array( Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/language/english/install.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/language/english/install.php 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/language/english/install.php 2018-11-26 19:35:19 UTC (rev 13396) @@ -122,10 +122,10 @@ define('API_USER_PGPKEYS_HELP', 'Login Username for email inbox'); define('API_PASS_PGPKEYS_LABEL', 'Password for Email Inbox Drop Box'); define('API_PASS_PGPKEYS_HELP', 'Login Password for email inbox'); -define('API_MINBITS_PGPKEYS_LABEL', 'Minimum Bits to randomly select from generating PGP Keys'); -define('API_MINBITS_PGPKEYS_HELP', 'Minimum Bits for PGP Keys'); -define('API_MAXBITS_PGPKEYS_LABEL', 'Maximum Bits to randomly select from generating PGP Keys'); -define('API_MAXBITS_PGPKEYS_HELP', 'Maximum Bits for PGP Keys'); +define('API_MINBITS_PGPKEYS_LABEL', 'Minimum Bits to randomly select from generating PGP Keys (min = 1024)'); +define('API_MINBITS_PGPKEYS_HELP', 'Minimum Bits for PGP Keys (min = 1024)'); +define('API_MAXBITS_PGPKEYS_LABEL', 'Maximum Bits to randomly select from generating PGP Keys (max = 4096)'); +define('API_MAXBITS_PGPKEYS_HELP', 'Maximum Bits for PGP Keys (max = 4096)'); define('API_MAXIMUM_INBOXMBS_LABEL', 'Maximum inbox Mb\'s'); define('API_MAXIMUM_INBOXMBS_HELP', 'This is an maximum number of mb\'s for the inbox'); define('API_MINIMUM_INBOXMBS_LABEL', 'Minimum inbox Mb\'s'); Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql 2018-11-26 19:35:19 UTC (rev 13396) @@ -16,6 +16,7 @@ `password_enc` tinyblob, `uid` int(11) unsigned NOT NULL DEFAULT '0', `pid` int(11) unsigned NOT NULL DEFAULT '0', + `kid` mediumint(32) unsigned NOT NULL DEFAULT '0', `homedir` varchar(255) NOT NULL DEFAULT '', `maildir` varchar(255) NOT NULL DEFAULT '', `postfix` enum('Y','N') NOT NULL DEFAULT 'Y', Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_virtual.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_virtual.sql 2018-11-01 13:07:22 UTC (rev 13395) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_virtual.sql 2018-11-26 19:35:19 UTC (rev 13396) @@ -3,12 +3,18 @@ # CREATE TABLE `mail_virtual` ( - `id` int(11) NOT NULL AUTO_INCREMENT, + `id` mediumint(128) unsigned NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL DEFAULT '', + `callback` varchar(255) NOT NULL DEFAULT '', `email` varchar(255) NOT NULL DEFAULT '', `email_full` varchar(255) NOT NULL DEFAULT '', `destination` varchar(255) NOT NULL DEFAULT '', - `uid` int(11) NOT NULL DEFAULT '0', + `uid` int(11) unsigned NOT NULL DEFAULT '0', + `pid` int(11) unsigned NOT NULL DEFAULT '0', + `kid` mediumint(32) unsigned NOT NULL DEFAULT '0', `domainid` int(11) NOT NULL DEFAULT '0', + `created` int(11) NOT NULL DEFAULT '0', + `emailed` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `emails` (`email`,`email_full`,`destination`) ) ENGINE=INNODB DEFAULT CHARSET=utf8; |
From: <chr...@us...> - 2018-11-01 13:07:36
|
Revision: 13395 http://sourceforge.net/p/xoops/svn/13395 Author: chronolabscoop Date: 2018-11-01 13:07:22 +0000 (Thu, 01 Nov 2018) Log Message: ----------- FontSVN+ - Client for Sourceforge.net Web Fonts SVN! Added Paths: ----------- XoopsModules/fontsvn/ XoopsModules/fontsvn/trunk/ XoopsModules/fontsvn/trunk/modules/ XoopsModules/fontsvn/trunk/modules/fontsvn/ XoopsModules/fontsvn/trunk/modules/fontsvn/.htaccess XoopsModules/fontsvn/trunk/modules/fontsvn/admin/ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/.htaccess XoopsModules/fontsvn/trunk/modules/fontsvn/admin/about.php XoopsModules/fontsvn/trunk/modules/fontsvn/admin/footer.php XoopsModules/fontsvn/trunk/modules/fontsvn/admin/header.php XoopsModules/fontsvn/trunk/modules/fontsvn/admin/identities.php XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.php XoopsModules/fontsvn/trunk/modules/fontsvn/admin/menu.php XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/ XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/fontier_block_tag.php XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_downloads_items.php XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_viewed_items.php XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/new_items.php XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_downloads_items.php XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_items.php XoopsModules/fontsvn/trunk/modules/fontsvn/class/ XoopsModules/fontsvn/trunk/modules/fontsvn/class/identities.php XoopsModules/fontsvn/trunk/modules/fontsvn/class/identities_indexes.php XoopsModules/fontsvn/trunk/modules/fontsvn/class/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/class/indexes.php XoopsModules/fontsvn/trunk/modules/fontsvn/class/objects.php XoopsModules/fontsvn/trunk/modules/fontsvn/comment_delete.php XoopsModules/fontsvn/trunk/modules/fontsvn/comment_edit.php XoopsModules/fontsvn/trunk/modules/fontsvn/comment_new.php XoopsModules/fontsvn/trunk/modules/fontsvn/comment_post.php XoopsModules/fontsvn/trunk/modules/fontsvn/comment_reply.php XoopsModules/fontsvn/trunk/modules/fontsvn/crons/ XoopsModules/fontsvn/trunk/modules/fontsvn/crons/compare-json.php XoopsModules/fontsvn/trunk/modules/fontsvn/crons/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/crons/pair-css.php XoopsModules/fontsvn/trunk/modules/fontsvn/crons/pair-json.php XoopsModules/fontsvn/trunk/modules/fontsvn/crons/repair-css.php XoopsModules/fontsvn/trunk/modules/fontsvn/crons/verify-svn.php XoopsModules/fontsvn/trunk/modules/fontsvn/download/ XoopsModules/fontsvn/trunk/modules/fontsvn/download/.htaccess XoopsModules/fontsvn/trunk/modules/fontsvn/download/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/download.php XoopsModules/fontsvn/trunk/modules/fontsvn/font/ XoopsModules/fontsvn/trunk/modules/fontsvn/font/.htaccess XoopsModules/fontsvn/trunk/modules/fontsvn/font/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/font.php XoopsModules/fontsvn/trunk/modules/fontsvn/glyph/ XoopsModules/fontsvn/trunk/modules/fontsvn/glyph/.htaccess XoopsModules/fontsvn/trunk/modules/fontsvn/glyph/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/glyph.php XoopsModules/fontsvn/trunk/modules/fontsvn/header.php XoopsModules/fontsvn/trunk/modules/fontsvn/images/ XoopsModules/fontsvn/trunk/modules/fontsvn/images/assets/ XoopsModules/fontsvn/trunk/modules/fontsvn/images/assets/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/ XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/16x16/ XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/16x16/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/24x24/ XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/24x24/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/32x32/ XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/32x32/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/48x48/ XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/48x48/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/images/icons/module_fontsvn+.png XoopsModules/fontsvn/trunk/modules/fontsvn/images/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/include/ XoopsModules/fontsvn/trunk/modules/fontsvn/include/comment_functions.php XoopsModules/fontsvn/trunk/modules/fontsvn/include/functions.php XoopsModules/fontsvn/trunk/modules/fontsvn/include/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/include/notification.inc.php XoopsModules/fontsvn/trunk/modules/fontsvn/index.php XoopsModules/fontsvn/trunk/modules/fontsvn/language/ XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/ XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/admin.php XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/blocks.css XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/blocks.php XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/errors.php XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/mail_template/ XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/mail_template/fontier_newfont_notify.tpl XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/mail_template/fontier_newindex_notify.tpl XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/main.php XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/modinfo.php XoopsModules/fontsvn/trunk/modules/fontsvn/language/english/style.css XoopsModules/fontsvn/trunk/modules/fontsvn/language/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/list.tag.php XoopsModules/fontsvn/trunk/modules/fontsvn/naming/ XoopsModules/fontsvn/trunk/modules/fontsvn/naming/.htaccess XoopsModules/fontsvn/trunk/modules/fontsvn/naming/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/naming.php XoopsModules/fontsvn/trunk/modules/fontsvn/notification_update.php XoopsModules/fontsvn/trunk/modules/fontsvn/preloads/ XoopsModules/fontsvn/trunk/modules/fontsvn/preloads/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/preloads/svn.php XoopsModules/fontsvn/trunk/modules/fontsvn/preview/ XoopsModules/fontsvn/trunk/modules/fontsvn/preview/.htaccess XoopsModules/fontsvn/trunk/modules/fontsvn/preview/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/preview.php XoopsModules/fontsvn/trunk/modules/fontsvn/releases.php XoopsModules/fontsvn/trunk/modules/fontsvn/sql/ XoopsModules/fontsvn/trunk/modules/fontsvn/sql/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/sql/mysql.sql XoopsModules/fontsvn/trunk/modules/fontsvn/sql/tables.diz XoopsModules/fontsvn/trunk/modules/fontsvn/templates/ XoopsModules/fontsvn/trunk/modules/fontsvn/templates/admin/ XoopsModules/fontsvn/trunk/modules/fontsvn/templates/admin/fontier_identities.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/admin/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/ XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/fontier_last_downloads_items.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/fontier_last_viewed_items.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/fontier_new_items.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/fontier_popular_downloads_items.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/fontier_popular_items.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/fontier_tag_block_cloud.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/fontier_tag_block_top.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/blocks/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/fontier_font.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/fontier_index.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/fontier_index_base.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/fontier_releases.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/fontier_uploads.html XoopsModules/fontsvn/trunk/modules/fontsvn/templates/index.html XoopsModules/fontsvn/trunk/modules/fontsvn/uploads.php XoopsModules/fontsvn/trunk/modules/fontsvn/uploads.php.save XoopsModules/fontsvn/trunk/modules/fontsvn/view.tag.php XoopsModules/fontsvn/trunk/modules/fontsvn/xoops_version.php Added: XoopsModules/fontsvn/trunk/modules/fontsvn/.htaccess =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/.htaccess (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/.htaccess 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,47 @@ +############################################################################################################################ +# +# Chronolabs Cooperative Fontier+ +# +# You may not change or alter any portion of this comment or credits +# of supporting developers from this source code or any supporting source code +# which is considered copyrighted (c) material of the original comment or credit authors. +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# @copyright Chronolabs Cooperative http://labs.coop +# @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) +# @package fontsvn+ +# @since 1.0.1 +# @author Simon Roberts <wis...@us...> +# @subpackage fontsvn+ +# @description XOOPS Client for Fonts REST API - http://fonts.labs.coop +# @link http://fonts.labs.coop +# @link http://sourceforge.net/projects/chronolabs +# @link http://cipher.labs.coop +# +############################################################################################################################ +php_value memory_limit 360M +php_value error_reporting 0 +php_value display_errors 0 + +RewriteEngine On +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d + +RewriteRule ^bin/(.*?)/(font).ufo/(.*?)$ $2.php?mode=ufo&clause=$1&path=$3 [L,NC,QSA] +RewriteRule ^bin/(.*?)/(font).(.*?)?(.*?)$ $2.php?mode=$3&clause=$1&$4 [L,NC,QSA] +RewriteRule ^bin/(.*?)/(font).(.*?)$ $2.php?mode=$3&clause=$1 [L,NC,QSA] +RewriteRule ^css/(.*?)/(.*?).(css)?(.*?)$ $3.php?clause=$1&$4 [L,NC,QSA] +RewriteRule ^css/(.*?)/(.*?).(css)$ $3.php?clause=$1 [L,NC,QSA] +RewriteRule ^api/(.*?)/(callback).api?(.*?)$ $2.php?mode=$1&$3 [L,NC,QSA] +RewriteRule ^api/(.*?)/(callback).api$ $2.php?mode=$1 [L,NC,QSA] +RewriteRule ^(download)/([0-9]+)$ $1.php?mode=$1&clause=$2 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/upload.html$ index.php?mode=upload&clause=$1 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/surveys.html$ index.php?mode=surveys&clause=$1 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/survey.html$ index.php?mode=survey&clause=$1 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/(.*?)/font.html$ index.php?mode=font&clause=$1&name=$2 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/node.html$ index.php?mode=node&clause=$1 [L,NC,QSA] +RewriteRule ^(keys|fixes|typal)/nodes.html$ index.php?mode=nodes&clause=$1 [L,NC,QSA] +RewriteRule ^index.html$ index.php?mode=index [L,NC,QSA] + Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/.htaccess ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/.htaccess =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/admin/.htaccess (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/.htaccess 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,38 @@ +############################################################################################################################ +# +# Chronolabs Cooperative Fontier+ +# +# You may not change or alter any portion of this comment or credits +# of supporting developers from this source code or any supporting source code +# which is considered copyrighted (c) material of the original comment or credit authors. +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# @copyright Chronolabs Cooperative http://labs.coop +# @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) +# @package fontsvn+ +# @since 1.0.1 +# @author Simon Roberts <wis...@us...> +# @subpackage fontsvn+ +# @description XOOPS Client for Fonts REST API - http://fonts.labs.coop +# @link http://fonts.labs.coop +# @link http://sourceforge.net/projects/chronolabs +# @link http://cipher.labs.coop +# +############################################################################################################################ +php_value memory_limit 360M +php_value error_reporting 0 +php_value display_errors 0 + +RewriteEngine On +RewriteCond %{REQUEST_FILENAME} !-f +RewriteCond %{REQUEST_FILENAME} !-d + +RewriteRule ^([0-9a-z]+)/upload.html$ admin.php?op=upload&clause=$1 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/surveys.html$ admin.php?op=surveys&clause=$1 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/survey.html$ admin.php?op=survey&clause=$1 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/(.*?)/font.html$ admin.php?op=font&clause=$1&name=$2 [L,NC,QSA] +RewriteRule ^([0-9a-z]+)/node.html$ admin.php?op=node&clause=$1 [L,NC,QSA] +RewriteRule ^(keys|fixes|typal)/nodes.html$ admin.php?op=nodes&clause=$1 [L,NC,QSA] + Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/.htaccess ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/about.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/admin/about.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/about.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,33 @@ +<?php +/** + * Font Converter for fonts2web.org.uk +* +* You may not change or alter any portion of this comment or credits +* of supporting developers from this source code or any supporting source code +* which is considered copyrighted (c) material of the original comment or credit authors. +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +* +* @copyright The XOOPS Project http://fonts2web.org.uk +* @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) +* @author Simon Roberts (wishcraft) <wis...@us...> +* @subpackage convert +* @description Converts fonts to web distributional format in a zip pack stamped +* @version 1.0.1 +* @link http://fonts2web.org.uk +* @link http://fonts.labs.coop +* @link http://internetfounder.wordpress.com +*/ +include_once dirname(dirname(dirname(__DIR__))) . '/include/cp_header.php'; +include_once __DIR__ . '/header.php'; +xoops_cp_header(); + +$module_info = $module_handler->get($xoopsModule->getVar('mid')); + +$aboutAdmin = new ModuleAdmin(); + +echo $aboutAdmin->addNavigation(basename(__FILE__)); +echo $aboutAdmin->renderAbout('XXXXXXXXXXXXX', false); + +include_once __DIR__ . '/footer.php'; Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/about.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/footer.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/admin/footer.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/footer.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,25 @@ +<?php +/** + * Font Converter for fonts2web.org.uk +* +* You may not change or alter any portion of this comment or credits +* of supporting developers from this source code or any supporting source code +* which is considered copyrighted (c) material of the original comment or credit authors. +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +* +* @copyright The XOOPS Project http://fonts2web.org.uk +* @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) +* @author Simon Roberts (wishcraft) <wis...@us...> +* @subpackage convert +* @description Converts fonts to web distributional format in a zip pack stamped +* @version 1.0.1 +* @link http://fonts2web.org.uk +* @link http://fonts.labs.coop +* @link http://internetfounder.wordpress.com +*/ + +echo "<div class='adminfooter'>\n" . " <div style='text-align: center;'>\n" . " <a href='http://au.syd.labs.coop' rel='external'>Chronolabs Cooperative</a>\n" . " </div>\n" . '</div>'; + +xoops_cp_footer(); Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/footer.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/header.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/admin/header.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/header.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,57 @@ +<?php +/** + * Font Converter for fonts2web.org.uk +* +* You may not change or alter any portion of this comment or credits +* of supporting developers from this source code or any supporting source code +* which is considered copyrighted (c) material of the original comment or credit authors. +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +* +* @copyright The XOOPS Project http://fonts2web.org.uk +* @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) +* @author Simon Roberts (wishcraft) <wis...@us...> +* @subpackage convert +* @description Converts fonts to web distributional format in a zip pack stamped +* @version 1.0.1 +* @link http://fonts2web.org.uk +* @link http://fonts.labs.coop +* @link http://internetfounder.wordpress.com +*/ + +$path = dirname(dirname(dirname(__DIR__))); +include_once dirname(__DIR__) . '/header.php'; +include_once $path . '/include/cp_functions.php'; +require_once $path . '/include/cp_header.php'; + +global $xoopsModule; + +$thisModuleDir = $GLOBALS['xoopsModule']->getVar('dirname'); + +//if functions.php file exist +//require_once dirname(__DIR__) . '/include/functions.php'; + +// Load language files +xoops_loadLanguage('admin', $thisModuleDir); +xoops_loadLanguage('modinfo', $thisModuleDir); +xoops_loadLanguage('main', $thisModuleDir); + +$pathIcon16 = '../' . $xoopsModule->getInfo('icons16'); +$pathIcon32 = '../' . $xoopsModule->getInfo('icons32'); +$pathModuleAdmin = $xoopsModule->getInfo('dirmoduleadmin'); + +$myts = MyTextSanitizer::getInstance(); + +if (!isset($xoopsTpl) || !is_object($xoopsTpl)) { + include_once XOOPS_ROOT_PATH . '/class/template.php'; + $xoopsTpl = new XoopsTpl(); +} + +include_once $GLOBALS['xoops']->path($pathModuleAdmin . '/moduleadmin.php'); + +xoops_loadLanguage('user'); +if (!isset($GLOBALS['xoopsTpl']) || !is_object($GLOBALS['xoopsTpl'])) { + include_once $GLOBALS['xoops']->path('/class/template.php'); + $GLOBALS['xoopsTpl'] = new XoopsTpl(); +} Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/header.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/identities.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/admin/identities.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/identities.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,72 @@ +<?php +/** + * Please Email Ticketer of Batch Group & User Emails + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @author Simon Roberts (wishcraft) <wis...@us...> + * @subpackage please + * @description Email Ticking for Support/Faults/Management of Batch Group & User managed emails tickets + * @version 1.0.5 + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.5/Modules/please + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.6/Modules/please + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/please + * @link http://internetfounder.wordpress.com + */ + + require_once (__DIR__ . DIRECTORY_SEPARATOR . 'header.php'); + + xoops_loadLanguage('errors', _MD_FONTSVN_MODULE_DIRNAME); + + if (isset($_REQUEST['start'])) + $start = intval($_REQUEST['start']); + else + $start = 0; + + if (isset($_REQUEST['limit'])) + $limit = intval($_REQUEST['limit']); + else + $limit = 30; + + $identitiesHandler = xoops_getModuleHandler('identities', _MD_FONTSVN_MODULE_DIRNAME); + $criteria = new Criteria('polled',0,">"); + $total = $identitiesHandler->getCount($criteria); + $criteria->setStart($start); + $criteria->setLimit($limit); + $identities = $identitiesHandler->getObjects($criteria); + + if ($start>0 && count($identities)==0 && $total > 0) + { + $start = $start - $limit; + if ($start<0) + $start = 0; + header("Location: " . XOOPS_URL . "/modules/" . _MD_FONTSVN_MODULE_DIRNAME . "/admin/identities.php?start=$start&limit=$limit"); + exit(0); + } + + if ($start == 0 && count($identities) == 0) + { + redirect_header(XOOPS_URL . "/modules/" . _MD_FONTSVN_MODULE_DIRNAME . "/admin/index.php", 4, _ERR_FONTSVN_ADMIN_NOFONTS); + exit(0); + } + + xoops_cp_header(); + $identityAdmin = new ModuleAdmin(); + echo $identityAdmin->addNavigation(basename(__FILE__)); + foreach($identities as $identity) + $GLOBALS['xoopsTpl']->append('identities', $identity->getAdminPanelArray()); + xoops_load('XoopsPageNav'); + $nav = new XoopsPageNav($total, $limit, $start, 'start', '&limit='.$limit); + $GLOBALS['xoopsTpl']->assign('pagenav', $nav->renderNav(5)); + echo $GLOBALS['xoopsTpl']->display(dirname(__DIR__) . '/templates/admin/fontsvn_identities.html'); + xoops_cp_footer(); + exit(0); + +?> \ No newline at end of file Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/identities.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.html =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.html (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.html 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1 @@ +<script>history.go(-1);</script> \ No newline at end of file Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.html ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,43 @@ +<?php +/** + * Font Converter for fonts2web.org.uk +* +* You may not change or alter any portion of this comment or credits +* of supporting developers from this source code or any supporting source code +* which is considered copyrighted (c) material of the original comment or credit authors. +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +* +* @copyright The XOOPS Project http://fonts2web.org.uk +* @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) +* @author Simon Roberts (wishcraft) <wis...@us...> +* @subpackage convert +* @description Converts fonts to web distributional format in a zip pack stamped +* @version 1.0.1 +* @link http://fonts2web.org.uk +* @link http://fonts.labs.coop +* @link http://internetfounder.wordpress.com +*/ + +include_once __DIR__ . '/header.php'; +xoops_cp_header(); + +$indexAdmin = new ModuleAdmin(); + +$identitiesHandler = xoops_getModuleHandler('identities', _MD_FONTSVN_MODULE_DIRNAME); + +$indexAdmin->addInfoBox(_MA_FONTSVN_ADMIN_STATISTICS); +$indexAdmin->addInfoBoxLine(_MA_FONTSVN_ADMIN_STATISTICS, "<infolabel>" ._MA_FONTSVN_ADMIN_STATS_TOTALIDENTITIES. "</infolabel>", $identitiesHandler->getTotalIdentities(), 'Green'); +$indexAdmin->addInfoBoxLine(_MA_FONTSVN_ADMIN_STATISTICS, "<infolabel>" ._MA_FONTSVN_ADMIN_STATS_TOTALPOLLED. "</infolabel>", $identitiesHandler->getTotalPolled(), 'Green'); +$indexAdmin->addInfoBoxLine(_MA_FONTSVN_ADMIN_STATISTICS, "<infolabel>" ._MA_FONTSVN_ADMIN_STATS_TOTALTOPOLL. "</infolabel>", $identitiesHandler->getTotalToPoll(), 'Blue'); +$indexAdmin->addInfoBoxLine(_MA_FONTSVN_ADMIN_STATISTICS, "<infolabel>" ._MA_FONTSVN_ADMIN_STATS_TOTALVIEWS. "</infolabel>", $identitiesHandler->getTotalViews(), 'Purple'); +$indexAdmin->addInfoBoxLine(_MA_FONTSVN_ADMIN_STATISTICS, "<infolabel>" ._MA_FONTSVN_ADMIN_STATS_TOTALDOWNLOADS. "</infolabel>", $identitiesHandler->getTotalDownloads(), 'Purple'); +$indexAdmin->addInfoBoxLine(_MA_FONTSVN_ADMIN_STATISTICS, "<infolabel>" ._MA_FONTSVN_ADMIN_STATS_FILESINCACHE. "</infolabel>", $identitiesHandler->getTotalFilesInCache(), 'Red'); +$indexAdmin->addInfoBoxLine(_MA_FONTSVN_ADMIN_STATISTICS, "<infolabel>" ._MA_FONTSVN_ADMIN_STATS_MBSINCACHE. "</infolabel>", $identitiesHandler->getTotalMbsInCache(), 'Red'); + +echo $indexAdmin->addNavigation(basename(__FILE__)); +echo $indexAdmin->renderIndex(); + +include_once __DIR__ . '/footer.php'; +//xoops_cp_footer(); Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/index.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/menu.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/admin/menu.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/admin/menu.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,52 @@ +<?php +/** + * Font Converter for fonts2web.org.uk +* +* You may not change or alter any portion of this comment or credits +* of supporting developers from this source code or any supporting source code +* which is considered copyrighted (c) material of the original comment or credit authors. +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +* +* @copyright The XOOPS Project http://fonts2web.org.uk +* @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) +* @author Simon Roberts (wishcraft) <wis...@us...> +* @subpackage convert +* @description Converts fonts to web distributional format in a zip pack stamped +* @version 1.0.1 +* @link http://fonts2web.org.uk +* @link http://fonts.labs.coop +* @link http://internetfounder.wordpress.com +*/ + +$path = dirname(dirname(dirname(__DIR__))); +include_once $path . '/mainfile.php'; + +$dirname = basename(dirname(__DIR__)); +$module_handler = xoops_getHandler('module'); +$module = $module_handler->getByDirname($dirname); +$pathIcon32 = $module->getInfo('icons32'); +$pathModuleAdmin = $module->getInfo('dirmoduleadmin'); +$pathLanguage = $path . $pathModuleAdmin; + +if (!file_exists($fileinc = $pathLanguage . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/' . 'modinfo.php')) { + $fileinc = $pathLanguage . '/language/english/modinfo.php'; +} + +include_once $fileinc; + +$adminmenu = array(); + +$i = 1; +$adminmenu[$i]['title'] = _MD_FONTSVN_ADMINMENU_HOME; +$adminmenu[$i]['link'] = 'admin/index.php'; +$adminmenu[$i]['icon'] = $pathIcon32 . '/home.png'; +++$i; +$adminmenu[$i]['title'] = _MD_FONTSVN_ADMINMENU_FONTS; +$adminmenu[$i]['link'] = 'admin/identities.php'; +$adminmenu[$i]['icon'] = $pathIcon32 . '/download.png'; +++$i; +$adminmenu[$i]['title'] = _MD_FONTSVN_ADMINMENU_ABOUT; +$adminmenu[$i]['link'] = 'admin/about.php'; +$adminmenu[$i]['icon'] = $pathIcon32 . '/about.png'; Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/admin/menu.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/fontier_block_tag.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/fontier_block_tag.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/fontier_block_tag.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,78 @@ +<?php +/** + * Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @author Simon Roberts (wishcraft) <wis...@us...> + * @subpackage fontsvn+ + * @description Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * @version 1.0.1 + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.5/Modules/fontsvn + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.6/Modules/fontsvn + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/fontsvn + * @link http://internetfounder.wordpress.com + */ + + +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'header.php'; + +/** + * + * @param unknown $options + * @return array|string[]|NULL[]|number[][][]|mixed[][][]|unknown[][][] + */ +function fontsvn_tag_block_cloud_show($options) +{ + include_once XOOPS_ROOT_PATH . "/modules/tag/blocks/block.php"; + if (file_exists(XOOPS_ROOT_PATH . "/modules/tag/blocks/block.php")) + return tag_block_cloud_show($options, _MD_FONTSVN_MODULE_DIRNAME); + return array(); +} + +/** + * + * @param unknown $options + * @return string + */ +function fontsvn_tag_block_cloud_edit($options) +{ + include_once XOOPS_ROOT_PATH . "/modules/tag/blocks/block.php"; + if (file_exists(XOOPS_ROOT_PATH . "/modules/tag/blocks/block.php")) + return tag_block_cloud_edit($options); + return ''; +} + + +/** + * + * @param unknown $options + * @return array|string[]|NULL[]|unknown[][][] + */ +function fontsvn_tag_block_top_show($options) +{ + include_once XOOPS_ROOT_PATH . "/modules/tag/blocks/block.php"; + if (file_exists(XOOPS_ROOT_PATH . "/modules/tag/blocks/block.php")) + return tag_block_top_show($options, _MD_FONTSVN_MODULE_DIRNAME); + return array(); +} + +/** + * + * @param unknown $options + * @return string + */ +function fontsvn_tag_block_top_edit($options) +{ + include_once XOOPS_ROOT_PATH . "/modules/tag/blocks/block.php"; + if (file_exists(XOOPS_ROOT_PATH . "/modules/tag/blocks/block.php")) + return tag_block_top_edit($options); + return ''; +} \ No newline at end of file Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/fontier_block_tag.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/index.html =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/index.html (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/index.html 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1 @@ +<script>history.go(-1);</script> \ No newline at end of file Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/index.html ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_downloads_items.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_downloads_items.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_downloads_items.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,72 @@ +<?php +/** + * Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @author Simon Roberts (wishcraft) <wis...@us...> + * @subpackage fontsvn+ + * @description Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * @version 1.0.1 + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.5/Modules/fontsvn + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.6/Modules/fontsvn + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/fontsvn + * @link http://internetfounder.wordpress.com + */ + +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'header.php'; + +function fontsvn_last_downloads_items_show($options) +{ + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . "/modules/" . _MD_FONTSVN_MODULE_DIRNAME . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/blocks.css'); + + $block = array('display' => $options[1]); + $identitiesHandler = xoops_getModuleHandler('identities' ,basename(dirname(__DIR__))); + $criteria = new CriteriaCompo(new Criteria('downloaded', '0', '>')); + $criteria->setOrder('DESC'); + $criteria->setSort('downloaded'); + $criteria->setLimit($options[0]); + if ($identities = $identitiesHandler->getObjects($criteria)) + { + $block['items'] = array(); + foreach($identities as $key => $identity) + { + $block['items'][$key]['name'] = $identity->getVar('name'); + $block['items'][$key]['views'] = $identity->getVar('views'); + $block['items'][$key]['downloads'] = $identity->getVar('downloads'); + $block['items'][$key]['naming'] = $identity->getNamingURL(); + $block['items'][$key]['url'] = $identity->getFontURL('id'); + } + return $block; + } + return false; +} + + +function fontsvn_last_downloads_items_edit($options) +{ + $form = ''; + // Sort order ************************************************************* + // (0=older first, 1=newer first) + $form .= '<b>'._MB_FONTSVN_NUMBER."</b> <input type='textbox' name='option[]' size='8', maxlen='4' value='".$options[0]."' /><br/>"; + $form .= '<b>'._MB_FONTSVN_DISPLAY."</b> <select name='options[]'>\n"; + $form .= "<option value='naming'"; + if ( $options[1] == 'naming' ) { + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_NAMING."</option>\n"; + $form .= "<option value='text'"; + if($options[1] == 'text'){ + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_TEXT.'</option>'; + $form .= "</select>\n"; + return $form; +} Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_downloads_items.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_viewed_items.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_viewed_items.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_viewed_items.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,72 @@ +<?php +/** + * Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @author Simon Roberts (wishcraft) <wis...@us...> + * @subpackage fontsvn+ + * @description Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * @version 1.0.1 + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.5/Modules/fontsvn + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.6/Modules/fontsvn + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/fontsvn + * @link http://internetfounder.wordpress.com + */ + +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'header.php'; + +function fontsvn_last_viewed_items_show($options) +{ + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . "/modules/" . _MD_FONTSVN_MODULE_DIRNAME . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/blocks.css'); + + $block = array('display' => $options[1]); + $identitiesHandler = xoops_getModuleHandler('identities' ,basename(dirname(__DIR__))); + $criteria = new CriteriaCompo(new Criteria('last', '0', '>')); + $criteria->setOrder('DESC'); + $criteria->setSort('last'); + $criteria->setLimit($options[0]); + if ($identities = $identitiesHandler->getObjects($criteria)) + { + $block['items'] = array(); + foreach($identities as $key => $identity) + { + $block['items'][$key]['name'] = $identity->getVar('name'); + $block['items'][$key]['views'] = $identity->getVar('views'); + $block['items'][$key]['downloads'] = $identity->getVar('downloads'); + $block['items'][$key]['naming'] = $identity->getNamingURL(); + $block['items'][$key]['url'] = $identity->getFontURL('id'); + } + return $block; + } + return false; +} + + +function fontsvn_last_viewed_items_edit($options) +{ + $form = ''; + // Sort order ************************************************************* + // (0=older first, 1=newer first) + $form .= '<b>'._MB_FONTSVN_NUMBER."</b> <input type='textbox' name='option[]' size='8', maxlen='4' value='".$options[0]."' /><br/>"; + $form .= '<b>'._MB_FONTSVN_DISPLAY."</b> <select name='options[]'>\n"; + $form .= "<option value='naming'"; + if ( $options[1] == 'naming' ) { + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_NAMING."</option>\n"; + $form .= "<option value='text'"; + if($options[1] == 'text'){ + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_TEXT.'</option>'; + $form .= "</select>\n"; + return $form; +} Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/last_viewed_items.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/new_items.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/new_items.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/new_items.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,72 @@ +<?php +/** + * Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @author Simon Roberts (wishcraft) <wis...@us...> + * @subpackage fontsvn+ + * @description Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * @version 1.0.1 + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.5/Modules/fontsvn + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.6/Modules/fontsvn + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/fontsvn + * @link http://internetfounder.wordpress.com + */ + +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'header.php'; + +function fontsvn_new_items_show($options) +{ + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . "/modules/" . _MD_FONTSVN_MODULE_DIRNAME . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/blocks.css'); + + $block = array('display' => $options[1]); + $identitiesHandler = xoops_getModuleHandler('identities' ,basename(dirname(__DIR__))); + $criteria = new CriteriaCompo(new Criteria('polling', '0', '>')); + $criteria->setOrder('DESC'); + $criteria->setSort('polled'); + $criteria->setLimit($options[0]); + if ($identities = $identitiesHandler->getObjects($criteria)) + { + $block['items'] = array(); + foreach($identities as $key => $identity) + { + $block['items'][$key]['name'] = $identity->getVar('name'); + $block['items'][$key]['views'] = $identity->getVar('views'); + $block['items'][$key]['downloads'] = $identity->getVar('downloads'); + $block['items'][$key]['naming'] = $identity->getNamingURL(); + $block['items'][$key]['url'] = $identity->getFontURL('id'); + } + return $block; + } + return false; +} + + +function fontsvn_new_items_edit($options) +{ + $form = ''; + // Sort order ************************************************************* + // (0=older first, 1=newer first) + $form .= '<b>'._MB_FONTSVN_NUMBER."</b> <input type='textbox' name='option[]' size='8', maxlen='4' value='".$options[0]."' /><br/>"; + $form .= '<b>'._MB_FONTSVN_DISPLAY."</b> <select name='options[]'>\n"; + $form .= "<option value='naming'"; + if ( $options[1] == 'naming' ) { + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_NAMING."</option>\n"; + $form .= "<option value='text'"; + if($options[1] == 'text'){ + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_TEXT.'</option>'; + $form .= "</select>\n"; + return $form; +} Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/new_items.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_downloads_items.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_downloads_items.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_downloads_items.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,72 @@ +<?php +/** + * Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @author Simon Roberts (wishcraft) <wis...@us...> + * @subpackage fontsvn+ + * @description Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * @version 1.0.1 + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.5/Modules/fontsvn + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.6/Modules/fontsvn + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/fontsvn + * @link http://internetfounder.wordpress.com + */ + +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'header.php'; + +function fontsvn_popular_downloads_items_show($options) +{ + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . "/modules/" . _MD_FONTSVN_MODULE_DIRNAME . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/blocks.css'); + + $block = array('display' => $options[1]); + $identitiesHandler = xoops_getModuleHandler('identities' ,basename(dirname(__DIR__))); + $criteria = new CriteriaCompo(new Criteria('downloads', '0', '>')); + $criteria->setOrder('DESC'); + $criteria->setSort('downloads'); + $criteria->setLimit($options[0]); + if ($identities = $identitiesHandler->getObjects($criteria)) + { + $block['items'] = array(); + foreach($identities as $key => $identity) + { + $block['items'][$key]['name'] = $identity->getVar('name'); + $block['items'][$key]['views'] = $identity->getVar('views'); + $block['items'][$key]['downloads'] = $identity->getVar('downloads'); + $block['items'][$key]['naming'] = $identity->getNamingURL(); + $block['items'][$key]['url'] = $identity->getFontURL('id'); + } + return $block; + } + return false; +} + + +function fontsvn_popular_downloads_items_edit($options) +{ + $form = ''; + // Sort order ************************************************************* + // (0=older first, 1=newer first) + $form .= '<b>'._MB_FONTSVN_NUMBER."</b> <input type='textbox' name='option[]' size='8', maxlen='4' value='".$options[0]."' /><br/>"; + $form .= '<b>'._MB_FONTSVN_DISPLAY."</b> <select name='options[]'>\n"; + $form .= "<option value='naming'"; + if ( $options[1] == 'naming' ) { + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_NAMING."</option>\n"; + $form .= "<option value='text'"; + if($options[1] == 'text'){ + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_TEXT.'</option>'; + $form .= "</select>\n"; + return $form; +} Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_downloads_items.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_items.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_items.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_items.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,72 @@ +<?php +/** + * Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @author Simon Roberts (wishcraft) <wis...@us...> + * @subpackage fontsvn+ + * @description Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * @version 1.0.1 + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.5/Modules/fontsvn + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.6/Modules/fontsvn + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/fontsvn + * @link http://internetfounder.wordpress.com + */ + +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'header.php'; + +function fontsvn_popular_items_show($options) +{ + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . "/modules/" . _MD_FONTSVN_MODULE_DIRNAME . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/blocks.css'); + + $block = array('display' => $options[1]); + $identitiesHandler = xoops_getModuleHandler('identities' ,basename(dirname(__DIR__))); + $criteria = new CriteriaCompo(new Criteria('views', '0', '>')); + $criteria->setOrder('DESC'); + $criteria->setSort('views'); + $criteria->setLimit($options[0]); + if ($identities = $identitiesHandler->getObjects($criteria)) + { + $block['items'] = array(); + foreach($identities as $key => $identity) + { + $block['items'][$key]['name'] = $identity->getVar('name'); + $block['items'][$key]['views'] = $identity->getVar('views'); + $block['items'][$key]['downloads'] = $identity->getVar('downloads'); + $block['items'][$key]['naming'] = $identity->getNamingURL(); + $block['items'][$key]['url'] = $identity->getFontURL('id'); + } + return $block; + } + return false; +} + + +function fontsvn_popular_items_edit($options) +{ + $form = ''; + // Sort order ************************************************************* + // (0=older first, 1=newer first) + $form .= '<b>'._MB_FONTSVN_NUMBER."</b> <input type='textbox' name='option[]' size='8', maxlen='4' value='".$options[0]."' /><br/>"; + $form .= '<b>'._MB_FONTSVN_DISPLAY."</b> <select name='options[]'>\n"; + $form .= "<option value='naming'"; + if ( $options[1] == 'naming' ) { + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_NAMING."</option>\n"; + $form .= "<option value='text'"; + if($options[1] == 'text'){ + $form .= " selected='selected'"; + } + $form .= '>'._MB_FONTSVN_TEXT.'</option>'; + $form .= "</select>\n"; + return $form; +} Property changes on: XoopsModules/fontsvn/trunk/modules/fontsvn/blocks/popular_items.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/fontsvn/trunk/modules/fontsvn/class/identities.php =================================================================== --- XoopsModules/fontsvn/trunk/modules/fontsvn/class/identities.php (rev 0) +++ XoopsModules/fontsvn/trunk/modules/fontsvn/class/identities.php 2018-11-01 13:07:22 UTC (rev 13395) @@ -0,0 +1,576 @@ +<?php +/** + * Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @author Simon Roberts (wishcraft) <wis...@us...> + * @subpackage fontsvn+ + * @description Font Repository Browser for the Chronolabs Cooperative Fonting Repository Services API + * @version 1.0.1 + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.5/Modules/fontsvn + * @link https://sourceforge.net/projects/chronolabs/files/XOOPS%202.6/Modules/fontsvn + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/fontsvn + * @link http://internetfounder.wordpress.com + */ + + +if (!defined('_MD_FONTSVN_MODULE_DIRNAME')) { + return false; +} + +//* +require_once (__DIR__ . DIRECTORY_SEPARATOR . 'objects.php'); + +/** + * Class for Glyphs in Fonts2Web.org.uk Font Converter + * + * For Table:- + * <code> + * CREATE TABLE `fontsvn_identities` ( + * `id` mediumint(24) NOT NULL AUTO_INCREMENT, + * `identity` varchar(45) DEFAULT '', + * `base` varchar(1) DEFAULT '', + * `second` varchar(2) DEFAULT '', + * `thirds` varchar(3) DEFAULT '', + * `downloads` int(13) DEFAULT '0', + * `views` int(13) DEFAULT '0', + * `glyphs` tinytext, + * `name` varchar(255) DEFAULT '', + * `tags` varchar(255) DEFAULT '', + * `barcode` varchar(32) DEFAULT '', + * `referee` varchar(128) DEFAULT '', + * `filename` varchar(128) DEFAULT '', + * `preview` varchar(255) DEFAULT '', + * `naming` varchar(255) DEFAULT '', + * `css` varchar(255) DEFAULT '', + * `created` int(13) DEFAULT '0', + * `verify` int(13) DEFAULT '0', + * `last` int(13) DEFAULT '0', + * `downloaded` int(13) DEFAULT '0', + * `glyphed` int(13) DEFAULT '0', + * `notified` int(13) DEFAULT '0', + * `articleid` int(13) DEFAULT '0', + * PRIMARY KEY (`id`) + * ) ENGINE=InnoDB DEFAULT CHARSET=utf8; + * </code> + * @author Simon Roberts (wis...@us...) + * @copyright copyright (c) 2015 labs.coop + */ +class fontsvnIdentities extends fontsvnXoopsObject +{ + + var $handler = ''; + + function __construct($id = null) + { + + self::initVar('id', XOBJ_DTYPE_INT, 0, false); + self::initVar('identity', XOBJ_DTYPE_TXTBOX, md5(null), false, 45); + self::initVar('base', XOBJ_DTYPE_TXTBOX, '', false, 1); + self::initVar('second', XOBJ_DTYPE_TXTBOX, '', false, 2); + self::initVar('thirds', XOBJ_DTYPE_TXTBOX, '', false, 3); + self::initVar('downloads', XOBJ_DTYPE_INT, 0, false); + self::initVar('views', XOBJ_DTYPE_INT, 0, false); + self::initVar('glyphs', XOBJ_DTYPE_ARRAY, array(), false); + self::initVar('name', XOBJ_DTYPE_TXTBOX, '', false, 255); + self::initVar('tags', XOBJ_DTYPE_TXTBOX, '', false, 255); + self::initVar('barcode', XOBJ_DTYPE_TXTBOX, '', false, 32); + self::initVar('referee', XOBJ_DTYPE_TXTBOX, '', false, 128); + self::initVar('filename', XOBJ_DTYPE_TXTBOX, '', false, 128); + self::initVar('preview', XOBJ_DTYPE_TXTBOX, '', false, 255); + self::initVar('naming', XOBJ_DTYPE_TXTBOX, '', false, 255); + self::initVar('css', XOBJ_DTYPE_TXTBOX, '', false, 255); + self::initVar('created', XOBJ_DTYPE_INT, 0, false); + self::initVar('verify', XOBJ_DTYPE_INT, 0, false); + self::initVar('verified', XOBJ_DTYPE_INT, 0, false); + self::initVar('files', XOBJ_DTYPE_INT, 0, false); + self::initVar('missing', XOBJ_DTYPE_INT, 0, false); + self::initVar('last', XOBJ_DTYPE_INT, 0, false); + self::initVar('downloaded', XOBJ_DTYPE_INT, 0, false); + self::initVar('glyphed', XOBJ_DTYPE_INT, 0, false); + self::initVar('notified', XOBJ_DTYPE_INT, 0, false); + self::initVar('articleid', XOBJ_DTYPE_INT, 0, false); + self::initVar('validation', XOBJ_DTYPE_ARRAY, array(), false); + + $this->handler = __CLASS__ . 'Handler'; + if (!empty($id) && !is_null($id)) + { + $handler = new $this->handler; + self::assignVars($handler->get($id)->getValues(array_keys($this->vars))); + } + + } + + /** + * + * @return boolean[]|string[]|mixed[]|NULL[]|array[] + */ + function getAdminPanelArray() + { + global $fontsvnConfigsList; + return array( 'name' => $this->getVar('name'), + 'views' => $this->getVar('views'), + 'downloads' => $this->getVar('downloads'), + 'url' => $this->getFontURL('id'), + 'naming' => $this->getNamingURL($fontsvnConfigsList['images']) ); + } + + /** + * + * @return string + */ + function getDescriptionTile() + { + global $fontsvnConfigsList; + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . "/modules/" . _MD_FONTSVN_MODULE_DIRNAME . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/style.css'); + xoops_loadLanguage('main', _MD_FONTSVN_MODULE_DIRNAME); + $html = "<div style=\"margin: 8px; padding: 3px; text-align: center;\">\n + <img id=\"fontsvnfontnaming\" src=\"".$this->getNamingURL($fontsvnConfigsList['images']) ."\" title=\"" . $this->getVar('name') ."\" alt=\"" . $this->getVar('name') ."\" width='89%' />\n + <br />\n + <span id=\"fontsvnviewsdownloads\">"._MN_FONTSVN_FONT_VIEWS.": ".$this->getVar('views')... [truncated message content] |
From: <chr...@us...> - 2018-10-31 10:25:23
|
Revision: 13394 http://sourceforge.net/p/xoops/svn/13394 Author: chronolabscoop Date: 2018-10-31 10:25:03 +0000 (Wed, 31 Oct 2018) Log Message: ----------- Emails Propogation REST Services API 1.0.4! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/page.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/language/english/install.php Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/get-spam-training.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Jessie (8.x)/spamassassin.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Wheezy (7.x)/spamassassin.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Gentoo (2.2)/spamassassin.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/RHEL CentOS (7)/spamassassin.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Precise (12.04)/spamassassin.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Trusty (14.04)/spamassassin.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/page_configspamassassin.php Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-10-26 18:38:15 UTC (rev 13393) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-10-31 10:25:03 UTC (rev 13394) @@ -2,7 +2,7 @@ # Emails/Aliases Account's Propogation REST API Services -## Version: 1.0.1 (stable) +## Version: 1.0.4 (stable) ### Author: Dr. Simon Antony Roberts <simon@snails.email> @@ -47,6 +47,9 @@ Execute:- $ sudo crontab -e + +### CronTab Entry: + You have to add the following cronjobs to your cronjobs or on windows scheduled tasks! */41 */2 * * * /usr/bin/php /var/www/emails.snails.email/crons/find-mx-services.php @@ -54,9 +57,8 @@ */11 * * * * /usr/bin/php /var/www/emails.snails.email/crons/import-generated-keys.php */22 * * * * /usr/bin/php /var/www/emails.snails.email/crons/port-encryption-keys.php */11 */7 * * * /usr/bin/php /var/www/emails.snails.email/crons/peer-services.php - */5 * * * * sh /var/www/emails.snails.email/crons/* - -### CronTab Entry: + */11 */7 * * * /usr/bin/php /var/www/emails.snails.email/crons/get-spam-training.php + */5 * * * * sh /var/www/emails.snails.email/crons/*.sh ## Licensing Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/get-spam-training.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/get-spam-training.php (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/get-spam-training.php 2018-10-31 10:25:03 UTC (rev 13394) @@ -0,0 +1,76 @@ +<?php +/** + * Email Account Propogation REST Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright Chronolabs Cooperative http://syd.au.snails.email + * @license ACADEMIC APL 2 (https://sourceforge.net/u/chronolabscoop/wiki/Academic%20Public%20License%2C%20version%202.0/) + * @license GNU GPL 3 (http://www.gnu.org/licenses/gpl.html) + * @package emails-api + * @since 1.1.11 + * @author Dr. Simon Antony Roberts <simon@snails.email> + * @version 1.1.11 + * @description A REST API for the creation and management of emails/forwarders and domain name parks for email + * @link http://internetfounder.wordpress.com + * @link https://github.com/Chronolabs-Cooperative/Emails-API-PHP + * @link https://sourceforge.net/p/chronolabs-cooperative + * @link https://facebook.com/ChronolabsCoop + * @link https://twitter.com/ChronolabsCoop + * + */ + +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'apiconfig.php'; +require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'apimailer.php'; + +$start = time(); +if ($staters = APICache::read('get-spam-training')) +{ + $staters[] = $start; + sort($staters, SORT_ASC); + if (count($starters)>50) + unset($starters[0]); + sort($staters, SORT_ASC); + APICache::write('get-spam-training', $staters, 3600 * 24 * 7 * 4 * 6); + $keys = array_key($starters); + $avg = array(); + foreach($starters as $key => $starting) { + if (isset($keys[$key - 1])) { + $avg[] = abs($starting - $starters[$keys[$key - 1]]); + } + } + if (count($avg) > 0 ) { + foreach($avg as $average) + $seconds += $average; + $seconds = $seconds / count($avg); + } else + $seconds = 1800; +} else { + APICache::write('get-spam-training', array(0=>$start), 3600 * 24 * 7 * 4 * 6); + $seconds = 1800; +} + + +define("SPAM_FOLDERS", 'spam|junk|Spam|SPAM|Junk|JUNK'); +$folders = getCompleteDirListAsArray(API_MAILDIR_PATH); +shuffle($folders); +shuffle($folders); +shuffle($folders); +foreach(explode("|", SPAM_FOLDERS) as $spamfolder) + foreach($folders as $folder) + if (strpos($folder, $spamfolder) > 0) { + foreach(getFileListAsArray($folder) as $file) { + if (file_exists(__DIR__ . DS . 'spamassassin-training.sh')) + $sh = file(__DIR__ . DS . 'spamassassin-training.sh'); + else + $sh = array(0=>'unlink "' . __DIR__ . DS . 'spamassassin-training.sh' . '"\n'); + $sh[] = "sa-learn --spam --file \"$folder" . DS . basename($file) . "\"\n"; + $sh[] = "unlink \"$folder" . DS . basename($file) . "\"\n"; + writeRawFile(__DIR__ . DS . 'spamassassin-training.sh', implode("", $sh)); + } + } \ No newline at end of file Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-10-26 18:38:15 UTC (rev 13393) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-10-31 10:25:03 UTC (rev 13394) @@ -41,5 +41,5 @@ /** * Define API version */ -define('API_VERSION', 'Emails Propogation REST Services API 1.0.3'); +define('API_VERSION', 'Emails Propogation REST Services API 1.0.4'); define('API_TYPE', 'emails-api'); Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Jessie (8.x)/spamassassin.html =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Jessie (8.x)/spamassassin.html (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Jessie (8.x)/spamassassin.html 2018-10-31 10:25:03 UTC (rev 13394) @@ -0,0 +1,319 @@ + +<article> +<section> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo apt-get install spamassassin spamc</textarea> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Adding Spamassassin User</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo groupadd spamd</textarea> + </div> +<div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo useradd -g spamd -s /bin/false -d /var/log/spamassassin spamd</textarea> + </div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo mkdir /var/log/spamassassin</textarea> + </div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo chown spamd:spamd /var/log/spamassassin</textarea> + </div> + <div class="pushbot"> + </fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Spamassassin</legend> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/default/spamassassin</textarea> + <textarea class="filecontent" rows="21" readonly># /etc/default/spamassassin +# Duncan Findlay + +SAHOME="/var/log/spamassassin/" + +# WARNING: please read README.spamd before using. +# There may be security risks. + +# If you're using systemd (default for jessie), the ENABLED setting is +# not used. Instead, enable spamd by issuing: +# systemctl enable spamassassin.service +# Change to "1" to enable spamd on systems using sysvinit: +ENABLED=1 + +# Options +# See man spamd for possible options. The -d option is automatically added. + +# SpamAssassin uses a preforking model, so be careful! You need to +# make sure --max-children is not set to anything higher than 5, +# unless you know what you're doing. + +OPTIONS="--create-prefs --max-children 5 --helper-home-dir --username spamd \-H ${SAHOME} -s ${SAHOME}spamd.log" + +# Pid file +# Where should spamd write its PID to file? If you use the -u or +# --username option above, this needs to be writable by that user. +# Otherwise, the init script will not be able to shut spamd down. +PIDFILE="/var/run/spamd.pid" + +# Set nice level of spamd +#NICE="--nicelevel 15" + +# Cronjob +# Set to anything but 0 to enable the cron job to automatically update +# spamassassin's rules on a nightly basis +CRON=1 +</textarea> +</div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo service spamassassin start</textarea> + </div> + </fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Postfix</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/postfix/master.cf</textarea> + <textarea class="filecontent" rows="21" readonly># +# Postfix master process configuration file. For details on the format +# of the file, see the master(5) manual page (command: "man 5 master" or +# on-line: http://www.postfix.org/master.5.html). +# +# Do not forget to execute "postfix reload" after editing this file. +# +# ========================================================================== +# service type private unpriv chroot wakeup maxproc command + args +# (yes) (yes) (no) (never) (100) +# ========================================================================== +smtp inet n - y - - smtpd + -o content_filter=spamassassin +#smtp inet n - y - 1 postscreen +#smtpd pass - - y - - smtpd +#dnsblog unix - - y - 0 dnsblog +#tlsproxy unix - - y - 0 tlsproxy +#submission inet n - y - - smtpd +# -o syslog_name=postfix/submission +# -o smtpd_tls_security_level=encrypt +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_tls_auth_only=yes +# -o smtpd_reject_unlisted_recipient=no +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING +#smtps inet n - y - - smtpd +# -o syslog_name=postfix/smtps +# -o smtpd_tls_wrappermode=yes +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_reject_unlisted_recipient=no +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING +#628 inet n - y - - qmqpd +pickup unix n - y 60 1 pickup +cleanup unix n - y - 0 cleanup +qmgr unix n - n 300 1 qmgr +#qmgr unix n - n 300 1 oqmgr +tlsmgr unix - - y 1000? 1 tlsmgr +rewrite unix - - y - - trivial-rewrite +bounce unix - - y - 0 bounce +defer unix - - y - 0 bounce +trace unix - - y - 0 bounce +verify unix - - y - 1 verify +flush unix n - y 1000? 0 flush +proxymap unix - - n - - proxymap +proxywrite unix - - n - 1 proxymap +smtp unix - - y - - smtp +relay unix - - y - - smtp + -o syslog_name=postfix/$service_name +# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 +showq unix n - y - - showq +error unix - - y - - error +retry unix - - y - - error +discard unix - - y - - discard +local unix - n n - - local +virtual unix - n n - - virtual +lmtp unix - - y - - lmtp +anvil unix - - y - 1 anvil +scache unix - - y - 1 scache +# +# ==================================================================== +# Interfaces to non-Postfix software. Be sure to examine the manual +# pages of the non-Postfix software to find out what options it wants. +# +# Many of the following services use the Postfix pipe(8) delivery +# agent. See the pipe(8) man page for information about ${recipient} +# and other message envelope options. +# ==================================================================== +# +# maildrop. See the Postfix MAILDROP_README file for details. +# Also specify in main.cf: maildrop_destination_recipient_limit=1 +# +maildrop unix - n n - - pipe + flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient} +# +# ==================================================================== +# +# Recent Cyrus versions can use the existing "lmtp" master.cf entry. +# +# Specify in cyrus.conf: +# lmtp cmd="lmtpd -a" listen="localhost:lmtp" proto=tcp4 +# +# Specify in main.cf one or more of the following: +# mailbox_transport = lmtp:inet:localhost +# virtual_transport = lmtp:inet:localhost +# +# ==================================================================== +# +# Cyrus 2.1.5 (Amos Gouaux) +# Also specify in main.cf: cyrus_destination_recipient_limit=1 +# +#cyrus unix - n n - - pipe +# user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user} +# +# ==================================================================== +# Old example of delivery via Cyrus. +# +#old-cyrus unix - n n - - pipe +# flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user} +# +# ==================================================================== +# +# See the Postfix UUCP_README file for configuration details. +# +uucp unix - n n - - pipe + flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) +# +# Other external delivery methods. +# +ifmail unix - n n - - pipe + flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) +bsmtp unix - n n - - pipe + flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient +scalemail-backend unix - n n - 2 pipe + flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension} +mailman unix - n n - - pipe + flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py + ${nexthop} ${user} +spamassassin unix - n n - - pipe + user=spamd argv=/usr/bin/spamc -f -e + /usr/sbin/sendmail -oi -f ${sender} ${recipient} + </textarea> + </div> + + <div class="pushbot"> + <textarea class="shell" rows="2" readonly>sudo service postfix restart</textarea> + </div> + +</fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Spamassassin on your Email Services</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/spamassassin/local.cf</textarea> + <textarea class="filecontent" rows="8" readonly># This is the right place to customize your installation of SpamAssassin. +# +# See 'perldoc Mail::SpamAssassin::Conf' for details of what can be +# tweaked. +# +# Only a small subset of options are listed below +# +########################################################################### + +# Add *****SPAM***** to the Subject header of spam e-mails +# +# rewrite_header Subject *****SPAM***** +rewrite_header [***** SPAM _SCORE_ *****] Subject + +# Save spam messages as a message/rfc822 MIME attachment instead of +# modifying the original message (0: off, 2: use text/plain instead) +# +# report_safe 1 + + +# Set which networks or hosts are considered 'trusted' by your mail +# server (i.e. not spammers) +# +# trusted_networks 212.17.35. + + +# Set file-locking method (flock is not safe over NFS, but is faster) +# +# lock_method flock + + +# Set the threshold at which a message is considered spam (default: 5.0) +# +# required_score 5.0 +required_score 3.75 + +# Use Bayesian classifier (default: 1) +# +# use_bayes 1 +use_bayes 1 + +# Bayesian classifier auto-learning (default: 1) +# +# bayes_auto_learn 1 +bayes_auto_learn 1 + +# Set headers which may provide inappropriate cues to the Bayesian +# classifier +# +# bayes_ignore_header X-Bogosity +# bayes_ignore_header X-Spam-Flag +# bayes_ignore_header X-Spam-Status + + +# Whether to decode non- UTF-8 and non-ASCII textual parts and recode +# them to UTF-8 before the text is given over to rules processing. +# +# normalize_charset 1 +normalize_charset 1 + +# Some shortcircuiting, if the plugin is enabled +# +ifplugin Mail::SpamAssassin::Plugin::Shortcircuit +# +# default: strongly-whitelisted mails are *really* whitelisted now, if the +# shortcircuiting plugin is active, causing early exit to save CPU load. +# Uncomment to turn this on +# +# shortcircuit USER_IN_WHITELIST on +# shortcircuit USER_IN_DEF_WHITELIST on +# shortcircuit USER_IN_ALL_SPAM_TO on +# shortcircuit SUBJECT_IN_WHITELIST on + +# the opposite; blacklisted mails can also save CPU +# +# shortcircuit USER_IN_BLACKLIST on +# shortcircuit USER_IN_BLACKLIST_TO on +# shortcircuit SUBJECT_IN_BLACKLIST on + +# if you have taken the time to correctly specify your "trusted_networks", +# this is another good way to save CPU +# +# shortcircuit ALL_TRUSTED on + +# and a well-trained bayes DB can save running rules, too +# +shortcircuit BAYES_99 spam +shortcircuit BAYES_00 ham + +endif # Mail::SpamAssassin::Plugin::Shortcircuit +</textarea> +</div> + + <div class="pushbot"> + <textarea class="shell" rows="2" readonly>sudo service spamassassin restart</textarea> + </div> + </fieldset> +</div> + </section> +</article> Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Jessie (8.x)/spamassassin.html ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Wheezy (7.x)/spamassassin.html =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Wheezy (7.x)/spamassassin.html (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Wheezy (7.x)/spamassassin.html 2018-10-31 10:25:03 UTC (rev 13394) @@ -0,0 +1,319 @@ + +<article> +<section> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo apt-get install spamassassin spamc</textarea> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Adding Spamassassin User</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo groupadd spamd</textarea> + </div> +<div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo useradd -g spamd -s /bin/false -d /var/log/spamassassin spamd</textarea> + </div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo mkdir /var/log/spamassassin</textarea> + </div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo chown spamd:spamd /var/log/spamassassin</textarea> + </div> + <div class="pushbot"> + </fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Spamassassin</legend> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/default/spamassassin</textarea> + <textarea class="filecontent" rows="21" readonly># /etc/default/spamassassin +# Duncan Findlay + +SAHOME="/var/log/spamassassin/" + +# WARNING: please read README.spamd before using. +# There may be security risks. + +# If you're using systemd (default for jessie), the ENABLED setting is +# not used. Instead, enable spamd by issuing: +# systemctl enable spamassassin.service +# Change to "1" to enable spamd on systems using sysvinit: +ENABLED=1 + +# Options +# See man spamd for possible options. The -d option is automatically added. + +# SpamAssassin uses a preforking model, so be careful! You need to +# make sure --max-children is not set to anything higher than 5, +# unless you know what you're doing. + +OPTIONS="--create-prefs --max-children 5 --helper-home-dir --username spamd \-H ${SAHOME} -s ${SAHOME}spamd.log" + +# Pid file +# Where should spamd write its PID to file? If you use the -u or +# --username option above, this needs to be writable by that user. +# Otherwise, the init script will not be able to shut spamd down. +PIDFILE="/var/run/spamd.pid" + +# Set nice level of spamd +#NICE="--nicelevel 15" + +# Cronjob +# Set to anything but 0 to enable the cron job to automatically update +# spamassassin's rules on a nightly basis +CRON=1 +</textarea> +</div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo service spamassassin start</textarea> + </div> + </fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Postfix</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/postfix/master.cf</textarea> + <textarea class="filecontent" rows="21" readonly># +# Postfix master process configuration file. For details on the format +# of the file, see the master(5) manual page (command: "man 5 master" or +# on-line: http://www.postfix.org/master.5.html). +# +# Do not forget to execute "postfix reload" after editing this file. +# +# ========================================================================== +# service type private unpriv chroot wakeup maxproc command + args +# (yes) (yes) (no) (never) (100) +# ========================================================================== +smtp inet n - y - - smtpd + -o content_filter=spamassassin +#smtp inet n - y - 1 postscreen +#smtpd pass - - y - - smtpd +#dnsblog unix - - y - 0 dnsblog +#tlsproxy unix - - y - 0 tlsproxy +#submission inet n - y - - smtpd +# -o syslog_name=postfix/submission +# -o smtpd_tls_security_level=encrypt +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_tls_auth_only=yes +# -o smtpd_reject_unlisted_recipient=no +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING +#smtps inet n - y - - smtpd +# -o syslog_name=postfix/smtps +# -o smtpd_tls_wrappermode=yes +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_reject_unlisted_recipient=no +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING +#628 inet n - y - - qmqpd +pickup unix n - y 60 1 pickup +cleanup unix n - y - 0 cleanup +qmgr unix n - n 300 1 qmgr +#qmgr unix n - n 300 1 oqmgr +tlsmgr unix - - y 1000? 1 tlsmgr +rewrite unix - - y - - trivial-rewrite +bounce unix - - y - 0 bounce +defer unix - - y - 0 bounce +trace unix - - y - 0 bounce +verify unix - - y - 1 verify +flush unix n - y 1000? 0 flush +proxymap unix - - n - - proxymap +proxywrite unix - - n - 1 proxymap +smtp unix - - y - - smtp +relay unix - - y - - smtp + -o syslog_name=postfix/$service_name +# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 +showq unix n - y - - showq +error unix - - y - - error +retry unix - - y - - error +discard unix - - y - - discard +local unix - n n - - local +virtual unix - n n - - virtual +lmtp unix - - y - - lmtp +anvil unix - - y - 1 anvil +scache unix - - y - 1 scache +# +# ==================================================================== +# Interfaces to non-Postfix software. Be sure to examine the manual +# pages of the non-Postfix software to find out what options it wants. +# +# Many of the following services use the Postfix pipe(8) delivery +# agent. See the pipe(8) man page for information about ${recipient} +# and other message envelope options. +# ==================================================================== +# +# maildrop. See the Postfix MAILDROP_README file for details. +# Also specify in main.cf: maildrop_destination_recipient_limit=1 +# +maildrop unix - n n - - pipe + flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient} +# +# ==================================================================== +# +# Recent Cyrus versions can use the existing "lmtp" master.cf entry. +# +# Specify in cyrus.conf: +# lmtp cmd="lmtpd -a" listen="localhost:lmtp" proto=tcp4 +# +# Specify in main.cf one or more of the following: +# mailbox_transport = lmtp:inet:localhost +# virtual_transport = lmtp:inet:localhost +# +# ==================================================================== +# +# Cyrus 2.1.5 (Amos Gouaux) +# Also specify in main.cf: cyrus_destination_recipient_limit=1 +# +#cyrus unix - n n - - pipe +# user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user} +# +# ==================================================================== +# Old example of delivery via Cyrus. +# +#old-cyrus unix - n n - - pipe +# flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user} +# +# ==================================================================== +# +# See the Postfix UUCP_README file for configuration details. +# +uucp unix - n n - - pipe + flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) +# +# Other external delivery methods. +# +ifmail unix - n n - - pipe + flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) +bsmtp unix - n n - - pipe + flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient +scalemail-backend unix - n n - 2 pipe + flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension} +mailman unix - n n - - pipe + flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py + ${nexthop} ${user} +spamassassin unix - n n - - pipe + user=spamd argv=/usr/bin/spamc -f -e + /usr/sbin/sendmail -oi -f ${sender} ${recipient} + </textarea> + </div> + + <div class="pushbot"> + <textarea class="shell" rows="2" readonly>sudo service postfix restart</textarea> + </div> + +</fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Spamassassin on your Email Services</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/spamassassin/local.cf</textarea> + <textarea class="filecontent" rows="8" readonly># This is the right place to customize your installation of SpamAssassin. +# +# See 'perldoc Mail::SpamAssassin::Conf' for details of what can be +# tweaked. +# +# Only a small subset of options are listed below +# +########################################################################### + +# Add *****SPAM***** to the Subject header of spam e-mails +# +# rewrite_header Subject *****SPAM***** +rewrite_header [***** SPAM _SCORE_ *****] Subject + +# Save spam messages as a message/rfc822 MIME attachment instead of +# modifying the original message (0: off, 2: use text/plain instead) +# +# report_safe 1 + + +# Set which networks or hosts are considered 'trusted' by your mail +# server (i.e. not spammers) +# +# trusted_networks 212.17.35. + + +# Set file-locking method (flock is not safe over NFS, but is faster) +# +# lock_method flock + + +# Set the threshold at which a message is considered spam (default: 5.0) +# +# required_score 5.0 +required_score 3.75 + +# Use Bayesian classifier (default: 1) +# +# use_bayes 1 +use_bayes 1 + +# Bayesian classifier auto-learning (default: 1) +# +# bayes_auto_learn 1 +bayes_auto_learn 1 + +# Set headers which may provide inappropriate cues to the Bayesian +# classifier +# +# bayes_ignore_header X-Bogosity +# bayes_ignore_header X-Spam-Flag +# bayes_ignore_header X-Spam-Status + + +# Whether to decode non- UTF-8 and non-ASCII textual parts and recode +# them to UTF-8 before the text is given over to rules processing. +# +# normalize_charset 1 +normalize_charset 1 + +# Some shortcircuiting, if the plugin is enabled +# +ifplugin Mail::SpamAssassin::Plugin::Shortcircuit +# +# default: strongly-whitelisted mails are *really* whitelisted now, if the +# shortcircuiting plugin is active, causing early exit to save CPU load. +# Uncomment to turn this on +# +# shortcircuit USER_IN_WHITELIST on +# shortcircuit USER_IN_DEF_WHITELIST on +# shortcircuit USER_IN_ALL_SPAM_TO on +# shortcircuit SUBJECT_IN_WHITELIST on + +# the opposite; blacklisted mails can also save CPU +# +# shortcircuit USER_IN_BLACKLIST on +# shortcircuit USER_IN_BLACKLIST_TO on +# shortcircuit SUBJECT_IN_BLACKLIST on + +# if you have taken the time to correctly specify your "trusted_networks", +# this is another good way to save CPU +# +# shortcircuit ALL_TRUSTED on + +# and a well-trained bayes DB can save running rules, too +# +shortcircuit BAYES_99 spam +shortcircuit BAYES_00 ham + +endif # Mail::SpamAssassin::Plugin::Shortcircuit +</textarea> +</div> + + <div class="pushbot"> + <textarea class="shell" rows="2" readonly>sudo service spamassassin restart</textarea> + </div> + </fieldset> +</div> + </section> +</article> Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Debian Wheezy (7.x)/spamassassin.html ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Gentoo (2.2)/spamassassin.html =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Gentoo (2.2)/spamassassin.html (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Gentoo (2.2)/spamassassin.html 2018-10-31 10:25:03 UTC (rev 13394) @@ -0,0 +1,319 @@ + +<article> +<section> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo apt-get install spamassassin spamc</textarea> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Adding Spamassassin User</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo groupadd spamd</textarea> + </div> +<div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo useradd -g spamd -s /bin/false -d /var/log/spamassassin spamd</textarea> + </div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo mkdir /var/log/spamassassin</textarea> + </div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo chown spamd:spamd /var/log/spamassassin</textarea> + </div> + <div class="pushbot"> + </fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Spamassassin</legend> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/default/spamassassin</textarea> + <textarea class="filecontent" rows="21" readonly># /etc/default/spamassassin +# Duncan Findlay + +SAHOME="/var/log/spamassassin/" + +# WARNING: please read README.spamd before using. +# There may be security risks. + +# If you're using systemd (default for jessie), the ENABLED setting is +# not used. Instead, enable spamd by issuing: +# systemctl enable spamassassin.service +# Change to "1" to enable spamd on systems using sysvinit: +ENABLED=1 + +# Options +# See man spamd for possible options. The -d option is automatically added. + +# SpamAssassin uses a preforking model, so be careful! You need to +# make sure --max-children is not set to anything higher than 5, +# unless you know what you're doing. + +OPTIONS="--create-prefs --max-children 5 --helper-home-dir --username spamd \-H ${SAHOME} -s ${SAHOME}spamd.log" + +# Pid file +# Where should spamd write its PID to file? If you use the -u or +# --username option above, this needs to be writable by that user. +# Otherwise, the init script will not be able to shut spamd down. +PIDFILE="/var/run/spamd.pid" + +# Set nice level of spamd +#NICE="--nicelevel 15" + +# Cronjob +# Set to anything but 0 to enable the cron job to automatically update +# spamassassin's rules on a nightly basis +CRON=1 +</textarea> +</div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo service spamassassin start</textarea> + </div> + </fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Postfix</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/postfix/master.cf</textarea> + <textarea class="filecontent" rows="21" readonly># +# Postfix master process configuration file. For details on the format +# of the file, see the master(5) manual page (command: "man 5 master" or +# on-line: http://www.postfix.org/master.5.html). +# +# Do not forget to execute "postfix reload" after editing this file. +# +# ========================================================================== +# service type private unpriv chroot wakeup maxproc command + args +# (yes) (yes) (no) (never) (100) +# ========================================================================== +smtp inet n - y - - smtpd + -o content_filter=spamassassin +#smtp inet n - y - 1 postscreen +#smtpd pass - - y - - smtpd +#dnsblog unix - - y - 0 dnsblog +#tlsproxy unix - - y - 0 tlsproxy +#submission inet n - y - - smtpd +# -o syslog_name=postfix/submission +# -o smtpd_tls_security_level=encrypt +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_tls_auth_only=yes +# -o smtpd_reject_unlisted_recipient=no +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING +#smtps inet n - y - - smtpd +# -o syslog_name=postfix/smtps +# -o smtpd_tls_wrappermode=yes +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_reject_unlisted_recipient=no +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING +#628 inet n - y - - qmqpd +pickup unix n - y 60 1 pickup +cleanup unix n - y - 0 cleanup +qmgr unix n - n 300 1 qmgr +#qmgr unix n - n 300 1 oqmgr +tlsmgr unix - - y 1000? 1 tlsmgr +rewrite unix - - y - - trivial-rewrite +bounce unix - - y - 0 bounce +defer unix - - y - 0 bounce +trace unix - - y - 0 bounce +verify unix - - y - 1 verify +flush unix n - y 1000? 0 flush +proxymap unix - - n - - proxymap +proxywrite unix - - n - 1 proxymap +smtp unix - - y - - smtp +relay unix - - y - - smtp + -o syslog_name=postfix/$service_name +# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 +showq unix n - y - - showq +error unix - - y - - error +retry unix - - y - - error +discard unix - - y - - discard +local unix - n n - - local +virtual unix - n n - - virtual +lmtp unix - - y - - lmtp +anvil unix - - y - 1 anvil +scache unix - - y - 1 scache +# +# ==================================================================== +# Interfaces to non-Postfix software. Be sure to examine the manual +# pages of the non-Postfix software to find out what options it wants. +# +# Many of the following services use the Postfix pipe(8) delivery +# agent. See the pipe(8) man page for information about ${recipient} +# and other message envelope options. +# ==================================================================== +# +# maildrop. See the Postfix MAILDROP_README file for details. +# Also specify in main.cf: maildrop_destination_recipient_limit=1 +# +maildrop unix - n n - - pipe + flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient} +# +# ==================================================================== +# +# Recent Cyrus versions can use the existing "lmtp" master.cf entry. +# +# Specify in cyrus.conf: +# lmtp cmd="lmtpd -a" listen="localhost:lmtp" proto=tcp4 +# +# Specify in main.cf one or more of the following: +# mailbox_transport = lmtp:inet:localhost +# virtual_transport = lmtp:inet:localhost +# +# ==================================================================== +# +# Cyrus 2.1.5 (Amos Gouaux) +# Also specify in main.cf: cyrus_destination_recipient_limit=1 +# +#cyrus unix - n n - - pipe +# user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user} +# +# ==================================================================== +# Old example of delivery via Cyrus. +# +#old-cyrus unix - n n - - pipe +# flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user} +# +# ==================================================================== +# +# See the Postfix UUCP_README file for configuration details. +# +uucp unix - n n - - pipe + flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) +# +# Other external delivery methods. +# +ifmail unix - n n - - pipe + flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) +bsmtp unix - n n - - pipe + flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient +scalemail-backend unix - n n - 2 pipe + flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension} +mailman unix - n n - - pipe + flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py + ${nexthop} ${user} +spamassassin unix - n n - - pipe + user=spamd argv=/usr/bin/spamc -f -e + /usr/sbin/sendmail -oi -f ${sender} ${recipient} + </textarea> + </div> + + <div class="pushbot"> + <textarea class="shell" rows="2" readonly>sudo service postfix restart</textarea> + </div> + +</fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Spamassassin on your Email Services</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/spamassassin/local.cf</textarea> + <textarea class="filecontent" rows="8" readonly># This is the right place to customize your installation of SpamAssassin. +# +# See 'perldoc Mail::SpamAssassin::Conf' for details of what can be +# tweaked. +# +# Only a small subset of options are listed below +# +########################################################################### + +# Add *****SPAM***** to the Subject header of spam e-mails +# +# rewrite_header Subject *****SPAM***** +rewrite_header [***** SPAM _SCORE_ *****] Subject + +# Save spam messages as a message/rfc822 MIME attachment instead of +# modifying the original message (0: off, 2: use text/plain instead) +# +# report_safe 1 + + +# Set which networks or hosts are considered 'trusted' by your mail +# server (i.e. not spammers) +# +# trusted_networks 212.17.35. + + +# Set file-locking method (flock is not safe over NFS, but is faster) +# +# lock_method flock + + +# Set the threshold at which a message is considered spam (default: 5.0) +# +# required_score 5.0 +required_score 3.75 + +# Use Bayesian classifier (default: 1) +# +# use_bayes 1 +use_bayes 1 + +# Bayesian classifier auto-learning (default: 1) +# +# bayes_auto_learn 1 +bayes_auto_learn 1 + +# Set headers which may provide inappropriate cues to the Bayesian +# classifier +# +# bayes_ignore_header X-Bogosity +# bayes_ignore_header X-Spam-Flag +# bayes_ignore_header X-Spam-Status + + +# Whether to decode non- UTF-8 and non-ASCII textual parts and recode +# them to UTF-8 before the text is given over to rules processing. +# +# normalize_charset 1 +normalize_charset 1 + +# Some shortcircuiting, if the plugin is enabled +# +ifplugin Mail::SpamAssassin::Plugin::Shortcircuit +# +# default: strongly-whitelisted mails are *really* whitelisted now, if the +# shortcircuiting plugin is active, causing early exit to save CPU load. +# Uncomment to turn this on +# +# shortcircuit USER_IN_WHITELIST on +# shortcircuit USER_IN_DEF_WHITELIST on +# shortcircuit USER_IN_ALL_SPAM_TO on +# shortcircuit SUBJECT_IN_WHITELIST on + +# the opposite; blacklisted mails can also save CPU +# +# shortcircuit USER_IN_BLACKLIST on +# shortcircuit USER_IN_BLACKLIST_TO on +# shortcircuit SUBJECT_IN_BLACKLIST on + +# if you have taken the time to correctly specify your "trusted_networks", +# this is another good way to save CPU +# +# shortcircuit ALL_TRUSTED on + +# and a well-trained bayes DB can save running rules, too +# +shortcircuit BAYES_99 spam +shortcircuit BAYES_00 ham + +endif # Mail::SpamAssassin::Plugin::Shortcircuit +</textarea> +</div> + + <div class="pushbot"> + <textarea class="shell" rows="2" readonly>sudo service spamassassin restart</textarea> + </div> + </fieldset> +</div> + </section> +</article> Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Gentoo (2.2)/spamassassin.html ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/RHEL CentOS (7)/spamassassin.html =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/RHEL CentOS (7)/spamassassin.html (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/RHEL CentOS (7)/spamassassin.html 2018-10-31 10:25:03 UTC (rev 13394) @@ -0,0 +1,319 @@ + +<article> +<section> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo apt-get install spamassassin spamc</textarea> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Adding Spamassassin User</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo groupadd spamd</textarea> + </div> +<div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo useradd -g spamd -s /bin/false -d /var/log/spamassassin spamd</textarea> + </div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo mkdir /var/log/spamassassin</textarea> + </div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo chown spamd:spamd /var/log/spamassassin</textarea> + </div> + <div class="pushbot"> + </fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Spamassassin</legend> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/default/spamassassin</textarea> + <textarea class="filecontent" rows="21" readonly># /etc/default/spamassassin +# Duncan Findlay + +SAHOME="/var/log/spamassassin/" + +# WARNING: please read README.spamd before using. +# There may be security risks. + +# If you're using systemd (default for jessie), the ENABLED setting is +# not used. Instead, enable spamd by issuing: +# systemctl enable spamassassin.service +# Change to "1" to enable spamd on systems using sysvinit: +ENABLED=1 + +# Options +# See man spamd for possible options. The -d option is automatically added. + +# SpamAssassin uses a preforking model, so be careful! You need to +# make sure --max-children is not set to anything higher than 5, +# unless you know what you're doing. + +OPTIONS="--create-prefs --max-children 5 --helper-home-dir --username spamd \-H ${SAHOME} -s ${SAHOME}spamd.log" + +# Pid file +# Where should spamd write its PID to file? If you use the -u or +# --username option above, this needs to be writable by that user. +# Otherwise, the init script will not be able to shut spamd down. +PIDFILE="/var/run/spamd.pid" + +# Set nice level of spamd +#NICE="--nicelevel 15" + +# Cronjob +# Set to anything but 0 to enable the cron job to automatically update +# spamassassin's rules on a nightly basis +CRON=1 +</textarea> +</div> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo service spamassassin start</textarea> + </div> + </fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Postfix</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/postfix/master.cf</textarea> + <textarea class="filecontent" rows="21" readonly># +# Postfix master process configuration file. For details on the format +# of the file, see the master(5) manual page (command: "man 5 master" or +# on-line: http://www.postfix.org/master.5.html). +# +# Do not forget to execute "postfix reload" after editing this file. +# +# ========================================================================== +# service type private unpriv chroot wakeup maxproc command + args +# (yes) (yes) (no) (never) (100) +# ========================================================================== +smtp inet n - y - - smtpd + -o content_filter=spamassassin +#smtp inet n - y - 1 postscreen +#smtpd pass - - y - - smtpd +#dnsblog unix - - y - 0 dnsblog +#tlsproxy unix - - y - 0 tlsproxy +#submission inet n - y - - smtpd +# -o syslog_name=postfix/submission +# -o smtpd_tls_security_level=encrypt +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_tls_auth_only=yes +# -o smtpd_reject_unlisted_recipient=no +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING +#smtps inet n - y - - smtpd +# -o syslog_name=postfix/smtps +# -o smtpd_tls_wrappermode=yes +# -o smtpd_sasl_auth_enable=yes +# -o smtpd_reject_unlisted_recipient=no +# -o smtpd_client_restrictions=$mua_client_restrictions +# -o smtpd_helo_restrictions=$mua_helo_restrictions +# -o smtpd_sender_restrictions=$mua_sender_restrictions +# -o smtpd_recipient_restrictions= +# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject +# -o milter_macro_daemon_name=ORIGINATING +#628 inet n - y - - qmqpd +pickup unix n - y 60 1 pickup +cleanup unix n - y - 0 cleanup +qmgr unix n - n 300 1 qmgr +#qmgr unix n - n 300 1 oqmgr +tlsmgr unix - - y 1000? 1 tlsmgr +rewrite unix - - y - - trivial-rewrite +bounce unix - - y - 0 bounce +defer unix - - y - 0 bounce +trace unix - - y - 0 bounce +verify unix - - y - 1 verify +flush unix n - y 1000? 0 flush +proxymap unix - - n - - proxymap +proxywrite unix - - n - 1 proxymap +smtp unix - - y - - smtp +relay unix - - y - - smtp + -o syslog_name=postfix/$service_name +# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 +showq unix n - y - - showq +error unix - - y - - error +retry unix - - y - - error +discard unix - - y - - discard +local unix - n n - - local +virtual unix - n n - - virtual +lmtp unix - - y - - lmtp +anvil unix - - y - 1 anvil +scache unix - - y - 1 scache +# +# ==================================================================== +# Interfaces to non-Postfix software. Be sure to examine the manual +# pages of the non-Postfix software to find out what options it wants. +# +# Many of the following services use the Postfix pipe(8) delivery +# agent. See the pipe(8) man page for information about ${recipient} +# and other message envelope options. +# ==================================================================== +# +# maildrop. See the Postfix MAILDROP_README file for details. +# Also specify in main.cf: maildrop_destination_recipient_limit=1 +# +maildrop unix - n n - - pipe + flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient} +# +# ==================================================================== +# +# Recent Cyrus versions can use the existing "lmtp" master.cf entry. +# +# Specify in cyrus.conf: +# lmtp cmd="lmtpd -a" listen="localhost:lmtp" proto=tcp4 +# +# Specify in main.cf one or more of the following: +# mailbox_transport = lmtp:inet:localhost +# virtual_transport = lmtp:inet:localhost +# +# ==================================================================== +# +# Cyrus 2.1.5 (Amos Gouaux) +# Also specify in main.cf: cyrus_destination_recipient_limit=1 +# +#cyrus unix - n n - - pipe +# user=cyrus argv=/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user} +# +# ==================================================================== +# Old example of delivery via Cyrus. +# +#old-cyrus unix - n n - - pipe +# flags=R user=cyrus argv=/cyrus/bin/deliver -e -m ${extension} ${user} +# +# ==================================================================== +# +# See the Postfix UUCP_README file for configuration details. +# +uucp unix - n n - - pipe + flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) +# +# Other external delivery methods. +# +ifmail unix - n n - - pipe + flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) +bsmtp unix - n n - - pipe + flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient +scalemail-backend unix - n n - 2 pipe + flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension} +mailman unix - n n - - pipe + flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py + ${nexthop} ${user} +spamassassin unix - n n - - pipe + user=spamd argv=/usr/bin/spamc -f -e + /usr/sbin/sendmail -oi -f ${sender} ${recipient} + </textarea> + </div> + + <div class="pushbot"> + <textarea class="shell" rows="2" readonly>sudo service postfix restart</textarea> + </div> + +</fieldset> +</div> +<div class="filesub"> + <fieldset class="file"> + <legend>Configuring Spamassassin on your Email Services</legend> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo /usr/bin/nano /etc/spamassassin/local.cf</textarea> + <textarea class="filecontent" rows="8" readonly># This is the right place to customize your installation of SpamAssassin. +# +# See 'perldoc Mail::SpamAssassin::Conf' for details of what can be +# tweaked. +# +# Only a small subset of options are listed below +# +########################################################################### + +# Add *****SPAM***** to the Subject header of spam e-mails +# +# rewrite_header Subject *****SPAM***** +rewrite_header [***** SPAM _SCORE_ *****] Subject + +# Save spam messages as a message/rfc822 MIME attachment instead of +# modifying the original message (0: off, 2: use text/plain instead) +# +# report_safe 1 + + +# Set which networks or hosts are considered 'trusted' by your mail +# server (i.e. not spammers) +# +# trusted_networks 212.17.35. + + +# Set file-locking method (flock is not safe over NFS, but is faster) +# +# lock_method flock + + +# Set the threshold at which a message is considered spam (default: 5.0) +# +# required_score 5.0 +required_score 3.75 + +# Use Bayesian classifier (default: 1) +# +# use_bayes 1 +use_bayes 1 + +# Bayesian classifier auto-learning (default: 1) +# +# bayes_auto_learn 1 +bayes_auto_learn 1 + +# Set headers which may provide inappropriate cues to the Bayesian +# classifier +# +# bayes_ignore_header X-Bogosity +# bayes_ignore_header X-Spam-Flag +# bayes_ignore_header X-Spam-Status + + +# Whether to decode non- UTF-8 and non-ASCII textual parts and recode +# them to UTF-8 before the text is given over to rules processing. +# +# normalize_charset 1 +normalize_charset 1 + +# Some shortcircuiting, if the plugin is enabled +# +ifplugin Mail::SpamAssassin::Plugin::Shortcircuit +# +# default: strongly-whitelisted mails are *really* whitelisted now, if the +# shortcircuiting plugin is active, causing early exit to save CPU load. +# Uncomment to turn this on +# +# shortcircuit USER_IN_WHITELIST on +# shortcircuit USER_IN_DEF_WHITELIST on +# shortcircuit USER_IN_ALL_SPAM_TO on +# shortcircuit SUBJECT_IN_WHITELIST on + +# the opposite; blacklisted mails can also save CPU +# +# shortcircuit USER_IN_BLACKLIST on +# shortcircuit USER_IN_BLACKLIST_TO on +# shortcircuit SUBJECT_IN_BLACKLIST on + +# if you have taken the time to correctly specify your "trusted_networks", +# this is another good way to save CPU +# +# shortcircuit ALL_TRUSTED on + +# and a well-trained bayes DB can save running rules, too +# +shortcircuit BAYES_99 spam +shortcircuit BAYES_00 ham + +endif # Mail::SpamAssassin::Plugin::Shortcircuit +</textarea> +</div> + + <div class="pushbot"> + <textarea class="shell" rows="2" readonly>sudo service spamassassin restart</textarea> + </div> + </fieldset> +</div> + </section> +</article> Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/RHEL CentOS (7)/spamassassin.html ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Precise (12.04)/spamassassin.html =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Precise (12.04)/spamassassin.html (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/assets/configs/Ubuntu Precise (12.04)/spamassassin.html 2018-10-31 10:25:03 UTC (rev 13394) @@ -0,0 +1,319 @@ + +<article> +<section> + <div class="pushbot"> + <textarea class="shell" rows="1" readonly>sudo apt-get install spamassassin spamc</textarea> +</div> +<... [truncated message content] |
From: <chr...@us...> - 2018-10-26 18:38:19
|
Revision: 13393 http://sourceforge.net/p/xoops/svn/13393 Author: chronolabscoop Date: 2018-10-26 18:38:15 +0000 (Fri, 26 Oct 2018) Log Message: ----------- Email API Rest 1.0.3! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/import-generated-keys.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/port-encryption-keys.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/config.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/page_extrasettings.php Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php 2018-10-26 18:17:07 UTC (rev 13392) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php 2018-10-26 18:38:15 UTC (rev 13393) @@ -55,7 +55,7 @@ $seconds = 1800; } -$sql = "SELECT * FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcheck` < UNIX_TIMESTAMP()"; +$sql = "SELECT * FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcheck` > UNIX_TIMESTAMP()"; $result = $GLOBALS['APIDB']->queryF($sql); while($domain = $GLOBALS['APIDB']->fetchArray($result)) { $found = false; @@ -62,15 +62,18 @@ $priority = 10; foreach(getMXByNamel($domain['domain']) as $key => $mxrecord) { if ($found == false) - if ($priority < $mxrecord['pri']) + if ($priority > $mxrecord['pri']) $priority = $mxrecord['pri']; if ($mxrecord['target'] == parse_url(API_URL, PHP_URL_HOST)) - $found = true; + if ($found == false) + if ($mxhost = $mxrecord['host']) + if ($found = true) + continue; } if ($found == false) { - list($count) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF("SELECT count(*) FROM `" . $GLOBALS['APIDB']->prefix('mxs') . "` WHERE `mx` LIKE 'mx.".$domain['domain']."' AND `target` LIKE '".parse_url(API_URL, PHP_URL_HOST)."'")); + list($count) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF("SELECT count(*) FROM `" . $GLOBALS['APIDB']->prefix('mxs') . "` WHERE `mx` LIKE '".$domain['domain']."' AND `target` LIKE '".parse_url(API_URL, PHP_URL_HOST)."'")); if ($count == 0) { - if (!$GLOBALS['APIDB']->queryF($sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mxs') . "` (`domainid`, `uid`, `pid`, `mx`, `target`, `pirority`, `mxcheck`) VALUES('".$domain['id']."', '".$domain['uid']."','".$domain['pid']."','mx.".$domain['domain']."','".parse_url(API_URL, PHP_URL_HOST)."','".($pirority+10)."', UNIX_TIMESTAMP() + $seconds)")) + if (!$GLOBALS['APIDB']->queryF($sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mxs') . "` (`domainid`, `uid`, `pid`, `mx`, `target`, `pirority`, `mxcheck`) VALUES('".$domain['id']."', '".$domain['uid']."','".$domain['pid']."','".domain['domain']."','".parse_url(API_URL, PHP_URL_HOST)."','".($pirority+10)."', UNIX_TIMESTAMP() + $seconds)")) die("SQL Failed: $sql;"); else echo("\nSQL Success: $sql;"); @@ -96,10 +99,13 @@ $priority = 10; foreach(getMXByNamel($domain['domain']) as $key => $mxrecord) { if ($found == false) - if ($priority < $mxrecord['pri']) + if ($priority > $mxrecord['pri']) $priority = $mxrecord['pri']; if ($mxrecord['target'] == $mx['target'] && $mxrecord['host'] == $mx['mx'] ) - $found = true; + if ($found == false) + if ($mxhost = $mxrecord['host']) + if ($found = true) + continue; } if ($found == false) { if (!$GLOBALS['APIDB']->queryF($sql = "UPDATE `" . $GLOBALS['APIDB']->prefix('mxs') . "` SET `mxcheck` = UNIX_TIMESTAMP() + " . ($seconds * 2) . " WHERE `id` = " . $mx['id'])) Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/import-generated-keys.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/import-generated-keys.php 2018-10-26 18:17:07 UTC (rev 13392) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/import-generated-keys.php 2018-10-26 18:38:15 UTC (rev 13393) @@ -67,7 +67,7 @@ foreach($names as $name => $email) if ($email == $addy['email']) unset($emails[$key]); - + foreach($emails as $emailkey => $names) foreach($names as $name => $email) { $domainid = 0; @@ -76,21 +76,22 @@ $domain = $parts[1]; $domainpath = implode(DS, array_reverse(explode('.', $domain))); $result = $GLOBALS['APIDB']->queryF("SELECT `domain`, `id`, md5(concat(`id`, '" . API_URL . "', 'domain')) as `key` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "`"); - while($domain = $GLOBALS['APIDB']->fetchArray($result)) { - if (empty($domainid) && empty($domainkey) && $domain['domain'] == $domain) + while($record = $GLOBALS['APIDB']->fetchArray($result)) { + if (empty($domainid) && empty($domainkey) && $record['domain'] == $domain) { - $domainid = $domain['id']; - $domainkey = $domain['key']; + $domainid = $record['id']; + $domainkey = $record['key']; continue; } } - $mfile = mfiletime($keyfile = API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . "$email.asc"); + $keyfile = API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . "$email.asc"; if (file_exists($keyfile)) { - $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('pgpkeys') . "` (`typal`, `domainid`, `name`, `email`, `key`, `created`, `imported`) VALUES('internal', '$domainid', '" . $GLOBALS['APIDB']->escape($name) . "', '$email', '". $GLOBALS['APIDB']->escape($pgpkey = file_get_contents($keyfile)) . "', UNIX_TIMESTAMP(), '$mtime')"; + $ctime = filectime($keyfile); + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('pgpkeys') . "` (`typal`, `domainid`, `name`, `email`, `key`, `created`, `imported`) VALUES('internal', '$domainid', '" . $GLOBALS['APIDB']->escape($name) . "', '$email', '". $GLOBALS['APIDB']->escape($pgpkey = file_get_contents($keyfile)) . "', UNIX_TIMESTAMP(), '$ctime')"; if ($GLOBALS['APIDB']->queryF($sql)) { $from = $GLOBALS['APIDB']->fetchArray($GLOBALS['APIDB']->queryF("SELECT * FROM `" . $GLOBALS['APIDB']->prefix('users') . "` WHERE `uid` = '" . API_PRIMARY_SYSOP_UID . "'")); - $todomain = $GLOBALS['APIDB']->fetchArray($GLOBALS['APIDB']->queryF("SELECT *, AES_DECRYPT(`password`, `email`) as `depassword` FROM `" . $GLOBALS['APIDB']->prefix('mail_users') . "` WHERE `email` = '" . $email . "'")); + $todomain = $GLOBALS['APIDB']->fetchArray($GLOBALS['APIDB']->queryF("SELECT *, DES_DECRYPT(`password`, `email`) as `depassword` FROM `" . $GLOBALS['APIDB']->prefix('mail_users') . "` WHERE `email` = '" . $email . "'")); $to = array($todomain['notify']); $cc = array($todomain['email']); $mailers = new APIMailer($from['email'], $from['name']); @@ -119,6 +120,8 @@ } if (strlen($todomain['callback']) > 0) addCallback($todomain['callback'], array("op" => 'email-activation', "emailkey" => $emailkey, "email" => $email, "name" => $todomain['name'], 'pgpkey' => $pgpkey, 'activation-link' => API_URL . '/v2/' . $emailkey . "/" . $todomain['actkey'] . '/activation.html')); + } else { + die("SQL Error: $sql;"); } } } Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/port-encryption-keys.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/port-encryption-keys.php 2018-10-26 18:17:07 UTC (rev 13392) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/port-encryption-keys.php 2018-10-26 18:38:15 UTC (rev 13393) @@ -26,8 +26,8 @@ */ require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'apiconfig.php'; -require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'apimailer.php'; + $start = time(); if ($staters = APICache::read('port-encryption-keys')) { @@ -47,8 +47,8 @@ if (count($avg) > 0 ) { foreach($avg as $average) $seconds += $average; - $seconds = $seconds / count($avg); - } else + $seconds = $seconds / count($avg); + } else $seconds = 1800; } else { APICache::write('port-encryption-keys', array(0=>$start), 3600 * 24 * 7 * 4 * 6); @@ -55,7 +55,7 @@ $seconds = 1800; } -$authkey = json_decode(getURIData(API_ZONES_API_URL . "/v1/authkey.api", 200, 200, array("username" => API_ZONES_API_USER, "password" => API_ZONES_API_PASS)), true); +$authkey = json_decode(getURIData(API_ZONES_API_URL . "/v1/authkey.api?" . http_build_query(array("username" => API_ZONES_API_USER, "password" => API_ZONES_API_PASS, 'format' => 'json')), 200, 200, array("username" => API_ZONES_API_USER, "password" => API_ZONES_API_PASS, 'format' => 'json')), true); if (count($authkey['errors']) == 0) $domains = json_decode(getURIData(API_ZONES_API_URL . "/v1/".$authkey['authkey']."/domains/json.api", 200, 200), true); else @@ -71,18 +71,24 @@ $domain['zonekey'] = $zone['domainkey']; if (!$GLOBALS['APIDB']->queryF($sql = "UPDATE `" . $GLOBALS['APIDB']->prefix('domains') . "` SET `zonekey` = '" . $domain['zonekey'] . "' WHERE `id` = '" . $pgpkey['domainid'] . "'")) { die("SQL Failed: $sql;"); + } else { + echo ("SQL Success: $sql;"); } } } } if (!empty($domain['zonekey'])) { - $record = json_decode(getURIData(API_ZONES_API_URL . "/v1/".$authkey['authkey']."/zones.api", 200, 200, array('domain' => $domain['zonekey'], 'type' => 'OPENPGPKEY', 'name' => $pgpkey['email'], 'content' => $pgpkey['key'], 'ttl' => 6000, 'prio' => 5)), true); + $record = json_decode(getURIData(API_ZONES_API_URL . "/v1/".$authkey['authkey']."/zones.api?" . http_build_query(array('domain' => $domain['zonekey'], 'type' => 'OPENPGPKEY', 'name' => $pgpkey['email'], 'content' => $pgpkey['key'], 'ttl' => 6000, 'prio' => 5, 'format' => 'json')), 200, 200, array('domain' => $domain['zonekey'], 'type' => 'OPENPGPKEY', 'name' => $pgpkey['email'], 'content' => $pgpkey['key'], 'ttl' => 6000, 'prio' => 5, 'format' => 'json')), true); if (count($record['errors']) == 0) { - $GLOBALS['APIDB']->queryF("UPDATE `" . $GLOBALS['APIDB']->prefix('pgpkeys') . "` SET `zonekey` = '" . $record['recordkey'] . "', `zoned` = UNIX_TIMESTAMP() WHERE `kid` = '" . $pgpkey['kid'] . "'"); + if (!$GLOBALS['APIDB']->queryF($sql = "UPDATE `" . $GLOBALS['APIDB']->prefix('pgpkeys') . "` SET `zonekey` = '" . $record['recordkey'] . "', `zoned` = UNIX_TIMESTAMP() WHERE `kid` = '" . $pgpkey['kid'] . "'")) { + die("SQL Failed: $sql;"); + } else { + echo ("SQL Success: $sql;"); + } } } } - $authkey = json_decode(getURIData(API_ZONES_API_URL . "/v1/authkey.api", 200, 200, array("username" => API_ZONES_API_USER, "password" => API_ZONES_API_PASS)), true); + $authkey = json_decode(getURIData(API_ZONES_API_URL . "/v1/authkey.api?" . http_build_query(array("username" => API_ZONES_API_USER, "password" => API_ZONES_API_PASS, 'format' => 'json')), 200, 200, array("username" => API_ZONES_API_USER, "password" => API_ZONES_API_PASS, 'format' => 'json')), true); } ?> Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-10-26 18:17:07 UTC (rev 13392) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-10-26 18:38:15 UTC (rev 13393) @@ -41,5 +41,5 @@ /** * Define API version */ -define('API_VERSION', 'Emails Propogation REST Services API 1.0.2'); +define('API_VERSION', 'Emails Propogation REST Services API 1.0.3'); define('API_TYPE', 'emails-api'); Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/config.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/config.php 2018-10-26 18:17:07 UTC (rev 13392) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/config.php 2018-10-26 18:38:15 UTC (rev 13393) @@ -75,7 +75,6 @@ $configs['api_url'] = array( 'strata' => 'http://strata.snails.email', 'whois' => 'http://whois.snails.email', - 'zones' => 'http://zones.snails.email', 'masterhost' => $_SESSION['settings']['URL'], ); @@ -95,7 +94,11 @@ 'zones' => '', ); -$configs['api_paths'] = array( +$configs['api_urls'] = array( + 'zones' => 'http://zones.snails.email', +); + +$configs['path'] = array( 'maildir' => '/mailboxs', 'homedir' => '/var/www/homes', ); Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/page_extrasettings.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/page_extrasettings.php 2018-10-26 18:17:07 UTC (rev 13392) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/page_extrasettings.php 2018-10-26 18:38:15 UTC (rev 13393) @@ -46,18 +46,22 @@ { $_SESSION['constants']['api_url'][$setting] = $_POST[$setting]; } - foreach($wizard->configs['api_paths'] as $setting => $values) + foreach($wizard->configs['path'] as $setting => $values) { - $_SESSION['constants']['paths'][$setting] = $_POST[$setting]; + $_SESSION['constants']['path'][$setting] = $_POST[$setting]; } foreach($wizard->configs['api_user'] as $setting => $values) { - $_SESSION['constants']['api_user'][$setting] = $_POST[$setting]; + $_SESSION['constants']['api_user'][$setting] = $_POST['api_user_' . $setting]; } foreach($wizard->configs['api_pass'] as $setting => $values) { - $_SESSION['constants']['api_pass'][$setting] = $_POST[$setting]; + $_SESSION['constants']['api_pass'][$setting] = $_POST['api_pass_' . $setting]; } + foreach($wizard->configs['api_urls'] as $setting => $values) + { + $_SESSION['constants']['api_url'][$setting] = $_POST['api_url_' . $setting]; + } foreach($wizard->configs['pgp_keys'] as $setting => $values) { $_SESSION['constants']['pgp_keys'][$setting] = $_POST[$setting]; @@ -105,19 +109,25 @@ <div class="xoform-help alert alert-info"><?php echo constant("API_".strtoupper($setting) . "_HELP"); ?></div> <input type="text" class="form-control" name="<?php echo $setting; ?>" id="<?php echo $setting; ?>" value="<?php echo $default; ?>"/> <?php } + foreach($wizard->configs['api_urls'] as $setting => $default) + {?> + <label for="<?php echo $setting; ?>"><?php echo constant("API_".strtoupper($setting) . "_LABEL"); ?></label> + <div class="xoform-help alert alert-info"><?php echo constant("API_".strtoupper($setting) . "_HELP"); ?></div> + <input type="text" class="form-control" name="<?php echo 'api_url_' . $setting; ?>" id="<?php echo $setting; ?>" value="<?php echo $default; ?>"/> + <?php } foreach($wizard->configs['api_user'] as $setting => $default) {?> <label for="<?php echo $setting; ?>"><?php echo constant("API_".strtoupper($setting) . "_USER_LABEL"); ?></label> <div class="xoform-help alert alert-info"><?php echo constant("API_".strtoupper($setting) . "_USER_HELP"); ?></div> - <input type="text" class="form-control" name="<?php echo $setting; ?>" id="<?php echo $setting; ?>" value="<?php echo $default; ?>"/> + <input type="text" class="form-control" name="<?php echo 'api_user_' . $setting; ?>" id="<?php echo $setting; ?>" value="<?php echo $default; ?>"/> <?php } foreach($wizard->configs['api_pass'] as $setting => $default) {?> <label for="<?php echo $setting; ?>"><?php echo constant("API_".strtoupper($setting) . "_PASS_LABEL"); ?></label> <div class="xoform-help alert alert-info"><?php echo constant("API_".strtoupper($setting) . "_PASS_HELP"); ?></div> - <input type="password" class="form-control" name="<?php echo $setting; ?>" id="<?php echo $setting; ?>" value="<?php echo $default; ?>"/> + <input type="password" class="form-control" name="<?php echo 'api_pass_' . $setting; ?>" id="<?php echo $setting; ?>" value="<?php echo $default; ?>"/> <?php } - foreach($wizard->configs['api_paths'] as $setting => $default) + foreach($wizard->configs['path'] as $setting => $default) {?> <label for="<?php echo $setting; ?>"><?php echo constant("API_".strtoupper($setting) . "_LABEL"); ?></label> <div class="xoform-help alert alert-info"><?php echo constant("API_".strtoupper($setting) . "_HELP"); ?></div> |
From: <chr...@us...> - 2018-10-26 18:17:14
|
Revision: 13392 http://sourceforge.net/p/xoops/svn/13392 Author: chronolabscoop Date: 2018-10-26 18:17:07 +0000 (Fri, 26 Oct 2018) Log Message: ----------- Email API Rest 1.0.2! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.pgpkeys.sql Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-10-26 08:10:58 UTC (rev 13391) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-10-26 18:17:07 UTC (rev 13392) @@ -400,11 +400,11 @@ if (empty($return)) { - $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix('mail_users') . "` WHERE (`email` LIKE '$username@$domain' AND `username` = '$username@$domain' AND `domainid` = '$domainid')"; + $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix('mail_users') . "` WHERE ((`email` LIKE '$username@$domain' OR `username` = '$username@$domain') AND `domainid` = '$domainid')"; list($count) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); if ($count==0) { - $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mail_users') . "` (`mode`, `name`, `email`, `notify`, `actkey`, `password`, `password_enc`, `uid`, `pid`, `homedir`, `maildir`, `postfix`, `domainid`, `pop3`, `imap`, `mboxsize`, `mboxonline`, `mboxoffline`, `created`, `callback`) VALUES ('new', '" . $GLOBALS['APIDB']->escape($name) . "', '$username@$domain', '$notify', '" . substr(sha1(microtime(true)), mt_rand(0, 34), mt_rand(4,6)) . "', AES_ENCRYPT('$password', '$username@$domain'), CRYPT('$password'), '" . $GLOBALS['uid'] . "', '$pid', '" . ($homedir = API_HOMEDIR_PATH . DS . $domainpath . DS . $username) . "', '" . ($maildir = API_MAILDIR_PATH . DS . $domainpath . DS . $username) . "', 'Y', '$domainid', 1, 1, '" . (API_INTIALISE_INBOX_SIZES * 1024 * 1024 * 1024) . "', '$bytessize', '" . (API_OFFLINE_INBOX_SIZES * 1024 * 1024 * 1024) . "', UNIX_TIMESTAMP(), '" . $GLOBALS['APIDB']->escape($callback) . "')"; + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mail_users') . "` (`mode`, `name`, `email`, `username`, `notify`, `actkey`, `password`, `password_enc`, `uid`, `pid`, `homedir`, `maildir`, `postfix`, `domainid`, `pop3`, `imap`, `mboxsize`, `mboxonline`, `mboxoffline`, `created`, `callback`) VALUES ('new', '" . $GLOBALS['APIDB']->escape($name) . "', '$username@$domain', '$username@$domain', '$notify', '" . substr(sha1(microtime(true)), mt_rand(0, 34), mt_rand(4,6)) . "', DES_ENCRYPT('$password', '$username@$domain'), ENCRYPT('$password'), '" . $GLOBALS['uid'] . "', '$pid', '" . ($homedir = API_HOMEDIR_PATH . DS . $domainpath . DS . $username) . "', '" . ($maildir = API_MAILDIR_PATH . DS . $domainpath . DS . $username) . "', 'Y', '$domainid', 1, 1, '" . (API_INTIALISE_INBOX_SIZES * 1024 * 1024 * 1024) . "', '$bytessize', '" . (API_OFFLINE_INBOX_SIZES * 1024 * 1024 * 1024) . "', UNIX_TIMESTAMP(), '" . $GLOBALS['APIDB']->escape($callback) . "')"; if ($GLOBALS['APIDB']->queryF($sql)) { $sql = "SELECT md5(concat(`id`, '" . API_URL . "', 'email')) FROM `" . $GLOBALS['APIDB']->prefix('mail_users') . "` WHERE `id` = '".$GLOBALS['APIDB']->getInsertId()."'"; @@ -428,13 +428,13 @@ $sh[] = "unlink \"" . dirname(__DIR__) . DS . 'crons' . DS . 'generate-pgpkeys.sh' . "\"\n"; } - file_put_contents($diz = API_MAILDIR_PATH . DS . "$username@$domain.diz", str_replace('%name', $name, str_replace('%email', "$username@$domain", str_replace('%subbits', mt_rand(API_MINBITS_PGP_KEYS, API_MAXBITS_PGP_KEYS), str_replace('%bits', mt_rand(API_MINBITS_PGP_KEYS, API_MAXBITS_PGP_KEYS), file_get_contents(__DIR__ . DS . 'data' . DS . 'gen-key-script.diz')))))); + writeRawFile($diz = API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . "$username@$domain.diz", str_replace('%name', $name, str_replace('%email', "$username@$domain", str_replace('%subbits', mt_rand(API_MINBITS_PGP_KEYS, API_MAXBITS_PGP_KEYS), str_replace('%bits', mt_rand(API_MINBITS_PGP_KEYS, API_MAXBITS_PGP_KEYS), file_get_contents(__DIR__ . DS . 'data' . DS . 'gen-key-script.diz')))))); $sh[] = "gpg --batch --gen-key \"$diz\"\n"; $sh[] = "unlink \"$diz\"\n"; - $sh[] = "gpg --armor --export \"$username@$domain\" > \"" . API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . $username . '@' . $domain . ".asc\"\n"; + $sh[] = "gpg --armor --export $username@$domain > \"" . API_MAILDIR_PATH . DS . $domainpath . DS . '.pgp-keys' . DS . $username . '@' . $domain . ".asc\"\n"; foreach(file(__DIR__ . DS . 'data' . DS . 'keyservers-hostnames.diz') as $keyserver) - $sh[] = "gpg --keyserver \"" . str_replace(array("\n", "\r", "\t"), "", trim($keyserver)) . "\" --send-key \"$username@$domain\"\n"; - file_put_contents($script, implode("", $sh)); + $sh[] = "gpg --keyserver " . str_replace(array("\n", "\r", "\t"), "", trim($keyserver)) . " --send-key $username@$domain\n"; + writeRawFile($script, implode("", $sh)); if (strlen($callback) > 0) addCallback($callback, array('op' => 'created-email', 'emailkey' => $emailkey, 'email' => '$username@$domain', 'username' => $username, 'domain' => $domain, 'domainkey' => $domainkey)); @@ -441,7 +441,7 @@ $return = array('code' => 201, 'emailkey' => $_SESSION['emailkey'], 'errors' => array()); } else { - $return = array('code' => 501, 'emailkey' => md5(NULL. 'email'), 'errors' => array($GLOBALS['APIDB']->errno() => $GLOBALS['APIDB']->error())); + $return = array('code' => 501, 'emailkey' => md5(NULL. 'email'), 'errors' => array('sql' => $sql, $GLOBALS['APIDB']->errno() => $GLOBALS['APIDB']->error())); } } else { $return = array('code' => 501, 'emailkey' => md5(NULL. 'email'), 'errors' => array('103' => 'Record Already Exists!!!')); @@ -530,7 +530,11 @@ foreach($vars as $key => $value) if (!in_array($key, $fields)) unset($vars[$key]); - + + foreach($fields as $key => $value) + if (!in_array($key, $vars)) + unset($fields[$key]); + if (count($vars) == 0) return array('code' => 501, 'errors' => array('110' => 'No records fields specified for edit this supports: '.implode(', ', $fields).'!!!')); @@ -551,15 +555,15 @@ $old = $GLOBALS["APIDB"]->fetchArray($GLOBALS['APIDB']->queryF("SELECT * FROM `" . $GLOBALS['APIDB']->prefix($table) . "` WHERE `uid` = '$id'")); $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix($table) . "` WHERE (`uname` LIKE '" .$GLOBALS['APIDB']->escape($vars['uname']). "') OR (`email` LIKE '" .$GLOBALS['APIDB']->escape($vars['email']). "'))"; break; - case 'records': + case 'email': $old = $GLOBALS["APIDB"]->fetchArray($GLOBALS['APIDB']->queryF("SELECT * FROM `" . $GLOBALS['APIDB']->prefix($table) . "` WHERE `id` = '$id'")); $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix($table) . "` WHERE (`name` LIKE '" .$GLOBALS['APIDB']->escape($vars['name']). "' AND `content` LIKE '" .$GLOBALS['APIDB']->escape($vars['content']). "' AND `type` LIKE '" . $old['type'] . "'))"; break; - case 'domains': + case 'domain': $old = $GLOBALS["APIDB"]->fetchArray($GLOBALS['APIDB']->queryF("SELECT * FROM `" . $GLOBALS['APIDB']->prefix($table) . "` WHERE `id` = '$id'")); $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix($table) . "` WHERE (`name` LIKE '" .$GLOBALS['APIDB']->escape($vars['name']). "' AND `type` LIKE '" . $vars['type'] . "') OR (`master` LIKE '" .$GLOBALS['APIDB']->escape($vars['master']). "' AND `type` LIKE '" . $vars['type'] . "'))"; break; - case 'supermasters': + case 'alias': $old = $GLOBALS["APIDB"]->fetchArray($GLOBALS['APIDB']->queryF("SELECT * FROM `" . $GLOBALS['APIDB']->prefix($table) . "` WHERE `id` = '$id'")); $sql = "SELECT COUNT(*) FROM `" . $GLOBALS['APIDB']->prefix($table) . "` WHERE (`ip` LIKE '" .$GLOBALS['APIDB']->escape($vars['ip']). "' AND `nameserver` LIKE '" .$GLOBALS['APIDB']->escape($vars['nameserver']). "'))"; break; @@ -572,7 +576,12 @@ foreach($vars as $key => $value) { $u++; - $sql .= "`$key` = '" . $GLOBALS['APIDB']->escape($value) . ($u < count($vars)?"', ":"' "); + + if ($key = 'password') { + $sql .= "`$key` = DES_ENCRYPT('" . $GLOBALS['APIDB']->escape($value) . ($u < count($vars) + 1?"', `email`), ":"', `email`) "); + $sql .= "`$key_enc` = ENCRYPT('" . $GLOBALS['APIDB']->escape($value) . ($u < count($vars)?"'), ":"') "); + } else + $sql .= "`$key` = '" . $GLOBALS['APIDB']->escape($value) . ($u < count($vars)?"', ":"' "); } switch ($table) { @@ -998,48 +1007,50 @@ } if (count($post)==0 || empty($post)) curl_setopt($btt, CURLOPT_POST, false); - else { - $uploadfile = false; - foreach($post as $field => $value) - if (substr($value , 0, 1) == '@' && !file_exists(substr($value , 1, strlen($value) - 1))) - unset($post[$field]); - else - $uploadfile = true; - curl_setopt($btt, CURLOPT_POST, true); - curl_setopt($btt, CURLOPT_POSTFIELDS, http_build_query($post)); - - if (!empty($headers)) - foreach($headers as $key => $value) - if ($uploadfile==true && substr($value, 0, strlen('Content-Type:')) == 'Content-Type:') - unset($headers[$key]); - if ($uploadfile==true) - $headers[] = 'Content-Type: multipart/form-data'; - } - if (count($headers)==0 || empty($headers)) - curl_setopt($btt, CURLOPT_HEADER, false); - else { - curl_setopt($btt, CURLOPT_HEADER, true); - curl_setopt($btt, CURLOPT_HTTPHEADER, $headers); - } - curl_setopt($btt, CURLOPT_CONNECTTIMEOUT, $connectout); - curl_setopt($btt, CURLOPT_TIMEOUT, $timeout); - curl_setopt($btt, CURLOPT_RETURNTRANSFER, true); - curl_setopt($btt, CURLOPT_VERBOSE, false); - curl_setopt($btt, CURLOPT_SSL_VERIFYHOST, false); - curl_setopt($btt, CURLOPT_SSL_VERIFYPEER, false); - $data = curl_exec($btt); - $GLOBALS['php-curl'][md5($uri)]['http']['posts'] = $post; - $GLOBALS['php-curl'][md5($uri)]['http']['headers'] = $headers; - $GLOBALS['php-curl'][md5($uri)]['http']['code'] = curl_getinfo($btt, CURLINFO_HTTP_CODE); - $GLOBALS['php-curl'][md5($uri)]['header']['size'] = curl_getinfo($btt, CURLINFO_HEADER_SIZE); - $GLOBALS['php-curl'][md5($uri)]['header']['value'] = curl_getinfo($btt, CURLINFO_HEADER_OUT); - $GLOBALS['php-curl'][md5($uri)]['size']['download'] = curl_getinfo($btt, CURLINFO_SIZE_DOWNLOAD); - $GLOBALS['php-curl'][md5($uri)]['size']['upload'] = curl_getinfo($btt, CURLINFO_SIZE_UPLOAD); - $GLOBALS['php-curl'][md5($uri)]['content']['length']['download'] = curl_getinfo($btt, CURLINFO_CONTENT_LENGTH_DOWNLOAD); - $GLOBALS['php-curl'][md5($uri)]['content']['length']['upload'] = curl_getinfo($btt, CURLINFO_CONTENT_LENGTH_UPLOAD); - $GLOBALS['php-curl'][md5($uri)]['content']['type'] = curl_getinfo($btt, CURLINFO_CONTENT_TYPE); - curl_close($btt); - return $data; + else { + $uploadfile = false; + foreach($post as $field => $value) + if (substr($value , 0, 1) == '@' && !file_exists(substr($value , 1, strlen($value) - 1))) + unset($post[$field]); + else + $uploadfile = true; + curl_setopt($btt, CURLOPT_POST, true); + curl_setopt($btt, CURLOPT_POSTFIELDS, http_build_query($post)); + + if (!empty($headers)) + foreach($headers as $key => $value) + if ($uploadfile==true && substr($value, 0, strlen('Content-Type:')) == 'Content-Type:') + unset($headers[$key]); + if ($uploadfile==true) + $headers[] = 'Content-Type: multipart/form-data'; + } + if (count($headers)==0 || empty($headers)) { + curl_setopt($btt, CURLOPT_HEADER, false); + curl_setopt($btt, CURLOPT_HTTPHEADER, array()); + } else { + curl_setopt($btt, CURLOPT_HEADER, false); + curl_setopt($btt, CURLOPT_HTTPHEADER, $headers); + } + curl_setopt($btt, CURLOPT_CONNECTTIMEOUT, $connectout); + curl_setopt($btt, CURLOPT_TIMEOUT, $timeout); + curl_setopt($btt, CURLOPT_RETURNTRANSFER, true); + curl_setopt($btt, CURLOPT_VERBOSE, false); + curl_setopt($btt, CURLOPT_SSL_VERIFYHOST, false); + curl_setopt($btt, CURLOPT_SSL_VERIFYPEER, false); + $data = curl_exec($btt); + $GLOBALS['php-curl'][md5($uri)]['http']['uri'] = $uri; + $GLOBALS['php-curl'][md5($uri)]['http']['posts'] = $post; + $GLOBALS['php-curl'][md5($uri)]['http']['headers'] = $headers; + $GLOBALS['php-curl'][md5($uri)]['http']['code'] = curl_getinfo($btt, CURLINFO_HTTP_CODE); + $GLOBALS['php-curl'][md5($uri)]['header']['size'] = curl_getinfo($btt, CURLINFO_HEADER_SIZE); + $GLOBALS['php-curl'][md5($uri)]['header']['value'] = curl_getinfo($btt, CURLINFO_HEADER_OUT); + $GLOBALS['php-curl'][md5($uri)]['size']['download'] = curl_getinfo($btt, CURLINFO_SIZE_DOWNLOAD); + $GLOBALS['php-curl'][md5($uri)]['size']['upload'] = curl_getinfo($btt, CURLINFO_SIZE_UPLOAD); + $GLOBALS['php-curl'][md5($uri)]['content']['length']['download'] = curl_getinfo($btt, CURLINFO_CONTENT_LENGTH_DOWNLOAD); + $GLOBALS['php-curl'][md5($uri)]['content']['length']['upload'] = curl_getinfo($btt, CURLINFO_CONTENT_LENGTH_UPLOAD); + $GLOBALS['php-curl'][md5($uri)]['content']['type'] = curl_getinfo($btt, CURLINFO_CONTENT_TYPE); + curl_close($btt); + return $data; } } @@ -1355,7 +1366,7 @@ $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<input type='textbox' name='username' id='username' size='23' /> <strong style='font-size: 247%'>@</strong> "; $form[] = "\t\t\t\t<select name='domain' id='format'/>"; - $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() ORDER BY `domain` ASC"); + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` > UNIX_TIMESTAMP() ORDER BY `domain` ASC"); while($row = $GLOBALS['APIDB']->fetchArray($result)) $form[] = "\t\t\t\t\t<option value='".$row['key']."'>".$row['domain']."</option>"; $form[] = "\t\t\t\t</select>"; @@ -1419,7 +1430,7 @@ $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<input type='textbox' name='email[username]' id='email' size='23' /> <strong style='font-size: 247%'>@</strong> "; $form[] = "\t\t\t\t<select name='email[domainkey]' id='format'/>"; - $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() ORDER BY `domain` ASC"); + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` > UNIX_TIMESTAMP() ORDER BY `domain` ASC"); while($row = $GLOBALS['APIDB']->fetchArray($result)) $form[] = "\t\t\t\t\t<option value='".$row['key']."'>".$row['domain']."</option>"; $form[] = "\t\t\t\t</select>"; @@ -1440,7 +1451,7 @@ $form[] = "\t\t\t\t<label for='vpass'>Verify Password: <font style='color: rgb(250,0,0); font-size: 139%; font-weight: bold'>*</font></label>"; $form[] = "\t\t\t</td>"; $form[] = "\t\t\t<td>"; - $form[] = "\t\t\t\t<input type='vpass' name='vpass' id='size' size='41' maxlen='255' value='' /> "; + $form[] = "\t\t\t\t<input type='password' name='vpass' id='size' size='41' maxlen='255' value='' /> "; $form[] = "\t\t\t</td>"; $form[] = "\t\t\t<td> </td>"; $form[] = "\t\t</tr>"; Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql 2018-10-26 08:10:58 UTC (rev 13391) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql 2018-10-26 18:17:07 UTC (rev 13392) @@ -12,8 +12,8 @@ `notified` int(11) unsigned NOT NULL DEFAULT '0', `actkey` varchar(10) NOT NULL DEFAULT '', `username` varchar(255) NOT NULL DEFAULT '', - `password` varchar(128) NOT NULL DEFAULT '', - `password_enc` varchar(128) NOT NULL DEFAULT '', + `password` tinyblob, + `password_enc` tinyblob, `uid` int(11) unsigned NOT NULL DEFAULT '0', `pid` int(11) unsigned NOT NULL DEFAULT '0', `homedir` varchar(255) NOT NULL DEFAULT '', @@ -37,5 +37,5 @@ PRIMARY KEY (`id`), KEY `email` (`email`), KEY `emailusername` (`email`,`username`), - KEY `usernamepassword` (`actkey`,`username`,`password`,`password_enc`) + KEY `usernamepassword` (`actkey`,`username`) ) ENGINE=INNODB DEFAULT CHARSET=utf8; Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.pgpkeys.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.pgpkeys.sql 2018-10-26 08:10:58 UTC (rev 13391) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.pgpkeys.sql 2018-10-26 18:17:07 UTC (rev 13392) @@ -9,12 +9,12 @@ `zonekey` varchar(32) NOT NULL default '', `name` varchar(255) NOT NULL default '', `email` varchar(255) NOT NULL default '', - `key` tinytext, + `key` mediumblob, `created` int(12) unsigned NOT NULL default '0', `imported` int(12) unsigned NOT NULL default '0', `zoned` int(12) unsigned NOT NULL default '0', PRIMARY KEY (kid), - KEY domainidaddress (domainid, address) + KEY typaldomainidemail (typal, domainid, email) ) ENGINE=INNODB DEFAULT CHARSET=utf8; |
From: <chr...@us...> - 2018-10-26 08:11:03
|
Revision: 13391 http://sourceforge.net/p/xoops/svn/13391 Author: chronolabscoop Date: 2018-10-26 08:10:58 +0000 (Fri, 26 Oct 2018) Log Message: ----------- Email API Rest 1.0.2! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php 2018-10-22 00:49:07 UTC (rev 13390) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-mx-services.php 2018-10-26 08:10:58 UTC (rev 13391) @@ -70,7 +70,7 @@ if ($found == false) { list($count) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF("SELECT count(*) FROM `" . $GLOBALS['APIDB']->prefix('mxs') . "` WHERE `mx` LIKE 'mx.".$domain['domain']."' AND `target` LIKE '".parse_url(API_URL, PHP_URL_HOST)."'")); if ($count == 0) { - if (!$GLOBALS['APIDB']->queryF($sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mxs') . "` (`domainid`, `uid`, `pid`, `mx`, `target`, `piroirity`, `mxcheck`) VALUES('".$domain['id']."', '".$domain['uid']."','".$domain['pid']."','mx.".$domain['domain']."','".parse_url(API_URL, PHP_URL_HOST)."','".($pirority+10)."', UNIX_TIMESTAMP() + $seconds)")) + if (!$GLOBALS['APIDB']->queryF($sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('mxs') . "` (`domainid`, `uid`, `pid`, `mx`, `target`, `pirority`, `mxcheck`) VALUES('".$domain['id']."', '".$domain['uid']."','".$domain['pid']."','mx.".$domain['domain']."','".parse_url(API_URL, PHP_URL_HOST)."','".($pirority+10)."', UNIX_TIMESTAMP() + $seconds)")) die("SQL Failed: $sql;"); else echo("\nSQL Success: $sql;"); Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-10-22 00:49:07 UTC (rev 13390) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php 2018-10-26 08:10:58 UTC (rev 13391) @@ -1332,7 +1332,7 @@ $form[] = "\t\t</tr>"; $form[] = "\t\t<tr>"; $form[] = "\t\t\t<td colspan='3' style='padding-left:64px;'>"; - $form[] = "\t\t\t\t<input type='hidden' value='newdomain' name='mode'>"; + $form[] = "\t\t\t\t<input type='hidden' value='domains' name='mode'>"; $form[] = "\t\t\t\t<input type='submit' value='Create New Domain' name='submit' style='padding:11px; font-size:122%;'>"; $form[] = "\t\t\t</td>"; $form[] = "\t\t</tr>"; @@ -1355,7 +1355,7 @@ $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<input type='textbox' name='username' id='username' size='23' /> <strong style='font-size: 247%'>@</strong> "; $form[] = "\t\t\t\t<select name='domain' id='format'/>"; - $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` > UNIX_TIMESTAMP() ORDER BY `domain` ASC"); + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() ORDER BY `domain` ASC"); while($row = $GLOBALS['APIDB']->fetchArray($result)) $form[] = "\t\t\t\t\t<option value='".$row['key']."'>".$row['domain']."</option>"; $form[] = "\t\t\t\t</select>"; @@ -1419,7 +1419,7 @@ $form[] = "\t\t\t<td style='width: 320px;'>"; $form[] = "\t\t\t\t<input type='textbox' name='email[username]' id='email' size='23' /> <strong style='font-size: 247%'>@</strong> "; $form[] = "\t\t\t\t<select name='email[domainkey]' id='format'/>"; - $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` > UNIX_TIMESTAMP() ORDER BY `domain` ASC"); + $result = $GLOBALS['APIDB']->queryF("SELECT md5(concat(`id`, '" . API_URL . "', 'domain')) as `key`, `domain` FROM `" . $GLOBALS['APIDB']->prefix('domains') . "` WHERE `mxcover` < UNIX_TIMESTAMP() ORDER BY `domain` ASC"); while($row = $GLOBALS['APIDB']->fetchArray($result)) $form[] = "\t\t\t\t\t<option value='".$row['key']."'>".$row['domain']."</option>"; $form[] = "\t\t\t\t</select>"; Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-10-22 00:49:07 UTC (rev 13390) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php 2018-10-26 08:10:58 UTC (rev 13391) @@ -41,5 +41,5 @@ /** * Define API version */ -define('API_VERSION', 'Emails Propogation REST Services API 1.0.1'); +define('API_VERSION', 'Emails Propogation REST Services API 1.0.2'); define('API_TYPE', 'emails-api'); |
From: <chr...@us...> - 2018-10-22 00:49:17
|
Revision: 13390 http://sourceforge.net/p/xoops/svn/13390 Author: chronolabscoop Date: 2018-10-22 00:49:07 +0000 (Mon, 22 Oct 2018) Log Message: ----------- V1.0.1 - Still some bugs! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/import-generated-keys.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/peering-services.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/functions.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/include/version.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/include/constants.dist.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/peers.php Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.html.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/Preview for LHF Matthews Thin.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-barcode-gayqi.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-referee-isiweowakiakeg.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Preview for Labtop.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-barcode-o2ukc.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-referee-eeG5kSy2q.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/Preview for Labtop Bold.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-barcode-6iukyo.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-referee-wymcommwaa3k.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/Preview for Labtop Bold Italic.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-barcode-mcaggym.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-referee-mg4o4kuuk.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/Preview for Labtop Italic.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-barcode-okauoe.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-referee-ugsiqgoye8ecucaa.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/Preview for Labtop Superwide Boldish.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-barcode-eayyq.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-referee-qcwcw4o2am.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/Preview for Labtop Thin.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-barcode-y7kamqgw.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-referee-O13aKGSyKeK7AKq.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/Preview for Labtop Unicase.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-barcode-e42wo.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-referee-q53wakyemyk.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Life BT Bold/Preview for Life BT Bold.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Life BT Bold/code128-barcode-aKCe-5.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Life BT Bold/code128-referee-qsiyuaiuqygci.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Life BT Bold/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Life BT Bold Italic/Preview for Life BT Bold Italic.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Life BT Bold Italic/code128-barcode-coas.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Life BT Bold Italic/code128-referee-3OyKA7SK5iSA.jpg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Life BT Bold Italic/font-name-card.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/class/imap.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/find-whois-services.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/import-emailed-keys.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/crons/port-encryption-keys.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.callbacks.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.directory.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.domains.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.images.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_users.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mail_virtual.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.mx.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.peers.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.pgpkeys.sql *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/install/sql/mysql.users.sql Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess 2018-10-22 00:49:07 UTC (rev 13390) @@ -1,4 +1,4 @@ -php_value memory_limit 16M +php_value memory_limit 24M php_value upload_max_filesize 1M php_value post_max_size 1M php_value error_reporting 0 @@ -7,10 +7,14 @@ RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d +RewriteRule ^v([0-9]{1,2})/test.api ./index.php?version=$1&mode=test [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/peers.api ./peers.php?version=$1&mode=peers [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/callback.api ./callback.php?version=$1&mode=callback [L,NC,QSA] +RewriteRule ^v([0-9]{1,2})/([0-9a-zA-Z])/callback.api ./callback.php?version=$1&mode=$2 [L,NC,QSA] +RewriteRule ^v([0-9]{1,2})/([0-9a-zA-Z])/([0-9a-z]{32})/callback.api ./callback.php?version=$1&mode=$2&key=$3 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/authkey.api ./index.php?version=$1&mode=authkey [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/pgpkey.api ./index.php?version=$1&mode=pgpkey [L,NC,QSA] +RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z])/activation.html ./activation.php?version=$1&mode=activation&emailkey=$2&actkey=$3 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/(aliases|emails|domains).api ./index.php?version=$1&authkey=$2&mode=$3 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/(aliases|domains|users)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&mode=$3&format=$4 [L,NC,QSA] RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(emails|pgpkeys)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&format=$5 [L,NC,QSA] Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md 2018-10-22 00:49:07 UTC (rev 13390) @@ -2,7 +2,7 @@ # Emails/Aliases Account's Propogation REST API Services -## Version: 1.1.11 (pre-alpha) +## Version: 1.0.1 (stable) ### Author: Dr. Simon Antony Roberts <simon@snails.email> @@ -12,21 +12,33 @@ This REST API allows for configuration of email account remotely from other websites and sources via REST API calling, and it is protected by the requirement of using an admin username and password for this defining purposes! +In conjunctions with the Zones DNS Rest API and PowerDNS (see: https://github.com/Chronolabs-Cooperative/Zones-API-PHP) this API will automatically mount your Open PGP Armor Keys in the domain record type and allow auto discovery happen with the email in inbound+outbound sending emails to be network transit layer encrypted! + # Apache Mod Rewrite (SEO Friendly URLS) The follow lines go in your API_ROOT_PATH/.htaccess - php_value memory_limit 16M + php_value memory_limit 24M php_value upload_max_filesize 1M php_value post_max_size 1M php_value error_reporting 0 php_value display_errors 0 - + RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d - - RewriteRule ^v([0-9]{1,2})/(.*?)/(json|xml|serial|raw|html).api$ ./index.php?version=$1&whois=$2&output=$3 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/test.api ./index.php?version=$1&mode=test [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/peers.api ./peers.php?version=$1&mode=peers [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/callback.api ./callback.php?version=$1&mode=callback [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-zA-Z])/callback.api ./callback.php?version=$1&mode=$2 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-zA-Z])/([0-9a-z]{32})/callback.api ./callback.php?version=$1&mode=$2&key=$3 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/authkey.api ./index.php?version=$1&mode=authkey [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/pgpkey.api ./index.php?version=$1&mode=pgpkey [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z])/activation.html ./activation.php?version=$1&mode=activation&emailkey=$2&actkey=$3 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/(aliases|emails|domains).api ./index.php?version=$1&authkey=$2&mode=$3 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/(aliases|domains|users)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&mode=$3&format=$4 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(emails|pgpkeys)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&format=$5 [L,NC,QSA] + RewriteRule ^v([0-9]{1,2})/([0-9a-z]{32})/([0-9a-z]{32})/(edit|delete)/(email|alias|domain|user)/(raw|html|serial|json|xml).api ./index.php?version=$1&authkey=$2&key=$3&mode=$4&type=$5&format=$6 [L,NC,QSA] ## Scheduled Cron Job Details., @@ -35,12 +47,21 @@ Execute:- $ sudo crontab -e +You have to add the following cronjobs to your cronjobs or on windows scheduled tasks! + + */41 */2 * * * /usr/bin/php /var/www/emails.snails.email/crons/find-mx-services.php + */41 */3 * * * /usr/bin/php /var/www/emails.snails.email/crons/import-emailed-keys.php + */11 * * * * /usr/bin/php /var/www/emails.snails.email/crons/import-generated-keys.php + */22 * * * * /usr/bin/php /var/www/emails.snails.email/crons/port-encryption-keys.php + */11 */7 * * * /usr/bin/php /var/www/emails.snails.email/crons/peer-services.php + */5 * * * * sh /var/www/emails.snails.email/crons/* + ### CronTab Entry: ## Licensing - * This is released under General Public License 3 - GPL3 - Only! + * This is released under General Public License 3 - GPL3 + ACADEMIC! # Installation Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.html.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.html.php (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.html.php 2018-10-22 00:49:07 UTC (rev 13390) @@ -0,0 +1,99 @@ +<?php +/** + * DNS Zone Propogation REST Services API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright Chronolabs Cooperative http://syd.au.snails.email + * @license ACADEMIC APL 2 (https://sourceforge.net/u/chronolabscoop/wiki/Academic%20Public%20License%2C%20version%202.0/) + * @license GNU GPL 3 (http://www.gnu.org/licenses/gpl.html) + * @package emails-api + * @since 1.0.3 + * @author Dr. Simon Antony Roberts <simon@snails.email> + * @version 1.0.3 + * @description A REST API for the creation and management of emails/forwarders and domain name parks for email + * @link http://internetfounder.wordpress.com + * @link https://github.com/Chronolabs-Cooperative/Emails-API-PHP + * @link https://sourceforge.net/p/chronolabs-cooperative + * @link https://facebook.com/ChronolabsCoop + * @link https://twitter.com/ChronolabsCoop + * + */ + + global $email, $inner; + + + ?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> + <meta property="og:title" content="<?php echo API_VERSION; ?>"/> + <meta property="og:type" content="api<?php echo API_TYPE; ?>"/> + <meta property="og:image" content="<?php echo API_URL; ?>/assets/images/logo_500x500.png"/> + <meta property="og:url" content="<?php echo (isset($_SERVER["HTTPS"])?"https://":"http://").$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"]; ?>" /> + <meta property="og:site_name" content="<?php echo API_VERSION; ?> - <?php echo API_LICENSE_COMPANY; ?>"/> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <meta http-equiv="rating" content="general" /> + <meta http-equiv="author" content="wis...@us..." /> + <meta http-equiv="copyright" content="<?php echo API_LICENSE_COMPANY; ?> © <?php echo date("Y"); ?>" /> + <meta http-equiv="generator" content="Chronolabs Cooperative (<?php echo $place['iso3']; ?>)" /> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title><?php echo $email['name']; ?> || <?php echo $email['email']; ?></title> + <link rel="stylesheet" href="<?php echo API_URL; ?>/assets/css/style.css" type="text/css" /> + <link href="<?php echo API_URL; ?>/assets/media/Labtop/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Labtop Bold/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Labtop Bold Italic/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Labtop Italic/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Labtop Superwide Boldish/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Labtop Thin/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Labtop Unicase/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/LHF Matthews Thin/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Life BT Bold/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Life BT Bold Italic/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Prestige Elite/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Prestige Elite Bold/style.css" rel="stylesheet" type="text/css"> + <link href="<?php echo API_URL; ?>/assets/media/Prestige Elite Normal/style.css" rel="stylesheet" type="text/css"> + <link rel="stylesheet" href="<?php echo API_URL; ?>/assets/css/gradients.php" type="text/css" /> + <link rel="stylesheet" href="<?php echo API_URL; ?>/assets/css/shadowing.php" type="text/css" /> +</head> +<body> +<div class="main"> + <img style="float: right; margin: 11px; width: auto; height: auto; clear: none;" src="<?php echo API_URL; ?>/assets/images/logo_350x350.png" /> + <h1>"<?php echo $email['name']; ?>" <<?php echo $email['email']; ?>></h1> + <p>Your email address of <strong><?php echo $email['email']; ?></strong>; is now active and online, below you can change the notification email as well as password for it now if you wish, you will only be able to do this now and not return too this page.</p> + <h2>Change your password</h2> + <p>From here you change your password for the email address of: <?php echo $email['email']; ?></p> + <?php if (!empty($inner['pass']) && !empty($inner['vpass']) && $inner['pass'] != $inner['vpass']) { ?> + <p style="padding: 9px; border: 3px; border-color: rgb(255, 0, 0); background-color: rgb(200, 0, 0); font-weight: bold; font-size: 1.32em; color: rgb(90, 0, 0); margin: 25px; text-align: center;"> + The Two Passwords you have Entered; both the Password and the Verification of the Same Password don't match! + </p> + <?php } elseif (!empty($inner['pass']) && empty($inner['vpass'])) { ?> + <p style="padding: 9px; border: 3px; border-color: rgb(255, 0, 0); background-color: rgb(200, 0, 0); font-weight: bold; font-size: 1.32em; color: rgb(90, 0, 0); margin: 25px; text-align: center;"> + You have not put in a verification of the same password you want to set this too! + </p> + <?php } elseif (empty($inner['pass']) && !empty($inner['vpass'])) { ?> + <p style="padding: 9px; border: 3px; border-color: rgb(255, 0, 0); background-color: rgb(200, 0, 0); font-weight: bold; font-size: 1.32em; color: rgb(90, 0, 0); margin: 25px; text-align: center;"> + You have not put in a password change of the same password you want to set this too! + </p> + <?php }?> + <blockquote> + <?php echo getHTMLForm('changepass'); ?> + </blockquote> + <h2>Change your notifications email</h2> + <p>From here you change your notification/recovery for the email address it is currently set to: <?php echo $email['notify']; ?>!</p> + <?php if (!empty($inner['notify']) && !checkEmail($inner['notify'])) { ?> + <p style="padding: 9px; border: 3px; border-color: rgb(255, 0, 0); background-color: rgb(200, 0, 0); font-weight: bold; font-size: 1.32em; color: rgb(90, 0, 0); margin: 25px; text-align: center;"> + You have not entered an email address as: <em><?php echo $inner['notify']; ?></em> + </p> + <?php } ?> + <blockquote> + <?php echo getHTMLForm('changenotify'); ?> + </blockquote> + </div> +</html> +<?php Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.html.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Modified: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.php 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.php 2018-10-22 00:49:07 UTC (rev 13390) @@ -25,15 +25,8 @@ * */ + global $email, $inner; - $parts = explode(".", microtime(true)); - mt_srand(mt_rand(-microtime(true), microtime(true))/$parts[1]); - mt_srand(mt_rand(-microtime(true), microtime(true))/$parts[1]); - mt_srand(mt_rand(-microtime(true), microtime(true))/$parts[1]); - mt_srand(mt_rand(-microtime(true), microtime(true))/$parts[1]); - $salter = ((float)(mt_rand(0,1)==1?'':'-').$parts[1].'.'.$parts[0]) / sqrt((float)$parts[1].'.'.intval(cosh($parts[0])))*tanh($parts[1]) * mt_rand(1, intval($parts[0] / $parts[1])); - header('Blowfish-salt: '. $salter); - require_once __DIR__ . DIRECTORY_SEPARATOR . 'apiconfig.php'; $odds = $inner = array(); @@ -71,30 +64,9 @@ } } $help = false; - - if (!isset($inner['user']['uname']) && empty($inner['user']['uname']) || - !isset($inner['user']['email']) && empty($inner['user']['email']) || - !isset($inner['user']['pass']) && empty($inner['user']['pass'])) - $help = true; - - if (!isset($inner['callback']) && empty($inner['callback'])) + + if (!isset($inner['emailkey']) && empty($inner['emailkey'])) $help = true; - if (!isset($inner['company']) && empty($inner['company'])) - $help = true; - if (!isset($inner['serial']) && empty($inner['serial']) && !is_numeric($inner['serial'])) - $help = true; - if (!isset($inner['email']) && empty($inner['email']) && !checkEmail($inner['email'])) - $help = true; - if (!isset($inner['protocol']) && empty($inner['protocol'])) - $help = true; - if (!isset($inner['host']) && empty($inner['host'])) - $help = true; - if (!isset($inner['path']) && empty($inner['path'])) - $help = true; - if (!isset($inner['version']) && empty($inner['version'])) - $help = true; - if (!isset($inner['type']) && empty($inner['type'])) - $help = true; /** * Buffers Help @@ -106,50 +78,55 @@ exit; } - $data = array(); + if (isset($inner['op']) && !empty($inner['op'])) { + $id = getEmailID($inner['emailkey']); + if ($id <> 0) { + if ($email = $GLOBALS["APIDB"]->fetchRow($GLOBALS["APIDB"]->queryF("SELECT * FROM `" . $GLOBALS["APIDB"]->prefix("mail_users") . "` WHERE `id` = $id"))) { + + switch ($inner['op']) + { + case "changepass": + if ($inner['pass'] == $inner['vpass']) { + if (!$GLOBALS['APIDB']->query($sql = "UPDATE `" . $GLOBALS["APIDB"]->prefix("mail_users") . "` SET `password` = AES_CRYPT('" . $GLOBALS['APIDB']->escape($inner['pass']) . "', `email`), `password_enc` = CRYPT('" . $GLOBALS['APIDB']->escape($inner['pass']) . "') WHERE `id` = " . $emailid)) + die("FAILED SQL: $sql;"); + } + break; + case "changenotify": + if (checkEmail($inner['notify'])) { + if (!$GLOBALS['APIDB']->query($sql = "UPDATE `" . $GLOBALS["APIDB"]->prefix("mail_users") . "` SET `notify` = '" . $GLOBALS['APIDB']->escape($inner['notify']) . "' WHERE `id` = " . $emailid)) + die("FAILED SQL: $sql;"); + } + break; + } + + include dirname(__FILE__).'/activation.html.php'; + exit; + + } + } + } + + $id = getEmailID($inner['emailkey']); + if ($id <> 0) { + if ($email = $GLOBALS["APIDB"]->fetchRow($GLOBALS["APIDB"]->queryF("SELECT * FROM `" . $GLOBALS["APIDB"]->prefix("mail_users") . "` WHERE `id` = $id"))) { + if ($email['actkey'] == $inner['actkey']) { + if (!$GLOBALS['APIDB']->query($sql = "UPDATE `" . $GLOBALS["APIDB"]->prefix("mail_users") . "` SET `mboxsize` = `mboxonline`, `activate` = UNIX_TIMESTAMP(), `mode` = 'online', `actkey` = '" . substr(sha1(microtime(true)), mt_rand(0,30), mt_rand(4, 10)) . "' WHERE `id` = " . $emailid)) + die("FAILED SQL: $sql;"); + } + include dirname(__FILE__).'/activation.html.php'; + exit; + } + } - list($count) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql = "SELECT count(*) FROM `" . $GLOBALS['APIDB']->prefix('users') . "` WHERE `typal` = 'peer-admin' AND (`uname` LIKE '" . $inner['user']['uname'] . "' AND `email` LIKE '" . $inner['user']['email'] . "') OR (`uname` LIKE '" . $inner['user']['uname'] . "' AND `pass` LIKE '" . $inner['user']['pass'] . "')")); - if ($count==0) { - if (!$GLOBALS['APIDB']->queryF($sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('users') . "` (`typal`, `uname`, `name`, `pass`, `email`, `url`, `api_regdate`, `actkey`) VALUES('peer-admin', '" . $inner['user']['uname'] . "', '" . $inner['user']['name'] . "', '" . $inner['user']['pass'] . "', '" . $inner['user']['email'] . "', '" . $inner['user']['url'] . "', UNIX_TIMESTAMP(), '" . substr(md5(microtime()), mt_rand(0,26), mt_rand(4,6)) . "')")) - die("SQL Failed: $sql;"); - } - $user = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql = "SELECT * FROM `" . $GLOBALS['APIDB']->prefix('users') . "` WHERE `typal` = 'peer-admin' AND (`uname` LIKE '" . $inner['user']['uname'] . "' AND `email` LIKE '" . $inner['user']['email'] . "') OR (`uname` LIKE '" . $inner['user']['uname'] . "' AND `pass` LIKE '" . $inner['user']['pass'] . "')")); - foreach($inner['user'] as $field => $value) - if ($user[$field]!=$value) - if (!$GLOBALS['APIDB']->queryF($sql = "UPDATE `" . $GLOBALS['APIDB']->prefix('users') . "` SET `field` = '$value' WHERE `uid` = '" . $user['uid'])) - die("SQL Failed: $sql;"); - + /** - * Commences Execution of API Functions + * Buffers Help */ - if (function_exists("http_response_code")) - http_response_code((isset($data['code'])?$data['code']:200)); - if (isset($data['code'])) - unset($data['code']); - - switch ($inner['format']) { - default: - echo '<pre style="font-family: \'Courier New\', Courier, Terminal; font-size: 0.77em;">'; - echo var_dump($data, true); - echo '</pre>'; - break; - case 'raw': - echo "<?php\n\n return " . var_export($data, true) . ";\n\n?>"; - break; - case 'json': - header('Content-type: application/json'); - echo json_encode($data); - break; - case 'serial': - header('Content-type: text/html'); - echo serialize($data); - break; - case 'xml': - header('Content-type: application/xml'); - $dom = new XmlDomConstruct('1.0', 'utf-8'); - $dom->fromMixed(array('root'=>$data)); - echo $dom->saveXML(); - break; + if ($help==true) { + if (function_exists("http_response_code")) + http_response_code(400); + include dirname(__FILE__).'/help.php'; + exit; } - exit(0); + ?> Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/Preview for LHF Matthews Thin.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/Preview for LHF Matthews Thin.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/Preview for LHF Matthews Thin.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/Preview for LHF Matthews Thin.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/Preview for LHF Matthews Thin.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-barcode-gayqi.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-barcode-gayqi.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-barcode-gayqi.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-barcode-gayqi.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-barcode-gayqi.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-referee-isiweowakiakeg.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-referee-isiweowakiakeg.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-referee-isiweowakiakeg.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-referee-isiweowakiakeg.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/code128-referee-isiweowakiakeg.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-name-card.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-name-card.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-name-card.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-name-card.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-name-card.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Preview for Labtop.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Preview for Labtop.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Preview for Labtop.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Preview for Labtop.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Preview for Labtop.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-barcode-o2ukc.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-barcode-o2ukc.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-barcode-o2ukc.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-barcode-o2ukc.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-barcode-o2ukc.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-referee-eeG5kSy2q.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-referee-eeG5kSy2q.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-referee-eeG5kSy2q.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-referee-eeG5kSy2q.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/code128-referee-eeG5kSy2q.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/font-name-card.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/font-name-card.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/font-name-card.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/font-name-card.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/font-name-card.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/Preview for Labtop Bold.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/Preview for Labtop Bold.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/Preview for Labtop Bold.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/Preview for Labtop Bold.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/Preview for Labtop Bold.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-barcode-6iukyo.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-barcode-6iukyo.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-barcode-6iukyo.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-barcode-6iukyo.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-barcode-6iukyo.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-referee-wymcommwaa3k.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-referee-wymcommwaa3k.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-referee-wymcommwaa3k.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-referee-wymcommwaa3k.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/code128-referee-wymcommwaa3k.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/font-name-card.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/font-name-card.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/font-name-card.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/font-name-card.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold/font-name-card.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/Preview for Labtop Bold Italic.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/Preview for Labtop Bold Italic.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/Preview for Labtop Bold Italic.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/Preview for Labtop Bold Italic.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/Preview for Labtop Bold Italic.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-barcode-mcaggym.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-barcode-mcaggym.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-barcode-mcaggym.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-barcode-mcaggym.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-barcode-mcaggym.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-referee-mg4o4kuuk.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-referee-mg4o4kuuk.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-referee-mg4o4kuuk.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-referee-mg4o4kuuk.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/code128-referee-mg4o4kuuk.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/font-name-card.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/font-name-card.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/font-name-card.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/font-name-card.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Bold Italic/font-name-card.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/Preview for Labtop Italic.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/Preview for Labtop Italic.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/Preview for Labtop Italic.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/Preview for Labtop Italic.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/Preview for Labtop Italic.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-barcode-okauoe.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-barcode-okauoe.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-barcode-okauoe.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-barcode-okauoe.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-barcode-okauoe.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-referee-ugsiqgoye8ecucaa.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-referee-ugsiqgoye8ecucaa.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-referee-ugsiqgoye8ecucaa.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-referee-ugsiqgoye8ecucaa.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/code128-referee-ugsiqgoye8ecucaa.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/font-name-card.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/font-name-card.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/font-name-card.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/font-name-card.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Italic/font-name-card.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/Preview for Labtop Superwide Boldish.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/Preview for Labtop Superwide Boldish.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/Preview for Labtop Superwide Boldish.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/Preview for Labtop Superwide Boldish.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/Preview for Labtop Superwide Boldish.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-barcode-eayyq.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-barcode-eayyq.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-barcode-eayyq.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-barcode-eayyq.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-barcode-eayyq.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-referee-qcwcw4o2am.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-referee-qcwcw4o2am.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-referee-qcwcw4o2am.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-referee-qcwcw4o2am.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/code128-referee-qcwcw4o2am.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/font-name-card.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/font-name-card.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/font-name-card.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/font-name-card.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Superwide Boldish/font-name-card.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/Preview for Labtop Thin.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/Preview for Labtop Thin.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/Preview for Labtop Thin.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/Preview for Labtop Thin.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/Preview for Labtop Thin.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-barcode-y7kamqgw.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-barcode-y7kamqgw.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-barcode-y7kamqgw.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-barcode-y7kamqgw.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-barcode-y7kamqgw.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-referee-O13aKGSyKeK7AKq.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-referee-O13aKGSyKeK7AKq.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-referee-O13aKGSyKeK7AKq.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-referee-O13aKGSyKeK7AKq.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/code128-referee-O13aKGSyKeK7AKq.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/font-name-card.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/font-name-card.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/font-name-card.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/font-name-card.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Thin/font-name-card.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/Preview for Labtop Unicase.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/Preview for Labtop Unicase.png =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/Preview for Labtop Unicase.png 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/Preview for Labtop Unicase.png 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/Preview for Labtop Unicase.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-barcode-e42wo.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-barcode-e42wo.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-barcode-e42wo.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-barcode-e42wo.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-barcode-e42wo.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-referee-q53wakyemyk.jpg =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-referee-q53wakyemyk.jpg =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-referee-q53wakyemyk.jpg 2018-10-22 00:45:30 UTC (rev 13389) +++ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-referee-q53wakyemyk.jpg 2018-10-22 00:49:07 UTC (rev 13390) Property changes on: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/code128-referee-q53wakyemyk.jpg ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/font-name-card.png =================================================================== (Binary files differ) Index: *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop Unicase/font-name-card.png =================================================================== --- *.xoops.org (Subdomain AP... [truncated message content] |
From: <chr...@us...> - 2018-10-22 00:45:38
|
Revision: 13389 http://sourceforge.net/p/xoops/svn/13389 Author: chronolabscoop Date: 2018-10-22 00:45:30 +0000 (Mon, 22 Oct 2018) Log Message: ----------- prealpha - renderments.org - organisational entities! Added Paths: ----------- XoopsModules/entities/ XoopsModules/entities/trunk/ XoopsModules/entities/trunk/modules/ XoopsModules/entities/trunk/modules/entities/ XoopsModules/entities/trunk/modules/entities/admin/ XoopsModules/entities/trunk/modules/entities/assets/ XoopsModules/entities/trunk/modules/entities/assets/css/ XoopsModules/entities/trunk/modules/entities/assets/fonts/ XoopsModules/entities/trunk/modules/entities/assets/icons/ XoopsModules/entities/trunk/modules/entities/assets/images/ XoopsModules/entities/trunk/modules/entities/assets/js/ XoopsModules/entities/trunk/modules/entities/assets/sql/ XoopsModules/entities/trunk/modules/entities/assets/sql/mysql.sql XoopsModules/entities/trunk/modules/entities/blocks/ XoopsModules/entities/trunk/modules/entities/class/ XoopsModules/entities/trunk/modules/entities/class/addresses.php XoopsModules/entities/trunk/modules/entities/class/departments.php XoopsModules/entities/trunk/modules/entities/class/emails.php XoopsModules/entities/trunk/modules/entities/class/facilities.php XoopsModules/entities/trunk/modules/entities/class/queue.php XoopsModules/entities/trunk/modules/entities/class/users.php XoopsModules/entities/trunk/modules/entities/footer.php XoopsModules/entities/trunk/modules/entities/header.php XoopsModules/entities/trunk/modules/entities/include/ XoopsModules/entities/trunk/modules/entities/include/data/ XoopsModules/entities/trunk/modules/entities/include/functions.php XoopsModules/entities/trunk/modules/entities/index.php XoopsModules/entities/trunk/modules/entities/language/ XoopsModules/entities/trunk/modules/entities/language/english/ XoopsModules/entities/trunk/modules/entities/language/english/admin.php XoopsModules/entities/trunk/modules/entities/language/english/forms.php XoopsModules/entities/trunk/modules/entities/language/english/index.html XoopsModules/entities/trunk/modules/entities/language/english/mail_templates/ XoopsModules/entities/trunk/modules/entities/language/english/main.php XoopsModules/entities/trunk/modules/entities/language/english/modinfo.php XoopsModules/entities/trunk/modules/entities/language/english/style.css XoopsModules/entities/trunk/modules/entities/preloads/ XoopsModules/entities/trunk/modules/entities/templates/ XoopsModules/entities/trunk/modules/entities/templates/admin/ XoopsModules/entities/trunk/modules/entities/templates/blocks/ XoopsModules/entities/trunk/modules/entities/templates/pdf/ XoopsModules/entities/trunk/modules/entities/xoops_version.php Added: XoopsModules/entities/trunk/modules/entities/assets/sql/mysql.sql =================================================================== --- XoopsModules/entities/trunk/modules/entities/assets/sql/mysql.sql (rev 0) +++ XoopsModules/entities/trunk/modules/entities/assets/sql/mysql.sql 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,242 @@ + +DROP TABLE IF EXISTS `entities_addresses`; + +CREATE TABLE `entities_addresses` ( + `id` mediumint(64) NOT NULL AUTO_INCREMENT, + `street-one` varchar(128) NOT NULL DEFAULT '', + `street-two` varchar(128) NOT NULL DEFAULT '', + `suburb` varchar(128) NOT NULL DEFAULT '', + `city` varchar(128) NOT NULL DEFAULT '', + `province` varchar(128) NOT NULL DEFAULT '', + `countryid` int(11) NOT NULL DEFAULT '0', + `vicinity` varchar(128) NOT NULL DEFAULT '', + `postcode` varchar(24) NOT NULL DEFAULT '', + `longitude` decimal(14,10) NOT NULL DEFAULT '0.0000000000', + `latitude` decimal(14,10) NOT NULL DEFAULT '0.0000000000', + `key` varchar(64) NOT NULL DEFAULT '', + `created` int(13) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `SEARCH` (`suburb`,`province`,`city`,`countryid`,`vicinity`,`postcode`,`latitude`,`longitude`,`key`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +DROP TABLE IF EXISTS `entities_departments`; + +CREATE TABLE `entities_departments` ( + `id` mediumint(24) NOT NULL, + `typal` ENUM('new', 'manager', 'line-manager', 'staffing', 'established', 'merged', 'depreciated', 'hidden') NOT NULL DEFAULT 'new' + `parentid` mediumint(24) NOT NULL DEFAULT '0', + `mergedid` mediumint(24) NOT NULL DEFAULT '0', + `salt` varchar(250) NOT NULL DEFAULT '', + `key` varchar(32) NOT NULL DEFAULT '', + `unixname` varchar(64) NOT NULL DEFAULT '', + `countryid` int(11) NOT NULL DEFAULT '0', + `fullname` varchar(128) NOT NULL DEFAULT '', + `shortname` varchar(64) NOT NULL DEFAULT '', + `tags` varchar(250) NOT NULL DEFAULT '', + `rbn` varchar(32) NOT NULL DEFAULT '', + `rbn-url` TINYTEXT, + `established-year` int(4) NOT NULL DEFAULT '1999', + `established-month` int(2) NOT NULL DEFAULT '12', + `established-day` int(2) NOT NULL DEFAULT '31', + `main-hours` tinytext, + `main-url` tinytext, + `main-email` varchar(196) NOT NULL DEFAULT '', + `main-national-dialcode` varchar(24) NOT NULL DEFAULT '', + `main-international-dialcode` varchar(24) NOT NULL DEFAULT '', + `main-international-dialcode-countryid` int(11) NOT NULL DEFAULT '0', + `support-hours` tinytext, + `support-wiki-url` tinytext, + `support-url` tinytext, + `support-email` varchar(196) NOT NULL DEFAULT '', + `support-national-dialcode` varchar(24) NOT NULL DEFAULT '', + `support-international-dialcode` varchar(24) NOT NULL DEFAULT '', + `support-international-dialcode-countryid` int(11) NOT NULL DEFAULT '0', + `switch-hours` tinytext, + `switch-email` varchar(196) NOT NULL DEFAULT '', + `switch-national-dialcode` varchar(24) NOT NULL DEFAULT '', + `switch-international-dialcode` varchar(24) NOT NULL DEFAULT '', + `switch-international-dialcode-countryid` int(11) NOT NULL DEFAULT '0', + `related-countryids` blob, + `related-departmentsids` blob, + `relating` int(13) NOT NULL DEFAULT '0', + `logo` blob, + `logo-format` enum('SVG','PNG','GIF','JPG','UNKNOWN') NOT NULL DEFAULT 'UNKNOWN', + `ho-countryid` int(11) NOT NULL DEFAULT '0', + `ho-addressid` mediumint(64) NOT NULL DEFAULT '0', + `ho-longitude` decimal(14,10) NOT NULL DEFAULT '0.0000000000', + `ho-latitude` decimal(14,10) NOT NULL DEFAULT '0.0000000000', + `postal-countryid` int(11) NOT NULL DEFAULT '0', + `postal-addressid` mediumint(64) NOT NULL DEFAULT '0', + `facilities-countryids` blob, + `facilityids` blob, + `facilities` int(13) NOT NULL DEFAULT '0', + `creator-uid` int(13) NOT NULL DEFAULT '0', + `creator-hash` varchar(40) NOT NULL DEFAULT '', + `staff-uids` blob, + `staff-hashings` blob, + `zoning-uids` blob, + `zoning-hashings` blob, + `emailing-uids` blob, + `emailing-hashings` blob, + `manager-uids` blob, + `manager-hashings` blob, + `manager-uid` int(13) NOT NULL DEFAULT '0', + `manager-hash` varchar(40) NOT NULL DEFAULT '', + `manager-name` varchar(64) NOT NULL DEFAULT '', + `manager-email` varchar(196) NOT NULL DEFAULT '', + `manager-seal-auth-hash` varchar(40) NOT NULL DEFAULT '', + `repo-coding-type` enum('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user') NOT NULL DEFAULT 'svn-http', + `repo-coding-host` enum('github.com','github.io','sourceforge.net','unknown') NOT NULL DEFAULT 'unknown', + `repo-coding-url` tinytext, + `repo-coding-username` varchar(64) NOT NULL DEFAULT '', + `repo-coding-password` varchar(255) NOT NULL DEFAULT '', + `repo-coding-pathings` blob, + `repo-documents-type` enum('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user') NOT NULL DEFAULT 'svn-http', + `repo-documents-host` enum('github.com','github.io','sourceforge.net','unknown') NOT NULL DEFAULT 'unknown', + `repo-documents-url` tinytext, + `repo-documents-username` varchar(64) NOT NULL DEFAULT '', + `repo-documents-password` varchar(255) NOT NULL DEFAULT '', + `repo-documents-pathings` blob, + `repo-depreciated-type` enum('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user') NOT NULL DEFAULT 'svn-http', + `repo-depreciated-host` enum('github.com','github.io','sourceforge.net','unknown') NOT NULL DEFAULT 'unknown', + `repo-depreciated-url` tinytext, + `repo-depreciated-username` varchar(64) NOT NULL DEFAULT '', + `repo-depreciated-password` varchar(255) NOT NULL DEFAULT '', + `repo-depreciated-pathings` blob, + `repo-media-type` enum('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user') NOT NULL DEFAULT 'svn-http', + `repo-media-host` enum('github.com','github.io','sourceforge.net','unknown') NOT NULL DEFAULT 'unknown', + `repo-media-url` tinytext, + `repo-media-username` varchar(64) NOT NULL DEFAULT '', + `repo-media-password` varchar(255) NOT NULL DEFAULT '', + `repo-media-pathings` blob, + `repo-resources-type` enum('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user') NOT NULL DEFAULT 'svn-http', + `repo-resources-host` enum('github.com','github.io','sourceforge.net','unknown') NOT NULL DEFAULT 'unknown', + `repo-resources-url` tinytext, + `repo-resources-username` varchar(64) NOT NULL DEFAULT '', + `repo-resources-password` varchar(255) NOT NULL DEFAULT '', + `repo-resources-pathings` blob, + `emailed-creator` int(11) NOT NULL DEFAULT '0', + `emailed-staff` int(11) NOT NULL DEFAULT '0', + `emailed-managers` int(11) NOT NULL DEFAULT '0', + `emailed-manager` int(11) NOT NULL DEFAULT '0', + `scanned-coding` int(11) NOT NULL DEFAULT '0', + `scanned-documents` int(11) NOT NULL DEFAULT '0', + `scanned-depreciated` int(11) NOT NULL DEFAULT '0', + `scanned-media` int(11) NOT NULL DEFAULT '0', + `scanned-resources` int(11) NOT NULL DEFAULT '0', + `mapping-coding` int(11) NOT NULL DEFAULT '0', + `mapping-documents` int(11) NOT NULL DEFAULT '0', + `mapping-depreciated` int(11) NOT NULL DEFAULT '0', + `mapping-media` int(11) NOT NULL DEFAULT '0', + `mapping-resources` int(11) NOT NULL DEFAULT '0', + `created` int(11) NOT NULL DEFAULT '0', + `released` int(11) NOT NULL DEFAULT '0', + `updated` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `SEARCH` (`unixname`,`countryid`,`fullname`,`shortname`,`established-year`,`established-month`,`established-day`,`ho-countryid`,`ho-addressid`,`ho-longitude`,`ho-latitude`,`postal-countryid`,`postal-addressid`,`creator-uid`,`manager-uid`,`created`), + KEY `CHRONOLOGISTICS` (`emailed-creator`,`emailed-staff`,`emailed-managers`,`emailed-manager`,`scanned-coding`,`scanned-documents`,`scanned-depreciated`,`scanned-media`,`scanned-resources`,`mapping-coding`,`mapping-documents`,`mapping-depreciated`,`mapping-media`,`mapping-resources`,`created`,`released`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +DROP TABLE IF EXISTS `entities_emails`; + +CREATE TABLE `entities_emails` ( + `id` mediumint(250) NOT NULL AUTO_INCREMENT, + `to` blob, + `cc` blob, + `bcc` blob, + `subject` varchar(250) NOT NULL DEFAULT '', + `body` blob, + `attachments` blob, + `created` int(11) NOT NULL DEFAULT '0', + `sending` int(11) NOT NULL DEFAULT '0', + `deleted` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + + +DROP TABLE IF EXISTS `entities_facilities`; + +CREATE TABLE `entities_facilities` ( + `id` mediumint(64) NOT NULL AUTO_INCREMENT, + `departmentid` mediumint(24) NOT NULL DEFAULT '0', + `facilityid` mediumint(64) NOT NULL DEFAULT '0', + `salt` varchar(250) NOT NULL DEFAULT '', + `key` varchar(32) NOT NULL DEFAULT '', + `unixname` varchar(64) NOT NULL DEFAULT '', + `fullname` varchar(128) NOT NULL DEFAULT '', + `shortname` varchar(128) NOT NULL DEFAULT '', + `rbn` varchar(32) NOT NULL DEFAULT '', + `rbn-url` TINYTEXT, + `logo` blob, + `logo-format` enum('SVG','PNG','GIF','JPG','UNKNOWN') NOT NULL DEFAULT 'UNKNOWN', + `hours` tinytext, + `url` tinytext, + `email` varchar(196) NOT NULL DEFAULT '', + `national-dialcode` varchar(24) NOT NULL DEFAULT '', + `international-dialcode` varchar(24) NOT NULL DEFAULT '', + `international-dialcode-countryid` int(11) NOT NULL DEFAULT '0', + `addressid` mediumint(64) NOT NULL DEFAULT '0', + `longitude` decimal(14,10) NOT NULL DEFAULT '0.0000000000', + `latitude` decimal(14,10) NOT NULL DEFAULT '0.0000000000', + `creator-uid` int(13) NOT NULL DEFAULT '0', + `line-manager-uid` int(13) NOT NULL DEFAULT '0', + `line-manager-name` varchar(128) NOT NULL DEFAULT '', + `line-manager-email` varchar(196) NOT NULL DEFAULT '', + `line-manager-hash` varchar(40) NOT NULL DEFAULT '', + `staff-uids` blob, + `staff-hashing` blob, + `staff-queued` int(8) NOT NULL DEFAULT '0', + `staff-signed` int(8) NOT NULL DEFAULT '0', + `release-uid` int(13) NOT NULL DEFAULT '0', + `releaseid` mediumint(250) NOT NULL DEFAULT '0', + `released` int(11) NOT NULL DEFAULT '0', + `releases` int(8) NOT NULL DEFAULT '0', + `emailed-creator` int(11) NOT NULL DEFAULT '0', + `emailed-manager` int(11) NOT NULL DEFAULT '0', + `emailed-staff` int(11) NOT NULL DEFAULT '0', + `emailed-queued` int(11) NOT NULL DEFAULT '0', + `emailed-signed` int(11) NOT NULL DEFAULT '0', + `emailed-release` int(11) NOT NULL DEFAULT '0', + `created` int(11) NOT NULL DEFAULT '0', + `updated` int(11) NOT NULL DEFAULT '0', + `merged` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `SEARCH` (`departmentid`,`facilityid`,`unixname`,`fullname`,`shortname`,`addressid`,`longitude`,`latitude`,`creator-uid`,`line-manager-uid`,`updated`,`staff-queued`,`staff-signed`,`release-uid`,`releaseid`), + KEY `CHRONOLOGISTICS` (`released`,`emailed-creator`,`emailed-manager`,`emailed-staff`,`emailed-queued`,`emailed-signed`,`emailed-release`,`created`,`updated`,`merged`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +DROP TABLE IF EXISTS `entities_queue`; + +CREATE TABLE `entities_queue` ( + `id` mediumint(250) NOT NULL AUTO_INCREMENT, + `typal` enum('MANAGER','LINE-MANAGER','STAFF','OTHER') NOT NULL DEFAULT 'OTHER', + `departmentid` mediumint(24) NOT NULL DEFAULT '0', + `facilityid` mediumint(64) NOT NULL DEFAULT '0', + `hash` varchar(40) NOT NULL DEFAULT '', + `key` varchar(32) NOT NULL DEFAULT '', + `name` varchar(128) NOT NULL DEFAULT '', + `email-department` varchar(196) NOT NULL DEFAULT '', + `email-personal` varchar(196) NOT NULL DEFAULT '', + `uid` int(13) NOT NULL DEFAULT '0', + `emails` int(8) NOT NULL DEFAULT '0', + `emailed` int(11) NOT NULL DEFAULT '0', + `created` int(11) NOT NULL DEFAULT '0', + `signed` int(11) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `SEARCH` (`typal`,`facilityid`,`departmentid`,`hash`,`key`,`name`,`email`,`uid`,`emails`), + KEY `CHRONOLOGISTICS` (`emailed`,`created`,`signed`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + + +DROP TABLE IF EXISTS `entities_users`; + +CREATE TABLE `entities_users` ( + `id` mediumint(250) NOT NULL AUTO_INCREMENT, + `typal` enum('MANAGER','LINE-MANAGER','STAFF','OTHER') NOT NULL DEFAULT 'OTHER', + `departmentid` mediumint(24) NOT NULL DEFAULT '0', + `facilityid` mediumint(64) NOT NULL DEFAULT '0', + `uid` int(13) NOT NULL DEFAULT '0', + PRIMARY KEY (`id`), + KEY `SEARCH` (`typal`,`departmentid`,`facilityid`,`uid`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + Added: XoopsModules/entities/trunk/modules/entities/class/addresses.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/class/addresses.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/class/addresses.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,82 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +if (!defined("XOOPS_ROOT_PATH")) { + exit(); +} + +class EntitiesAddresses extends XoopsObject +{ + /** + * Constructor + * + * @param int $id ID of the tag, deprecated + */ + function __construct($id = null) + { + $this->initVar("id", XOBJ_DTYPE_INT, null, false); + $this->initVar("street-one", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("street-two", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("suburb", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("city", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("province", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("countryid", XOBJ_DTYPE_INT, null, false); + $this->initVar("vicinity", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("postcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("longitude", XOBJ_DTYPE_FLOAT, null, false); + $this->initVar("latitude", XOBJ_DTYPE_FLOAT, null, false); + $this->initVar("key", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("created", XOBJ_DTYPE_INT, null, false); + } + +} + +/** + * Tag object handler class. + * + * @author Taiwen Jiang <ph...@us...> + * @copyright copyright © The XOOPS Project + * + * {@link XoopsPersistableObjectHandler} + * + */ + +class EntitiesAddressesHandler extends XoopsPersistableObjectHandler +{ + + + /** + * Constructor + * + * @param object $db reference to the {@link XoopsDatabase} object + **/ + function __construct(&$db) + { + parent::__construct($db, "entities_addresses", "EntitiesAddresses", "id", "vicinity"); + } + +} +?> \ No newline at end of file Property changes on: XoopsModules/entities/trunk/modules/entities/class/addresses.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/entities/trunk/modules/entities/class/departments.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/class/departments.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/class/departments.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,180 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +if (!defined("XOOPS_ROOT_PATH")) { + exit(); +} + +class EntitiesDepartments extends XoopsObject +{ + /** + * Constructor + * + * @param int $id ID of the tag, deprecated + */ + function __construct($id = null) + { + $this->initVar("id", XOBJ_DTYPE_INT, null, false); + $this->initVar("typal", XOBJ_DTYPE_ENUM, null, false, false, false, array('new', 'manager', 'line-manager', 'staffing', 'established', 'merged', 'depreciated', 'hidden')); + $this->initVar("parentid", XOBJ_DTYPE_INT, null, false); + $this->initVar("mergedid", XOBJ_DTYPE_INT, null, false); + $this->initVar("salt", XOBJ_DTYPE_TXTBOX, null, false, 250); + $this->initVar("key", XOBJ_DTYPE_TXTBOX, null, false, 32); + $this->initVar("unixname", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("countryid", XOBJ_DTYPE_INT, null, false); + $this->initVar("fullname", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("shortname", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("tags", XOBJ_DTYPE_TXTBOX, null, false, 250); + $this->initVar("rbn", XOBJ_DTYPE_TXTBOX, null, false, 32); + $this->initVar("rbn-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("established-year", XOBJ_DTYPE_INT, null, false); + $this->initVar("established-month", XOBJ_DTYPE_INT, null, false); + $this->initVar("established-day", XOBJ_DTYPE_INT, null, false); + $this->initVar("main-hours", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("main-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("main-email", XOBJ_DTYPE_TXTBOX, null, false, 196); + $this->initVar("main-national-dialcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("main-international-dialcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("main-international-dialcode-countryid", XOBJ_DTYPE_INT, null, false); + $this->initVar("support-hours", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("support-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("support-wiki-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("support-email", XOBJ_DTYPE_TXTBOX, null, false, 196); + $this->initVar("support-national-dialcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("support-international-dialcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("support-international-dialcode-countryid", XOBJ_DTYPE_INT, null, false); + $this->initVar("switch-hours", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("switch-email", XOBJ_DTYPE_TXTBOX, null, false, 196); + $this->initVar("switch-national-dialcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("switch-international-dialcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("switch-international-dialcode-countryid", XOBJ_DTYPE_INT, null, false); + $this->initVar("related-countryids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("related-departmentsids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("relating", XOBJ_DTYPE_INT, null, false); + $this->initVar("logo", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("logo-format", XOBJ_DTYPE_ENUM, null, false, false, false, array('SVG','PNG','GIF','JPG','UNKNOWN')); + $this->initVar("ho-countryid", XOBJ_DTYPE_INT, null, false); + $this->initVar("ho-addressid", XOBJ_DTYPE_INT, null, false); + $this->initVar("ho-longitude", XOBJ_DTYPE_FLOAT, null, false); + $this->initVar("ho-latitude", XOBJ_DTYPE_FLOAT, null, false); + $this->initVar("postal-countryid", XOBJ_DTYPE_INT, null, false); + $this->initVar("postal-addressid", XOBJ_DTYPE_INT, null, false); + $this->initVar("facilities-countryids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("facilityids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("facilities", XOBJ_DTYPE_INT, null, false); + $this->initVar("creator-uid", XOBJ_DTYPE_INT, null, false); + $this->initVar("creator-hash", XOBJ_DTYPE_TXTBOX, null, false, 40); + $this->initVar("staff-uids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("staff-hashings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("zoning-uids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("zoning-hashings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("emailing-uids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("emailing-hashings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("manager-uids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("manager-hashings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("manager-uid", XOBJ_DTYPE_INT, null, false); + $this->initVar("manager-hash", XOBJ_DTYPE_TXTBOX, null, false, 40); + $this->initVar("manager-name", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("manager-email", XOBJ_DTYPE_TXTBOX, null, false, 196); + $this->initVar("manager-seal-auth-hash", XOBJ_DTYPE_TXTBOX, null, false, 40); + $this->initVar("repo-coding-type", XOBJ_DTYPE_ENUM, null, false, false, false, array('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user')); + $this->initVar("repo-coding-host", XOBJ_DTYPE_ENUM, null, false, false, false, array('github.com','github.io','sourceforge.net','unknown')); + $this->initVar("repo-coding-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("repo-coding-username", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("repo-coding-password", XOBJ_DTYPE_TXTBOX, null, false, 255); + $this->initVar("repo-coding-pathings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("repo-documents-type", XOBJ_DTYPE_ENUM, null, false, false, false, array('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user')); + $this->initVar("repo-documents-host", XOBJ_DTYPE_ENUM, null, false, false, false, array('github.com','github.io','sourceforge.net','unknown')); + $this->initVar("repo-documents-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("repo-documents-username", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("repo-documents-password", XOBJ_DTYPE_TXTBOX, null, false, 255); + $this->initVar("repo-documents-pathings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("repo-depreciated-type", XOBJ_DTYPE_ENUM, null, false, false, false, array('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user')); + $this->initVar("repo-depreciated-host", XOBJ_DTYPE_ENUM, null, false, false, false, array('github.com','github.io','sourceforge.net','unknown')); + $this->initVar("repo-depreciated-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("repo-depreciated-username", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("repo-depreciated-password", XOBJ_DTYPE_TXTBOX, null, false, 255); + $this->initVar("repo-depreciated-pathings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("repo-media-type", XOBJ_DTYPE_ENUM, null, false, false, false, array('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user')); + $this->initVar("repo-media-host", XOBJ_DTYPE_ENUM, null, false, false, false, array('github.com','github.io','sourceforge.net','unknown')); + $this->initVar("repo-media-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("repo-media-username", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("repo-media-password", XOBJ_DTYPE_TXTBOX, null, false, 255); + $this->initVar("repo-media-pathings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("repo-resources-type", XOBJ_DTYPE_ENUM, null, false, false, false, array('git-http','svn-http','ftp-user','git-https','svn-https','ftps-user')); + $this->initVar("repo-resources-host", XOBJ_DTYPE_ENUM, null, false, false, false, array('github.com','github.io','sourceforge.net','unknown')); + $this->initVar("repo-resources-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("repo-resources-username", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("repo-resources-password", XOBJ_DTYPE_TXTBOX, null, false, 255); + $this->initVar("repo-resources-pathings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("emailed-creator", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-staff", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-managers", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-manager", XOBJ_DTYPE_INT, null, false); + $this->initVar("scanned-coding", XOBJ_DTYPE_INT, null, false); + $this->initVar("scanned-documents", XOBJ_DTYPE_INT, null, false); + $this->initVar("scanned-depreciated", XOBJ_DTYPE_INT, null, false); + $this->initVar("scanned-media", XOBJ_DTYPE_INT, null, false); + $this->initVar("scanned-resources", XOBJ_DTYPE_INT, null, false); + $this->initVar("mapping-coding", XOBJ_DTYPE_INT, null, false); + $this->initVar("mapping-documents", XOBJ_DTYPE_INT, null, false); + $this->initVar("mapping-depreciated", XOBJ_DTYPE_INT, null, false); + $this->initVar("mapping-media", XOBJ_DTYPE_INT, null, false); + $this->initVar("mapping-resources", XOBJ_DTYPE_INT, null, false); + $this->initVar("created", XOBJ_DTYPE_INT, null, false); + $this->initVar("released", XOBJ_DTYPE_INT, null, false); + $this->initVar("updated", XOBJ_DTYPE_INT, null, false); + + } + +} + +/** + * Tag object handler class. + * + * @author Taiwen Jiang <ph...@us...> + * @copyright copyright © The XOOPS Project + * + * {@link XoopsPersistableObjectHandler} + * + */ + +class EntitiesDepartmentsHandler extends XoopsPersistableObjectHandler +{ + + + /** + * Constructor + * + * @param object $db reference to the {@link XoopsDatabase} object + **/ + function __construct(&$db) + { + parent::__construct($db, "entities_departments", "EntitiesDepartments", "id", "fullname"); + } + +} +?> \ No newline at end of file Property changes on: XoopsModules/entities/trunk/modules/entities/class/departments.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/entities/trunk/modules/entities/class/emails.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/class/emails.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/class/emails.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,79 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +if (!defined("XOOPS_ROOT_PATH")) { + exit(); +} + +class EntitiesEmails extends XoopsObject +{ + /** + * Constructor + * + * @param int $id ID of the tag, deprecated + */ + function __construct($id = null) + { + $this->initVar("id", XOBJ_DTYPE_INT, null, false); + $this->initVar("to", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("cc", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("bcc", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("subject", XOBJ_DTYPE_TXTBOX, null, false, 250); + $this->initVar("body", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("attachments", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("created", XOBJ_DTYPE_INT, null, false); + $this->initVar("sending", XOBJ_DTYPE_INT, null, false); + $this->initVar("deleted", XOBJ_DTYPE_INT, null, false); + } + +} + +/** + * Tag object handler class. + * + * @author Taiwen Jiang <ph...@us...> + * @copyright copyright © The XOOPS Project + * + * {@link XoopsPersistableObjectHandler} + * + */ + +class EntitiesEmailsHandler extends XoopsPersistableObjectHandler +{ + + + /** + * Constructor + * + * @param object $db reference to the {@link XoopsDatabase} object + **/ + function __construct(&$db) + { + parent::__construct($db, "entities_emails", "EntitiesEmails", "id", "subject"); + } + +} +?> \ No newline at end of file Property changes on: XoopsModules/entities/trunk/modules/entities/class/emails.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/entities/trunk/modules/entities/class/facilities.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/class/facilities.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/class/facilities.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,111 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +if (!defined("XOOPS_ROOT_PATH")) { + exit(); +} + +class EntitiesFacilities extends XoopsObject +{ + /** + * Constructor + * + * @param int $id ID of the tag, deprecated + */ + function __construct($id = null) + { + $this->initVar("id", XOBJ_DTYPE_INT, null, false); + $this->initVar("departmentid", XOBJ_DTYPE_INT, null, false); + $this->initVar("facilityid", XOBJ_DTYPE_INT, null, false); + $this->initVar("salt", XOBJ_DTYPE_TXTBOX, null, false, 250); + $this->initVar("key", XOBJ_DTYPE_TXTBOX, null, false, 32); + $this->initVar("unixname", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("fullname", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("shortname", XOBJ_DTYPE_TXTBOX, null, false, 64); + $this->initVar("rbn", XOBJ_DTYPE_TXTBOX, null, false, 32); + $this->initVar("rbn-url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("hours", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("url", XOBJ_DTYPE_OTHER, null, false); + $this->initVar("email", XOBJ_DTYPE_TXTBOX, null, false, 196); + $this->initVar("national-dialcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("international-dialcode", XOBJ_DTYPE_TXTBOX, null, false, 24); + $this->initVar("international-dialcode-countryid", XOBJ_DTYPE_INT, null, false); + $this->initVar("addressid", XOBJ_DTYPE_INT, null, false); + $this->initVar("longitude", XOBJ_DTYPE_FLOAT, null, false); + $this->initVar("latitude", XOBJ_DTYPE_FLOAT, null, false); + $this->initVar("creator-uid", XOBJ_DTYPE_INT, null, false); + $this->initVar("line-manager-uid", XOBJ_DTYPE_INT, null, false); + $this->initVar("line-manager-hash", XOBJ_DTYPE_TXTBOX, null, false, 40); + $this->initVar("line-manager-name", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("line-manager-email", XOBJ_DTYPE_TXTBOX, null, false, 196); + $this->initVar("staff-uids", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("staff-hashings", XOBJ_DTYPE_ARRAY, array(), false); + $this->initVar("staff-queued", XOBJ_DTYPE_INT, null, false); + $this->initVar("staff-signed", XOBJ_DTYPE_INT, null, false); + $this->initVar("release-uid", XOBJ_DTYPE_INT, null, false); + $this->initVar("releaseid", XOBJ_DTYPE_INT, null, false); + $this->initVar("released", XOBJ_DTYPE_INT, null, false); + $this->initVar("releases", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-creator", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-manager", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-staff", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-queued", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-signed", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed-release", XOBJ_DTYPE_INT, null, false); + $this->initVar("created", XOBJ_DTYPE_INT, null, false); + $this->initVar("updated", XOBJ_DTYPE_INT, null, false); + $this->initVar("merged", XOBJ_DTYPE_INT, null, false); + + } + +} + +/** + * Tag object handler class. + * + * @author Taiwen Jiang <ph...@us...> + * @copyright copyright © The XOOPS Project + * + * {@link XoopsPersistableObjectHandler} + * + */ + +class EntitiesFacilitiesHandler extends XoopsPersistableObjectHandler +{ + + + /** + * Constructor + * + * @param object $db reference to the {@link XoopsDatabase} object + **/ + function __construct(&$db) + { + parent::__construct($db, "entities_facilities", "EntitiesFacilities", "id", "vincitity"); + } + +} +?> \ No newline at end of file Property changes on: XoopsModules/entities/trunk/modules/entities/class/facilities.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/entities/trunk/modules/entities/class/queue.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/class/queue.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/class/queue.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,84 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +if (!defined("XOOPS_ROOT_PATH")) { + exit(); +} + +class EntitiesQueue extends XoopsObject +{ + /** + * Constructor + * + * @param int $id ID of the tag, deprecated + */ + function __construct($id = null) + { + $this->initVar("id", XOBJ_DTYPE_INT, null, false); + $this->initVar("typal", XOBJ_DTYPE_ENUM, null, false, false, false, array('MANAGER','LINE-MANAGER','STAFF','OTHER')); + $this->initVar("departmentid", XOBJ_DTYPE_INT, null, false); + $this->initVar("facilityid", XOBJ_DTYPE_INT, null, false); + $this->initVar("hash", XOBJ_DTYPE_TXTBOX, null, false, 40); + $this->initVar("key", XOBJ_DTYPE_TXTBOX, null, false, 32); + $this->initVar("name", XOBJ_DTYPE_TXTBOX, null, false, 128); + $this->initVar("email-department", XOBJ_DTYPE_TXTBOX, null, false, 196); + $this->initVar("email-personal", XOBJ_DTYPE_TXTBOX, null, false, 196); + $this->initVar("uid", XOBJ_DTYPE_INT, null, false); + $this->initVar("emails", XOBJ_DTYPE_INT, null, false); + $this->initVar("emailed", XOBJ_DTYPE_INT, null, false); + $this->initVar("created", XOBJ_DTYPE_INT, null, false); + $this->initVar("signed", XOBJ_DTYPE_INT, null, false); + + } + +} + +/** + * Tag object handler class. + * + * @author Taiwen Jiang <ph...@us...> + * @copyright copyright © The XOOPS Project + * + * {@link XoopsPersistableObjectHandler} + * + */ + +class EntitiesQueueHandler extends XoopsPersistableObjectHandler +{ + + + /** + * Constructor + * + * @param object $db reference to the {@link XoopsDatabase} object + **/ + function __construct(&$db) + { + parent::__construct($db, "entities_queue", "EntitiesQueue", "id", "vincitity"); + } + +} +?> \ No newline at end of file Property changes on: XoopsModules/entities/trunk/modules/entities/class/queue.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/entities/trunk/modules/entities/class/users.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/class/users.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/class/users.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,74 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +if (!defined("XOOPS_ROOT_PATH")) { + exit(); +} + +class EntitiesUsers extends XoopsObject +{ + /** + * Constructor + * + * @param int $id ID of the tag, deprecated + */ + function __construct($id = null) + { + $this->initVar("id", XOBJ_DTYPE_INT, null, false); + $this->initVar("typal", XOBJ_DTYPE_ENUM, null, false, false, false, array('MANAGER','LINE-MANAGER','STAFF','OTHER')); + $this->initVar("departmentid", XOBJ_DTYPE_INT, null, false); + $this->initVar("facilityid", XOBJ_DTYPE_INT, null, false); + $this->initVar("uid", XOBJ_DTYPE_INT, null, false); + } + +} + +/** + * Tag object handler class. + * + * @author Taiwen Jiang <ph...@us...> + * @copyright copyright © The XOOPS Project + * + * {@link XoopsPersistableObjectHandler} + * + */ + +class EntitiesUsersHandler extends XoopsPersistableObjectHandler +{ + + + /** + * Constructor + * + * @param object $db reference to the {@link XoopsDatabase} object + **/ + function __construct(&$db) + { + parent::__construct($db, "entities_users", "EntitiesUsers", "id", "uid"); + } + +} +?> \ No newline at end of file Property changes on: XoopsModules/entities/trunk/modules/entities/class/users.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/entities/trunk/modules/entities/footer.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/footer.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/footer.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,28 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +include_once XOOPS_ROOT_PATH . "/footer.php"; +?> \ No newline at end of file Property changes on: XoopsModules/entities/trunk/modules/entities/footer.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/entities/trunk/modules/entities/header.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/header.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/header.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,79 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +require_once dirname(dirname(__DIR__)) . DIRECTORY_SEPARATOR . 'mainfile.php'; + +require_once __DIR__ . "/include/functions.php"; + + +$myts =& MyTextSanitizer::getInstance(); + +global $entitiesModule, $entitiesConfigsList, $entitiesConfigs, $entitiesConfigsOptions; + +if (empty($entitiesModule)) +{ + if (is_a($entitiesModule = xoops_getHandler('module')->getByDirname(basename(__DIR__)), "XoopsModule")) + { + if (empty($entitiesConfigsList)) + { + $entitiesConfigsList = countries_load_config(); + } + if (empty($entitiesConfigs)) + { + $entitiesConfigs = xoops_getHandler('config')->getConfigs(new Criteria('conf_modid', $entitiesModule->getVar('mid'))); + } + if (empty($entitiesConfigsOptions) && !empty($entitiesConfigs)) + { + foreach($entitiesConfigs as $key => $config) + $entitiesConfigsOptions[$config->getVar('conf_name')] = $config->getConfOptions(); + } + } +} + +global $xoopsConfig, $xoopsUser; +if (!defined('XOOPS_DOMAIN_COUNTRYID')) +foreach(explode('|', $entitiesConfigsList['domains']) as $domain) { + if (strtolower(substr(parse_url(XOOPS_URL, PHP_URL_HOST), strlen(parse_url(XOOPS_URL, PHP_URL_HOST)) - strlen($domain))) == strtolower($domain)) { + $parttld = str_replace('.'.$domain, '', parse_url(XOOPS_URL, PHP_URL_HOST)); + $parts = array_reverse(explode('.', $parttld)); + if (isset($parts[0]) && strlen($parts[0]) == 2) { + foreach(xoops_getModuleHandler('countries', basename(__DIR__))->getObjects(new Criteria('`tld`', "%".$parts[0]."%", 'LIKE')) as $country) { + if (!defined('XOOPS_DOMAIN_COUNTRYID') && isset($country) && !empty($country)) + define("XOOPS_DOMAIN_COUNTRYID", $country->getVar('countryid')); + if (count($parts) == 1) + $xoopsConfig['startpage'] = basename(dirname(__DIR__)); + + } + } + } +} + +global $start, $limit, $op; + +$op = empty($_REQUEST["op"]) || !in_array($_REQUEST['op'], array('default', 'save', 'delete', 'deleteconfirm')) ? 'default' : $_REQUEST["op"] ; +$start = intval( empty($_REQUEST["start"]) ? 0 : $_REQUEST["start"] ); +$limit = intval( empty($_REQUEST["limit"]) ? $entitiesConfigsList['items_perpage']: $_REQUEST["limit"] ); + Property changes on: XoopsModules/entities/trunk/modules/entities/header.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: XoopsModules/entities/trunk/modules/entities/include/functions.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/include/functions.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/include/functions.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,22 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ Added: XoopsModules/entities/trunk/modules/entities/index.php =================================================================== --- XoopsModules/entities/trunk/modules/entities/index.php (rev 0) +++ XoopsModules/entities/trunk/modules/entities/index.php 2018-10-22 00:45:30 UTC (rev 13389) @@ -0,0 +1,71 @@ +<?php +/** + * XOOPS Organisational Entities management module + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright The XOOPS Project http://sourceforge.net/projects/xoops/ + * @license General Public License version 3 + * @author Simon Roberts <wis...@us...> + * @subpackage entities + * @description Module for fitting organisations as entities on xoops 2.5 + * @version 1.0.1 + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.5/Modules/entities + * @link https://sourceforge.net/p/chronolabs-cooperative/files/XOOPS%202.6/Modules/entities + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/entities + * @link http://internetfounder.wordpress.com + */ + + + + +global $countriesModule, $countriesConfigsList, $countriesConfigs, $countriesConfigsOptions; +global $start, $limit; + +include dirname(__FILE__) . "/header.php"; + +if ($countriesConfigsList['htaccess']) +{ + $url = XOOPS_URL . "/" . $countriesConfigsList['base'] . "/$start/$limit/index" . $countriesConfigsList['html']; + if (!strpos($url, $_SERVER["REQUEST_URI"])) + { + redirect_header($url, 0, ""); + exit(0); + } +} + +include XOOPS_ROOT_PATH . "/header.php"; +// Adds Stylesheet +if (is_file(XOOPS_ROOT_PATH . "/modules/" . basename(__DIR__) . "/language/" . $GLOBALS['xoopsConfig']['language'] . '/style.css')) + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . "/modules/" . basename(__DIR__) . "/language/" . $GLOBALS['xoopsConfig']['language'] . '/style.css'); +elseif (is_file(XOOPS_ROOT_PATH . "/modules/" . basename(__DIR__) . '/language/english/style.css')) + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . "/modules/" . basename(__DIR__) . '/language/english/style.css'); + +$countries_handler = xoops_getmodulehandler("countries", basename(__DIR__)); +$users_handler = xoops_getmodulehandler("users", basename(__DIR__)); + +if (defined('XOOPS_DOMAIN_COUNTRYID')) { + $country = xoops_getmodulehandler("countries", basename(__DIR__))->get(constant("XOOPS_DOMAIN_COUNTRYID")); + if ($countriesConfigsList['htaccess']) + $GLOBALS['xoopsTpl']->assign("countryflag", XOOPS_URL . '/modules/' . basename(__DIR__) . '/images/flag/' . $country->getVar('countryid') . '/Flag_of_' . str_replace(' ', '_', $country->getVar('country')) . '.png'); + else + $GLOBALS['xoopsTpl']->assign("coun... [truncated message content] |
From: <chr...@us...> - 2018-08-31 20:34:04
|
Revision: 13388 http://sourceforge.net/p/xoops/svn/13388 Author: chronolabscoop Date: 2018-08-31 20:29:46 +0000 (Fri, 31 Aug 2018) Log Message: ----------- More done still more to do in code before release! Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/.htaccess *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/LICENSE *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/README.md *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/activation.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/apiconfig.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/css/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/css/gradients.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/css/shadowing.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/css/style.css *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/images/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/images/logo_350x350.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/images/logo_500x500.png *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/index.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/jquery.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/index.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.form.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.jgrowl.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.lightbox.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.tablesorter.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/jquery/plugins/jquery.ui.js *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.afm *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.bin *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.cef *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.cff *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.dfont *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.eot *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.fon *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.gai *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.gsf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.hqx *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ik *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.mf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.otf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pcf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pf3 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pfa *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pfb *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pmf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pt3 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.sfd *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.svg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.t42 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttd *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufm *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/feature.fea *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/fontinfo.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_ring.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/B_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/C_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/C_cedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/D_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_th.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/F_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/G_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/H_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/J_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/K_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/L_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/M_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/N_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/N_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/P_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Q_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/R_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/S_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/T_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/T_horn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/V_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/W_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/X_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Y_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Y_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Z_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/_notdef.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/_null.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/a.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/aacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/acircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/adieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ae.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/afii10050.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/agrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ampersand.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/aring.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asciicircum.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asciitilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asterisk.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/at.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/atilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/b.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/backslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/braceleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/braceright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bracketleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bracketright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/c.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ccedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/cedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/cent.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/colon.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/comma.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/contents.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/copyright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/currency.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/d.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/degree.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/dollar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/e.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ecircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/edieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/egrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eight.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/equal.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eth.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/exclam.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/exclamdown.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/f.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/five.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/florin.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/four.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/g.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/germandbls.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/glyph4.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/greater.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/guillemotleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/guillemotright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/h.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/hyphen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/i.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/iacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/icircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/idieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/igrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/j.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/k.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/l.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/less.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/m.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/n.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/nine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/nonmarkingreturn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ntilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/numbersign.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/o.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ocircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/odieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oe.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ograve.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/one.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ordmasculine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/otilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/p.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/parenleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/parenright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/percent.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/period.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/perthousand.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/plus.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/q.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/question.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/questiondown.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedbl.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblbase.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quoteleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quoteright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotesinglbase.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotesingle.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/r.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/registered.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/s.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/semicolon.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/seven.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/six.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/space.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/sterling.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/t.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/thorn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/three.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/trademark.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/two.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/u.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/uacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ucircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/udieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ugrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/underscore.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/v.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/w.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/x.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/y.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/yacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ydieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/yen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/z.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/zero.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/groups.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/kerning.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/metainfo.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.woff *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/LICENSE *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/lhf matthews thin.php *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/lhf matthews thin.z *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/font-resource.json *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/index.html *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/LHF Matthews Thin/style.css *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/LICENSE *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.afm *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.bin *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.cef *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.cff *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.dfont *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.eot *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.fon *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.gai *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.gsf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.hqx *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ik *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.mf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.otf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pcf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pf3 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pfa *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pfb *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pmf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.pt3 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.sfd *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.svg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.t42 *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ttd *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ttf *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ttg *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufm *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/feature.fea *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/fontinfo.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_ring.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/B_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/C_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/C_cedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/D_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_th.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/F_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/G_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/G_breve.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/H_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/J_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/K_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/L_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/L_slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/M_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/N_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/N_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_E_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/P_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Q_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/R_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/S_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/S_caron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/T_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/T_horn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/V_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/W_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/X_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Z_.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Z_caron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/_notdef.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/_null.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/a.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/aacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/acircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/acute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/adieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ae.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/agrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ampersand.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/apple.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/aring.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asciicircum.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asciitilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asterisk.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/at.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/atilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/b.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/backslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/braceleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/braceright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bracketleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bracketright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/brokenbar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bullet.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/c.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/caron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ccaron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ccedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/cedilla.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/cent.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/circumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/colon.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/comma.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/contents.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/copyright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/currency.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/d.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dagger.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/daggerdbl.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dcroat.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/degree.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/divide.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dollar.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dotlessi.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/e.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ecircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/edieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/egrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eight.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ellipsis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/emdash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/endash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/equal.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eth.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/exclam.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/exclamdown.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/f.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/fi.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/five.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/fl.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/florin.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/four.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/g.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/gbreve.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/germandbls.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph111.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph112.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph113.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph114.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph227.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph228.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph98.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph99.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/grave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/greater.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guillemotleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guillemotright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guilsinglleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guilsinglright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/h.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/hyphen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/i.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/iacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/icircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/idieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/igrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/j.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/k.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/l.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/less.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/logicalnot.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/lslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/m.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/macron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/minus.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/mu.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/multiply.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/n.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nonbreakingspace.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nonmarkingreturn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ntilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/numbersign.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/o.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ocircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/odieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oe.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ograve.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/one.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onehalf.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onequarter.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onesuperior.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ordfeminine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ordmasculine.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oslash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/otilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/p.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/paragraph.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/parenleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/parenright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/percent.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/period.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/periodcentered.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/perthousand.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/plus.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/plusminus.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/q.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/question.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/questiondown.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedbl.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblbase.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quoteleft.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quoteright.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotesinglbase.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotesingle.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/r.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/registered.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/s.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/scaron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/section.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/semicolon.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/seven.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/sfthyphen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/six.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/slash.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/space.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/sterling.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/t.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/thorn.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/three.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/threequarters.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/threesuperior.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/tilde.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/trademark.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/two.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/twosuperior.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/u.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/uacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ucircumflex.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/udieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ugrave.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/underscore.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/v.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/w.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/x.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/y.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/yacute.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ydieresis.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/yen.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/z.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/zcaron.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/zero.glif *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/groups.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/kerning.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.ufo/metainfo.plist *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/Labtop.woff *.xoops.org (Subdomain APIs & Sites)/email.xoops.org/assets/media/Labtop/TCPDF... [truncated message content] |
From: <chr...@us...> - 2018-08-24 00:42:50
|
Revision: 13387 http://sourceforge.net/p/xoops/svn/13387 Author: chronolabscoop Date: 2018-08-24 00:42:45 +0000 (Fri, 24 Aug 2018) Log Message: ----------- Fixing PDNS Database Structure! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domains.sql *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.peers.sql *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.records.sql *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.supermasters.sql *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.users.sql Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.comments.sql *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.cryptokeys.sql *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domainmetadata.sql *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.tsigkeys.sql Added: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.comments.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.comments.sql (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.comments.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -0,0 +1,16 @@ +DROP TABLE `comments`; + +CREATE TABLE `comments` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `domain_id` int(11) NOT NULL, + `name` varchar(255) NOT NULL, + `type` varchar(10) NOT NULL, + `modified_at` int(11) NOT NULL, + `account` varchar(40) CHARACTER SET utf8 NOT NULL, + `comment` text CHARACTER SET utf8 NOT NULL, + PRIMARY KEY (`id`), + KEY `comments_domain_id_idx` (`domain_id`), + KEY `comments_name_type_idx` (`name`,`type`), + KEY `comments_order_idx` (`domain_id`,`modified_at`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + Property changes on: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.comments.sql ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.cryptokeys.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.cryptokeys.sql (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.cryptokeys.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -0,0 +1,12 @@ +DROP TABLE `cryptokeys`; + +CREATE TABLE `cryptokeys` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `domain_id` int(11) NOT NULL, + `flags` int(11) NOT NULL, + `active` tinyint(1) DEFAULT NULL, + `content` text, + PRIMARY KEY (`id`), + KEY `domainidindex` (`domain_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + Property changes on: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.cryptokeys.sql ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domainmetadata.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domainmetadata.sql (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domainmetadata.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -0,0 +1,11 @@ +DROP TABLE `domainmetadata`; + +CREATE TABLE `domainmetadata` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `domain_id` int(11) NOT NULL, + `kind` varchar(32) DEFAULT NULL, + `content` text, + PRIMARY KEY (`id`), + KEY `domainmetadata_idx` (`domain_id`,`kind`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + Property changes on: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domainmetadata.sql ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Modified: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domains.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domains.sql 2018-07-31 17:31:30 UTC (rev 13386) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.domains.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -1,3 +1,5 @@ +DROP TABLE `domains`; + CREATE TABLE `domains` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, Modified: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.peers.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.peers.sql 2018-07-31 17:31:30 UTC (rev 13386) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.peers.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -1,3 +1,5 @@ +DROP TABLE `peers`; + CREATE TABLE `peers` ( `pid` mediumint(32) unsigned NOT NULL AUTO_INCREMENT, `uid` mediumint(8) unsigned NOT NULL DEFAULT '0', Modified: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.records.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.records.sql 2018-07-31 17:31:30 UTC (rev 13386) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.records.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -1,3 +1,5 @@ +DROP TABLE `records`; + CREATE TABLE `records` ( `id` int(11) NOT NULL AUTO_INCREMENT, `domain_id` int(11) DEFAULT NULL, @@ -7,10 +9,13 @@ `ttl` int(11) DEFAULT NULL, `prio` int(11) DEFAULT NULL, `change_date` int(11) DEFAULT NULL, + `disabled` tinyint(1) DEFAULT 0, + `ordername` varchar(255) DEFAULT '', + `auth` tinyint(1) DEFAULT 0, PRIMARY KEY (`id`), - KEY `rec_name_index` (`name`), - KEY `nametype_index` (`name`,`type`), - KEY `domain_id` (`domain_id`), - KEY `search` (`domain_id`,`name`,`type`,`prio`,`ttl`) + KEY `rec_name_index` (`disabled`,`name`), + KEY `nametype_index` (`disabled`,`name`,`type`), + KEY `domain_id` (`domain_id`,`type`), + KEY `search` (`disabled`,`ordername`,`domain_id`,`name`,`type`,`prio`,`ttl`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; Modified: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.supermasters.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.supermasters.sql 2018-07-31 17:31:30 UTC (rev 13386) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.supermasters.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -1,3 +1,5 @@ +DROP TABLE `supermasters`; + CREATE TABLE `supermasters` ( `id` int(11) NOT NULL AUTO_INCREMENT, `ip` varchar(128) NOT NULL, Added: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.tsigkeys.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.tsigkeys.sql (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.tsigkeys.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -0,0 +1,11 @@ +DROP TABLE `tsigkeys`; + +CREATE TABLE `tsigkeys` ( + `id` int(11) NOT NULL AUTO_INCREMENT, + `name` varchar(255) DEFAULT NULL, + `algorithm` varchar(50) DEFAULT NULL, + `secret` varchar(255) DEFAULT NULL, + PRIMARY KEY (`id`), + UNIQUE KEY `namealgoindex` (`name`,`algorithm`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + Property changes on: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.tsigkeys.sql ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Modified: *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.users.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.users.sql 2018-07-31 17:31:30 UTC (rev 13386) +++ *.xoops.org (Subdomain APIs & Sites)/zones.xoops.org/install/sql/noprefix.users.sql 2018-08-24 00:42:45 UTC (rev 13387) @@ -1,3 +1,5 @@ +DROP TABLE `users`; + CREATE TABLE `users` ( `uid` mediumint(8) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(60) NOT NULL DEFAULT '', |
From: <chr...@us...> - 2018-07-31 17:31:33
|
Revision: 13386 http://sourceforge.net/p/xoops/svn/13386 Author: chronolabscoop Date: 2018-07-31 17:31:30 +0000 (Tue, 31 Jul 2018) Log Message: ----------- Additional SVN Font Picker Cronjob! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/include/functions.php Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.2.tmp *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.tmp *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/crons/pickings-fonts.php Added: *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.2.tmp =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.2.tmp (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.2.tmp 2018-07-31 17:31:30 UTC (rev 13386) @@ -0,0 +1,4 @@ +Media Assests +--This line, and those below, will be ignored-- + +A /home/mynamesnot/Repositories/sourceforge.net/xoops-svn/*.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media Property changes on: *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.2.tmp ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.tmp =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.tmp (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.tmp 2018-07-31 17:31:30 UTC (rev 13386) @@ -0,0 +1,4 @@ + +--This line, and those below, will be ignored-- + +A /home/mynamesnot/Repositories/sourceforge.net/xoops-svn/*.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media Property changes on: *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/assets/media/svn-commit.tmp ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/crons/pickings-fonts.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/crons/pickings-fonts.php (rev 0) +++ *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/crons/pickings-fonts.php 2018-07-31 17:31:30 UTC (rev 13386) @@ -0,0 +1,237 @@ +<?php +/** + * Chronolabs Fontages API + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright Chronolabs Cooperative http://labs.coop + * @license General Public License version 3 (http://labs.coop/briefs/legal/general-public-licence/13,3.html) + * @package fonts + * @since 1.0.2 + * @author Simon Roberts <wis...@us...> + * @version $Id: functions.php 1000 2013-06-07 01:20:22Z mynamesnot $ + * @subpackage cronjobs + * @description Screening API Service REST + */ + +$seconds = floor(mt_rand(1, floor(60 * 4.75))); +set_time_limit($seconds ^ 4); +sleep($seconds); + +ini_set('display_errors', true); +ini_set('log_errors', true); +error_reporting(E_ERROR); +define('MAXIMUM_QUERIES', 25); +ini_set('memory_limit', '315M'); +include_once dirname(__DIR__).'/constants.php'; +include_once dirname(__DIR__).'/include/functions.php'; +require_once dirname(__DIR__).'/class/fontsmailer.php'; + +if (!defined('API_FRONT_EXECSECS')) + define('API_FRONT_EXECSECS', (mt_rand(27, 60) * mt_rand(5, 8))); +if (!defined('API_PATH_CONTROLS')) + define('API_PATH_CONTROLS', API_PATH . DS . 'pickings-json'); +if (!is_dir(API_PATH_CONTROLS)) + mkdir(API_PATH_CONTROLS, 0777, true); +if (!defined('API_PATH_PICKINGS')) + define('API_PATH_PICKINGS', API_PATH . DS . 'Fonts' . DS . 'Pickings'); +if (!defined('API_PATH_MEXICAN')) + define('API_PATH_MEXICAN', date('W') . DS . date('Y') . DS . date('m') . DS . date('D') . DS . date('d')); + +if (!defined('API_JSON_STRUCTURES')) + define('API_JSON_STRUCTURES', 'https://sourceforge.net/p/chronolabs-cooperative/fonts/HEAD/tree/json/structures.json?format=raw'); +if (!defined('API_GET_SVNFILE')) + define('API_GET_SVNFILE', 'https://sourceforge.net/p/chronolabs-cooperative/fonts/HEAD/tree/%s?format=raw'); +if (!defined('API_EXPORT_SVNFILE')) + define('API_EXPORT_SVNFILE', 'svn export --force \"svn://svn.code.sf.net/p/chronolabs-cooperative/fonts/%s\" \"%s\"'); +if (!defined('API_FONTS_UPLOADED')) + define('API_FONTS_UPLOADED', 'eot|otf|ttf|woff|sfd|pf3|pfa|pfb|pt3|t42|gsf|gai'); + +set_time_limit(7200*99*25); +//shell_exec('rm -rf "' . API_PATH_PICKINGS . DS . '*"'); +$start = time(); +$structures = json_decode(getURIData(API_JSON_STRUCTURES, 480, 480, array()), true); +foreach($structures as $structmd5 => $structure) { + if ($structure['meter'] != 'all' && strlen($structure['meter']) == 3 && $structure['type'] == 'fonts') { + if (file_exists($jfile = API_PATH_CONTROLS . DS . 'fonts.md5s.' . substr($structure['meter'], 0, 2) . '.json')) { + $filemd5s = json_decode(file_get_contents($jfile), true); + } else + $filemd5s = array(); + if (!in_array($structmd5, $filemd5s)) { + if (file_exists($jfont = API_PATH_CONTROLS . DS . 'fonts.keys.' . substr($structure['meter'], 0, 2) . '.json')) { + $fontkeys = json_decode(file_get_contents($jfont), true); + } else + $fontkeys = array(); + $fonts = json_decode(getURIData(sprintf(API_GET_SVNFILE, $structure['path'] . DS . $structure['filename']), 480, 480, array()), true); + $files = json_decode(getURIData(sprintf(API_GET_SVNFILE, str_replace('fonts', 'files', $structure['path'] . DS . $structure['filename'])), 480, 480, array()), true); + foreach ($fonts as $fkey => $ffont) { + if (!in_array($ffont['key'], $fontkeys)) { + if (!is_dir($outpath = API_PATH_PICKINGS . DS . API_PATH_MEXICAN . DS . $ffont['key'])) + mkdir(API_PATH_PICKINGS . DS . API_PATH_MEXICAN . DS . $ffont['key'], 0777, true); + foreach(explode('|', API_FONTS_UPLOADED) as $fontext) { + foreach($files as $filename => $svnfile) { + if ($svnfile['extension'] == $fontext && $svnfile['key'] == $ffont['key']) { + echo "\nPicking Font Exporting: " . $svnfile['filename']; + $output = array(); + exec(sprintf(API_EXPORT_SVNFILE, $svnfile['path'] . DS . $svnfile['filename'], $ffile = $outpath . DS . $svnfile['filename']), $output); + echo implode("\n ~ ", $output); + if (md5_file($ffile) == $svnfile['md5']) { + $fontkeys[$ffont['key']] = $ffont['key']; + continue; + continue; + echo " ~ success exporting"; + } else + echo " ~ failed exporting"; + } + } + } + } + } + file_put_contents($jfont, json_encode($fontkeys)); + if ($start + API_FRONT_EXECSECS < time()) + { + continue; + } + } + if ($start + API_FRONT_EXECSECS < time()) + { + continue; + continue; + } else + $filemd5s[$structmd5] = $structmd5; + file_put_contents($jfile, json_encode($filemd5s)); + } +} + +$files = getCompleteFontsListAsArray(constant("API_PATH_PICKINGS")); +$data['files'] = array(); +foreach($files as $type => $fontfiles) +{ + $keys = array_keys($fontfiles); + shuffle($keys); shuffle($keys); shuffle($keys); + foreach($keys as $key) + $data['files'][$type][$key] = $fontfiles[$key]; +} +$files = $data['files']; +$size = 0; +foreach($files as $type => $fontfiles) +{ + foreach($fontfiles as $finger => $fontfile) + { + $size += filesize($fontfile); + } +} + +foreach($files as $type => $fontfiles) +{ + $GLOBALS['APIDB']->queryF($sql = "START TRANSACTION"); + foreach($fontfiles as $finger => $fontfile) + { + $copypath = FONT_RESOURCES_SORTING . DIRECTORY_SEPARATOR . API_LICENSE_EMAIL . DIRECTORY_SEPARATOR . microtime(true); + if (!is_dir($copypath)) + mkdir($copypath, 0777, true); + + if (!file_exists($copypath . DIRECTORY_SEPARATOR . basename($fontfile))&&filesize($fontfile)>199) + { + if (copy($fontfile, $copypath . DIRECTORY_SEPARATOR . strtolower(basename($fontfile)))) + { + if (file_exists($uploadfile = $copypath . DIRECTORY_SEPARATOR . strtolower(basename($fontfile)))) + { + @exec("cd $copypath", $out, $return); + @exec($exe = sprintf(DIRECTORY_SEPARATOR . "usr" . DIRECTORY_SEPARATOR . "bin" . DIRECTORY_SEPARATOR . "fontforge -script \"%s\" \"%s\"", dirname(__DIR__ ) . DIRECTORY_SEPARATOR . "include" . DIRECTORY_SEPARATOR . "data" . DIRECTORY_SEPARATOR . "convert-fonts-upload.pe", $uploadfile), $out, $return); + deleteFilesNotListedByArray($copypath, array(API_BASE=>API_BASE, 'ufo'=>'ufo')); + unlink($fontfile); + $glyphsfingerprint = ''; + foreach(getFontsListAsArray($copypath) as $file) + if ($file['type']==API_BASE) + $uploadfile = $copypath . DIRECTORY_SEPARATOR . $file['file']; + elseif($file['type']=='ufo') { + $glyphs = array(); + $fileglyphs = getFileListAsArray($copypath . DIRECTORY_SEPARATOR . $file['file'] . DIRECTORY_SEPARATOR . 'glyphs'); + sort($fileglyphs); + foreach($fileglyphs as $glyph) + { + $glyphs[] = md5_file($copypath . DIRECTORY_SEPARATOR . $file['file'] . DIRECTORY_SEPARATOR . 'glyphs' . DIRECTORY_SEPARATOR . $glyph); + } + $glyphsfingerprint = md5(implode('', $glyphs)); + } + $fontdata = getBaseFontValueStore($uploadfile); + if (isset($fontdata['version'])) + $fontdata['version'] = $fontdata['version'] + 1.001; + $fontdata['person'] = $data['form']['name']; + $fontdata['company'] = $data['form']['bizo']; + $fontdata['uploaded'] = microtime(true); + $fontdata['licence'] = API_LICENCE; + writeFontRepositoryHeader($uploadfile, API_LICENCE, $fontdata); + $data = file($uploadfile); + $found = false; + foreach($data as $line => $value) + if (!strpos(" $value", 'currentfile eexec') && $found == false) + unset($data[$line]); + elseif (strpos(" $value", 'currentfile eexec') && $found == false) { + unset($data[$line]); + $found = true; + } + $fingerprint = md5(implode("", $data)); + + if (!empty($glyphsfingerprint)) + { + $sql = "SELECT count(*) FROM `" . $GLOBALS['APIDB']->prefix('fonts_fingering') . "` WHERE `fingerprint` LIKE '" . $glyphsfingerprint . "'"; + list($gfingers) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); + } + $sql = "SELECT count(*) FROM `" . $GLOBALS['APIDB']->prefix('fonts_fingering') . "` WHERE `fingerprint` LIKE '" . $fingerprint . "'"; + list($fingers) = $GLOBALS['APIDB']->fetchRow($GLOBALS['APIDB']->queryF($sql)); + if ($fingers==0 && $gfingers == 0) + { + $ffile++; + $data['process'] = microtime(true); + $data['mode'] = 'queuing'; + $data['current'] = $copypath . DIRECTORY_SEPARATOR . strtolower(basename($uploadfile)); + $queued[] = $fontfile; + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('uploads') . "` (`ip_id`, `available`, `key`, `scope`, `prefix`, `email`, `uploaded_file`, `uploaded_path`, `uploaded`, `referee_uri`, `callback`, `bytes`, `batch-size`, `datastore`, `cc`, `bcc`, `frequency`, `elapses`, `longitude`, `latitude`) VALUES ('$ipid','" . $available = mt_rand(7,13) . "','" . basename(dirname(dirname($fontfile))) . "','none','" . 'webdav'. "','" . $GLOBALS['APIDB']->escape($email = API_LICENSE_EMAIL) . "','" . $GLOBALS['APIDB']->escape($filename = strtolower(basename($uploadfile))) . "','" . $GLOBALS['APIDB']->escape($copypath) . "','" . time(). "','" . $GLOBALS['APIDB']->escape($_SERVER['HTTP_REFERER']) . "','" . $GLOBALS['APIDB']->escape($callback = '') . "'," . (filesize($uploadfile)==''?0:filesize($uploadfile)) . "," . $size . ",'" . $GLOBALS['APIDB']->escape(json_encode(array('scope' => '', 'ipsec' => $locality = json_decode(array()), 'name' => API_LICENSE_COMPANY, 'bizo' => API_LICENSE_COMPANY, 'batch-size' => $size, 'font' => $fontdata))) . "','$ccid','$bccid','" . $GLOBALS['APIDB']->escape($freq = mt_rand(2.76,6.75)*3600*24) . "','" . $GLOBALS['APIDB']->escape($elapse = mt_rand(9,27)*3600*24) . "','". (!isset($_SESSION['locality']['location']["coordinates"]["longitude"])?"0.0001":$_SESSION['locality']['location']["coordinates"]["longitude"])."','". (!isset($_SESSION['locality']['location']["coordinates"]["latitude"])?"0.0001":$_SESSION['locality']['location']["coordinates"]["latitude"])."')"; + if ($GLOBALS['APIDB']->queryF($sql)) + { + $uploadid = $GLOBALS['APIDB']->getInsertId(); + if ($scope == 'none') + { + $sql = "UPDATE `" . $GLOBALS['APIDB']->prefix('uploads') . "` SET `quizing` = UNIX_TIMESTAMP(), `expired` = UNIX_TIMESTAMP()+1831, `slotting` = 0, `needing` = 1, `finished` = 2, `surveys` = 2, `available` = 0 WHERE `id` = $uploadid"; + $GLOBALS['APIDB']->queryF($sql); + } + echo "\nCreated Upload Identity: ".$uploadid; + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('fonts_fingering') . "` (`type`, `upload_id`, `fingerprint`) VALUES ('" . $GLOBALS['APIDB']->escape(API_BASE) . "','" . $GLOBALS['APIDB']->escape($uploadid) . "','" . $GLOBALS['APIDB']->escape($glyphsfingerprint) . "')"; + if (!$GLOBALS['APIDB']->queryF($sql)) + echo "SQL Failed: $sql;\n"; + $sql = "INSERT INTO `" . $GLOBALS['APIDB']->prefix('fonts_fingering') . "` (`type`, `upload_id`, `fingerprint`) VALUES ('" . $GLOBALS['APIDB']->escape(API_BASE) . "','" . $GLOBALS['APIDB']->escape($uploadid) . "','" . $GLOBALS['APIDB']->escape($fingerprint) . "')"; + if (!$GLOBALS['APIDB']->queryF($sql)) + echo "SQL Failed: $sql;\n"; + $success[] = basename($fontfile); + $data['success'][] = basename($fontfile); + if (isset($data['form']['callback']) && !empty($data['form']['callback'])) + @setCallBackURI($data['form']['callback'], 145, 145, array('action'=>'uploaded', 'file-md5' => $finger, 'allocated' => $available, 'key' => $key, 'email' => $data['form']['email'], 'name' => $data['form']['name'], 'bizo' => $data['form']['bizo'], 'frequency' => $freq, 'elapsing' => $elapses, 'filename' => $filename, 'culled' => false)); + $GLOBALS["APIDB"]->queryF('UPDATE `' . $GLOBALS['APIDB']->prefix('networking') . '` SET `fonts` = `fonts` + 1 WHERE `ip_id` = "'.$ipid.'"'); + echo "\nUploaded file Queued: ".basename($fontfile); + unlink($uploadfile); + rmdir(dirname($uploadfile)); + } else { + echo ("SQL Failed: $sql;\n"); + } + $GLOBALS['APIDB']->queryF($sql = "COMMIT"); + $GLOBALS['APIDB']->queryF($sql = "START TRANSACTION"); + } + } + } + } + } + $GLOBALS['APIDB']->queryF($sql = "COMMIT"); + sleep(mt_rand(2,7)); +} + +deleteFilesNotListedByArray(API_PATH_PICKINGS, explode('|', API_FONTS_UPLOADED)); +removeEmptyPathFolderList(API_PATH_PICKINGS); + +?> Property changes on: *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/crons/pickings-fonts.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Modified: *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/include/functions.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/include/functions.php 2018-07-31 04:23:30 UTC (rev 13385) +++ *.xoops.org (Subdomain APIs & Sites)/fonty.xoops.org/include/functions.php 2018-07-31 17:31:30 UTC (rev 13386) @@ -206,6 +206,25 @@ } +if (!function_exists("removeEmptyPathFolderList")) { + function removeEmptyPathFolderList($dirname, $result = array()) + { + $folders = array_keys(getCompleteDirListAsArray($dirname)); + $result = array(); + sort($folders, SORT_DESC); + foreach($folders as $path) + { + while($path != $dirname) { + if (rmdir($path)) + $result[$path] = $path; + $path = dirname($path); + } + } + return $result; + } + +} + if (!function_exists("getCompleteHistoryListAsArray")) { function getCompleteHistoryListAsArray($dirname, $result = array()) { |
From: <chr...@us...> - 2018-06-29 15:05:15
|
Revision: 13383 http://sourceforge.net/p/xoops/svn/13383 Author: chronolabscoop Date: 2018-06-29 15:05:08 +0000 (Fri, 29 Jun 2018) Log Message: ----------- Backing Up Changes! Modified Paths: -------------- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/include/config.php *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/include/constants.dist.php *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/language/english/extras.php *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/page_extrasettings.php *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/addresses.sql *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_ipv4.sql *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_ipv6.sql *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_netbios.sql *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_realms.sql Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/include/config.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/include/config.php 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/include/config.php 2018-06-29 15:05:08 UTC (rev 13383) @@ -69,6 +69,13 @@ 'password' => '' ); +$configs['urls'] = array( + 'strata_url' => 'http://strata.snails.email', + 'lookups_url' => 'http://lookups.snails.email', + 'whois_url' => 'http://whois.snails.email', + 'places_url' => 'http://places.snails.email' +); + $configs['twitter'] = array( 'consumer_key' => '', 'consumer_secret' => '', Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/include/constants.dist.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/include/constants.dist.php 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/include/constants.dist.php 2018-06-29 15:05:08 UTC (rev 13383) @@ -75,3 +75,12 @@ define('API_FACEBOOK_APP_CLIENT_TOKEN', ''); define('API_LINKEDIN_CLIENT_ID', ''); define('API_LINKEDIN_CLIENT_SECRET', ''); + +// REST API URLs +define('API_URLS_STRATA_URL', ''); +define('API_URLS_LOOKUPS_URL', ''); +define('API_URLS_WHOIS_URL', ''); +define('API_URLS_PLACES_URL', ''); + + +?> \ No newline at end of file Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/language/english/extras.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/language/english/extras.php 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/language/english/extras.php 2018-06-29 15:05:08 UTC (rev 13383) @@ -53,6 +53,14 @@ define('API_IMAP_USERNAME_HELP','This is the service host netbios path name for the IMAP, SMTP Services Username'); define('API_IMAP_PASSWORD_LABEL','IMAP, SMTP Service for Catch All Password for this domain: ' . parse_url($_SESSION['settings']['URL'], PHP_URL_HOST)); define('API_IMAP_PASSWORD_HELP','This is the service host netbios path name for the IMAP, SMTP Services Password'); +define('API_URLS_STRATA_URL_LABEL', 'Internet/Transnet Strata REST API (See: <a href="https://github.com/Chronolabs-Cooperative/Strata-API-PHP" target="_blank">github.com...</a>)'); +define('API_URLS_STRATA_URL_HELP', 'You will need to install the Internet/Transnet Strata REST API or use a public version of it!'); +define('API_URLS_LOOKUPS_URL_LABEL', 'IP Lookups REST API (See: <a href="https://github.com/Chronolabs-Cooperative/Lookups-API-PHP" target="_blank">github.com...</a>)'); +define('API_URLS_LOOKUPS_URL_HELP', 'You will need to install the IP Lookups REST API or use a public version of it!'); +define('API_URLS_WHOIS_URL_LABEL', 'IPv4/IPv6/Domain WhoIS Query REST API (See: <a href="https://github.com/Chronolabs-Cooperative/WhoIS-API-PHP" target="_blank">github.com...</a>)'); +define('API_URLS_WHOIS_URL_HELP', 'You will need to install the IPv4/IPv6/Domain WhoIS Query REST API or use a public version of it!'); +define('API_URLS_PLACES_URL_LABEL', 'GeoSpatial Places REST API (See: <a href="https://github.com/Chronolabs-Cooperative/Places-API-PHP" target="_blank">github.com...</a>)'); +define('API_URLS_PLACES_URL_HELP', 'You will need to install the GeoSpatial Places REST API or use a public version of it!'); define('API_TWITTER_CONSUMER_KEY_LABEL', 'Twitter Consumer Key'); define('API_TWITTER_CONSUMER_KEY_HELP', 'This is the twitter consumer key found in your twitter application!'); define('API_TWITTER_CONSUMER_SECRET_LABEL', 'Twitter Consumer Secret'); @@ -74,6 +82,7 @@ // Extra Paragraphs define('API_IMAP_PARAGRAPH', 'This is all the mail settings for your entities api, it requires an email address to log onto and check automatically!'); +define('API_URLS_PARAGRAPH', 'This is all the URL\'s settings for your secondary resources as rest api\'s, You will have to install them or use a 3rd party you will find there libraries here: <a href="https://github.com/Chronolabs-Cooperative" target="_blank">https://github.com/Chronolabs-Cooperative/</a>.'); define('API_TWITTER_PARAGRAPH', 'This is all the Twitter.com application settings for your entities api, you can create these at: <a href="https://apps.twitter.com" target="_blank">https://apps.twitter.com</a>!'); define('API_FACEBOOK_PARAGRAPH', 'This is all the Facebook.com application settings for your entities api, you can create these at: <a href="https://developers.facebook.com/docs/apps/register/" target="_blank">https://developers.facebook.com/docs/apps/register/</a>!'); define('API_LINKEDIN_PARAGRAPH', 'This is all the LinkedIn.com application settings for your entities api, you can create these at: <a href="https://www.linkedin.com/secure/developer?newapp=" target="_blank">https://www.linkedin.com/secure/developer?newapp=</a>!'); Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/page_extrasettings.php =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/page_extrasettings.php 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/page_extrasettings.php 2018-06-29 15:05:08 UTC (rev 13383) @@ -41,7 +41,7 @@ } if ($_SERVER['REQUEST_METHOD'] === 'POST') { $enabled = array(); - foreach(array('imap','twitter','facebook','linkedin') as $mode) + foreach(array('imap','urls','twitter','facebook','linkedin') as $mode) foreach($wizard->configs[$mode] as $setting => $values) $_SESSION['constants'][$mode][$setting] = $_POST[$setting]; $wizard->redirectToPage('+1'); @@ -52,7 +52,7 @@ <div class="panel panel-info"> <div class="panel-heading"><?php echo API_EXTRAS; ?></div> <div class="panel-body"> - <?php foreach(array('imap','twitter','facebook','linkedin') as $mode) { ?> + <?php foreach(array('imap','urls','twitter','facebook','linkedin') as $mode) { ?> <div class="form-group"> <div class="xoform-help alert-info"><?php echo constant("API_".strtoupper($mode)."_PARAGRAPH"); ?></div> <?php Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/addresses.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/addresses.sql 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/addresses.sql 2018-06-29 15:05:08 UTC (rev 13383) @@ -10,8 +10,8 @@ `state` varchar(100) DEFAULT '', `country` varchar(100) DEFAULT '', `postcode` varchar(20) DEFAULT '', - `country-id` varchar(32) DEFAULT '', - `place-id` varchar(32) DEFAULT '', + `country-id` varchar(64) DEFAULT '', + `place-id` varchar(64) DEFAULT '', `longitude` float(18,12) DEFAULT '0.000000000000', `latitude` float(18,12) DEFAULT '0.000000000000', `serial-postal` varchar(90) DEFAULT '', Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_ipv4.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_ipv4.sql 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_ipv4.sql 2018-06-29 15:05:08 UTC (rev 13383) @@ -1,56 +1,12 @@ --- MySQL dump 10.13 Distrib 5.7.21, for Linux (x86_64) --- --- Host: localhost Database: licenses-localhost --- ------------------------------------------------------ --- Server version 5.7.21-0ubuntu0.17.10.1 -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `whois_ipv4` --- - -DROP TABLE IF EXISTS `whois_ipv4`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; CREATE TABLE `whois_ipv4` ( `id` mediumint(255) unsigned NOT NULL AUTO_INCREMENT, `state` enum('current','historical') NOT NULL DEFAULT 'current', `mode` enum('realm','netbios') NOT NULL DEFAULT 'realm', `mode-id` mediumint(20) unsigned NOT NULL DEFAULT '0', - `ipv4-id` mediumint(20) unsigned NOT NULL DEFAULT '0', - `whois-id` mediumint(20) unsigned NOT NULL DEFAULT '0', + `ipv4-id` varchar(32) NOT NULL DEFAULT '', + `whois-id` varchar(32) NOT NULL DEFAULT '', `created` int(13) unsigned NOT NULL DEFAULT '0', `history` int(13) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `whois_ipv4` --- - -LOCK TABLES `whois_ipv4` WRITE; -/*!40000 ALTER TABLE `whois_ipv4` DISABLE KEYS */; -/*!40000 ALTER TABLE `whois_ipv4` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2018-02-10 4:37:03 Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_ipv6.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_ipv6.sql 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_ipv6.sql 2018-06-29 15:05:08 UTC (rev 13383) @@ -1,34 +1,11 @@ --- MySQL dump 10.13 Distrib 5.7.21, for Linux (x86_64) --- --- Host: localhost Database: licenses-localhost --- ------------------------------------------------------ --- Server version 5.7.21-0ubuntu0.17.10.1 -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `whois_ipv6` --- - -DROP TABLE IF EXISTS `whois_ipv6`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; CREATE TABLE `whois_ipv6` ( `id` mediumint(255) unsigned NOT NULL AUTO_INCREMENT, `state` enum('current','historical') NOT NULL DEFAULT 'current', `mode` enum('realm','netbios') NOT NULL DEFAULT 'realm', `mode-id` mediumint(20) unsigned NOT NULL DEFAULT '0', - `ipv4-id` mediumint(20) unsigned NOT NULL DEFAULT '0', - `whois-id` mediumint(20) unsigned NOT NULL DEFAULT '0', + `ipv6-id` varchar(32) NOT NULL DEFAULT '', + `whois-id` varchar(32) NOT NULL DEFAULT '', `created` int(13) unsigned NOT NULL DEFAULT '0', `history` int(13) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_netbios.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_netbios.sql 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_netbios.sql 2018-06-29 15:05:08 UTC (rev 13383) @@ -1,54 +1,10 @@ --- MySQL dump 10.13 Distrib 5.7.21, for Linux (x86_64) --- --- Host: localhost Database: licenses-localhost --- ------------------------------------------------------ --- Server version 5.7.21-0ubuntu0.17.10.1 -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `whois_netbios` --- - -DROP TABLE IF EXISTS `whois_netbios`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; CREATE TABLE `whois_netbios` ( `id` mediumint(255) unsigned NOT NULL AUTO_INCREMENT, `state` enum('current','historical') NOT NULL DEFAULT 'current', - `netbios-id` mediumint(20) unsigned NOT NULL DEFAULT '0', - `whois-id` mediumint(20) unsigned NOT NULL DEFAULT '0', + `netbios-id` varchar(32) NOT NULL DEFAULT '', + `whois-id` varchar(32) NOT NULL DEFAULT '', `created` int(13) unsigned NOT NULL DEFAULT '0', `history` int(13) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `whois_netbios` --- - -LOCK TABLES `whois_netbios` WRITE; -/*!40000 ALTER TABLE `whois_netbios` DISABLE KEYS */; -/*!40000 ALTER TABLE `whois_netbios` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2018-02-10 4:37:03 Modified: *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_realms.sql =================================================================== --- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_realms.sql 2018-06-29 14:46:12 UTC (rev 13382) +++ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/install/sql/whois_realms.sql 2018-06-29 15:05:08 UTC (rev 13383) @@ -1,54 +1,12 @@ --- MySQL dump 10.13 Distrib 5.7.21, for Linux (x86_64) --- --- Host: localhost Database: licenses-localhost --- ------------------------------------------------------ --- Server version 5.7.21-0ubuntu0.17.10.1 -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `whois_realms` --- - -DROP TABLE IF EXISTS `whois_realms`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; CREATE TABLE `whois_realms` ( `id` mediumint(255) unsigned NOT NULL AUTO_INCREMENT, `state` enum('current','historical') NOT NULL DEFAULT 'current', - `realm-id` mediumint(20) unsigned NOT NULL DEFAULT '0', - `whois-id` mediumint(20) unsigned NOT NULL DEFAULT '0', + `realm-id` varchar(32) NOT NULL DEFAULT '', + `ipv4-id` varchar(32) NOT NULL DEFAULT '', + `ipv6-id` varchar(32) NOT NULL DEFAULT '', + `whois-id` varchar(32) NOT NULL DEFAULT '', `created` int(13) unsigned NOT NULL DEFAULT '0', `history` int(13) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `whois_realms` --- - -LOCK TABLES `whois_realms` WRITE; -/*!40000 ALTER TABLE `whois_realms` DISABLE KEYS */; -/*!40000 ALTER TABLE `whois_realms` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2018-02-10 4:37:02 |
From: <chr...@us...> - 2018-06-29 12:36:54
|
Revision: 13381 http://sourceforge.net/p/xoops/svn/13381 Author: chronolabscoop Date: 2018-06-29 12:26:55 +0000 (Fri, 29 Jun 2018) Log Message: ----------- Backing Up Changes! Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/.htaccess *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/LICENSE *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/README.md *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/apiconfig.php *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/css/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/css/gradients.php *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/css/shadowing.php *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/css/style.css *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/100x100.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/128x128.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/150x150.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/200x200.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/24x24.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/320x320.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/48x48.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/56x56.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/72x72.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/back.gif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/compressed.gif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/entities-facebook-app.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/folder.gif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/icon.ico *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/logo_350x350.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/logo_500x500.png *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/text.gif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/xcf/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/images/xcf/entities-logo-icon.xcf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/index.html *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/jquery.js *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/plugins/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/plugins/index.html *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/plugins/jquery.form.js *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/plugins/jquery.jgrowl.js *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/plugins/jquery.lightbox.js *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/plugins/jquery.tablesorter.js *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/jquery/plugins/jquery.ui.js *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.afm *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.bin *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.cef *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.cff *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.dfont *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.eot *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.fon *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.gai *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.gsf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.hqx *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ik *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.mf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.otf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pcf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pf3 *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pfa *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pfb *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pmf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.pt3 *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.sfd *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.svg *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.t42 *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttd *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ttg *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufm *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/feature.fea *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/fontinfo.plist *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_E_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_ring.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/A_tilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/B_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/C_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/C_cedilla.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/D_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/E_th.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/F_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/G_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/H_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/I_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/J_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/K_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/L_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/M_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/N_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/N_tilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_E_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_slash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/O_tilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/P_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Q_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/R_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/S_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/T_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/T_horn.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/U_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/V_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/W_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/X_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Y_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Y_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/Z_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/_notdef.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/_null.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/a.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/aacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/acircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/adieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ae.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/afii10050.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/agrave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ampersand.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/aring.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asciicircum.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asciitilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/asterisk.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/at.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/atilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/b.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/backslash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bar.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/braceleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/braceright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bracketleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/bracketright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/c.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ccedilla.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/cedilla.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/cent.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/colon.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/comma.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/contents.plist *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/copyright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/currency.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/d.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/degree.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/dollar.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/e.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ecircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/edieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/egrave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eight.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/equal.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/eth.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/exclam.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/exclamdown.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/f.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/five.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/florin.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/four.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/g.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/germandbls.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/glyph4.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/greater.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/guillemotleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/guillemotright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/h.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/hyphen.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/i.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/iacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/icircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/idieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/igrave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/j.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/k.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/l.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/less.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/m.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/n.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/nine.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/nonmarkingreturn.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ntilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/numbersign.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/o.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ocircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/odieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oe.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ograve.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/one.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ordmasculine.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/oslash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/otilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/p.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/parenleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/parenright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/percent.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/period.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/perthousand.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/plus.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/q.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/question.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/questiondown.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedbl.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblbase.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotedblright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quoteleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quoteright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotesinglbase.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/quotesingle.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/r.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/registered.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/s.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/semicolon.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/seven.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/six.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/slash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/space.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/sterling.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/t.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/thorn.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/three.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/trademark.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/two.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/u.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/uacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ucircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/udieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ugrave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/underscore.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/v.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/w.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/x.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/y.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/yacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/ydieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/yen.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/z.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/glyphs/zero.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/groups.plist *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/kerning.plist *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.ufo/metainfo.plist *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LHF Matthews Thin.woff *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/LICENSE *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/lhf matthews thin.php *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/TCPDF (PHP Extension)/lhf matthews thin.z *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/font-resource.json *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/index.html *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/LHF Matthews Thin/style.css *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/ACADEMIC *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/LICENSE *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.afm *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.bin *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.cef *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.cff *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.dfont *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.eot *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.fon *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.gai *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.gsf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.hqx *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ik *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.mf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.otf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.pcf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.pf3 *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.pfa *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.pfb *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.pmf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.pt3 *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.sfd *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.svg *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.t42 *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ttd *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ttf *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ttg *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufm *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/feature.fea *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/fontinfo.plist *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_E_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_ring.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/A_tilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/B_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/C_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/C_cedilla.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/D_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/E_th.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/F_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/G_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/G_breve.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/H_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/I_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/J_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/K_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/L_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/L_slash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/M_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/N_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/N_tilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_E_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_slash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/O_tilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/P_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Q_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/R_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/S_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/S_caron.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/T_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/T_horn.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/U_grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/V_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/W_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/X_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Y_dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Z_.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/Z_caron.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/_notdef.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/_null.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/a.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/aacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/acircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/acute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/adieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ae.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/agrave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ampersand.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/apple.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/aring.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asciicircum.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asciitilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/asterisk.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/at.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/atilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/b.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/backslash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bar.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/braceleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/braceright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bracketleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bracketright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/brokenbar.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/bullet.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/c.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/caron.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ccaron.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ccedilla.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/cedilla.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/cent.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/circumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/colon.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/comma.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/contents.plist *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/copyright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/currency.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/d.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dagger.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/daggerdbl.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dcroat.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/degree.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/divide.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dollar.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/dotlessi.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/e.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ecircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/edieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/egrave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eight.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ellipsis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/emdash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/endash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/equal.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/eth.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/exclam.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/exclamdown.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/f.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/fi.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/five.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/fl.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/florin.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/four.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/g.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/gbreve.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/germandbls.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph111.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph112.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph113.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph114.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph227.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph228.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph98.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/glyph99.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/grave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/greater.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guillemotleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guillemotright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guilsinglleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/guilsinglright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/h.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/hyphen.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/i.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/iacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/icircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/idieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/igrave.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/j.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/k.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/l.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/less.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/logicalnot.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/lslash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/m.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/macron.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/minus.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/mu.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/multiply.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/n.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nine.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nonbreakingspace.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/nonmarkingreturn.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ntilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/numbersign.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/o.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oacute.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ocircumflex.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/odieresis.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oe.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ograve.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/one.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onehalf.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onequarter.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/onesuperior.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ordfeminine.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/ordmasculine.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/oslash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/otilde.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/p.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/paragraph.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/parenleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/parenright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/percent.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/period.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/periodcentered.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/perthousand.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/plus.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/plusminus.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/q.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/question.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/questiondown.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedbl.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblbase.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotedblright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quoteleft.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quoteright.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotesinglbase.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/quotesingle.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/r.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/registered.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/s.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/scaron.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/section.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/semicolon.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/seven.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/sfthyphen.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/six.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/slash.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/space.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/sterling.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/t.glif *.xoops.org (Subdomain APIs & Sites)/entities.xoops.org/assets/media/Labtop/Labtop.ufo/glyphs/thorn.glif *.xoops.org (Subdomain APIs & Sites)/enti... [truncated message content] |
From: <chr...@us...> - 2018-06-29 09:10:01
|
Revision: 13380 http://sourceforge.net/p/xoops/svn/13380 Author: chronolabscoop Date: 2018-06-29 09:09:55 +0000 (Fri, 29 Jun 2018) Log Message: ----------- Done for 37hr round-table going to work on entities api for a bit! Modified Paths: -------------- XoopsModules/authkey/trunk/modules/authkey/admin/index.php XoopsModules/authkey/trunk/modules/authkey/apis.php XoopsModules/authkey/trunk/modules/authkey/class/apis.php XoopsModules/authkey/trunk/modules/authkey/class/keys.php XoopsModules/authkey/trunk/modules/authkey/class/users.php XoopsModules/authkey/trunk/modules/authkey/language/english/admin.php XoopsModules/authkey/trunk/modules/authkey/language/english/modinfo.php XoopsModules/authkey/trunk/modules/authkey/xoops_version.php Added Paths: ----------- XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/exec.png XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/stats.png Modified: XoopsModules/authkey/trunk/modules/authkey/admin/index.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/admin/index.php 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/admin/index.php 2018-06-29 09:09:55 UTC (rev 13380) @@ -26,12 +26,47 @@ $indexAdmin = new ModuleAdmin(); echo $indexAdmin->addNavigation(basename($_SERVER['PHP_SELF'])); - $category_handler = xoops_getmodulehandler('category', 'xcenter'); - $xcenter_handler = xoops_getmodulehandler('xcenter', 'xcenter'); $indexAdmin = new ModuleAdmin(); - $indexAdmin->addInfoBox(_XTR_ADMIN_COUNTS); - $indexAdmin->addInfoBoxLine(_XTR_ADMIN_COUNTS, "<label>"._XTR_ADMIN_THEREARE_CATEGORIES."</label>", $category_handler->getCount(NULL), 'Green'); - $indexAdmin->addInfoBoxLine(_XTR_ADMIN_COUNTS, "<label>"._XTR_ADMIN_THEREARE_ARTICLES."</label>", $xcenter_handler->getCount(NULL), 'Green'); + $indexAdmin->addInfoBox(_AM_AUTHKEY_DASHBOARD); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_DASHBOARD, "<label>"._AM_AUTHKEY_INDEX_APIS."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getCount(NULL), 'Blue'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_DASHBOARD, "<label>"._AM_AUTHKEY_INDEX_APIS_AUTHWRITE."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getCount(new Criteria('`api-write`', 'xoopskey')), 'Orange'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_DASHBOARD, "<label>"._AM_AUTHKEY_INDEX_APIS_AUTHREAD."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getCount(new Criteria('`api-read`', 'xoopskey')), 'Orange'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_DASHBOARD, "<label>"._AM_AUTHKEY_INDEX_KEYS_NUMBER."</label>", xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getCount(NULL), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_DASHBOARD, "<label>"._AM_AUTHKEY_INDEX_KEYS_ADVERAGE."</label>", number_format(xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getAveragePerUser(), 2), 'Green'); + + $indexAdmin->addInfoBox(_AM_AUTHKEY_LESTATS); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_KEY_TYPE."</label>", xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getNextStatsType(), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_KEY_NAME."</label>", xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getNextStatsName(), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_KEY_ENDING."</label>", date('Y/m/d H:i:s', xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getNextStatsWhen()), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_USER_TYPE."</label>", xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getNextStatsType(), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_USER_NAME."</label>", xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getNextStatsName(), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_USER_ENDING."</label>", date('Y/m/d H:i:s', xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getNextStatsWhen()), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_API_TYPE."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getNextStatsType(), 'Blue'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_API_NAME."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getNextStatsName(), 'Blue'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_LESTATS, "<label>"._AM_AUTHKEY_STATS_API_ENDING."</label>", date('Y/m/d H:i:s', xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getNextStatsWhen()), 'Blue'); + + $indexAdmin->addInfoBox(_AM_AUTHKEY_REPORTING); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_KEY_TYPE."</label>", xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getNextReportType(), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_KEY_NAME."</label>", xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getNextReportName(), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_KEY_ENDING."</label>", date('Y/m/d H:i:s', xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getNextReportWhen()), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_USER_TYPE."</label>", xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getNextReportType(), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_USER_NAME."</label>", xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getNextReportName(), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_USER_ENDING."</label>", date('Y/m/d H:i:s', xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getNextReportWhen()), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_API_TYPE."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getNextReportType(), 'Blue'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_API_NAME."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getNextReportName(), 'Blue'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_REPORTING, "<label>"._AM_AUTHKEY_REPORT_API_ENDING."</label>", date('Y/m/d H:i:s', xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getNextReportWhen()), 'Blue'); + + $indexAdmin->addInfoBox(_AM_AUTHKEY_ENDING); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_KEY_STATS_WEEKLY."</label>", xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getCountStatsEnding(3600 * 24 * 7), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_KEY_STATS_DAILY."</label>", xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getCountStatsEnding(3600 * 24), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_KEY_REPORTS_MONTHLY."</label>", xoops_getmodulehandler('keys', basename(dirname(__DIR__)))->getCountReportsEnding(3600 * 24 * 7 * 4), 'Green'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_USER_STATS_WEEKLY."</label>", xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getCountStatsEnding(3600 * 24 * 7), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_USER_STATS_DAILY."</label>", xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getCountStatsEnding(3600 * 24), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_USER_REPORTS_MONTHLY."</label>", xoops_getmodulehandler('users', basename(dirname(__DIR__)))->getCountReportsEnding(3600 * 24 * 7 * 4), 'Purple'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_API_STATS_WEEKLY."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getCountStatsEnding(3600 * 24 * 7), 'Blue'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_API_STATS_DAILY."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getCountStatsEnding(3600 * 24), 'Blue'); + $indexAdmin->addInfoBoxLine(_AM_AUTHKEY_ENDING, "<label>"._AM_AUTHKEY_ENDING_API_REPORTS_MONTHLY."</label>", xoops_getmodulehandler('apis', basename(dirname(__DIR__)))->getCountReportsEnding(3600 * 24 * 7 * 4), 'Blue'); + echo $indexAdmin->renderIndex(); xoops_cp_footer(); ?> \ No newline at end of file Modified: XoopsModules/authkey/trunk/modules/authkey/apis.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/apis.php 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/apis.php 2018-06-29 09:09:55 UTC (rev 13380) @@ -44,8 +44,8 @@ if (substr($field, 0, 5) == 'calls') { $apiarr[str_replace("-", "_", $field)] = number_format($value, 0); } elseif (in_array($field, array('online', 'offline'))) { - if ($value = $api->getVar('status')) - $apiarr[str_replace("-", "_", $field)] = authkey_getTimePeriod($value + (time() - $api->getVar('checked'))); + if ($field = $api->getVar('status')) + $apiarr[str_replace("-", "_", $field)] = authkey_getTimePeriod($value + ((time() > $api->getVar('checked') ? time() - $api->getVar('checked') : $api->getVar('checked') - time()))); else $apiarr[str_replace("-", "_", $field)] = authkey_getTimePeriod($value); } elseif (in_array($field, array('stats-hour', 'stats-day', 'stats-week', 'stats-month', 'stats-quarter', 'stats-year', 'report-month', 'report-quarter', 'report-year', 'report-biannual', 'created', 'checked', 'checking', 'emailed'))) { Added: XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/exec.png =================================================================== (Binary files differ) Index: XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/exec.png =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/exec.png 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/exec.png 2018-06-29 09:09:55 UTC (rev 13380) Property changes on: XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/exec.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Added: XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/stats.png =================================================================== (Binary files differ) Index: XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/stats.png =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/stats.png 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/stats.png 2018-06-29 09:09:55 UTC (rev 13380) Property changes on: XoopsModules/authkey/trunk/modules/authkey/assets/images/32x32/stats.png ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +application/octet-stream \ No newline at end of property Modified: XoopsModules/authkey/trunk/modules/authkey/class/apis.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/class/apis.php 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/class/apis.php 2018-06-29 09:09:55 UTC (rev 13380) @@ -178,6 +178,216 @@ return $space . implode("\n".$space, $return); } + function getNextStatsType() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + return _MI_AUTHKEY_PERIODICALLY_YEAR; + else + return _MI_AUTHKEY_PERIODICALLY_QUARTER; + else + return _MI_AUTHKEY_PERIODICALLY_MONTH; + else + return _MI_AUTHKEY_PERIODICALLY_WEEK; + else + return _MI_AUTHKEY_PERIODICALLY_DAY; + else + return _MI_AUTHKEY_PERIODICALLY_HOUR; + } + + function getNextStatsName() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + return $year['api-name']; + else + return $quarter['api-name']; + else + return $month['api-name']; + else + return $week['api-name']; + else + return $day['api-name']; + else + return $hour['api-name']; + } + + function getNextStatsWhen() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + return $year['stats-year']; + else + return $quarter['stats-quarter']; + else + return $month['stats-month']; + else + return $week['stats-week']; + else + return $day['stats-day']; + else + return $hour['stats-hour']; + } + + function getNextReportType() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + return _MI_AUTHKEY_PERIODICALLY_BIANNUAL; + else + return _MI_AUTHKEY_PERIODICALLY_FULLYEAR; + else + return _MI_AUTHKEY_PERIODICALLY_HALFYEAR; + else + return _MI_AUTHKEY_PERIODICALLY_MONTH; + } + + function getNextReportName() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + return $biannual['api-name']; + else + return $fullyear['api-name']; + else + return $halfyear['api-name']; + else + return $monthly['api-name']; + } + + function getNextReportWhen() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_apis') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + return $biannual['report-biannual']; + else + return $fullyear['report-fullyear']; + else + return $halfyear['report-halfyear']; + else + return $monthly['report-monthly']; + } + + + function getCountStatsEnding($seconds = 0) + { + $criteriahour = new CriteriaCompo(new Criteria('`stats-hour`', time() - $seconds, ">=")); + $criteriahour->add(new Criteria('`stats-hour`', time(), "<=")); + $criteriaday = new CriteriaCompo(new Criteria('`stats-day`', time() - $seconds, ">=")); + $criteriaday->add(new Criteria('`stats-day`', time(), "<=")); + $criteriaweek = new CriteriaCompo(new Criteria('`stats-week`', time() - $seconds, ">=")); + $criteriaweek->add(new Criteria('`stats-week`', time(), "<=")); + $criteriamonth = new CriteriaCompo(new Criteria('`stats-month`', time() - $seconds, ">=")); + $criteriamonth->add(new Criteria('`stats-month`', time(), "<=")); + $criteriaquarter = new CriteriaCompo(new Criteria('`stats-quarter`', time() - $seconds, ">=")); + $criteriaquarter->add(new Criteria('`stats-quarter`', time(), "<=")); + $criteriayear = new CriteriaCompo(new Criteria('`stats-year`', time() - $seconds, ">=")); + $criteriayear->add(new Criteria('`stats-year`', time(), "<=")); + $criteria = new CriteriaCompo($criteriahour); + $criteria->add($criteriaday, 'OR'); + $criteria->add($criteriaweek, 'OR'); + $criteria->add($criteriamonth, 'OR'); + $criteria->add($criteriaquarter, 'OR'); + $criteria->add($criteriayear, 'OR'); + return $this->getCount($criteria); + } + + + function getCountReportsEnding($seconds = 0) + { + $criteriamonthly = new CriteriaCompo(new Criteria('`report-monthly`', time() - $seconds, ">=")); + $criteriamonthly->add(new Criteria('`report-monthly`', time(), "<=")); + $criteriahalfyear = new CriteriaCompo(new Criteria('`report-halfyear`', time() - $seconds, ">=")); + $criteriahalfyear->add(new Criteria('`report-halfyear`', time(), "<=")); + $criteriafullyear = new CriteriaCompo(new Criteria('`report-fullyear`', time() - $seconds, ">=")); + $criteriafullyear->add(new Criteria('`report-fullyear`', time(), "<=")); + $criteriabiannual = new CriteriaCompo(new Criteria('`report-biannual`', time() - $seconds, ">=")); + $criteriabiannual->add(new Criteria('`report-biannual`', time(), "<=")); + $criteria = new CriteriaCompo($criteriamonthly); + $criteria->add($criteriahalfyear, 'OR'); + $criteria->add($criteriafullyear, 'OR'); + $criteria->add($criteriabiannual, 'OR'); + return $this->getCount($criteria); + } + function insert(AuthkeyApis $object, $force = true) { global $authkeyModule, $authkeyConfigsList, $authkeyConfigs, $authkeyConfigsOptions; Modified: XoopsModules/authkey/trunk/modules/authkey/class/keys.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/class/keys.php 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/class/keys.php 2018-06-29 09:09:55 UTC (rev 13380) @@ -117,6 +117,228 @@ return $return; } + function getAveragePerUser() + { + $sql = "SELECT count(*) as `count`, `uid` FROM `" . $this->db->prefix('authkey_keys') . "` GROUP BY `uid`"; + $result = $this->db->queryF($sql); + $rows = $sum = 0; + while($row = $this->db->fetchArray($result)) + { + $sum += $row['count']; + $rows++; + } + return $sum / $rows; + } + + function getNextStatsType() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + return _MI_AUTHKEY_PERIODICALLY_YEAR; + else + return _MI_AUTHKEY_PERIODICALLY_QUARTER; + else + return _MI_AUTHKEY_PERIODICALLY_MONTH; + else + return _MI_AUTHKEY_PERIODICALLY_WEEK; + else + return _MI_AUTHKEY_PERIODICALLY_DAY; + else + return _MI_AUTHKEY_PERIODICALLY_HOUR; + } + + function getNextStatsName() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + return $year['title']; + else + return $quarter['title']; + else + return $month['title']; + else + return $week['title']; + else + return $day['title']; + else + return $hour['title']; + } + + function getNextStatsWhen() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + return $year['stats-year']; + else + return $quarter['stats-quarter']; + else + return $month['stats-month']; + else + return $week['stats-week']; + else + return $day['stats-day']; + else + return $hour['stats-hour']; + } + + function getNextReportType() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + return _MI_AUTHKEY_PERIODICALLY_BIANNUAL; + else + return _MI_AUTHKEY_PERIODICALLY_FULLYEAR; + else + return _MI_AUTHKEY_PERIODICALLY_HALFYEAR; + else + return _MI_AUTHKEY_PERIODICALLY_MONTH; + } + + function getNextReportName() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + return $biannual['title']; + else + return $fullyear['title']; + else + return $halfyear['title']; + else + return $monthly['title']; + } + + function getNextReportWhen() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_keys') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + return $biannual['report-biannual']; + else + return $fullyear['report-fullyear']; + else + return $halfyear['report-halfyear']; + else + return $monthly['report-monthly']; + } + + function getCountStatsEnding($seconds = 0) + { + $criteriahour = new CriteriaCompo(new Criteria('`stats-hour`', time() - $seconds, ">=")); + $criteriahour->add(new Criteria('`stats-hour`', time(), "<=")); + $criteriaday = new CriteriaCompo(new Criteria('`stats-day`', time() - $seconds, ">=")); + $criteriaday->add(new Criteria('`stats-day`', time(), "<=")); + $criteriaweek = new CriteriaCompo(new Criteria('`stats-week`', time() - $seconds, ">=")); + $criteriaweek->add(new Criteria('`stats-week`', time(), "<=")); + $criteriamonth = new CriteriaCompo(new Criteria('`stats-month`', time() - $seconds, ">=")); + $criteriamonth->add(new Criteria('`stats-month`', time(), "<=")); + $criteriaquarter = new CriteriaCompo(new Criteria('`stats-quarter`', time() - $seconds, ">=")); + $criteriaquarter->add(new Criteria('`stats-quarter`', time(), "<=")); + $criteriayear = new CriteriaCompo(new Criteria('`stats-year`', time() - $seconds, ">=")); + $criteriayear->add(new Criteria('`stats-year`', time(), "<=")); + $criteria = new CriteriaCompo($criteriahour); + $criteria->add($criteriaday, 'OR'); + $criteria->add($criteriaweek, 'OR'); + $criteria->add($criteriamonth, 'OR'); + $criteria->add($criteriaquarter, 'OR'); + $criteria->add($criteriayear, 'OR'); + return $this->getCount($criteria); + } + + + function getCountReportsEnding($seconds = 0) + { + $criteriamonthly = new CriteriaCompo(new Criteria('`report-monthly`', time() - $seconds, ">=")); + $criteriamonthly->add(new Criteria('`report-monthly`', time(), "<=")); + $criteriahalfyear = new CriteriaCompo(new Criteria('`report-halfyear`', time() - $seconds, ">=")); + $criteriahalfyear->add(new Criteria('`report-halfyear`', time(), "<=")); + $criteriafullyear = new CriteriaCompo(new Criteria('`report-fullyear`', time() - $seconds, ">=")); + $criteriafullyear->add(new Criteria('`report-fullyear`', time(), "<=")); + $criteriabiannual = new CriteriaCompo(new Criteria('`report-biannual`', time() - $seconds, ">=")); + $criteriabiannual->add(new Criteria('`report-biannual`', time(), "<=")); + $criteria = new CriteriaCompo($criteriamonthly); + $criteria->add($criteriahalfyear, 'OR'); + $criteria->add($criteriafullyear, 'OR'); + $criteria->add($criteriabiannual, 'OR'); + return $this->getCount($criteria); + } + function insert(AuthkeyKeys $object, $force = true) { global $authkeyModule, $authkeyConfigsList, $authkeyConfigs, $authkeyConfigsOptions; Modified: XoopsModules/authkey/trunk/modules/authkey/class/users.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/class/users.php 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/class/users.php 2018-06-29 09:09:55 UTC (rev 13380) @@ -85,6 +85,231 @@ parent::__construct($db, 'authkey_users', 'AuthkeyUsers', "uid", "uname"); } + function getNextStatsType() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + return _MI_AUTHKEY_PERIODICALLY_YEAR; + else + return _MI_AUTHKEY_PERIODICALLY_QUARTER; + else + return _MI_AUTHKEY_PERIODICALLY_MONTH; + else + return _MI_AUTHKEY_PERIODICALLY_WEEK; + else + return _MI_AUTHKEY_PERIODICALLY_DAY; + else + return _MI_AUTHKEY_PERIODICALLY_HOUR; + } + + function getNextStatsName() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + $user = xoops_getHandler('member')->getUser($year['uid']); + else + $user = xoops_getHandler('member')->getUser($quarter['uid']); + else + $user = xoops_getHandler('member')->getUser($month['uid']); + else + $user = xoops_getHandler('member')->getUser($week['uid']); + else + $user = xoops_getHandler('member')->getUser($day['uid']); + else + $user = xoops_getHandler('member')->getUser($hour['uid']); + + if (is_object($user)) + if (strlen($user->getVar('name'))) + return $user->getVar('name') . " (" . $user->getVar('uname') . ")"; + else + return $user->getVar('uname'); + return ''; + } + + function getNextStatsWhen() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-hour` ASC LIMIT 1"; + $hour = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-day` ASC LIMIT 1"; + $day = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-week` ASC LIMIT 1"; + $week = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-month` ASC LIMIT 1"; + $month = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-quarter` ASC LIMIT 1"; + $quarter = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `stats-year` ASC LIMIT 1"; + $year = $this->db->fetchArray($this->db->queryF($sql)); + + if ($hour['stats-hour'] >= $day['stats-day']) + if ($day['stats-day'] >= $week['stats-week']) + if ($week['stats-week'] >= $month['stats-month']) + if ($month['stats-month'] >= $quarter['stats-quarter']) + if ($quarter['stats-quarter'] >= $year['stats-year']) + return $year['stats-year']; + else + return $quarter['stats-quarter']; + else + return $month['stats-month']; + else + return $week['stats-week']; + else + return $day['stats-day']; + else + return $hour['stats-hour']; + } + + function getNextReportType() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + return _MI_AUTHKEY_PERIODICALLY_BIANNUAL; + else + return _MI_AUTHKEY_PERIODICALLY_FULLYEAR; + else + return _MI_AUTHKEY_PERIODICALLY_HALFYEAR; + else + return _MI_AUTHKEY_PERIODICALLY_MONTH; + } + + function getNextReportName() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + $user = xoops_getHandler('member')->getUser($biannual['uid']); + else + $user = xoops_getHandler('member')->getUser($fullyear['uid']); + else + $user = xoops_getHandler('member')->getUser($halfyear['uid']); + else + $user = xoops_getHandler('member')->getUser($monthly['uid']); + + if (is_object($user)) + if (strlen($user->getVar('name'))) + return $user->getVar('name') . " (" . $user->getVar('uname') . ")"; + else + return $user->getVar('uname'); + return ''; + + } + + function getNextReportWhen() + { + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-monthly` ASC LIMIT 1"; + $monthly = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-halfyear` ASC LIMIT 1"; + $halfyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-fullyear` ASC LIMIT 1"; + $fullyear = $this->db->fetchArray($this->db->queryF($sql)); + $sql = "SELECT * FROM `" . $this->db->prefix('authkey_users') . "` ORDER BY `report-biannual` ASC LIMIT 1"; + $biannual = $this->db->fetchArray($this->db->queryF($sql)); + + if ($monthly['report-monthly'] >= $halfyear['report-halfyear']) + if ($halfyear['report-halfyear'] >= $fullyear['report-fullyear']) + if ($fullyear['report-fullyear'] >= $biannual['report-biannual']) + return $biannual['report-biannual']; + else + return $fullyear['report-fullyear']; + else + return $halfyear['report-halfyear']; + else + return $monthly['report-monthly']; + } + + + function getCountStatsEnding($seconds = 0) + { + $criteriahour = new CriteriaCompo(new Criteria('`stats-hour`', time() - $seconds, ">=")); + $criteriahour->add(new Criteria('`stats-hour`', time(), "<=")); + $criteriaday = new CriteriaCompo(new Criteria('`stats-day`', time() - $seconds, ">=")); + $criteriaday->add(new Criteria('`stats-day`', time(), "<=")); + $criteriaweek = new CriteriaCompo(new Criteria('`stats-week`', time() - $seconds, ">=")); + $criteriaweek->add(new Criteria('`stats-week`', time(), "<=")); + $criteriamonth = new CriteriaCompo(new Criteria('`stats-month`', time() - $seconds, ">=")); + $criteriamonth->add(new Criteria('`stats-month`', time(), "<=")); + $criteriaquarter = new CriteriaCompo(new Criteria('`stats-quarter`', time() - $seconds, ">=")); + $criteriaquarter->add(new Criteria('`stats-quarter`', time(), "<=")); + $criteriayear = new CriteriaCompo(new Criteria('`stats-year`', time() - $seconds, ">=")); + $criteriayear->add(new Criteria('`stats-year`', time(), "<=")); + $criteria = new CriteriaCompo($criteriahour); + $criteria->add($criteriaday, 'OR'); + $criteria->add($criteriaweek, 'OR'); + $criteria->add($criteriamonth, 'OR'); + $criteria->add($criteriaquarter, 'OR'); + $criteria->add($criteriayear, 'OR'); + return $this->getCount($criteria); + } + + + function getCountReportsEnding($seconds = 0) + { + $criteriamonthly = new CriteriaCompo(new Criteria('`report-monthly`', time() - $seconds, ">=")); + $criteriamonthly->add(new Criteria('`report-monthly`', time(), "<=")); + $criteriahalfyear = new CriteriaCompo(new Criteria('`report-halfyear`', time() - $seconds, ">=")); + $criteriahalfyear->add(new Criteria('`report-halfyear`', time(), "<=")); + $criteriafullyear = new CriteriaCompo(new Criteria('`report-fullyear`', time() - $seconds, ">=")); + $criteriafullyear->add(new Criteria('`report-fullyear`', time(), "<=")); + $criteriabiannual = new CriteriaCompo(new Criteria('`report-biannual`', time() - $seconds, ">=")); + $criteriabiannual->add(new Criteria('`report-biannual`', time(), "<=")); + $criteria = new CriteriaCompo($criteriamonthly); + $criteria->add($criteriahalfyear, 'OR'); + $criteria->add($criteriafullyear, 'OR'); + $criteria->add($criteriabiannual, 'OR'); + return $this->getCount($criteria); + } + function insert(AuthkeyUsers $object, $force = true) { global $authkeyModule, $authkeyConfigsList, $authkeyConfigs, $authkeyConfigsOptions; Modified: XoopsModules/authkey/trunk/modules/authkey/language/english/admin.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/language/english/admin.php 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/language/english/admin.php 2018-06-29 09:09:55 UTC (rev 13380) @@ -18,5 +18,43 @@ */ +// Dashboard Ledger +define('_AM_AUTHKEY_DASHBOARD', 'Dashboard Counts'); +define('_AM_AUTHKEY_LESTATS', 'Next Occuring Statistics'); +define('_AM_AUTHKEY_REPORTING', 'Next Occuring Reporting'); +define('_AM_AUTHKEY_ENDING', 'Number of Ending Items'); +// Dashboard Ledger Items +define('_AM_AUTHKEY_INDEX_APIS', 'Number of API\'s: %s'); +define('_AM_AUTHKEY_INDEX_APIS_AUTHWRITE', 'API\'s Requiring Xoopskey on Write: %s'); +define('_AM_AUTHKEY_INDEX_APIS_AUTHREAD', 'API\'s Requiring Xoopskey on Read: %s'); +define('_AM_AUTHKEY_INDEX_KEYS_NUMBER', 'Number of Xoopskeys/Authkeys: %s'); +define('_AM_AUTHKEY_INDEX_KEYS_ADVERAGE', 'Average number of keys per user: %s'); +define('_AM_AUTHKEY_STATS_KEY_TYPE', 'Next Key Statistics to Occur Type: %s'); +define('_AM_AUTHKEY_STATS_KEY_NAME', 'Next Key Statistics to Occur Name: %s'); +define('_AM_AUTHKEY_STATS_KEY_ENDING', 'When Next Key Statistics is to Occur: %s'); +define('_AM_AUTHKEY_STATS_USER_TYPE', 'Next User Statistics to Occur Type: %s'); +define('_AM_AUTHKEY_STATS_USER_NAME', 'Next User Statistics to Occur Name: %s'); +define('_AM_AUTHKEY_STATS_USER_ENDING', 'When Next User Statistics is to Occur: %s'); +define('_AM_AUTHKEY_STATS_API_TYPE', 'Next API Statistics to Occur Type: %s'); +define('_AM_AUTHKEY_STATS_API_NAME', 'Next API Statistics to Occur Name: %s'); +define('_AM_AUTHKEY_STATS_API_ENDING', 'When Next API Statistics is to Occur: %s'); +define('_AM_AUTHKEY_REPORT_KEY_TYPE', 'Next Key Reporting to Occur Type: %s'); +define('_AM_AUTHKEY_REPORT_KEY_NAME', 'Next Key Reporting to Occur Name: %s'); +define('_AM_AUTHKEY_REPORT_KEY_ENDING', 'When Next Key Reporting is to Occur: %s'); +define('_AM_AUTHKEY_REPORT_USER_TYPE', 'Next User Reporting to Occur Type: %s'); +define('_AM_AUTHKEY_REPORT_USER_NAME', 'Next User Reporting to Occur Name: %s'); +define('_AM_AUTHKEY_REPORT_USER_ENDING', 'When Next User Reporting is to Occur: %s'); +define('_AM_AUTHKEY_REPORT_API_TYPE', 'Next API Reporting to Occur Type: %s'); +define('_AM_AUTHKEY_REPORT_API_NAME', 'Next API Reporting to Occur Name: %s'); +define('_AM_AUTHKEY_REPORT_API_ENDING', 'When Next API Reporting is to Occur: %s'); +define('_AM_AUTHKEY_ENDING_KEY_STATS_WEEKLY', 'Number of Key Statistics Ending this Week: %s'); +define('_AM_AUTHKEY_ENDING_KEY_STATS_DAILY', 'Number of Key Statistics Ending Today: %s'); +define('_AM_AUTHKEY_ENDING_KEY_REPORTS_MONTHLY', 'Number of Key Reports Ending this Month: %s'); +define('_AM_AUTHKEY_ENDING_USER_STATS_WEEKLY', 'Number of User Statistics Ending this Week: %s'); +define('_AM_AUTHKEY_ENDING_USER_STATS_DAILY', 'Number of User Statistics Ending Today: %s'); +define('_AM_AUTHKEY_ENDING_USER_REPORTS_MONTHLY', 'Number of User Reports Ending this Month: %s'); +define('_AM_AUTHKEY_ENDING_API_STATS_WEEKLY', 'Number of API Statistics Ending this Week: %s'); +define('_AM_AUTHKEY_ENDING_API_STATS_DAILY', 'Number of API Statistics Ending Today: %s'); +define('_AM_AUTHKEY_ENDING_API_REPORTS_MONTHLY', 'Number of API Reports Ending this Month: %s'); ?> \ No newline at end of file Modified: XoopsModules/authkey/trunk/modules/authkey/language/english/modinfo.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/language/english/modinfo.php 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/language/english/modinfo.php 2018-06-29 09:09:55 UTC (rev 13380) @@ -36,6 +36,9 @@ define('_MI_AUTHKEY_PERIODICALLY_MONTH', 'Monthly'); define('_MI_AUTHKEY_PERIODICALLY_QUARTER', 'Quarterly'); define('_MI_AUTHKEY_PERIODICALLY_YEAR', 'Yearly'); + define('_MI_AUTHKEY_PERIODICALLY_HALFYEAR', '6 x Monthly'); + define('_MI_AUTHKEY_PERIODICALLY_FULLYEAR', '12 x Monthly'); + define('_MI_AUTHKEY_PERIODICALLY_BIANNUALLY', 'Biannually'); // Periodical Based Constants define('_MI_AUTHKEY_PERIODICAL_HOUR', 'Hour'); @@ -44,6 +47,9 @@ define('_MI_AUTHKEY_PERIODICAL_MONTH', 'Month'); define('_MI_AUTHKEY_PERIODICAL_QUARTER', 'Quarter'); define('_MI_AUTHKEY_PERIODICAL_YEAR', 'Year'); + define('_MI_AUTHKEY_PERIODICAL_HALFYEAR', '6 Months'); + define('_MI_AUTHKEY_PERIODICAL_FULLYEAR', '12 Months'); + define('_MI_AUTHKEY_PERIODICAL_BIANNUALLY', 'Biannual'); // Admin Menu define('_MI_AUTHKEY_ADMENU0','Dashboard'); @@ -71,7 +77,7 @@ define('_MI_AUTHKEY_DELETE_SECONDS','Deleting statistical data when it is!'); define('_MI_AUTHKEY_DELETE_SECONDS_DESC','This is how long statistics are kept in retention on the statistics tabling!'); define('_MI_AUTHKEY_AUTOGENERATED','Auto-generate users 1st Authentication Key'); - define('_MI_AUTHKEY_AUTOGENERATED_DESC','When this is enabled the module will periodically search for users with no authkey/xoopskey allocate and generate them one!'); + define('_MI_AUTHKEY_AUTOGENERATED_DESC','When this is enabled the module will periodically search for users with no authkey/xoopskey allocate and generate them one! <strong><em>Remember to activate this once you have set all your permissions + constraints!</em></strong>'); define('_MI_AUTHKEY_AUTOGENERATED_SECONDS','How often should we search for auto-generating 1st time authkeys'); define('_MI_AUTHKEY_AUTOGENERATED_SECONDS_DESC','This is the total amount of time between queuing for searching for unallocate users for an authkey/xoopskey!'); define('_MI_AUTHKEY_NUMBER_AUTOGENERATED','Number unallocated authkey/xoopskey users to generate'); @@ -179,12 +185,5 @@ define('_MI_AUTHKEY_PERM_EMAILOWNER12MONTHLY_DESC', 'Email Yearly Key Owner\'s *.csv Report'); define('_MI_AUTHKEY_PERM_EMAILOWNER24MONTHLY_DESC', 'Email Biannual Key Owner\'s *.csv Report'); - // MENUs - define('_MI_AUTHKEY_ADMENU0','Dashboard'); - define('_MI_AUTHKEY_ADMENU8','About XCentre'); - - // MENU ICONS?IMAGES - define('_MI_AUTHKEY_ADMENU0_ICON','../../Frameworks/moduleclasses/icons/32/home.png'); - define('_MI_AUTHKEY_ADMENU8_ICON','../../Frameworks/moduleclasses/icons/32/about.png'); ?> \ No newline at end of file Modified: XoopsModules/authkey/trunk/modules/authkey/xoops_version.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/xoops_version.php 2018-06-29 01:28:30 UTC (rev 13379) +++ XoopsModules/authkey/trunk/modules/authkey/xoops_version.php 2018-06-29 09:09:55 UTC (rev 13380) @@ -170,7 +170,7 @@ $modversion['config'][$i]['description'] = "_MI_AUTHKEY_AUTOGENERATED_DESC"; $modversion['config'][$i]['formtype'] = 'yesno'; $modversion['config'][$i]['valuetype'] = 'int'; -$modversion['config'][$i]['default'] = true; +$modversion['config'][$i]['default'] = false; $i++; $modversion['config'][$i]['name'] = 'auto-generate-seconds'; |
From: <chr...@us...> - 2018-06-29 01:28:35
|
Revision: 13379 http://sourceforge.net/p/xoops/svn/13379 Author: chronolabscoop Date: 2018-06-29 01:28:30 +0000 (Fri, 29 Jun 2018) Log Message: ----------- API's AuthKey/XoopsKey (prealpha) ~ almost there! Modified Paths: -------------- XoopsModules/authkey/trunk/modules/authkey/apis.php Modified: XoopsModules/authkey/trunk/modules/authkey/apis.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/apis.php 2018-06-29 01:26:22 UTC (rev 13378) +++ XoopsModules/authkey/trunk/modules/authkey/apis.php 2018-06-29 01:28:30 UTC (rev 13379) @@ -30,7 +30,7 @@ $xoopsOption['template_main'] = 'authkeys_apis.html'; require_once dirname(dirname(__DIR__)) . DIRECTORY_SEPARATOR . 'header.php'; -$GLOBALS['xoopsTpl']->assign('moddirname', basename(dirname(__DIR__))); +$GLOBALS['xoopsTpl']->assign('moddirname', basename(__DIR__)); $criteria = new Criteria('1', '1'); $criteria->setSort('`api-type` ASC, `api-http` ASC, `api-https`'); @@ -58,6 +58,10 @@ $GLOBALS['xoopsTpl']->append('apis', $apiarr); } +$GLOBALS['xoopsTpl']->assign('apis_count', xoops_getModuleHandler('apis', basename(__DIR__))->getCount($criteria)); +$GLOBALS['xoopsTpl']->assign('authkeys_module_version', $authkeyModule->getVar('version') / 100); +$GLOBALS['xoopsTpl']->assign('authkeys_module_namings', $authkeyModule->getVar('name')); + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . '/module/' . basename(__DIR__) . '/assets/css/style.css'); if (is_file(XOOPS_ROOT_PATH . '/module/' . basename(__DIR__) . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/style.css')) $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . '/module/' . basename(__DIR__) . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/style.css'); |
From: <chr...@us...> - 2018-06-29 01:26:32
|
Revision: 13378 http://sourceforge.net/p/xoops/svn/13378 Author: chronolabscoop Date: 2018-06-29 01:26:22 +0000 (Fri, 29 Jun 2018) Log Message: ----------- API's AuthKey/XoopsKey (prealpha) ~ almost there! Modified Paths: -------------- XoopsModules/authkey/trunk/modules/authkey/api/index.php XoopsModules/authkey/trunk/modules/authkey/apis.php XoopsModules/authkey/trunk/modules/authkey/class/apis.php XoopsModules/authkey/trunk/modules/authkey/class/keys.php XoopsModules/authkey/trunk/modules/authkey/class/users.php XoopsModules/authkey/trunk/modules/authkey/include/functions.php XoopsModules/authkey/trunk/modules/authkey/index.php XoopsModules/authkey/trunk/modules/authkey/language/english/main.php XoopsModules/authkey/trunk/modules/authkey/language/english/modinfo.php XoopsModules/authkey/trunk/modules/authkey/preloads/reports.php XoopsModules/authkey/trunk/modules/authkey/sql/mysql.sql XoopsModules/authkey/trunk/modules/authkey/templates/authkeys_apis.html XoopsModules/authkey/trunk/modules/authkey/xoops_version.php Added Paths: ----------- XoopsModules/authkey/trunk/modules/authkey/preloads/checking.php Modified: XoopsModules/authkey/trunk/modules/authkey/api/index.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/api/index.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/api/index.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -119,8 +119,8 @@ if (empty($return)) { $apisHandler = xoops_getModuleHandler('apis', basename(dirname(__DIR__))); - $criteria = new CriteriaCompo(new Criteria('`api-http`', $inner['api-url'], 'LIKE')); - $criteria->add(new Criteria('`api-https`', $inner['api-url'], 'LIKE'), 'OR'); + $criteria = new CriteriaCompo(new Criteria('`api-http`', $GLOBALS['xoopsDB']->escape($inner['api-url']), 'LIKE')); + $criteria->add(new Criteria('`api-https`', $GLOBALS['xoopsDB']->escape($inner['api-url']), 'LIKE'), 'OR'); if ($apisHandler->getCount($criteria)==0) $return = array('code' => 501, 'errors' => array(114 => 'Variable passed but not found on the with the api in the field element: "api-url" ~ "'.$inner['api-url'].'" not found on resource!')); else { @@ -197,7 +197,7 @@ $token[$api->getVar('api-type')][$inner['api-url']] = 1; $token['polling'] = $token['polling'] + 1; $token['polled-last'] = $token['polled']; - $token['polled'] = time() + $authkeyConfigsList['polling-seconds']; + $token['polled'] = time() + $GLOBALS['authkeyConfigsList']['polling-seconds']; XoopsCache::write("xoopskey_".md5($inner['xoopskey']), $token, 3600 * 24 * 7 * 4 * 36); $key = $keysHandler->get($token['id']); @@ -234,7 +234,7 @@ $token['polling'] = 0; $overlimit = false; - if ($authkeyConfigsList['limited']==true) + if ($GLOBALS['authkeyConfigsList']['limited']==true) { if ($key->getVar('limit-hour') < $key->getVar('calls-hour')) { @@ -352,13 +352,13 @@ $data = $key->getValues(array_keys($key->vars)); $data[$api->getVar('api-type')][$inner['api-url']] = 0; $data['polling'] = 0; - $data['polled'] = time() + $authkeyConfigsList['polling-seconds']; + $data['polled'] = time() + $GLOBALS['authkeyConfigsList']['polling-seconds']; XoopsCache::write("xoopskey_".md5($key->getVar('key')), $data, 3600 * 24 * 7 * 4 * 36); XoopsCache::write("xoopskey_".md5(md5($key->getVar('key'))), $data, 3600 * 24 * 7 * 4 * 36); XoopsCache::write("xoopskey_".md5(sha1($key->getVar('key'))), $data, 3600 * 24 * 7 * 4 * 36); } @$apisHandler->insert($api, true); - if ($authkeyConfigsList['limited'] == true && $overlimit == true && !authkeys_checkperm(_MI_AUTHKEY_PERM_UNLIMITEDCALLS, $key->getVar('id'), $key->getVar('uid')) == false) + if ($GLOBALS['authkeyConfigsList']['limited'] == true && $overlimit == true && !authkeys_checkperm(_MI_AUTHKEY_PERM_UNLIMITEDCALLS, $key->getVar('id'), $key->getVar('uid')) == false) $return = array('code'=>501, 'passed' => false, 'errors' => array(110 => 'Over Limit of Calling Polls to API\'s')); } } Modified: XoopsModules/authkey/trunk/modules/authkey/apis.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/apis.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/apis.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -21,15 +21,47 @@ require_once __DIR__ . DIRECTORY_SEPARATOR . 'header.php'; -$xoopsOption['template_main'] = 'authkeys_key.html'; +if ($GLOBALS['authkeyConfigsList']['htaccess']) + if (strpos($_SERVER['REQUEST_URI'], 'odules/')>0) { + header('HTTP/1.1 301 Moved Permanently'); + header('Location: ' . XOOPS_URL . '/' . $GLOBALS['authkeyConfigsList']['baseurl'] . '/apis' . $GLOBALS['authkeyConfigsList']['endofurl']); + exit(0); + } + +$xoopsOption['template_main'] = 'authkeys_apis.html'; require_once dirname(dirname(__DIR__)) . DIRECTORY_SEPARATOR . 'header.php'; +$GLOBALS['xoopsTpl']->assign('moddirname', basename(dirname(__DIR__))); -$GLOBALS['xoopsTpl']->assign('authkeys_module_version', $authkeyModule->getVar('version')); -$GLOBALS['xoopsTpl']->assign('authkeys_module_namings', $authkeyModule->getVar('name')); +$criteria = new Criteria('1', '1'); +$criteria->setSort('`api-type` ASC, `api-http` ASC, `api-https`'); +$criteria->setOrder('ASC'); -$GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . '/module/' . basename(dirname(__DIR__)) . '/assets/css/api-style.css'); -if (is_file(XOOPS_ROOT_PATH . '/module/' . basename(dirname(__DIR__)) . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/style.css')) - $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . '/module/' . basename(dirname(__DIR__)) . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/style.css'); - else - $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . '/module/' . basename(dirname(__DIR__)) . '/language/english/style.css'); - \ No newline at end of file +foreach(xoops_getModuleHandler('apis', basename(__DIR__))->getObjects($criteria) as $api) +{ + $apiarr = array(); + foreach($api->getValues(array_keys($api->vars)) as $field => $value) + { + if (substr($field, 0, 5) == 'calls') { + $apiarr[str_replace("-", "_", $field)] = number_format($value, 0); + } elseif (in_array($field, array('online', 'offline'))) { + if ($value = $api->getVar('status')) + $apiarr[str_replace("-", "_", $field)] = authkey_getTimePeriod($value + (time() - $api->getVar('checked'))); + else + $apiarr[str_replace("-", "_", $field)] = authkey_getTimePeriod($value); + } elseif (in_array($field, array('stats-hour', 'stats-day', 'stats-week', 'stats-month', 'stats-quarter', 'stats-year', 'report-month', 'report-quarter', 'report-year', 'report-biannual', 'created', 'checked', 'checking', 'emailed'))) { + $apiarr[str_replace("-", "_", $field)] = date("Y/m/d H:i:s", $value); + } else { + $apiarr[str_replace("-", "_", $field)] = $value; + } + } + $apiarr['url'] = $api->getVar('api-'.$api->getVar('mode')); + $GLOBALS['xoopsTpl']->append('apis', $apiarr); +} + +$GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . '/module/' . basename(__DIR__) . '/assets/css/style.css'); +if (is_file(XOOPS_ROOT_PATH . '/module/' . basename(__DIR__) . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/style.css')) + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . '/module/' . basename(__DIR__) . '/language/' . $GLOBALS['xoopsConfig']['language'] . '/style.css'); +else + $GLOBALS['xoTheme']->addStylesheet(XOOPS_URL . '/module/' . basename(__DIR__) . '/language/english/style.css'); + +require_once dirname(dirname(__DIR__)) . DIRECTORY_SEPARATOR . 'footer.php'; \ No newline at end of file Modified: XoopsModules/authkey/trunk/modules/authkey/class/apis.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/class/apis.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/class/apis.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -60,9 +60,9 @@ $this->initVar('stats-month', XOBJ_DTYPE_INT, null, false); $this->initVar('stats-quarter', XOBJ_DTYPE_INT, null, false); $this->initVar('stats-year', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-month', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-quarter', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-year', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-monthly', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-halfyear', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-fullyear', XOBJ_DTYPE_INT, null, false); $this->initVar('report-biannual', XOBJ_DTYPE_INT, null, false); $this->initVar('created', XOBJ_DTYPE_INT, null, false); $this->initVar('emailed', XOBJ_DTYPE_INT, null, false); @@ -91,19 +91,20 @@ if (!$read = XoopsCache::read('xoopskeys_apis')) { - $csv = array_map('str_getcsv', getURIData($this->_csv_resources, 120, 120)); + $csv = array_map('str_getcsv', file($this->_csv_resources)); array_walk($csv, function(&$a) use ($csv) { $a = array_combine($csv[0], $a); }); array_shift($csv); - + foreach($csv as $line => $values) { - $criteria = new CriteriaCompo(new Criteria('`api-http`', $values['API HTTP'])); - $criteria->add(new Criteria('`api-https`', $values['API HTTPS'])); - $criteria->add(new Criteria('`api-type`', $values['API Type'])); + $criteria = new CriteriaCompo(new Criteria('`api-http`', $this->db->escape($values['API HTTP']))); + $criteria->add(new Criteria('`api-https`', $this->db->escape($values['API HTTPS']))); + $criteria->add(new Criteria('`api-type`', $this->db->escape($values['API Type']))); - if ($this->count($criteria) == 0 && ((isset($values['API Authenticate Write'])?$values['API Authenticate Write']:$values['API Authicate Write']) == 'xoopskey' || (isset($values['API Authenticate Read'])?$values['API Authenticate Read']:$values['API Authicate Read']) == 'xoopskey')) + + if ($this->getCount($criteria) == 0 && ((isset($values['API Authenticate Write'])?$values['API Authenticate Write']:$values['API Authicate Write']) == 'xoopskey' || (isset($values['API Authenticate Read'])?$values['API Authenticate Read']:$values['API Authicate Read']) == 'xoopskey')) { $object = $this->create(); $object->setVar('api-name', $values['API Name']); @@ -119,7 +120,7 @@ $object->setVar('checked', time() + mt_rand(1800, 3600*mt_rand(2,7))); $object->setVar('checking', $object->getVar('checked')); @$this->insert($object, true); - } elseif ($this->count($criteria) != 0) { + } elseif ($this->getCount($criteria) != 0) { $objects = $this->getObjects($criteria); if (!empty($objects[0])) { Modified: XoopsModules/authkey/trunk/modules/authkey/class/keys.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/class/keys.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/class/keys.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -65,9 +65,9 @@ $this->initVar('stats-month', XOBJ_DTYPE_INT, null, false); $this->initVar('stats-quarter', XOBJ_DTYPE_INT, null, false); $this->initVar('stats-year', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-month', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-quarter', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-year', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-monthly', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-halfyear', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-fullyear', XOBJ_DTYPE_INT, null, false); $this->initVar('report-biannual', XOBJ_DTYPE_INT, null, false); $this->initVar('created', XOBJ_DTYPE_INT, null, false); $this->initVar('issuing', XOBJ_DTYPE_INT, null, false); @@ -206,7 +206,7 @@ $mailer->setFromEmail($GLOBALS['xoopsConfig']['adminemail']); $mailer->setFromName($GLOBALS['xoopsConfig']['sitename']); - $mailer->assign('APIS', xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->getAPIsText()); + $mailer->assign('APIS', xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->getAPIsText("\t * ")); $mailer->assign('KEY', $object->getVar('key')); $mailer->assign('MD5KEY', md5($object->getVar('key'))); $mailer->assign('SHA1KEY', sha1($object->getVar('key'))); Modified: XoopsModules/authkey/trunk/modules/authkey/class/users.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/class/users.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/class/users.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -59,9 +59,9 @@ $this->initVar('stats-month', XOBJ_DTYPE_INT, null, false); $this->initVar('stats-quarter', XOBJ_DTYPE_INT, null, false); $this->initVar('stats-year', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-month', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-quarter', XOBJ_DTYPE_INT, null, false); - $this->initVar('report-year', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-monthly', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-halfyear', XOBJ_DTYPE_INT, null, false); + $this->initVar('report-fullyear', XOBJ_DTYPE_INT, null, false); $this->initVar('report-biannual', XOBJ_DTYPE_INT, null, false); $this->initVar('created', XOBJ_DTYPE_INT, null, false); $this->initVar('emailed', XOBJ_DTYPE_INT, null, false); Modified: XoopsModules/authkey/trunk/modules/authkey/include/functions.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/include/functions.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/include/functions.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -20,6 +20,54 @@ require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'class' . DIRECTORY_SEPARATOR . 'xcp' . DIRECTORY_SEPARATOR . 'xcp.class.php'; + +if (!function_exists("authkey_getTimePeriod")) { + + /* function eightbit_loadConfig() + * + * Converts Seconds to Staggered United Display + * + * @author Simon Roberts (Chronolabs) si...@la... + * + * @return array() + */ + function authkey_getTimePeriod($seconds = 0) + { + $result = array(); + $months = 3600 * 24 * 7 * 4; + $weeks = 3600 * 24 * 7; + $days = 3600 * 24; + $hours = 3600; + $minutes = 3600 / 60; + $seconds = 60; + if (floor($seconds / $months) != 0) { + $result[] = floor($seconds / $months) . 'mth'; + $seconds = $seconds - (floor($seconds / $months) * $months); + } + if (floor($seconds / $weeks) != 0) { + $result[] = floor($seconds / $weeks) . 'wk'; + $seconds = $seconds - (floor($seconds / $weeks) * $weeks); + } + if (floor($seconds / $days) != 0) { + $result[] = floor($seconds / $days) . 'd'; + $seconds = $seconds - (floor($seconds / $days) * $days); + } + if (floor($seconds / $hours) != 0) { + $result[] = floor($seconds / $hours) . 'h'; + $seconds = $seconds - (floor($seconds / $hours) * $hours); + } + if (floor($seconds / $minutes) != 0) { + $result[] = floor($seconds / $minutes) . 'm'; + $seconds = $seconds - (floor($seconds / $minutes) * $minutes); + } + if (floor($seconds) != 0) { + $result[] = floor($seconds) . 's'; + $seconds = $seconds - (floor($seconds)); + } + return implode(" ", $result); + } +} + function getHTMLForm($mode = '') { Modified: XoopsModules/authkey/trunk/modules/authkey/index.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/index.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/index.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -23,7 +23,7 @@ if (!is_object($GLOBALS['xoopsUser'])) { - redirect_header(XOOPS_URL . '/user.php', 8, _MN_AUTHKEY_LOGINREQUIRED); + require_once __DIR__ . DS . 'apis.php'; exit(0); } @@ -36,7 +36,7 @@ $xoopsOption['template_main'] = 'authkeys_index.html'; require_once dirname(dirname(__DIR__)) . DIRECTORY_SEPARATOR . 'header.php'; -$GLOBALS['xoopsTpl']->assign('moddirname', basename(dirname(__DIR__))); +$GLOBALS['xoopsTpl']->assign('moddirname', basename(__DIR__)); $criteria = new Criteria('uid', $GLOBALS['xoopsUser']->getVar('uid')); $criteria->setSort('`title` ASC, `name` ASC, `company`'); @@ -47,7 +47,7 @@ $keyarr = array(); foreach($key->getValues(array_keys($key->vars)) as $field => $value) { - if (substr($field, 0, 5) == 'calls' || substr($field, 0, 5) == 'limit' ) { + if (substr($field, 0, 5) == 'calls' || substr($field, 0, 5) == 'limit' || substr($field, 0, 5) == 'overs') { $keyarr[str_replace("-", "_", $field)] = number_format($value, 0); } elseif (in_array($field, array('stats-hour', 'stats-day', 'stats-week', 'stats-month', 'stats-quarter', 'stats-year', 'report-month', 'report-quarter', 'report-year', 'report-biannual', 'created', 'issuing', 'quoting', 'emailed'))) { $keyarr[str_replace("-", "_", $field)] = date("Y/m/d H:i:s", $value); Modified: XoopsModules/authkey/trunk/modules/authkey/language/english/main.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/language/english/main.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/language/english/main.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -33,4 +33,22 @@ define('_MN_AUTHKEY_INDEX_TDE', 'Weekly Pollings'); define('_MN_AUTHKEY_INDEX_TDF', 'Monthly Pollings'); define('_MN_AUTHKEY_INDEX_TDG', 'Actions'); + +// apis.html - language constants +define('_MN_AUTHKEY_APIS_PA', 'Below is the listing of the api\'s that require the XoopsKey/Authkey and there status online as well as a few other statistics!'); +define('_MN_AUTHKEY_APIS_H2A', 'API\'s Requiring Key\'s'); + +//table headers +define('_MN_AUTHKEY_APIS_TDA', 'Icon'); +define('_MN_AUTHKEY_APIS_TDB', 'Name'); +define('_MN_AUTHKEY_APIS_TDC', 'URL'); +define('_MN_AUTHKEY_APIS_TDD', 'Status'); +define('_MN_AUTHKEY_APIS_TDE', 'Write Permission'); +define('_MN_AUTHKEY_APIS_TDF', 'Read Permission'); +define('_MN_AUTHKEY_APIS_TDG', 'API Uptime'); +define('_MN_AUTHKEY_APIS_TDH', 'API Downtime'); +define('_MN_AUTHKEY_APIS_TDI', 'Calls Today'); +define('_MN_AUTHKEY_APIS_TDJ', 'Today Ends'); +define('_MN_AUTHKEY_APIS_TDK', 'Calls this Month'); +define('_MN_AUTHKEY_APIS_TDL', 'Month Ends'); ?> \ No newline at end of file Modified: XoopsModules/authkey/trunk/modules/authkey/language/english/modinfo.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/language/english/modinfo.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/language/english/modinfo.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -61,9 +61,11 @@ define('_MI_AUTHKEY_ADMENU4_ICON','assets/images/32x32/about.png'); define('_MI_AUTHKEY_ADMENU5_ICON','assets/images/32x32/exec.png'); - // LANGUAGE DESCRIPTIONS + // LANGUAGE DESCRIPTIONS define('_MI_AUTHKEY_API_REPORTING','Send API Overall Reports to these groups!'); define('_MI_AUTHKEY_API_REPORTING_DESC','The API Reports will be sent to these groups when they are made monthly, 6 monthly, yearly or biannually!'); + define('_MI_AUTHKEY_MINUMUM_LINES','Minimum lines of data sent in *.csv report'); + define('_MI_AUTHKEY_MINUMUM_LINES_DESC','This is the minimum lines of data that have to exist in a report to be sent to API, User or Owner Reports!'); define('_MI_AUTHKEY_TMP_PATH','Temporary Write Path'); define('_MI_AUTHKEY_TMP_PATH_DESC','This is the full path to your temporary write path'); define('_MI_AUTHKEY_DELETE_SECONDS','Deleting statistical data when it is!'); Added: XoopsModules/authkey/trunk/modules/authkey/preloads/checking.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/preloads/checking.php (rev 0) +++ XoopsModules/authkey/trunk/modules/authkey/preloads/checking.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -0,0 +1,91 @@ +<?php +/** + * Authkey API Authentication Keys for xoops.org + * + * You may not change or alter any portion of this comment or credits + * of supporting developers from this source code or any supporting source code + * which is considered copyrighted (c) material of the original comment or credit authors. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * @copyright (c) 2000-2019 Chronolabs Cooperative (8Bit.snails.email) + * @license GNU GPL 2 (http://www.gnu.org/licenses/gpl-2.0.html) + * @package authkey + * @since 1.0.7 + * @author Simon Antony Roberts <wis...@us...> + * @link https://sourceforge.net/p/xoops/svn/HEAD/tree/XoopsModules/authkey + */ + + + + +/** + * Profile core preloads + * + * @copyright (c) 2000-2016 XOOPS Project (www.xoops.org) + * @license GNU GPL 2 (http://www.gnu.org/licenses/gpl-2.0.html) + * @author trabis <lus...@gm...> + */ +class AuthkeyCheckingPreload extends XoopsPreloadItem +{ + + /** + * @param $args + */ + public static function eventCoreIncludeCommonEnd($args) + { + xoops_loadLanguage('modinfo', basename(dirname(__DIR__))); + xoops_load('XoopsCache'); + + global $authkeyModule, $authkeyConfigsList, $authkeyConfigs, $authkeyConfigsOptions; + require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'header.php'; + + if (!$rtt = XoopsCache::read('authkey_checking')) + { + $criteria = new CriteriaCompo(new Criteria('`checking`', time(), "<=")); + foreach(xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->getObjects($criteria) as $api) + { + $status = $api->getVar('status'); + $json = json_decode(getURLData($api->getVar('api-https') . '/' . $api->getVar('api-version') . '/test.api', 30, 30)); + if (isset($json['api-type']) && !empty($json['api-type']) && $json['api-type'] == $api->getVar('api-type')) + { + $api->setVar('mode', 'https'); + $api->setVar('status', 'online'); + if ($status == 'offline') + $api->setVar('online', 0); + else + $api->setVar('online', $api->getVar('online') + $api->getVar('checking') - $api->getVar('checked')); + $api->setVar('checked', $api->getVar('checking')); + $api->setVar('checking', time() + (3600 * mt_rand(8, 24))); + @xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->insert($api, true); + } else { + $json = json_decode(getURLData($api->getVar('api-http') . '/' . $api->getVar('api-version') . '/test.api', 30, 30)); + if (isset($json['api-type']) && !empty($json['api-type']) && $json['api-type'] == $api->getVar('api-type')) + { + $api->setVar('mode', 'http'); + $api->setVar('status', 'online'); + if ($status == 'offline') + $api->setVar('online', 0); + else + $api->setVar('online', $api->getVar('online') + $api->getVar('checking') - $api->getVar('checked')); + $api->setVar('checked', $api->getVar('checking')); + $api->setVar('checking', time() + (3600 * mt_rand(8, 24))); + @xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->insert($api, true); + } else { + $api->setVar('mode', 'http'); + $api->setVar('status', 'offline'); + if ($status == 'online') + $api->setVar('offline', 0); + else + $api->setVar('offline', $api->getVar('offline') + $api->getVar('checking') - $api->getVar('checked')); + $api->setVar('checked', $api->getVar('checking')); + $api->setVar('checking', time() + (3600 * mt_rand(2, 7))); + @xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->insert($api, true); + } + } + } + XoopsCache::write('authkey_checking', array('time'=>time()), $authkeyConfigsList['preload-seconds']); + } + } +} Property changes on: XoopsModules/authkey/trunk/modules/authkey/preloads/checking.php ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Modified: XoopsModules/authkey/trunk/modules/authkey/preloads/reports.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/preloads/reports.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/preloads/reports.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -27,7 +27,7 @@ * @license GNU GPL 2 (http://www.gnu.org/licenses/gpl-2.0.html) * @author trabis <lus...@gm...> */ -class AuthkeyPollingPreload extends XoopsPreloadItem +class AuthkeyReportsPreload extends XoopsPreloadItem { /** @@ -41,7 +41,7 @@ global $authkeyModule, $authkeyConfigsList, $authkeyConfigs, $authkeyConfigsOptions; require_once dirname(__DIR__) . DIRECTORY_SEPARATOR . 'header.php'; - if (!$rtt = XoopsCache::read('authkey_polling')) + if (!$rtt = XoopsCache::read('authkey_reporting')) { $criteria = new CriteriaCompo(new Criteria('`stats-hour`', time(), "<="), 'OR'); $criteria->add(new Criteria('`stats-day`', time(), "<="), 'OR'); @@ -51,145 +51,9 @@ $criteria->add(new Criteria('`stats-year`', time(), "<="), 'OR'); foreach(xoops_getModuleHandler('keys', basename(dirname(__DIR__)))->getObjects($criteria) as $key) { - if ($key->getVar('stats-hour') <= time()) - $key->setVar('stats-hour', time() + (3600)); - if ($key->getVar('stats-day') <= time()) - $key->setVar('stats-day', time() + (3600 * 24)); - if ($key->getVar('stats-week') <= time()) - $key->setVar('stats-week', time() + (3600 * 24 * 7)); - if ($key->getVar('stats-month') <= time()) - $key->setVar('stats-month', time() + (3600 * 24 * 7 * 4)); - if ($key->getVar('stats-quarter') <= time()) - $key->setVar('stats-quarter', time() + (3600 * 24 * 7 * 4 * 3)); - if ($key->getVar('stats-year') <= time()) - $key->setVar('stats-year', time() + (3600 * 24 * 7 * 4 * 12)); - - $user = xoops_getModuleHandler('users', basename(dirname(__DIR__)))->get($key->getVar('uid')); - if ($user->getVar('stats-hour') <= time()) - $user->setVar('stats-hour', time() + (3600)); - if ($user->getVar('stats-day') <= time()) - $user->setVar('stats-day', time() + (3600 * 24)); - if ($user->getVar('stats-week') <= time()) - $user->setVar('stats-week', time() + (3600 * 24 * 7)); - if ($user->getVar('stats-month') <= time()) - $user->setVar('stats-month', time() + (3600 * 24 * 7 * 4)); - if ($user->getVar('stats-quarter') <= time()) - $user->setVar('stats-quarter', time() + (3600 * 24 * 7 * 4 * 3)); - if ($user->getVar('stats-year') <= time()) - $user->setVar('stats-year', time() + (3600 * 24 * 7 * 4 * 12)); - - foreach(array(md5($key->getVar('key')), md5(md5($key->getVar('key'))), md5(sha1($key->getVar('key')))) as $keyy) { - if ($token = XoopsCache::read("xoopskey_".$keyy)) { - - foreach(xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->getURLSArray() as $apitype => $urls) - foreach($urls as $apiurl => $apiname) - if (isset($token[$apitype][$apiurl]) && !empty($token[$apitype][$apiurl])) - { - $criteria = new CriteriaCompo(new Criteria('`api-http`', $apiurl, 'LIKE')); - $criteria->add(new Criteria('`api-https`', $apiurl, 'LIKE'), 'OR'); - $criteria->add(new Criteria('`api-type`', $apitype, 'LIKE'), 'AND'); - $apis = xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->getObjects($criteria); - if (!empty($apis[0])) - { - $apis[0]->setVar('calls-hour', $apis[0]->getVar('calls-hour') + $token[$apitype][$apiurl]); - $apis[0]->setVar('calls-day', $apis[0]->getVar('calls-day') + $token[$apitype][$apiurl]); - $apis[0]->setVar('calls-week', $apis[0]->getVar('calls-week') + $token[$apitype][$apiurl]); - $apis[0]->setVar('calls-month', $apis[0]->getVar('calls-month') + $token[$apitype][$apiurl]); - $apis[0]->setVar('calls-quarter', $apis[0]->getVar('calls-quarter') + $token[$apitype][$apiurl]); - $apis[0]->setVar('calls-year', $apis[0]->getVar('calls-year') + $token[$apitype][$apiurl]); - if (xoops_getModuleHandler('apis', basename(dirname(__DIR__)))->insert($apis[0], true)) - $token[$apitype][$apiurl] = 0; - } - } - - $key->setVar('calls-hour', $key->getVar('calls-hour') + $token['polling']); - $key->setVar('calls-day', $key->getVar('calls-day') + $token['polling']); - $key->setVar('calls-week', $key->getVar('calls-week') + $token['polling']); - $key->setVar('calls-month', $key->getVar('calls-month') + $token['polling']); - $key->setVar('calls-quarter', $key->getVar('calls-quarter') + $token['polling']); - $key->setVar('calls-year', $key->getVar('calls-year') + $token['polling']); - - $user->setVar('calls-hour', $user->getVar('calls-hour') + $token['polling']); - $user->setVar('calls-day', $user->getVar('calls-day') + $token['polling']); - $user->setVar('calls-week', $user->getVar('calls-week') + $token['polling']); - $user->setVar('calls-month', $user->getVar('calls-month') + $token['polling']); - $user->setVar('calls-quarter', $user->getVar('calls-quarter') + $token['polling']); - $user->setVar('calls-year', $user->getVar('calls-year') + $token['polling']); - - $token['polling'] = 0; - - $overlimit = false; - if ($authkeyConfigsList['limited']==true) - { - if ($key->getVar('limit-hour') < $key->getVar('calls-hour')) - { - $overlimit = true; - $key->setVar('overs-hour', $key->getVar('calls-hour') - $key->getVar('limit-hour')); - } - if ($key->getVar('limit-day') < $key->getVar('calls-day')) - { - $overlimit = true; - $key->setVar('overs-day', $key->getVar('calls-day') - $key->getVar('limit-day')); - } - if ($key->getVar('limit-week') < $key->getVar('calls-week')) - { - $overlimit = true; - $key->setVar('overs-week', $key->getVar('calls-week') - $key->getVar('limit-week')); - } - if ($key->getVar('limit-month') < $key->getVar('calls-month')) - { - $overlimit = true; - $key->setVar('overs-month', $key->getVar('calls-month') - $key->getVar('limit-month')); - } - if ($key->getVar('limit-quarter') < $key->getVar('calls-quarter')) - { - $overlimit = true; - $key->setVar('overs-quarter', $key->getVar('calls-quarter') - $key->getVar('limit-quarter')); - } - if ($key->getVar('limit-year') < $key->getVar('calls-year')) - { - $overlimit = true; - $key->setVar('overs-year', $key->getVar('calls-year') - $key->getVar('limit-year')); - } - if ($user->getVar('limit-hour') < $user->getVar('calls-hour')) - { - $overlimit = true; - $user->setVar('overs-hour', $user->getVar('calls-hour') - $user->getVar('limit-hour')); - } - if ($user->getVar('limit-day') < $user->getVar('calls-day')) - { - $overlimit = true; - $user->setVar('overs-day', $user->getVar('calls-day') - $user->getVar('limit-day')); - } - if ($user->getVar('limit-week') < $user->getVar('calls-week')) - { - $overlimit = true; - $user->setVar('overs-week', $user->getVar('calls-week') - $user->getVar('limit-week')); - } - if ($user->getVar('limit-month') < $user->getVar('calls-month')) - { - $overlimit = true; - $user->setVar('overs-month', $user->getVar('calls-month') - $user->getVar('limit-month')); - } - if ($user->getVar('limit-quarter') < $user->getVar('calls-quarter')) - { - $overlimit = true; - $user->setVar('overs-quarter', $user->getVar('calls-quarter') - $user->getVar('limit-quarter')); - } - if ($user->getVar('limit-year') < $user->getVar('calls-year')) - { - $overlimit = true; - $user->setVar('overs-year', $user->getVar('calls-year') - $user->getVar('limit-year')); - } - } - - XoopsCache::write("xoopskey_".$keyy, $token, 3600 * 24 * 7 * 4 * 36); - } - } - @xoops_getModuleHandler('users', basename(dirname(__DIR__)))->insert($user, true); - @xoops_getModuleHandler('keys', basename(dirname(__DIR__)))->insert($key, true); } + XoopsCache::write('authkey_reporting', array('time'=>time()), $authkeyConfigsList['preload-seconds']); } - XoopsCache::write('authkey_polling', array('time'=>time()), $authkeyConfigsList['preload-seconds']); + } } Modified: XoopsModules/authkey/trunk/modules/authkey/sql/mysql.sql =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/sql/mysql.sql 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/sql/mysql.sql 2018-06-29 01:26:22 UTC (rev 13378) @@ -39,7 +39,7 @@ `emailed` INT(12) UNSIGNED NOT NULL DEFAULT '0', PRIMARY KEY (`id`), KEY `apitypestatus` (`api-type`,`status`), - KEY `search` (`api-name`,`api-type`,`api-version`,`api-http`,`api-https`), + KEY `search` (`api-name`,`api-type`,`api-version`,`api-http`,`api-https`) ) ENGINE=INNODB DEFAULT CHARSET=utf8; # Table structure for table authkey_keys Modified: XoopsModules/authkey/trunk/modules/authkey/templates/authkeys_apis.html =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/templates/authkeys_apis.html 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/templates/authkeys_apis.html 2018-06-29 01:26:22 UTC (rev 13378) @@ -1,39 +1,36 @@ <h1><{$authkeys_module_namings}> ~ v<{$authkeys_module_version}></h1> -<p><{$smarty.const._MN_AUTHKEY_INDEX_PA}></p> -<{if $authkeys_count == 0 || ($authkeys_count >= 1 && $allow_creating == true)}> -<h2><{$smarty.const._MN_AUTHKEY_INDEX_H2A}></h2> -<div style="margin-left: 17.1831%; margin-right: 17.1831%; margin-bottom: 25px; margin-top: 17px; font-size: 67%;"> - <div style="padding: 6px; border: 3px dashed black;"> - <{$authkeys_newkey_form}> - </div> -</div> -<{/if}> -<{if $authkeys_count > 0}> -<h2><{$smarty.const._MN_AUTHKEY_INDEX_H2B}></h2> +<p><{$smarty.const._MN_AUTHKEY_APIS_PA}></p> +<{if $apis_count > 0}> +<h2><{$smarty.const._MN_AUTHKEY_APIS_H2A}></h2> <table> <tr class='head'> - <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_INDEX_TDA}></td> - <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_INDEX_TDB}></td> - <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_INDEX_TDC}></td> - <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_INDEX_TDD}></td> - <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_INDEX_TDE}></td> - <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_INDEX_TDF}></td> - <td style='text-align: right;'><{$smarty.const._MN_AUTHKEY_INDEX_TDG}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDA}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDB}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDC}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDD}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDE}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDF}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDG}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDH}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDI}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDJ}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDK}></td> + <td style='text-align: center;'><{$smarty.const._MN_AUTHKEY_APIS_TDL}></td> </tr> - <{foreach from=$authkeys item=key}> + <{foreach from=$apis item=api}> <tr class='<{cycle values='even,odd'}>'> - <td style='text-align: center; font-weight: 700; width: auto !important;'><{$key.key}></td> - <td style='text-align: center; width: auto !important;'><{$key.title}></td> - <td style='text-align: center; width: auto !important;'><{$key.name}></td> - <td style='text-align: center; width: 125px !important;'><{$key.calls_day}> / <strong><{$key.limit_day}></strong><{if $key.overs_day > 0}> <font style='color: red; font-weight: 900;'>( <{$key.overs_day}> )</font><{/if}></td> - <td style='text-align: center; width: 125px !important;'><{$key.calls_week}> / <strong><{$key.limit_week}></strong><{if $key.overs_week > 0}> <font style='color: red; font-weight: 900;'>( <{$key.overs_week}> )</font><{/if}></td> - <td style='text-align: center; width: 125px !important;'><{$key.calls_month}> / <strong><{$key.limit_month}></strong><{if $key.overs_month > 0}> <font style='color: red; font-weight: 900;'>( <{$key.overs_month}> )</font><{/if}></td> - <td style='text-align: right; width: 120px !important;'> - <{if $allow_viewing}><a href="<{$xoops_url}>/modules/authkey/key.php?id=<{$key.id}>&op=view" ><img src="<{$xoops_url}>/modules/authkey/assets/images/16x16/view.png" /></a><{/if}> - <{if $allow_editing}><a href="<{$xoops_url}>/modules/authkey/key.php?id=<{$key.id}>&op=edit" ><img src="<{$xoops_url}>/modules/authkey/assets/images/16x16/edit.png" /></a><{/if}> - <{if $allow_reissued}><a href="<{$xoops_url}>/modules/authkey/key.php?id=<{$key.id}>&op=reissue" ><img src="<{$xoops_url}>/modules/authkey/assets/images/16x16/issue.png" /></a><{/if}> - <{if $allow_deleting}><a href="<{$xoops_url}>/modules/authkey/key.php?id=<{$key.id}>&op=delete" ><img src="<{$xoops_url}>/modules/authkey/assets/images/16x16/delete.png" /></a><{/if}> - </td> + <td style='text-align: center; width: 28px !important;'><img src="<{$api.api_icon}>" /></td> + <td style='text-align: center; width: auto !important;'><{$api.api_name}></td> + <td style='text-align: center; width: auto !important;'><a href="<{$api.url}>" target="_blank"><{$api.url}></a></td> + <td style='text-align: center; width: auto !important;'><{$api.status}></td> + <td style='text-align: center; width: 45px !important;'><{$api.api_write}></td> + <td style='text-align: center; width: 45px !important;'><{$api.api_read}></td> + <td style='text-align: center; width: 55px !important;'><{$api.online}></td> + <td style='text-align: center; width: 55px !important;'><{$api.offline}></td> + <td style='text-align: center; width: 75px !important;'><{$api.calls_day}></td> + <td style='text-align: center; width: 95px !important;'><{$api.stats_day}></td> + <td style='text-align: center; width: 75px !important;'><{$api.calls_month}></td> + <td style='text-align: center; width: 95px !important;'><{$api.stats_month}></td> </tr> <{/foreach}> </table> Modified: XoopsModules/authkey/trunk/modules/authkey/xoops_version.php =================================================================== --- XoopsModules/authkey/trunk/modules/authkey/xoops_version.php 2018-06-28 21:12:26 UTC (rev 13377) +++ XoopsModules/authkey/trunk/modules/authkey/xoops_version.php 2018-06-29 01:26:22 UTC (rev 13378) @@ -100,12 +100,12 @@ $modversion['templates'][$i]['description'] = 'authkeys migrate to token purchases'; // Module Submenus -$i=1; -$modversion['sub'][$i]['name'] = _MI_AUTHKEY_APIS; -$modversion['sub'][$i]['url'] = "apis.php"; - if (is_object($GLOBALS['xoopsUser'])) -{ +{ + $i=1; + $modversion['sub'][$i]['name'] = _MI_AUTHKEY_APIS; + $modversion['sub'][$i]['url'] = "apis.php"; + // Submenu Items $keys_handler =& xoops_getmodulehandler('keys', 'authkey'); $criteria = new CriteriaCompo(new Criteria('uid', $GLOBALS['xoopsUser']->getVar('uid'))); @@ -139,6 +139,15 @@ $modversion['config'][$i]['default'] = array(XOOPS_GROUP_ADMIN=>XOOPS_GROUP_ADMIN); $i++; +$modversion['config'][$i]['name'] = 'minimum-lines'; +$modversion['config'][$i]['title'] = "_MI_AUTHKEY_MINUMUM_LINES"; +$modversion['config'][$i]['description'] = "_MI_AUTHKEY_MINUMUM_LINES_DESC"; +$modversion['config'][$i]['formtype'] = 'select'; +$modversion['config'][$i]['valuetype'] = 'int'; +$modversion['config'][$i]['default'] = mt_rand(2, 6); +$modversion['config'][$i]['options'] = array('1 Line of Data' => 1, '2 Lines of Data' => 2, '3 Lines of Data' => 3, '4 Lines of Data' => 4, '5 Lines of Data' => 5, '6 Lines of Data' => 6, '7 Lines of Data' => 7, '8 Lines of Data' => 8, '9 Lines of Data' => 9, '10 Lines of Data' => 10); + +$i++; $modversion['config'][$i]['name'] = 'tmp-path'; $modversion['config'][$i]['title'] = "_MI_AUTHKEY_TMP_PATH"; $modversion['config'][$i]['description'] = "_MI_AUTHKEY_TMP_PATH_DESC"; |
From: <chr...@us...> - 2018-06-28 14:54:51
|
Revision: 13376 http://sourceforge.net/p/xoops/svn/13376 Author: chronolabscoop Date: 2018-06-28 14:54:49 +0000 (Thu, 28 Jun 2018) Log Message: ----------- Periodical Backup Work in progress xoopsauth/authkey! Added Paths: ----------- *.xoops.org (Subdomain APIs & Sites)/kitchen.xoops.org/ Removed Paths: ------------- *.xoops.org (Subdomain APIs & Sites)/releases.xoops.org/ |