1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-09-07 23:01:04 +02:00

Compare commits

...

1242 Commits

Author SHA1 Message Date
(no author)
7068d8b462 This commit was manufactured by cvs2svn to create tag
'release_3_0_B5'.

git-svn-id: file:///svn/phpbb/tags/release_3_0_B5@6949 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-28 17:00:03 +00:00
Dominik Dröscher
2b12afa025 forgot that one ...
git-svn-id: file:///svn/phpbb/trunk@6948 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-28 17:00:03 +00:00
Dominik Dröscher
f0cc122948 First bunch of changes for #5712
git-svn-id: file:///svn/phpbb/trunk@6947 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-28 16:46:26 +00:00
Meik Sievertsen
46bf79ec78 some important changes to let the update work. ;)
git-svn-id: file:///svn/phpbb/trunk@6946 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-28 15:37:11 +00:00
Meik Sievertsen
00aec3a339 oh my god... someone please slap me very hard for this.
git-svn-id: file:///svn/phpbb/trunk@6945 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-28 14:00:59 +00:00
Nils Adermann
eaef76a100 - ignore too short/too long search words [Bug #7438]
git-svn-id: file:///svn/phpbb/trunk@6944 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-28 13:43:46 +00:00
Meik Sievertsen
b4568af559 fixing a signature bug being there for more than two years [Bug #7436]
git-svn-id: file:///svn/phpbb/trunk@6943 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-28 13:09:50 +00:00
Jonathan Stanley
0df3802cfb Presentational (X)HTML tags makes Bertiezilla cire. Replaced examples with the semantically neutral "<span>" and styling them via inline CSS.
git-svn-id: file:///svn/phpbb/trunk@6942 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 18:33:26 +00:00
Nils Adermann
bda5255ed3 Display a note, that UTF-8 support in fulltext_mysql is not available with certain versins of PHP
git-svn-id: file:///svn/phpbb/trunk@6941 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 17:38:45 +00:00
Jonathan Stanley
6a4c01cdc3 SEPARATOR, not SEPERATOR... also "neutralised" variable naming as it's used elsewhere outside of pagination. :)
git-svn-id: file:///svn/phpbb/trunk@6940 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 17:21:20 +00:00
Meik Sievertsen
538ffb5bfb some very tiny adjustements.
git-svn-id: file:///svn/phpbb/trunk@6939 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 16:41:14 +00:00
Meik Sievertsen
3f53551fa8 look what david found...
git-svn-id: file:///svn/phpbb/trunk@6938 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 16:36:09 +00:00
Nils Adermann
84b87c7209 another oops
git-svn-id: file:///svn/phpbb/trunk@6937 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 16:24:32 +00:00
Nils Adermann
aa8ebc7bf3 - introducing read/unread images in the MCP, if you view something through the MCP it will not update the "read" status of a post/topic/forum [includes Bug #6796]
git-svn-id: file:///svn/phpbb/trunk@6936 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 16:04:58 +00:00
David M
14e209a487 - generate fewer opcodes, make a smaller cache, a bit more readable
git-svn-id: file:///svn/phpbb/trunk@6935 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 13:36:50 +00:00
Meik Sievertsen
3c5c5154ab #7424
- rebuild username_clean column due to changes in utf8_clean_string()


git-svn-id: file:///svn/phpbb/trunk@6934 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-27 12:30:54 +00:00
Nils Adermann
9ebe6b6b1f oops
git-svn-id: file:///svn/phpbb/trunk@6933 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-26 19:56:33 +00:00
Nils Adermann
5bb75c590d - allow underscores in CSS class names / ids
- remove control characters from clean strings, and map all space characters to ASCII space (\x20)


git-svn-id: file:///svn/phpbb/trunk@6932 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-26 18:15:17 +00:00
Meik Sievertsen
4274eb2a07 heh
git-svn-id: file:///svn/phpbb/trunk@6931 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-26 16:10:43 +00:00
Meik Sievertsen
ddddda47fb - fix some oddities (doubled spaces for example)
- changed the way make_forum_select() is returning the forum list - now including skipped forums but being disabled. This should make identifying the correct forum much more easier.
- Changed some permission namings based on suggestions by the community
- Tried to comply to the permission field ordering within the language files while displaying permission sets. Hopefully it's worth the additional processing time.
- Disable submit buttons after clicking for installation and conversions.


git-svn-id: file:///svn/phpbb/trunk@6930 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-26 16:09:51 +00:00
Nils Adermann
920fc0156d - correctly check custom class names [Bug #7206]
git-svn-id: file:///svn/phpbb/trunk@6929 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-25 23:28:57 +00:00
Dominik Dröscher
6651b34a1b #7230 and first part of #5706
git-svn-id: file:///svn/phpbb/trunk@6928 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-24 18:24:43 +00:00
Meik Sievertsen
01b491e8f5 - fix severe bug with email hash calculation
- fix bug in convertor not correctly converting config values


git-svn-id: file:///svn/phpbb/trunk@6927 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-24 17:19:35 +00:00
Meik Sievertsen
5f0b61065f unknown
git-svn-id: file:///svn/phpbb/trunk@6926 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-24 12:33:36 +00:00
Meik Sievertsen
9e5c25504e - added confirm box to ucp zebra (adding fried/foe)
- permission fixes for conversions
- use more appropiate error message within convertor if source tables could not be found
- other tiny fixes


git-svn-id: file:///svn/phpbb/trunk@6925 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-24 11:29:56 +00:00
Jonathan Stanley
180a5a243d #7150 ... part 3. As per http://www.phpbb.com/bugs/viewreport.php?b=7150#c15182 ... hopefully this works first time. RTL language (Arabic, Hebrew, etc) testers might was to have a gander using CVS and see if everything "works" as expected.
git-svn-id: file:///svn/phpbb/trunk@6924 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-24 02:04:16 +00:00
Jonathan Stanley
2a2814265d #7150 ... take 3
git-svn-id: file:///svn/phpbb/trunk@6923 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-24 02:02:25 +00:00
Jonathan Stanley
756907cbc6 #7114 ... blablabla
git-svn-id: file:///svn/phpbb/trunk@6922 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-24 00:58:45 +00:00
David M
f6aefc53b5 #7274
git-svn-id: file:///svn/phpbb/trunk@6921 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-22 17:06:50 +00:00
Meik Sievertsen
60d817416b fixing mcp bugs by introducing a new feature to check for loaded/accessible modules/modes. If the MCP module "logs" get disabled the quick mod tools on viewtopic still show a link to the logs, this will then lead to an error message. This is not fixable. The logs should be accessible to all moderators by default.
git-svn-id: file:///svn/phpbb/trunk@6920 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-22 17:05:23 +00:00
Dominik Dröscher
41d0347eb4 Well, why not.
git-svn-id: file:///svn/phpbb/trunk@6919 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-22 02:12:39 +00:00
Dominik Dröscher
d6584aeb88 #7246
git-svn-id: file:///svn/phpbb/trunk@6918 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-21 21:33:42 +00:00
Dominik Dröscher
cc0e43cedc #7320
git-svn-id: file:///svn/phpbb/trunk@6917 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-21 21:09:19 +00:00
Dominik Dröscher
097856f4a0 Some permission interface updates:
- checkbox now hidden by default, only shown when an advanced view is opened
- mark all and unmark all now available


git-svn-id: file:///svn/phpbb/trunk@6916 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-21 19:32:38 +00:00
Meik Sievertsen
576bb754e9 fixing some bugs, most being submitted grammatical/spelling errors.
git-svn-id: file:///svn/phpbb/trunk@6915 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-21 18:33:45 +00:00
Dominik Dröscher
61d4209aaf #7254
#7258
#7268
#7278
#7314


git-svn-id: file:///svn/phpbb/trunk@6914 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-21 17:32:26 +00:00
Nils Adermann
fcfe045307 sql_in_set only allows empty sets if the last parameter is set to true, otherwise it will throw an error message and a backtrace
git-svn-id: file:///svn/phpbb/trunk@6913 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-20 23:35:47 +00:00
Meik Sievertsen
31e546c5e4 - fixing some bugs
- removing utf8 characters from email files (has been discussed internally, you guys know why)
- making sure some opendir calls are checked before calling readdir.


git-svn-id: file:///svn/phpbb/trunk@6912 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-20 17:58:27 +00:00
David M
fae887b3a1 - tiny issue in display_forums() made is possible for get_moderators() to cache the same query twice
git-svn-id: file:///svn/phpbb/trunk@6911 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-20 16:33:19 +00:00
David M
9359939eb2 #7256
git-svn-id: file:///svn/phpbb/trunk@6910 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-20 04:20:18 +00:00
Jonathan Stanley
7e954145c4 #7150
Part 2... see: http://www.phpbb.com/bugs/viewreport.php?b=7150#c14962


git-svn-id: file:///svn/phpbb/trunk@6909 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-19 17:23:25 +00:00
Meik Sievertsen
84c3a073df some opendir/closedir fixes
git-svn-id: file:///svn/phpbb/trunk@6908 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-19 11:58:44 +00:00
Meik Sievertsen
2c4a82fdd3 #7248
git-svn-id: file:///svn/phpbb/trunk@6907 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-19 11:42:45 +00:00
Dominik Dröscher
bc553355d6 Some more permission updates
git-svn-id: file:///svn/phpbb/trunk@6906 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 16:57:46 +00:00
Meik Sievertsen
ff7686797a fixing some bugs
git-svn-id: file:///svn/phpbb/trunk@6905 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 14:41:13 +00:00
Dominik Dröscher
916c410044 The apply to selected items checkbox
git-svn-id: file:///svn/phpbb/trunk@6904 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 14:28:34 +00:00
Dominik Dröscher
1b1d9d2365 #7242
git-svn-id: file:///svn/phpbb/trunk@6903 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 14:27:00 +00:00
Dominik Dröscher
2af1a4ca6a This could help to make it work I guess ... :)
git-svn-id: file:///svn/phpbb/trunk@6902 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 13:08:36 +00:00
Dominik Dröscher
a034d24431 Hello new permission interface. Everyone please give it a proper welcome and test the beejesus out of it.
git-svn-id: file:///svn/phpbb/trunk@6901 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 12:52:38 +00:00
Meik Sievertsen
1b4bae94a0 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6900 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 10:24:35 +00:00
Meik Sievertsen
e6f685c25f fixing some bugs i introduced while fixing other bugs. :)
git-svn-id: file:///svn/phpbb/trunk@6899 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 10:00:39 +00:00
David M
a64caea9b6 - found a small bug in the list parser while working on another bug
git-svn-id: file:///svn/phpbb/trunk@6898 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 05:09:35 +00:00
David M
de07a9e0ad #7228
git-svn-id: file:///svn/phpbb/trunk@6897 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-18 04:25:11 +00:00
Dominik Dröscher
360dff8a47 #7220
git-svn-id: file:///svn/phpbb/trunk@6896 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-17 22:48:52 +00:00
Dominik Dröscher
a815c191a4 #7198 and some related issues
git-svn-id: file:///svn/phpbb/trunk@6895 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-17 19:41:52 +00:00
Meik Sievertsen
a841fe70a8 ok, handled some bugs... the most important being validate_username (the variable passed to validate_data([...]array('username', [...])) and updating group listings while doing relevant group actions. Oh, and PM icons are working now. :o
git-svn-id: file:///svn/phpbb/trunk@6894 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-17 18:41:49 +00:00
Dominik Dröscher
708113b790 #7092
#7088


git-svn-id: file:///svn/phpbb/trunk@6893 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-17 15:40:30 +00:00
David M
5d42587e56 #7156
git-svn-id: file:///svn/phpbb/trunk@6892 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-17 01:36:51 +00:00
Dominik Dröscher
f4263042d5 Forgot that one for #7110
git-svn-id: file:///svn/phpbb/trunk@6891 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-16 23:52:38 +00:00
Dominik Dröscher
07d7486389 #7110
git-svn-id: file:///svn/phpbb/trunk@6890 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-16 23:46:37 +00:00
Dominik Dröscher
348edb41d9 hmmm ...
git-svn-id: file:///svn/phpbb/trunk@6889 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-16 23:20:26 +00:00
Dominik Dröscher
18f64960cd #7120
- some consistency fixes


git-svn-id: file:///svn/phpbb/trunk@6888 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-16 13:02:37 +00:00
Jonathan Stanley
ce60114a71 #7150
git-svn-id: file:///svn/phpbb/trunk@6887 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-14 22:29:05 +00:00
Nils Adermann
e6421f9274 - solved a problem with magic urls inside brackets, and with bbcodes being treated as IPv6 addresses
- turn NOT IN () and IN () into 1=1 and 1=0 so the database will understand it, instead of throwing an error in sql_in_set [Bug #7118]
- some tiny fixes to fulltext_native


git-svn-id: file:///svn/phpbb/trunk@6886 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-13 22:32:03 +00:00
Dominik Dröscher
9372acd017 Remains from #6998
git-svn-id: file:///svn/phpbb/trunk@6885 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-11 13:37:41 +00:00
Dominik Dröscher
e133e4a727 #7036
git-svn-id: file:///svn/phpbb/trunk@6884 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-11 13:34:33 +00:00
Dominik Dröscher
09ed27b4aa #7032
git-svn-id: file:///svn/phpbb/trunk@6883 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-11 13:11:28 +00:00
Dominik Dröscher
bb5e17f40b Some cleanup. Be gone you outdated JS code!
git-svn-id: file:///svn/phpbb/trunk@6882 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-11 13:02:33 +00:00
David M
a0ff2c859d meh
git-svn-id: file:///svn/phpbb/trunk@6881 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-11 12:33:34 +00:00
David M
3a2a61baa4 #6772
- some other random things


git-svn-id: file:///svn/phpbb/trunk@6880 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-11 05:44:22 +00:00
David M
7c18792a6e #7034
git-svn-id: file:///svn/phpbb/trunk@6879 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-11 03:59:17 +00:00
Dominik Dröscher
0165b873ef Some remains from #6998
git-svn-id: file:///svn/phpbb/trunk@6878 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-11 01:01:26 +00:00
David M
eb56722d2f #6944
git-svn-id: file:///svn/phpbb/trunk@6877 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-10 21:20:18 +00:00
Jonathan Stanley
8e1adf93b6 pagination_sep is dead... removing the reference to it in the commented part.
git-svn-id: file:///svn/phpbb/trunk@6876 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-10 20:52:14 +00:00
Dominik Dröscher
96ac0fe0a2 #7006
git-svn-id: file:///svn/phpbb/trunk@6875 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-10 18:24:48 +00:00
Jonathan Stanley
2c4d3771ff Changed the example date from 2005-01-10T17:57Z to 2007-01-01T13:37Z to better illustrate the difference between "d" and "j" in the PHP date(). Also, since phpBB's language files tend towards formal, using "jS" (for 1st, 2nd, 3rd, etc) as opposed to just "s".
Translators should pick whatever appropiate set of date format codes for their own locale, since PHP* doesn't offer any number ordinal suffixes apart from English. :(

* PHP6.x probably will/could, though that's a long way of from being the _minimum_ required version for any current PHP app.


git-svn-id: file:///svn/phpbb/trunk@6874 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-10 18:13:04 +00:00
Meik Sievertsen
d46d56f956 hmm, no, this was not meant to go in
git-svn-id: file:///svn/phpbb/trunk@6873 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-10 16:54:27 +00:00
Meik Sievertsen
b621bb66c5 fix some general bugs and some convertor related
git-svn-id: file:///svn/phpbb/trunk@6872 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-10 16:47:16 +00:00
Dominik Dröscher
31ee257ab8 #6998
MY EYES, MY EYES ... did I ever mention that I hate tables that are abused for layout purposes?


git-svn-id: file:///svn/phpbb/trunk@6871 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-10 00:23:37 +00:00
Dominik Dröscher
c154f124f8 bullseye
git-svn-id: file:///svn/phpbb/trunk@6870 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-09 22:53:51 +00:00
Dominik Dröscher
216bf7e324 #6988
Nicely caught by Schumi


git-svn-id: file:///svn/phpbb/trunk@6869 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-09 22:03:49 +00:00
Dominik Dröscher
ccaae47b6c Just some minor thing I need
git-svn-id: file:///svn/phpbb/trunk@6868 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-09 20:46:57 +00:00
David M
289998c5e7 #6776
git-svn-id: file:///svn/phpbb/trunk@6867 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-09 20:16:06 +00:00
Dominik Dröscher
11300e3ceb Multiple and single recepients now work properly
git-svn-id: file:///svn/phpbb/trunk@6866 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-09 14:32:34 +00:00
Meik Sievertsen
2b35b9d60d - some bugfixes
- bugfixes for the convertor (typecasting for example was totally broken)


git-svn-id: file:///svn/phpbb/trunk@6865 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-09 14:10:44 +00:00
Dominik Dröscher
164fb66f44 #6098
"Find a member" now supports single clicks. Thanks for Highway of Life for helping out here. :)


git-svn-id: file:///svn/phpbb/trunk@6864 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-09 14:01:37 +00:00
David M
5cf6e00cf9 - installer now checks if the page size is correct for Firebird
- Firebird now has a proper explain page


git-svn-id: file:///svn/phpbb/trunk@6863 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-09 01:33:20 +00:00
Nils Adermann
27f915f305 - new homographs or IDN confusables ( http://www.unicode.org/reports/tr39/data/international.txt )
- also added character names to old homographs
- pagination_sep theme option removed, PAGINATION_SEPERATOR can be set in language files and the theme can overwrite it using span.page-sep [Bug #6872]


git-svn-id: file:///svn/phpbb/trunk@6862 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-08 21:14:49 +00:00
Meik Sievertsen
4be1329803 ups. :)
git-svn-id: file:///svn/phpbb/trunk@6861 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-08 17:19:56 +00:00
Meik Sievertsen
55b5e71411 - ok... first of all, let the forum names and descriptions being recoded correctly...
- fixed the php notices for a non-existant poster id. They were related to user signature conversion
- adjusted the topic_poster id; this should solve wrong user assignments for topic poster
- adjusted private message author; normally here some users should have encountered wrong ids.
- adjusted the batch sizes to support the usual 2.0.x target base - the old values were used for really huge conversions. :)
- commented out meta refresh for the time being - we will add a setting for this, some may want to sit in front, some may want to go away while converting (most likely when they did a test run before)


git-svn-id: file:///svn/phpbb/trunk@6860 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-08 16:47:16 +00:00
David M
b94a240d2f #6868
git-svn-id: file:///svn/phpbb/trunk@6859 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 20:34:41 +00:00
Meik Sievertsen
6f20a87425 ok, let's recode other text fields too...
git-svn-id: file:///svn/phpbb/trunk@6858 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 18:53:15 +00:00
David M
0ac5a3bdbe silly pants
git-svn-id: file:///svn/phpbb/trunk@6857 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 18:02:46 +00:00
David M
5474f1a0ae #6836
git-svn-id: file:///svn/phpbb/trunk@6856 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 17:45:19 +00:00
Meik Sievertsen
29ef0fdb86 erm...
git-svn-id: file:///svn/phpbb/trunk@6855 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 17:38:51 +00:00
Meik Sievertsen
8f4c3a1fee some fixes...
git-svn-id: file:///svn/phpbb/trunk@6854 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 17:25:47 +00:00
Meik Sievertsen
ec7936509a do not reset complete convert_row. :o
git-svn-id: file:///svn/phpbb/trunk@6853 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 16:27:26 +00:00
David M
8f0f2e1f0d #6828
git-svn-id: file:///svn/phpbb/trunk@6852 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 14:24:01 +00:00
Meik Sievertsen
3c352ba4ef - fix some convertor bugs.
- added support for the validated birthday mod and fixed the integration of nils' birthday mod


git-svn-id: file:///svn/phpbb/trunk@6851 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 14:08:47 +00:00
Meik Sievertsen
09ce0caad6 fix for bug #6728
git-svn-id: file:///svn/phpbb/trunk@6850 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 11:58:28 +00:00
David M
a643f85f6b - prefer ISO over CP as ISO is more common
- added TIS-620 and cp-1251


git-svn-id: file:///svn/phpbb/trunk@6849 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 04:24:08 +00:00
Nils Adermann
f3b5143682 - Treat system messages as ISO-8859-1 just like PHP does it
git-svn-id: file:///svn/phpbb/trunk@6848 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-07 00:44:15 +00:00
Meik Sievertsen
5d91d46384 what is this? is it a plane? is it super-grobi? no, it is the convertor...
git-svn-id: file:///svn/phpbb/trunk@6847 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-06 19:39:56 +00:00
Meik Sievertsen
48b76be50b tiny alterations
git-svn-id: file:///svn/phpbb/trunk@6846 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-06 19:37:09 +00:00
Meik Sievertsen
962be6ed09 recode_basic and recode_cjk (this one is most probably not within the full release but available seperatly due to it's sheer size) for converting to utf8
git-svn-id: file:///svn/phpbb/trunk@6845 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-06 19:23:23 +00:00
Meik Sievertsen
e1b549a967 - updated/new documents
git-svn-id: file:///svn/phpbb/trunk@6844 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-06 18:31:42 +00:00
Nils Adermann
ce13b9b996 - use constants no weird numbers ;-)
- solved problem with \w using UTF-8 search (fulltext_mysql) by using PCRE unicode character properties if available [Bug #5768]


git-svn-id: file:///svn/phpbb/trunk@6843 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-05 21:17:28 +00:00
Meik Sievertsen
77335d94e4 unique cookie name anyone?
git-svn-id: file:///svn/phpbb/trunk@6842 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-05 15:31:04 +00:00
Meik Sievertsen
94b50f1797 fix message length calculation for parsing bbcodes as well as saving some bytes of memory. ;)
git-svn-id: file:///svn/phpbb/trunk@6841 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-05 11:21:09 +00:00
Meik Sievertsen
e86c24a419 forgot to add true to the var_export function. :(
git-svn-id: file:///svn/phpbb/trunk@6840 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-05 09:30:46 +00:00
Meik Sievertsen
3a8c3971da - use var_export instead of our format_array function [Bug #6748]
- fix dumb error in column naming [Bug #6750]
- Make sure to catch some special conditions for cpf translation as well as correctly removing/adding default values on language installation/removing [Bug #6752]


git-svn-id: file:///svn/phpbb/trunk@6839 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-04 16:07:38 +00:00
Meik Sievertsen
fbef3990e7 #6746
git-svn-id: file:///svn/phpbb/trunk@6838 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-03 21:15:06 +00:00
Meik Sievertsen
6348898fd5 fix for bug #6742
git-svn-id: file:///svn/phpbb/trunk@6837 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-03 21:09:29 +00:00
Dominik Dröscher
2851b9ea80 #6712
- Posts in search results with empty subjects get a Jump to post message


git-svn-id: file:///svn/phpbb/trunk@6836 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-03 20:10:53 +00:00
Dominik Dröscher
826a045ddd #6120
- Making overall_header nicer for text-browsers


git-svn-id: file:///svn/phpbb/trunk@6835 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-03 19:43:21 +00:00
Dominik Dröscher
30c2aca53e #6214
git-svn-id: file:///svn/phpbb/trunk@6834 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-03 19:38:12 +00:00
Dominik Dröscher
a512cc0f2e #6282
- more logical tabindex


git-svn-id: file:///svn/phpbb/trunk@6833 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-03 19:30:30 +00:00
Nils Adermann
17a27175fd - allow login with redirect parameter
- altered URL regular expression so it won't cause problem with long URLs - PCRE >:( [Bug #6720]
- moderator list on index should have coloured groups in bold as everywhere else too
- correctly handle password requirements in UCP [Bug #6692]
- added soft-hyphen to utf8_clean_string(), if you know any more evil characters (or whitespace characters that are not in ASCII range) then tell me about them (bug report) ;-)


git-svn-id: file:///svn/phpbb/trunk@6832 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-03 18:58:19 +00:00
Meik Sievertsen
732ad23cd7 - removed download mode selection (the column info and constants will not be removed, we or others may be able to re-use them later on)
- removing extension from physical filename for uploaded attachments (as has been suggested some time ago from our community), can still be used by using the new 'unique_ext' mode on file cleaning
- fixed a bug with copying attachments if copying a topic
- made sure no attachment files get removed used at another location
- changed media player "embed" code. For some this may result in no auto-resizing - though a download link has been added.


git-svn-id: file:///svn/phpbb/trunk@6831 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-03 16:38:25 +00:00
Dominik Dröscher
1ca8081635 #6620
git-svn-id: file:///svn/phpbb/trunk@6830 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-02 16:51:09 +00:00
Meik Sievertsen
46c9da77a4 - do not allow setting the parent to currently assigned childs [Bug #6708]
- Allow the display_on_index setting to be specified for link forums [Bug #6660]
- Rank code in functions_display.php [Bug #6656]
- Added some new locations for the viewonline page [Related to bug #6484]
- Do not display attached images inline if user disabled image display in posts; the same with flash files [Bug #6226]


git-svn-id: file:///svn/phpbb/trunk@6829 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-02 16:35:48 +00:00
David M
1c32dcaeb1 meh
git-svn-id: file:///svn/phpbb/trunk@6828 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-01 19:01:24 +00:00
Meik Sievertsen
595bed3354 fix typo
git-svn-id: file:///svn/phpbb/trunk@6827 89ea8834-ac86-4346-8a33-228a782c2dd0
2007-01-01 12:56:14 +00:00
Meik Sievertsen
46f3bd40a8 - telling the admin for what the board contact and board email addresses are used for and also making sure this explanation is correct ;)
- fixes for bugs #6694, #6664 and #6662


git-svn-id: file:///svn/phpbb/trunk@6826 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-31 16:56:15 +00:00
Jonathan Stanley
54f79e200f #6666 - Diablo-Bertiezilla shall be vanquished!
git-svn-id: file:///svn/phpbb/trunk@6825 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-29 20:14:05 +00:00
David M
ca7f397cd4 - added GB2312 support, made things nicer :D
git-svn-id: file:///svn/phpbb/trunk@6824 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-29 07:12:47 +00:00
David M
8914025c39 #6646
git-svn-id: file:///svn/phpbb/trunk@6823 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-28 20:46:15 +00:00
Jonathan Stanley
2dfbf0da8e #6566
Switched the link to Google, dhn would be happy. :P phpBB.com hasn't allowed hotlinking in ages anyway... so it wouldn't have worked even if the link to the image was correct. :D


git-svn-id: file:///svn/phpbb/trunk@6822 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-28 20:26:22 +00:00
David M
7ed8dda36d hah! finally :D
git-svn-id: file:///svn/phpbb/trunk@6821 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-28 18:59:47 +00:00
Jonathan Stanley
0af60d92cc Farewell Asterix the Gaul. :P
#6616


git-svn-id: file:///svn/phpbb/trunk@6820 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-28 18:28:09 +00:00
Meik Sievertsen
cbb50049a5 - add return links to approve details [#6252]
- lets decide on input field or textarea based on the entry length in language pack management [#6280]


git-svn-id: file:///svn/phpbb/trunk@6819 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-28 17:28:28 +00:00
Meik Sievertsen
d6ef968a67 - made sure ranks are displayed correctly (used RANK instead of RANK_TITLE)
- #6630
- hide a few links from bots (forum/topic marking, memberlist, post/reply/quote/edit/etc. buttons) [#6354]
- #5698


git-svn-id: file:///svn/phpbb/trunk@6818 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-28 16:21:17 +00:00
David M
69ef685cde #6642
git-svn-id: file:///svn/phpbb/trunk@6817 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-28 14:27:19 +00:00
Meik Sievertsen
945afbc5fa Unused Code inside function update_forum_data [Bug #6606]
Copy permissions protection for groups [Bug #6594]
HTML issues in ACP [Bug #6580, #6578]
Always send the correct encoding [related to bug #6576]
Mass email fixes for first loop iteration [Bug #6570]
Extension groups to be allowed in PM's and/or Posts [Bug #6558]
Extension allowance checking clarified (no longer using forum id 0 for private messaging)
Using request_var() array method for some variables [Bug #6556]
Added confirmation for deletion of ranks/smilies/icons/word censores [Bug #6548, #6530, #6512, #6466]
Only show postable forums in dropdown list for moving posts on forum deletion as well as correct re-indexing [Bug #6510, #6476, #6384]
Jabber password being password field in jabber settings screen [Bug #6478]
user activity language variable if viewing not own profile [Bug #6432]
Show moderator group/user-name colour [Bug #6402]
Log rank creation/updating/removing [Bug #6398]
Update check permission changed from a_ to a_board [Bug #6392]


git-svn-id: file:///svn/phpbb/trunk@6816 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-27 17:43:55 +00:00
David M
b9da985180 #6600
git-svn-id: file:///svn/phpbb/trunk@6815 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-27 16:51:56 +00:00
Nils Adermann
b41365fcd4 - display search type as page title for premade searches [Bug #6508]
- flash enabled on user side by default, so that admins can actually change anything by activating it (still disabled by default)
- properly implemented password complexity check [Bug #6584]
- do not ldap_escape paramaters for the bind function [Bug #6208]
- deleted words in edited post subjects weren't getting there search cache refreshed [Bug #6288]
- made common word threshold configurable [Bug #6168]
- recreated word match table entries after installation, side effect of bug #6060
- option to only allow ASCII usernames
- adjusted search page pagination [Bug #6424]
- correctly calculate unformatted search result extract length


git-svn-id: file:///svn/phpbb/trunk@6814 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-27 00:06:39 +00:00
David M
677dc5d2e1 #6598
- should have fixed all uses of curly braces


git-svn-id: file:///svn/phpbb/trunk@6813 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-26 20:49:20 +00:00
David M
1d8e391d19 #6596
git-svn-id: file:///svn/phpbb/trunk@6812 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-26 13:56:50 +00:00
Jonathan Stanley
5225e5da5c FACKing BBCode FAQ. [attachment=] forever! :P Ho-ho-ho.
#6568


git-svn-id: file:///svn/phpbb/trunk@6811 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-25 17:48:25 +00:00
Jonathan Stanley
8135652345 #6564
git-svn-id: file:///svn/phpbb/trunk@6810 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-25 17:36:08 +00:00
Jonathan Stanley
0ea0a361ae Possessed about possessives... and re-titlecasing an ACP title. Ho-ho-ho.
git-svn-id: file:///svn/phpbb/trunk@6809 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-25 17:07:52 +00:00
Meik Sievertsen
fcc22ef2b0 show dropdown box for choosing the forum in user management screen -> permissions
git-svn-id: file:///svn/phpbb/trunk@6808 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-25 15:19:45 +00:00
David M
c428ca8f23 #6472
git-svn-id: file:///svn/phpbb/trunk@6807 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-24 21:05:08 +00:00
David M
fb4e1920fc #6372
git-svn-id: file:///svn/phpbb/trunk@6806 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-24 15:35:24 +00:00
David M
cbd1fb07ed sprintf
git-svn-id: file:///svn/phpbb/trunk@6805 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-24 14:34:26 +00:00
David M
f0129b6f27 #6542
git-svn-id: file:///svn/phpbb/trunk@6804 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-24 14:28:01 +00:00
Meik Sievertsen
ae1cb0316e some fixes today
- most important change is the consolidation of the display attachment functions; merging them together to have one function we need to call.


git-svn-id: file:///svn/phpbb/trunk@6803 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-24 13:11:54 +00:00
David M
9cc0b364bc #6206
git-svn-id: file:///svn/phpbb/trunk@6802 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-24 06:53:48 +00:00
David M
49b8060b0c #6504
git-svn-id: file:///svn/phpbb/trunk@6801 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-24 06:26:03 +00:00
David M
8e72037e67 #6414
git-svn-id: file:///svn/phpbb/trunk@6800 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-23 19:06:53 +00:00
David M
c4a7d13055 #6520
git-svn-id: file:///svn/phpbb/trunk@6797 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-23 18:49:38 +00:00
David M
0d502f3b07 - quite a few optimizations to the template engine. bitwise arithmatic is used to check odd/even, usage of ref to the root template variables should reduce the number of hash lookups needed, usage of refs within loops should reduce the amount of hash lookups, incrementing vars were turned from class variables to regular variables, cache now uses preincrementing variables instead of postincrementing variables, some regex were optimized/trimmed
- a bug fix somewhere in there...


git-svn-id: file:///svn/phpbb/trunk@6796 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-23 18:27:15 +00:00
Meik Sievertsen
3182317ef1 comment the version mapping more appropiatly.
git-svn-id: file:///svn/phpbb/trunk@6795 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-23 18:17:05 +00:00
David M
c0f64d360f regex man strikes again!
git-svn-id: file:///svn/phpbb/trunk@6794 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-23 17:56:50 +00:00
David M
6d0a00a446 #6492
git-svn-id: file:///svn/phpbb/trunk@6793 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-23 17:50:48 +00:00
Meik Sievertsen
9b6e76a808 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6792 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-23 10:49:46 +00:00
David M
7b86f3b9a8 #6502
git-svn-id: file:///svn/phpbb/trunk@6791 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-23 02:34:18 +00:00
Jonathan Stanley
803f64c724 Bertiezilla make Bertie-smash on language files!
#6244
#6278
#6284
#6286
#6336
#6340
#6342
#6344
#6346
#6352
#6358
#6364
#6376
#6382
#6386
#6388
#6418
#6420
#6426
#6428
#6430
#6434
#6452
#6454
#6458


git-svn-id: file:///svn/phpbb/trunk@6790 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-22 22:51:33 +00:00
Meik Sievertsen
e66429cba1 only tiny change
git-svn-id: file:///svn/phpbb/trunk@6789 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-22 16:34:00 +00:00
Jonathan Stanley
7dbef7096d Bertie does the Office 2007 dance!
git-svn-id: file:///svn/phpbb/trunk@6788 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-21 16:36:39 +00:00
Meik Sievertsen
515085a2a2 - some fixes
- important bugfix for the mcp and determining allowed ids in general (if global announcements are included)


git-svn-id: file:///svn/phpbb/trunk@6787 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-21 10:37:50 +00:00
David M
2e1eef2713 #6462, not a bug unless you run a version of PHP 5 that is less than 5.0.4...
git-svn-id: file:///svn/phpbb/trunk@6786 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-21 04:50:38 +00:00
David M
d9f3aed704 #6460, thanks to ToonArmy for the patch :D
- removed pregenerated template variables from the installer


git-svn-id: file:///svn/phpbb/trunk@6785 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-21 02:07:52 +00:00
David M
9e5819ac4c #6368, thanks to ToonArmy
git-svn-id: file:///svn/phpbb/trunk@6784 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-20 22:36:06 +00:00
David M
3503830c47 #6436, thanks ToonArmy for the patch :D
git-svn-id: file:///svn/phpbb/trunk@6783 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-19 23:48:32 +00:00
David M
c32156a616 don't mind me...
git-svn-id: file:///svn/phpbb/trunk@6782 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-19 02:37:36 +00:00
Meik Sievertsen
7ca8a4a662 - Modules are not added correctly [#6370]
- Minor bug in ucp_prefs_personal.html (Opera) [#6348]
- MCP-Warnings section colspan problem in Opera [#6338]
- Loading extensions on install [#6332]
- Adjust PM rules if folder removed [#6326]
- #6318
- Coppa registration [#6306]
- Quick-Mod Topic Type Changes Fail when Topic == Global [#6228]
- added the possibility to change topic type for more than one topic (within mcp)


git-svn-id: file:///svn/phpbb/trunk@6781 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-18 17:29:39 +00:00
David M
4e5466d276 #6328
git-svn-id: file:///svn/phpbb/trunk@6780 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-17 23:21:34 +00:00
David M
c1b5a3b328 - using the PHP_VERSION constant is faster
git-svn-id: file:///svn/phpbb/trunk@6779 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-17 18:17:10 +00:00
David M
f50d52588c - we need at least 4.3.3, "phpversion() < '4.3'" will always be false
git-svn-id: file:///svn/phpbb/trunk@6778 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-17 18:06:39 +00:00
David M
e84d85d88c - Changed handling of the bitfield in bbcode.php
- #6270, reverted to an earlier version of list handling + bug fixes


git-svn-id: file:///svn/phpbb/trunk@6777 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-17 17:59:08 +00:00
David M
f4c8c73a8b - exclude the IP of the post in the "other IP's" list
git-svn-id: file:///svn/phpbb/trunk@6776 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-17 16:11:48 +00:00
Nils Adermann
1e34820cd8 - Optimize acl_getf_global a bit
- a little performance improvement of the IP regular expressions
- convert post_text/subject collation to utf8_unicode_ci if a user wants to use mysql_fulltext to allow case insensitivity [Bug #6272]
- mysql_fulltext should alter all necessary columns at once to speed up the process
- validate URLs against RFC3986
- fixed some weirdness in make_clickable
I hope I didn't break any URLs with this commit, if I did then report it to the bugtracker please!


git-svn-id: file:///svn/phpbb/trunk@6774 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-16 20:24:34 +00:00
Meik Sievertsen
6938688e75 let set_config() calls success instead of fail if the config value already exist.
git-svn-id: file:///svn/phpbb/trunk@6773 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-16 13:16:22 +00:00
Meik Sievertsen
204187187d fix for bug #6140 (jabber not working)
git-svn-id: file:///svn/phpbb/trunk@6771 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-16 12:57:01 +00:00
Meik Sievertsen
2e4cd16058 - fixed bug within the database update script
- #6254
- #6242
- #6184
- #6160
- #6020


git-svn-id: file:///svn/phpbb/trunk@6770 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-15 14:54:52 +00:00
David M
11e70be6ed - remove some of my mess :P
git-svn-id: file:///svn/phpbb/trunk@6769 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-15 03:11:34 +00:00
David M
522d52efe4 - nobody found this bug :D
git-svn-id: file:///svn/phpbb/trunk@6768 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-15 03:06:57 +00:00
David M
c3a2557108 FALSE -> false
TRUE -> true


git-svn-id: file:///svn/phpbb/trunk@6767 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-15 02:45:42 +00:00
David M
35ac391fe3 count -> sizeof
git-svn-id: file:///svn/phpbb/trunk@6766 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-15 02:41:43 +00:00
David M
950d67d60e elseif -> else if
git-svn-id: file:///svn/phpbb/trunk@6765 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-15 02:38:14 +00:00
David M
837fcd1295 #6264
git-svn-id: file:///svn/phpbb/trunk@6764 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-14 20:36:07 +00:00
Jonathan Stanley
62763d3f3d Speeling... ;)
git-svn-id: file:///svn/phpbb/trunk@6763 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-14 18:18:45 +00:00
Meik Sievertsen
18ae2e2ff9 two changes related to the convertor
git-svn-id: file:///svn/phpbb/trunk@6762 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-14 17:54:44 +00:00
David M
6adbaea175 #5242
- forgot to *show* the change!


git-svn-id: file:///svn/phpbb/trunk@6761 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-14 03:21:24 +00:00
Jonathan Stanley
31d0f9328c #6218
git-svn-id: file:///svn/phpbb/trunk@6760 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 22:36:01 +00:00
Jonathan Stanley
834cc6a5fe #6212 - Oooh Bertie, spank me with that casing stick, spank me spank me spaaaaannnnk mee!
git-svn-id: file:///svn/phpbb/trunk@6759 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 22:32:02 +00:00
Jonathan Stanley
dfd189dbd2 #6084
git-svn-id: file:///svn/phpbb/trunk@6758 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 22:16:37 +00:00
Jonathan Stanley
586cd68ac1 #5984
git-svn-id: file:///svn/phpbb/trunk@6757 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 22:08:21 +00:00
Jonathan Stanley
0d94eb2daf #5946
git-svn-id: file:///svn/phpbb/trunk@6756 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 22:04:02 +00:00
Jonathan Stanley
9ae7da3fa5 #5942
git-svn-id: file:///svn/phpbb/trunk@6755 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 21:57:15 +00:00
Jonathan Stanley
7b1b55bc1a #5846
git-svn-id: file:///svn/phpbb/trunk@6754 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 21:32:26 +00:00
Jonathan Stanley
37de46aede #5708
git-svn-id: file:///svn/phpbb/trunk@6753 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 21:18:41 +00:00
David M
a2e512b218 #6192
- i wanted to do this using streams but found myself unable to do so. if one could figure out how to do so, i would like to find out :D


git-svn-id: file:///svn/phpbb/trunk@6752 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-13 00:56:56 +00:00
Jonathan Stanley
515993f5ae Begone hardcoded ellipsis of the secret template! Putting into language file so that it is i18n/L10n-able...
git-svn-id: file:///svn/phpbb/trunk@6751 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-12 17:53:13 +00:00
Meik Sievertsen
6875bd59b4 until nils comes to inspecting this further we will use this "workaround"
git-svn-id: file:///svn/phpbb/trunk@6750 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-12 09:55:15 +00:00
David M
f2bdbcfecd #6158
git-svn-id: file:///svn/phpbb/trunk@6748 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-11 20:13:33 +00:00
David M
9164895301 #6164
git-svn-id: file:///svn/phpbb/trunk@6747 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-11 20:07:57 +00:00
Nils Adermann
96858686ff Haha, slowly it's starting to look stupid ...
git-svn-id: file:///svn/phpbb/trunk@6746 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 21:33:01 +00:00
Nils Adermann
f8aa743b5f I'm very oblivious today :@
git-svn-id: file:///svn/phpbb/trunk@6745 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 21:31:35 +00:00
Nils Adermann
81832ca645 I'm a little oblivious today ;-)
git-svn-id: file:///svn/phpbb/trunk@6744 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 20:13:46 +00:00
David M
9b03d2a67e blah
git-svn-id: file:///svn/phpbb/trunk@6743 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 18:23:49 +00:00
David M
7eff1949ca #5242
git-svn-id: file:///svn/phpbb/trunk@6742 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 18:14:47 +00:00
Meik Sievertsen
c02215f7cc add the added config vars
git-svn-id: file:///svn/phpbb/trunk@6741 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 18:06:27 +00:00
Nils Adermann
f40e2aba22 - finally correctly calculate current time for birthday calculation [Bug #6030]
- allow searching forums with unsearchable subforums [Bug #6056]
- addition of an optional HTTP_X_FORWARDED_FOR check in sessions, including bans
- do not index forums which have indexing disabled on index recreation [Bug #6060]
- properly handle html entities in the theme editor [Bug #6048]
- anonymous access is no longer required for the LDAP auth plugin [Bug #6046]
- corrected mcp_front queue link to point to approve_details [Bug #6134]
- added direct (dis)approval to mcp_front queue items [Bug #6134]
- proper mysql version test for fulltext-compatibility [Bug #6054]
- added note to style/language "used by" column so it's clear that bots are included
- correctly update bot last visit time [Bug #6108]


git-svn-id: file:///svn/phpbb/trunk@6740 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 17:44:45 +00:00
Meik Sievertsen
7e47135792 - #6144
- #6132
- #6122


git-svn-id: file:///svn/phpbb/trunk@6739 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 15:52:31 +00:00
Meik Sievertsen
564e6782f0 - #6110
- #6102
- #6096


git-svn-id: file:///svn/phpbb/trunk@6738 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 15:09:31 +00:00
Meik Sievertsen
e274c6abc6 #6094
git-svn-id: file:///svn/phpbb/trunk@6737 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 14:43:59 +00:00
Meik Sievertsen
4e2d04dd4a implemented updater changes
git-svn-id: file:///svn/phpbb/trunk@6736 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 14:33:21 +00:00
David M
94476d05e0 #6090
- some cool regex stuff (one of them looks kinda weird :\ ...)


git-svn-id: file:///svn/phpbb/trunk@6735 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-10 01:19:54 +00:00
David M
b72caf0be4 - tiny bit of sunshine :D
git-svn-id: file:///svn/phpbb/trunk@6734 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-09 23:52:40 +00:00
David M
bf2a0e7eb2 #6130
git-svn-id: file:///svn/phpbb/trunk@6733 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-09 22:47:50 +00:00
David M
90457c7f8c #6118
git-svn-id: file:///svn/phpbb/trunk@6732 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-09 20:05:12 +00:00
David M
9df6b75f32 proper solution to #6114, guarantees $seed lies below 0x7FFFFFFF
git-svn-id: file:///svn/phpbb/trunk@6731 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-09 19:17:01 +00:00
Meik Sievertsen
1c41450bd9 - re-add script_path for "strange configurations" to let them force the generated urls correctly
- show rank title if no rank image present in memberlist
- other fixes.


git-svn-id: file:///svn/phpbb/trunk@6730 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-08 15:20:57 +00:00
David M
4519c51066 #6076
- removed unused junk from functions.php


git-svn-id: file:///svn/phpbb/trunk@6729 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-08 00:08:46 +00:00
Dominik Dröscher
dddffa2347 Blah, so obvious
git-svn-id: file:///svn/phpbb/trunk@6728 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 17:35:26 +00:00
Dominik Dröscher
ac5b7a578f oopsie
git-svn-id: file:///svn/phpbb/trunk@6727 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 17:11:37 +00:00
Dominik Dröscher
3886559e83 #5822 Thanks to TerraFrost for this fix! :)
git-svn-id: file:///svn/phpbb/trunk@6726 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 17:05:52 +00:00
Dominik Dröscher
7f3114364d I really hate embed, but I guess there is no way around it apart from dirty object hacks. Please note that this might break everything below Media Player 7, but as we are at 11 now, this should be fine.
#5744


git-svn-id: file:///svn/phpbb/trunk@6725 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 16:55:50 +00:00
Meik Sievertsen
277910a016 #6024
git-svn-id: file:///svn/phpbb/trunk@6724 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 15:11:28 +00:00
Dominik Dröscher
7428cdfd85 Do not display the "You have reached your blah blah folder limit" when the administrator has set the limit to 0. Existing folders that were created before the limit was set to 0 can still be edited. This only affects the "Add folder" section.
git-svn-id: file:///svn/phpbb/trunk@6723 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 12:40:55 +00:00
Dominik Dröscher
c848979cdd No need to show the current messages / total messages data when unlimited private messages are allowed.
git-svn-id: file:///svn/phpbb/trunk@6722 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 11:58:50 +00:00
David M
c6c994eaef - removed a regex that made no sense
git-svn-id: file:///svn/phpbb/trunk@6721 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 02:52:09 +00:00
David M
d76c4d54a1 - do data validation via is_int instead of preg_match, ctype has bugs so it can't be trusted
git-svn-id: file:///svn/phpbb/trunk@6720 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-07 02:30:33 +00:00
Meik Sievertsen
b508c57b80 minor bugfixing
git-svn-id: file:///svn/phpbb/trunk@6719 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-06 22:13:11 +00:00
Dominik Dröscher
a9b2e99974 Custom BBCodes? Never heard of 'em.
git-svn-id: file:///svn/phpbb/trunk@6718 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-06 18:30:33 +00:00
Dominik Dröscher
6e7c29adfb What the? Did Paul try to sneak in a new feature without our knowledge a few years back. O_o #5788
git-svn-id: file:///svn/phpbb/trunk@6717 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-06 18:23:42 +00:00
Dominik Dröscher
ef6f81a64d #5938
git-svn-id: file:///svn/phpbb/trunk@6716 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-06 18:13:36 +00:00
Meik Sievertsen
676fd08c47 changes to how errors are processed by the messenger
git-svn-id: file:///svn/phpbb/trunk@6715 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-06 17:35:04 +00:00
Meik Sievertsen
daeef71d81 some updater changes as well as tiny bugfixes
git-svn-id: file:///svn/phpbb/trunk@6714 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-06 15:47:50 +00:00
Dominik Dröscher
cb505ce4b0 what
git-svn-id: file:///svn/phpbb/trunk@6713 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-06 14:44:40 +00:00
David M
5766035741 #6000
git-svn-id: file:///svn/phpbb/trunk@6712 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-05 20:24:28 +00:00
David M
fae4e2bd96 oops :D
git-svn-id: file:///svn/phpbb/trunk@6711 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-05 20:06:58 +00:00
David M
f43a46fcf4 #6010
git-svn-id: file:///svn/phpbb/trunk@6710 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-04 21:55:34 +00:00
David M
1a5791e19f #6010
git-svn-id: file:///svn/phpbb/trunk@6709 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-04 21:52:55 +00:00
Nils Adermann
9d9624a886 - author search should use clean names for searching [Bug #5752]
- local moderators are moderators too!
- don't show a "word is not contained in any post" message for ignored common words
- bold search words in search error messages [Bug #5762]


git-svn-id: file:///svn/phpbb/trunk@6708 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-03 18:03:33 +00:00
David M
3d38552c69 blah
git-svn-id: file:///svn/phpbb/trunk@6707 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-03 17:48:00 +00:00
David M
83443a362d none of you saw that! at least, not for this version :P
git-svn-id: file:///svn/phpbb/trunk@6706 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-03 17:40:28 +00:00
David M
ec80eb74aa #5734
- replaced array_rand($array) with mt_rand(0, sizeof($array) - 1) as array_rand did not take my seed


git-svn-id: file:///svn/phpbb/trunk@6705 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-03 17:36:59 +00:00
David M
1f7224c601 only works if you do it _before_ the connect :P
git-svn-id: file:///svn/phpbb/trunk@6704 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-03 16:43:18 +00:00
David M
d63ccbe8ac - FreeTDS builds lets you specify a character set encoding, lets take advantage of that
git-svn-id: file:///svn/phpbb/trunk@6703 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-03 16:33:32 +00:00
Meik Sievertsen
2b4525ae97 some tiny bugfixes.
git-svn-id: file:///svn/phpbb/trunk@6702 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-03 16:12:03 +00:00
David M
e08317eb71 - pretty serious speed improvement for strtoupper/strtolower
- mbstring envrio checks
#5774


git-svn-id: file:///svn/phpbb/trunk@6701 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-02 18:16:25 +00:00
David M
7a79c74288 by the power of math!
git-svn-id: file:///svn/phpbb/trunk@6700 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-02 16:52:17 +00:00
Meik Sievertsen
fbe0c22293 fix
git-svn-id: file:///svn/phpbb/trunk@6699 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-02 13:43:21 +00:00
Meik Sievertsen
7ad986c37e - a bunch of fixes
- added todos to the updater to make sure i do not forget. :)


git-svn-id: file:///svn/phpbb/trunk@6698 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-02 13:19:40 +00:00
Jonathan Stanley
de1c536548 Titlecase be gone! Suprised John Hjorth hadn't picked these up as they've been bugging me for a while. ;)
git-svn-id: file:///svn/phpbb/trunk@6697 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-12-01 16:12:15 +00:00
Meik Sievertsen
5e9becda17 sorry, i can't stand this uglification. To let the added fieldsets being valid i simply reverted the previous layout by changing the css.
git-svn-id: file:///svn/phpbb/trunk@6696 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-30 15:05:51 +00:00
Meik Sievertsen
7ed41c4de1 updates for the updater and the diff engine.
- this update also includes an important change for including the diff engine, since we may need to include an updated engine before updating. This basically means that for a future update (B4 to another version) requires copying the new diff files first... the new include method should prevent this needed handwork for later versions then.


git-svn-id: file:///svn/phpbb/trunk@6695 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-29 15:51:54 +00:00
David M
d417d53c0a better regex
git-svn-id: file:///svn/phpbb/trunk@6694 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-29 01:33:14 +00:00
Dominik Dröscher
ae58794cbb Some tiny bug fixes - cannot stand seeing more than 1 page of Olympus bugs in the tracker
git-svn-id: file:///svn/phpbb/trunk@6693 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-29 00:36:40 +00:00
Meik Sievertsen
149f928963 begin working on getting this thing a bit faster. I need to finish the other calls, this commit actually will break the diff engine and the updater. The speed increase noticed is from 89 seconds to 22 seconds as well as saving a lot of memory.
git-svn-id: file:///svn/phpbb/trunk@6692 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 16:34:28 +00:00
David M
ff2b4e4e8f #5656
git-svn-id: file:///svn/phpbb/trunk@6691 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 15:01:13 +00:00
Meik Sievertsen
4f41d936e2 fix for bug #5658
git-svn-id: file:///svn/phpbb/trunk@6690 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 14:44:46 +00:00
Meik Sievertsen
e0a33e05bd fix for ftp update bug...
git-svn-id: file:///svn/phpbb/trunk@6689 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 14:31:55 +00:00
David M
6349635039 #5654
- bzopen_or_bzdopen in bzlib.c appends us our binary mode in a strcat call, we don't need it for bzopen();


git-svn-id: file:///svn/phpbb/trunk@6688 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 14:29:47 +00:00
David M
4308f5e8a5 #5672
git-svn-id: file:///svn/phpbb/trunk@6687 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 13:44:21 +00:00
Dominik Dröscher
a538fb2a9e #5678
git-svn-id: file:///svn/phpbb/trunk@6686 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 13:29:38 +00:00
Meik Sievertsen
38efea8d58 different time limit for installer
git-svn-id: file:///svn/phpbb/trunk@6685 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 12:27:20 +00:00
Meik Sievertsen
ed24dd9aeb fix for bug #5676 - of course the "delete install folder" notice should not occur if directly within installation.
git-svn-id: file:///svn/phpbb/trunk@6684 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 11:04:26 +00:00
Dominik Dröscher
e759598fc6 In honor of Beta4!
git-svn-id: file:///svn/phpbb/trunk@6683 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 09:38:31 +00:00
Dominik Dröscher
59e4c4b810 per common request
git-svn-id: file:///svn/phpbb/trunk@6682 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-28 09:34:08 +00:00
Meik Sievertsen
bb718d8406 - the same procedure as every... oh. this is taken.
- also including the first bugfix within beta4, just noticed at area51 that quicktools are not working in global announcements. :D


git-svn-id: file:///svn/phpbb/trunk@6681 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 23:31:09 +00:00
Meik Sievertsen
3041ca4ed7 version update
git-svn-id: file:///svn/phpbb/trunk@6679 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 21:41:56 +00:00
David M
3da0f4fe7f don't mind me, I just forgot something :D
git-svn-id: file:///svn/phpbb/trunk@6678 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 21:34:59 +00:00
Meik Sievertsen
1f8818d85d better layed out...
git-svn-id: file:///svn/phpbb/trunk@6677 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 21:33:49 +00:00
David M
f56c1a85d3 #5640
git-svn-id: file:///svn/phpbb/trunk@6676 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 21:24:15 +00:00
Nils Adermann
49e8de0ca2 - Throw error on incorrect search queries [Bug #5648]
git-svn-id: file:///svn/phpbb/trunk@6675 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 20:31:06 +00:00
Meik Sievertsen
1f118ba2ae #5610
git-svn-id: file:///svn/phpbb/trunk@6674 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 19:32:18 +00:00
Meik Sievertsen
8e297a038c hopefully fixed bug #5644 while also retaining the fix for bug #3572
testing this is appreciated.


git-svn-id: file:///svn/phpbb/trunk@6673 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 18:00:41 +00:00
Jonathan Stanley
82b8a1d96f #5592 et #5590
git-svn-id: file:///svn/phpbb/trunk@6672 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 16:15:13 +00:00
Meik Sievertsen
688ef7560a Using a different approach for the data updates (same as the schema updates)
git-svn-id: file:///svn/phpbb/trunk@6671 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 16:05:23 +00:00
Dominik Dröscher
22c729c41b #5642 This should be a little easier to manage.
git-svn-id: file:///svn/phpbb/trunk@6670 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 14:25:15 +00:00
Dominik Dröscher
883bfbf981 blah ..
git-svn-id: file:///svn/phpbb/trunk@6669 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 12:56:35 +00:00
Meik Sievertsen
07f860826f #5624
git-svn-id: file:///svn/phpbb/trunk@6668 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 12:56:17 +00:00
Dominik Dröscher
61e2a3f5c1 #4892
git-svn-id: file:///svn/phpbb/trunk@6667 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 12:45:26 +00:00
Dominik Dröscher
85a5dc01fe #5630
git-svn-id: file:///svn/phpbb/trunk@6666 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 11:37:42 +00:00
Dominik Dröscher
0bc076a0c3 #5632
git-svn-id: file:///svn/phpbb/trunk@6665 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-27 10:26:38 +00:00
Dominik Dröscher
d5593b154e #5606 and some beautification
git-svn-id: file:///svn/phpbb/trunk@6664 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 21:26:15 +00:00
Meik Sievertsen
12fb5f6aa2 - fixed bug within the user_add function
- fixed some updater bugs


git-svn-id: file:///svn/phpbb/trunk@6663 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 17:22:32 +00:00
Meik Sievertsen
4d6f84c320 fix for bug #5586
git-svn-id: file:///svn/phpbb/trunk@6662 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 15:31:12 +00:00
Meik Sievertsen
9fa4f1f012 - bug fixes for #5618, #5588 and #5584
- remove messenger->reset() calls (they are already performed on sending)


git-svn-id: file:///svn/phpbb/trunk@6661 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 15:01:13 +00:00
Meik Sievertsen
6583f90b8d - bug fixes for #5618, #5588 and #5584
- remove messenger->reset() calls (they are already performed on sending)


git-svn-id: file:///svn/phpbb/trunk@6660 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 14:55:18 +00:00
Nils Adermann
5c5330c29d Message for my last commit (no I didn't intent it to be "message"):
- include forums without search indexing in author searches and egosearch [Bug #5530, #4782]
- allow changing search options when there are no results if a pre-defined search is used
- added user_pass_convert flag for unconverted phpBB2 passwords and password conversion on first login
and for this commit:
- truncating dropdown in acp_styles and showing tooltip with complete string [Bug #5258]
- UTF-8 compatible font for OS X users in ACP
- destroy search cache on changing a post author [Bug #5538]


git-svn-id: file:///svn/phpbb/trunk@6659 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 14:41:59 +00:00
Meik Sievertsen
e3889a72e8 hard to spot...
git-svn-id: file:///svn/phpbb/trunk@6658 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 13:47:12 +00:00
Meik Sievertsen
dd5f0c320d use needle
git-svn-id: file:///svn/phpbb/trunk@6657 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 13:07:43 +00:00
Meik Sievertsen
52717466fb some tiny changes
git-svn-id: file:///svn/phpbb/trunk@6656 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-26 12:22:56 +00:00
Nils Adermann
870a3a1d8a message
git-svn-id: file:///svn/phpbb/trunk@6655 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-25 20:00:56 +00:00
Dominik Dröscher
38b8dc2841 #5600 I just liked the number
git-svn-id: file:///svn/phpbb/trunk@6654 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-25 10:03:31 +00:00
Dominik Dröscher
eb856283a6 Next try. IE does not have a simple variable to return the selection position / cursor position inside a textarea, so this can only be done with slow but functional hacks. Not even IE7 fixes this.
git-svn-id: file:///svn/phpbb/trunk@6653 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-25 01:10:51 +00:00
Dominik Dröscher
8f97dc8d78 Blah ...
git-svn-id: file:///svn/phpbb/trunk@6652 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-24 19:38:48 +00:00
Dominik Dröscher
2d31d53289 Editor updates with proper IE support. Needs a lot more testing, especially in non-Windows browsers
git-svn-id: file:///svn/phpbb/trunk@6651 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-24 18:18:17 +00:00
Meik Sievertsen
d529f78adb rather large update, most important things done:
- implemented provided patch/diff file for bug #5350 (Highway of Life) with some tiny changes and alterations
- more username/colour changes/fixes
- added a note about PM rule-dependant message removals so the user is not wondering too much if he can't remember his rules. :)
- some column changes to fix unicode issues
- bugfixes


git-svn-id: file:///svn/phpbb/trunk@6650 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-24 14:59:26 +00:00
Dominik Dröscher
a0c3a326bd While we are at it ...
git-svn-id: file:///svn/phpbb/trunk@6649 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-24 14:58:48 +00:00
Dominik Dröscher
40c4b1dcd7 grrr, this is what happens when you update another cvs repository with this repository in it
Well, my first Doug, time for celebration!


git-svn-id: file:///svn/phpbb/trunk@6648 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-24 14:48:47 +00:00
Dominik Dröscher
064f6fec43 New structure for the template files!
git-svn-id: file:///svn/phpbb/trunk@6647 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-24 14:45:13 +00:00
Dominik Dröscher
17ea1ecd5e Changed bbcode editor behaviour. All buttons (apart from the [*] one) now work the same way. This needs testing in as many browsers as possible. Known to be working in
IE6, FF2 on Windows, Opera 9

Probably issues on Konquerer, Safari, FF2 on MacOS (as per a forum post).

Feedback and ideas please here: http://area51.phpbb.com/phpBB/viewtopic.php?t=25884


git-svn-id: file:///svn/phpbb/trunk@6646 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-24 12:20:16 +00:00
Jonathan Stanley
f836b4a095 #5474 - ACP XHTML spring clean... fieldsets with missing legends added, and lone fieldsets which should belong to the accending fieldset have been (mostly) merged. Some outstanding issues with the permissions area (Dominik has some stuff for this at some point anyway) and the Custom Profile Fields bit, which should feature "Previous/Next" style buttons.
git-svn-id: file:///svn/phpbb/trunk@6645 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-24 02:04:43 +00:00
Jonathan Stanley
f26918b4e5 #5562
git-svn-id: file:///svn/phpbb/trunk@6644 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-23 20:56:19 +00:00
Meik Sievertsen
59f3e65aee fixes for bugs #5564, #5554 and #5462
git-svn-id: file:///svn/phpbb/trunk@6643 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-23 16:15:46 +00:00
Meik Sievertsen
6d6f433d2e davidmj came up with a simpler (and working in all cases!) approach. :) Bow to him...
git-svn-id: file:///svn/phpbb/trunk@6642 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-23 14:54:37 +00:00
Meik Sievertsen
945491d37d adding revision information
git-svn-id: file:///svn/phpbb/trunk@6641 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-23 14:26:58 +00:00
Meik Sievertsen
fbe7c6550b do not process if all ASCII
git-svn-id: file:///svn/phpbb/trunk@6640 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-23 12:44:12 +00:00
Meik Sievertsen
5a73807c9b new mail_encode function to make sure we abide to the rfc but not split in-between of multibyte characters. The used method is not 100% accurate, but a good compromise between compatibility, conformance and performance.
git-svn-id: file:///svn/phpbb/trunk@6639 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-23 11:53:52 +00:00
Meik Sievertsen
3f69e7278c document the recent change for sql_query_limit
git-svn-id: file:///svn/phpbb/trunk@6638 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-23 11:52:11 +00:00
David M
e67722c18b little bit of template tag cleaning
git-svn-id: file:///svn/phpbb/trunk@6637 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-23 03:32:47 +00:00
Dominik Dröscher
d6c5be3d73 blah
git-svn-id: file:///svn/phpbb/trunk@6636 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-22 12:20:17 +00:00
Dominik Dröscher
69e33a9d7d plop
git-svn-id: file:///svn/phpbb/trunk@6635 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-22 12:10:31 +00:00
Dominik Dröscher
2906dbdd8a Some more editor.js updates. Font styles (colour and size) do now center the cursor between the tags when not used on a selection. This could need some cross browser testing. Confirmed working in IE6, FF, Opera.
Please report feedback to:
http://area51.phpbb.com/phpBB/viewtopic.php?f=3&t=25884


git-svn-id: file:///svn/phpbb/trunk@6634 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-22 11:22:38 +00:00
Dominik Dröscher
73d0f7f846 #5546
git-svn-id: file:///svn/phpbb/trunk@6633 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-22 09:12:56 +00:00
Dominik Dröscher
d416503a39 Blah, making list bbcode button work again.
git-svn-id: file:///svn/phpbb/trunk@6632 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-22 09:02:06 +00:00
David M
1551f13bb2 #5562
major speed boost for Oracle :D

This took a while, every call to sql_query_limit() was checked out for having any implicit/explicit column issues... Hopefully, nothing has changed :D


git-svn-id: file:///svn/phpbb/trunk@6631 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-22 01:22:13 +00:00
Meik Sievertsen
6cb0276788 hmm, this was for debugging. :)
git-svn-id: file:///svn/phpbb/trunk@6630 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-21 18:23:43 +00:00
Meik Sievertsen
3b42f4297e decrease the barrier for E_ALL error reporting and email traces from DEBUG_EXTRA to DEBUG
git-svn-id: file:///svn/phpbb/trunk@6629 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-21 18:20:02 +00:00
Meik Sievertsen
ab9ec8064a - fixing a bunch of bugs
- moved the install trigger error to sessions and also disabled it for those having DEBUG_EXTRA enabled.
i hope not having introduced too many new bugs.


git-svn-id: file:///svn/phpbb/trunk@6628 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-21 18:15:53 +00:00
Meik Sievertsen
5be570b1f0 should have been fread.
git-svn-id: file:///svn/phpbb/trunk@6627 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-21 15:44:44 +00:00
Meik Sievertsen
74a08d9a7b changing the inline delivery method now the 20th time - gosh.
git-svn-id: file:///svn/phpbb/trunk@6626 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-21 15:08:18 +00:00
Dominik Dröscher
308d2820d9 #5238
git-svn-id: file:///svn/phpbb/trunk@6625 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-21 13:13:01 +00:00
Dominik Dröscher
3a85729945 insert_text now working properly in IE for smilies again
git-svn-id: file:///svn/phpbb/trunk@6624 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-21 06:39:50 +00:00
Dominik Dröscher
2c8cae5226 #5496
git-svn-id: file:///svn/phpbb/trunk@6623 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 17:37:54 +00:00
Dominik Dröscher
6fb406919f #5484
Making the account settings page a little more accessible.


git-svn-id: file:///svn/phpbb/trunk@6622 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 17:07:09 +00:00
Meik Sievertsen
c6892c6fc0 #5488
git-svn-id: file:///svn/phpbb/trunk@6621 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 16:44:37 +00:00
Dominik Dröscher
3e619c628c #5476
git-svn-id: file:///svn/phpbb/trunk@6620 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 16:42:31 +00:00
Meik Sievertsen
2774981b2d fix for bug #5490
- make sure bots are catched by the posting auth too.


git-svn-id: file:///svn/phpbb/trunk@6619 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 16:40:44 +00:00
Dominik Dröscher
e03fb0aafd New diff images replacing the dummy ones.
git-svn-id: file:///svn/phpbb/trunk@6618 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 15:42:11 +00:00
Dominik Dröscher
e6c8bb1409 some HTML fixes
git-svn-id: file:///svn/phpbb/trunk@6617 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 14:42:43 +00:00
Dominik Dröscher
6aabfc4bf7 #5358
Large logo images no longer destroy the layout.


git-svn-id: file:///svn/phpbb/trunk@6616 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 12:51:43 +00:00
Dominik Dröscher
c974d70bdb #5134
git-svn-id: file:///svn/phpbb/trunk@6615 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-20 12:35:05 +00:00
Meik Sievertsen
6a08242684 some tiny fixes.
git-svn-id: file:///svn/phpbb/trunk@6614 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 21:00:48 +00:00
David M
f782890332 ;-)
git-svn-id: file:///svn/phpbb/trunk@6613 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 20:26:40 +00:00
Meik Sievertsen
33bcb91d05 some tiny fixes.
git-svn-id: file:///svn/phpbb/trunk@6612 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 20:08:24 +00:00
David M
174d43d532 #5446
- slight opti thrown in :D


git-svn-id: file:///svn/phpbb/trunk@6611 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 15:23:19 +00:00
Meik Sievertsen
a7f0b3712a *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6610 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 15:18:29 +00:00
Meik Sievertsen
b934dab804 fix for #5422
git-svn-id: file:///svn/phpbb/trunk@6609 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 15:01:56 +00:00
David M
444113e7f4 #5452
git-svn-id: file:///svn/phpbb/trunk@6608 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 14:56:06 +00:00
David M
f31e170e99 #5466
git-svn-id: file:///svn/phpbb/trunk@6607 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 14:48:00 +00:00
David M
2e250d1cd8 #5450
git-svn-id: file:///svn/phpbb/trunk@6606 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 14:43:38 +00:00
David M
fff6d92158 #5428
git-svn-id: file:///svn/phpbb/trunk@6605 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 14:37:20 +00:00
Meik Sievertsen
8ce38c7504 some style related changes/fixes
git-svn-id: file:///svn/phpbb/trunk@6604 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 14:14:35 +00:00
Meik Sievertsen
8391d6d71d Where are you coming from $in? I do not think i invited you...
git-svn-id: file:///svn/phpbb/trunk@6603 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-19 00:41:16 +00:00
Meik Sievertsen
a8eb642053 let us be more strict while testing for writeable directories.
git-svn-id: file:///svn/phpbb/trunk@6602 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-18 17:26:53 +00:00
Meik Sievertsen
e264a62b73 - a handful of mcp fixed, the most important one is the change for check_ids() - it is now supporting ids from more than one forum too, making it possible to use some mcp features as designed initially. We really need to get our moderator team testing the mcp extensively.
- fixed some other tiny glitches
- if a forum category with subforums get changed to a link type forum give options of what to do with the subforums (#5334)
- other bugfixes


git-svn-id: file:///svn/phpbb/trunk@6601 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-18 16:27:35 +00:00
Meik Sievertsen
5f788b4d08 get editing user correctly
git-svn-id: file:///svn/phpbb/trunk@6600 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-18 10:37:10 +00:00
Meik Sievertsen
40f0a1ea15 - do not cache the activity queries, this is only a lot of overhead (haven't noticed the forums also get included)
- back to our known poster name display on viewtopic/topic review. :)


git-svn-id: file:///svn/phpbb/trunk@6599 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-18 10:05:58 +00:00
Jonathan Stanley
c2191ae9cc "Me fail English? That's unpossible!"
git-svn-id: file:///svn/phpbb/trunk@6598 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-17 23:21:30 +00:00
David M
f589ce3a84 #5376
- removed some unneeded globals


git-svn-id: file:///svn/phpbb/trunk@6597 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-17 21:51:16 +00:00
Meik Sievertsen
ac5a12c024 fix colour assignment. ;)
git-svn-id: file:///svn/phpbb/trunk@6596 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-17 19:40:21 +00:00
Meik Sievertsen
d9387842ac adjust some comments to work with phpdocumentor. :)
git-svn-id: file:///svn/phpbb/trunk@6595 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-17 19:37:57 +00:00
Jonathan Stanley
17f00978dd #5370
git-svn-id: file:///svn/phpbb/trunk@6594 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-17 16:41:22 +00:00
David M
8b0e11a4c9 #5362
- small opti/bugfix in normalizer


git-svn-id: file:///svn/phpbb/trunk@6593 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-16 20:16:36 +00:00
Meik Sievertsen
311c0d8e4f if the forum is originally postable the type actions are displayed if wanted to switch to category or link.
git-svn-id: file:///svn/phpbb/trunk@6592 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-16 19:12:00 +00:00
Meik Sievertsen
d08d844325 Do not rely on javascript being enabled here (for setting permissions js is a requirement)
git-svn-id: file:///svn/phpbb/trunk@6591 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-16 19:08:59 +00:00
Meik Sievertsen
db8e586893 forgot to commit this fix
git-svn-id: file:///svn/phpbb/trunk@6590 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-16 18:29:29 +00:00
Meik Sievertsen
c9cd0e1d91 ok, change from doing the same logic all over again we call a function to do it for us. Also allow template designers to choose which method to use by just adding a fully compiled username string (profile link + user colour). This commit may introduce problems.
git-svn-id: file:///svn/phpbb/trunk@6589 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-16 16:51:19 +00:00
Meik Sievertsen
683c8a10dd add missing language variables
git-svn-id: file:///svn/phpbb/trunk@6588 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-16 12:41:07 +00:00
David M
c904ba5691 this is hopeless, we just insert and hope for the best. thats all we can really do...
git-svn-id: file:///svn/phpbb/trunk@6587 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-15 20:48:38 +00:00
Dominik Dröscher
93bd37451c #5286
git-svn-id: file:///svn/phpbb/trunk@6586 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-15 17:17:50 +00:00
Dominik Dröscher
9622428fcd #5296
git-svn-id: file:///svn/phpbb/trunk@6585 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-15 16:52:44 +00:00
Meik Sievertsen
548cc2c10b - fixes for the following bugs:
#5326
#5318
#5304
#5290
#5288
#5278
#5276
#5272
#5266
- also fixed the "Call-time pass-by-reference" bug #5252
- within this step changed the normalize calls to require references.
- added captcha size variables to the class scope (suggestion was posted at area51)


git-svn-id: file:///svn/phpbb/trunk@6584 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-15 15:35:50 +00:00
Jonathan Stanley
979e36077f #5294 - Typographic heaven... curly quotes, em dashes and proper apostrophes. :)
git-svn-id: file:///svn/phpbb/trunk@6583 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-14 17:53:00 +00:00
Jonathan Stanley
503832ccce #5298 - Semantics schemantics... :P
git-svn-id: file:///svn/phpbb/trunk@6582 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-14 17:48:52 +00:00
David M
f6500e6730 @#$%&!
git-svn-id: file:///svn/phpbb/trunk@6581 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-13 22:44:54 +00:00
Meik Sievertsen
96d6f2aee0 after tagging we increase the version number to b4-dev to be able to properly go to b4 or rc1.
git-svn-id: file:///svn/phpbb/trunk@6580 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 20:45:49 +00:00
David M
714fdee6d0 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6578 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 19:45:36 +00:00
Meik Sievertsen
d420932921 let the user activity queries only update every 5 minutes
git-svn-id: file:///svn/phpbb/trunk@6577 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 19:24:30 +00:00
Nils Adermann
2312fb8c0b - use a font supporting unicode on Mac
git-svn-id: file:///svn/phpbb/trunk@6576 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 19:09:42 +00:00
Meik Sievertsen
912e142b59 change version number
git-svn-id: file:///svn/phpbb/trunk@6575 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 19:08:20 +00:00
Meik Sievertsen
85ddd3ea84 ok, this should work now for mail() and smtpmail. We also removed the newline from the spacer for mail_encode due to php's mail() function choking up on subjects with newlines.
git-svn-id: file:///svn/phpbb/trunk@6574 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 18:44:42 +00:00
Meik Sievertsen
adea08faef /me slaps nils. :)
git-svn-id: file:///svn/phpbb/trunk@6573 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 18:41:49 +00:00
Meik Sievertsen
d89f60f182 consistant obtain_* functions
git-svn-id: file:///svn/phpbb/trunk@6572 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 15:35:43 +00:00
David M
b0217ddc11 banned usernames are now cached and normalized
git-svn-id: file:///svn/phpbb/trunk@6571 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 15:17:46 +00:00
David M
90b16076d3 blah blah blah :D
git-svn-id: file:///svn/phpbb/trunk@6570 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 14:42:45 +00:00
Nils Adermann
cf34efb06c message
git-svn-id: file:///svn/phpbb/trunk@6569 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 14:29:32 +00:00
Meik Sievertsen
fa9d7e4ab4 #5222
git-svn-id: file:///svn/phpbb/trunk@6568 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-12 14:13:26 +00:00
Jonathan Stanley
1586aa5e04 #5226
git-svn-id: file:///svn/phpbb/trunk@6567 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-11 17:42:50 +00:00
Jonathan Stanley
ac19d4b24c #5112
git-svn-id: file:///svn/phpbb/trunk@6566 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-11 17:13:34 +00:00
Meik Sievertsen
66c2a18b82 seems like capitalizing menu titles introduced some problems. :) Also it might look strange for some languages - so therefore it is better be done within the language file directly.
git-svn-id: file:///svn/phpbb/trunk@6565 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-11 16:20:11 +00:00
Meik Sievertsen
8cf0bc433e let utf8 mails work again. I hope this is not giving problems for "strange" mail setups.
git-svn-id: file:///svn/phpbb/trunk@6564 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-11 12:24:10 +00:00
David M
a098417514 - cleaned up firebirdsql
- cleaned up install


git-svn-id: file:///svn/phpbb/trunk@6563 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-10 14:56:18 +00:00
Meik Sievertsen
a5e32e5a94 keywords is a string...
git-svn-id: file:///svn/phpbb/trunk@6562 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-10 14:55:49 +00:00
Meik Sievertsen
3d0759974b - some fixes
- added script for easy adjustement of username_clean column within the users table (please see the note i added to the utf8_clean_string() function)


git-svn-id: file:///svn/phpbb/trunk@6561 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-10 13:49:52 +00:00
Graham Eames
805af6f437 Only show reports you can handle [#5136]
git-svn-id: file:///svn/phpbb/trunk@6560 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-07 20:49:51 +00:00
Nils Adermann
11d2a37032 - Bug #5090
git-svn-id: file:///svn/phpbb/trunk@6559 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-05 20:52:52 +00:00
Graham Eames
67af543695 Slight copy and paste error
git-svn-id: file:///svn/phpbb/trunk@6558 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-05 20:42:37 +00:00
Dominik Dröscher
0ec7ca8bf7 #5092
git-svn-id: file:///svn/phpbb/trunk@6557 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-05 19:33:03 +00:00
David M
811d6ef6d1 #5122
git-svn-id: file:///svn/phpbb/trunk@6556 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-05 19:03:24 +00:00
Meik Sievertsen
830276508b - #5120
- #5104


git-svn-id: file:///svn/phpbb/trunk@6555 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-05 18:13:35 +00:00
Graham Eames
88b698c989 Some additional changes to the FAQ. This is now more or less complete, although will be subject to modification if extra issues come to light which should be in it
git-svn-id: file:///svn/phpbb/trunk@6554 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-05 13:58:40 +00:00
Meik Sievertsen
7e864e367b forgot one
git-svn-id: file:///svn/phpbb/trunk@6553 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-04 17:25:27 +00:00
Meik Sievertsen
63c0c798c8 - use the $var_ary for settings in a more logical way (hopefully removes the clutter and shows where which variable is set how)
- hopefully utf8 passwords are working too now


git-svn-id: file:///svn/phpbb/trunk@6552 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-04 17:19:33 +00:00
David M
8b90d5998b #5094
git-svn-id: file:///svn/phpbb/trunk@6551 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-04 16:30:51 +00:00
David M
1544f45621 trimmed the highlight regex
git-svn-id: file:///svn/phpbb/trunk@6550 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-04 13:37:22 +00:00
David M
8b0ec6e02d - compress is nicer (fixed a bug :P)
- UTF-8 code is nicer (fixed a bug :P)
- new CAPTCHA. Replaced the old one for size and usability issues. The old CAPTCHA will most likely be released as a separate package


git-svn-id: file:///svn/phpbb/trunk@6549 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-03 23:09:16 +00:00
Meik Sievertsen
7ab232a455 ok, i am an idiot...
git-svn-id: file:///svn/phpbb/trunk@6548 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-03 21:05:25 +00:00
David M
b0989c3f4d #5030
git-svn-id: file:///svn/phpbb/trunk@6547 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-03 20:19:52 +00:00
Meik Sievertsen
1634814e16 - make sure the sql layer for mysql always states mysql4 and get to mysql if using mysql < 4
- assign some default vars to email templates (we always need some basic ones)


git-svn-id: file:///svn/phpbb/trunk@6546 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-03 17:50:39 +00:00
Meik Sievertsen
daa3288a36 - implemented the suggested html_entity_decode function made by david
- fixed string length checking by also decoding entities for the sake of checking
- used the new html_entity_decode function


git-svn-id: file:///svn/phpbb/trunk@6545 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-03 11:26:14 +00:00
Meik Sievertsen
a3bf1ed63e some updates; and hopefully not completely breaking redirects (again). :D You know, i like breaking things.
git-svn-id: file:///svn/phpbb/trunk@6544 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-02 15:23:33 +00:00
Jonathan Stanley
21a002e4ac Bleh. @_@ (#5068)
git-svn-id: file:///svn/phpbb/trunk@6543 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-11-01 20:48:50 +00:00
Graham Eames
1128bf8788 Changing regeneration of the rand seed
git-svn-id: file:///svn/phpbb/trunk@6542 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-31 20:31:51 +00:00
Graham Eames
ace934284a Missed that there were 2 open against this file
git-svn-id: file:///svn/phpbb/trunk@6541 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-30 20:56:31 +00:00
Graham Eames
6c0b443dd7 #5020
Note, this can give a wide list, we need to look at this further


git-svn-id: file:///svn/phpbb/trunk@6540 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-30 20:32:45 +00:00
Meik Sievertsen
12c75a0991 - temporarily disable x-sendfile support (we need to look into methods of checking if it is enabled/disabled or introducing a switch)
- finally allow custom permission settings files (in acp/ as well as in mods/)


git-svn-id: file:///svn/phpbb/trunk@6539 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-30 19:51:56 +00:00
Meik Sievertsen
c44f6ca080 some fixes
git-svn-id: file:///svn/phpbb/trunk@6538 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-30 16:20:11 +00:00
Nils Adermann
7e55e53d10 - Handle upper/lower case in memberlist properly [Bug #5012]
git-svn-id: file:///svn/phpbb/trunk@6537 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-29 14:59:19 +00:00
Dominik Dröscher
b65cadf414 #5024
Missing </code>.


git-svn-id: file:///svn/phpbb/trunk@6536 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-29 09:08:36 +00:00
Jonathan Stanley
59d78ec21b #4880
#4882
#4884
#4898
#4910
#4926
#4928
#4930
#4934
#4936
#4938
#4942
#4944
#4946
#4948
#4950
#4952
#4954
#4956
#4960
#4972
#4980


git-svn-id: file:///svn/phpbb/trunk@6535 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-28 21:17:42 +00:00
Jonathan Stanley
a23103ba54 #4834
git-svn-id: file:///svn/phpbb/trunk@6534 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-28 20:22:25 +00:00
Meik Sievertsen
8130bcf44e test new mailing list rules
git-svn-id: file:///svn/phpbb/trunk@6533 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-28 11:03:33 +00:00
Meik Sievertsen
15195facc2 two tiny bugfixes
git-svn-id: file:///svn/phpbb/trunk@6532 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-27 14:40:41 +00:00
Dominik Dröscher
7058666615 #4754
MSNM should work again (as before, only on IE).


git-svn-id: file:///svn/phpbb/trunk@6531 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-26 14:46:41 +00:00
Dominik Dröscher
0b838cec29 #4802
git-svn-id: file:///svn/phpbb/trunk@6530 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-26 12:20:55 +00:00
Dominik Dröscher
b399902357 Forgot this ...
git-svn-id: file:///svn/phpbb/trunk@6529 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-26 11:48:36 +00:00
Dominik Dröscher
6f4d0c4fa2 #4696
Quoting from topic review should now work in FF 1.5.0.x.

Note to Nils: We need a utf8_addslashes function. The standard addslashes will not cut it for UTF-8. :)


git-svn-id: file:///svn/phpbb/trunk@6528 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-26 11:27:57 +00:00
Meik Sievertsen
cd3eaf0e17 some bugfixes
git-svn-id: file:///svn/phpbb/trunk@6527 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-26 10:58:58 +00:00
David M
b79f709bfc #4988
git-svn-id: file:///svn/phpbb/trunk@6526 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-25 18:53:57 +00:00
David M
2399844bef #4962
git-svn-id: file:///svn/phpbb/trunk@6525 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-23 23:01:12 +00:00
David M
ad8fa012f5 This was caused by the removal of DEFAULT on some TEXT columns (MySQL really does not allow this). Only those using MySQL felt this issue :P
git-svn-id: file:///svn/phpbb/trunk@6524 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-23 22:32:37 +00:00
David M
a0201b4958 #4850
git-svn-id: file:///svn/phpbb/trunk@6523 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-23 21:07:45 +00:00
Meik Sievertsen
74e03ddf62 - capitalize on menus (much much much much much much more readable)
- remove unneccessary "effective" (the view and the explanation should already imply this) to gain more space - we need to be as short as possible if labeling menu items.


git-svn-id: file:///svn/phpbb/trunk@6522 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-23 15:13:45 +00:00
Graham Eames
eb0c49da11 Add an optional flag to allow the disabling of generating the cron image for pages if appropriate
git-svn-id: file:///svn/phpbb/trunk@6521 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-22 18:32:06 +00:00
Meik Sievertsen
b3ab2173a4 #4896
git-svn-id: file:///svn/phpbb/trunk@6520 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-22 15:02:50 +00:00
Meik Sievertsen
0de6e24865 ENT_COMPAT is the default, with ENT_QUOTES a few features will no longer work.
git-svn-id: file:///svn/phpbb/trunk@6519 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-22 13:46:55 +00:00
Graham Eames
55e848eff8 Minor typo when the FAQ got updated
git-svn-id: file:///svn/phpbb/trunk@6518 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-22 13:37:47 +00:00
Meik Sievertsen
22129be21f - now username changes should work as desired
- removed some extract() calls


git-svn-id: file:///svn/phpbb/trunk@6517 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-22 13:32:33 +00:00
Graham Eames
44ea780de6 Increase size of font size box
git-svn-id: file:///svn/phpbb/trunk@6516 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-21 16:14:23 +00:00
Graham Eames
7470dcf709 Move outputting of TO box since it's only relevant to one module and this will ensure it is displayed however that module is loaded [#4866]
git-svn-id: file:///svn/phpbb/trunk@6515 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-21 15:46:23 +00:00
Graham Eames
1df3ccc836 #4876
git-svn-id: file:///svn/phpbb/trunk@6514 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-21 15:11:01 +00:00
Meik Sievertsen
f4da66a932 - adjust unread query a bit to cope with large topics (thanks bart!)
- fixing some bugs
- more username_clean work


git-svn-id: file:///svn/phpbb/trunk@6513 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-20 13:48:44 +00:00
Meik Sievertsen
b572e0db8f remove debug code. ;)
git-svn-id: file:///svn/phpbb/trunk@6512 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-19 14:11:03 +00:00
Meik Sievertsen
fcd9b898f1 Revised attachment categories a bit
Fixes for the following bugs:
#4830
#4818
#4816
#4810
#4808
#4798
#4796
#4772
#4662
#4646
#4546
#4524
#4270

I hope not having introduced additional severe errors :)


git-svn-id: file:///svn/phpbb/trunk@6511 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-19 13:55:48 +00:00
David M
9a0ca3d334 - typo in functions.php
- #4826


git-svn-id: file:///svn/phpbb/trunk@6510 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-18 23:58:31 +00:00
David M
2d3af47407 #4812
#4804


git-svn-id: file:///svn/phpbb/trunk@6509 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-18 21:39:28 +00:00
Meik Sievertsen
025d0bf757 let the forum link work again
(we do not need the removed check because the board url is always prefixed, except for those urls having a valid scheme and host part)


git-svn-id: file:///svn/phpbb/trunk@6508 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-18 15:32:46 +00:00
David M
771c20a5a4 #4758
git-svn-id: file:///svn/phpbb/trunk@6507 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-16 22:12:52 +00:00
Dominik Dröscher
6f23849556 Remaining files from #4760
git-svn-id: file:///svn/phpbb/trunk@6506 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-16 17:59:22 +00:00
Dominik Dröscher
2917956fe5 #4760
No more eval()


git-svn-id: file:///svn/phpbb/trunk@6505 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-16 13:42:17 +00:00
Dominik Dröscher
1d1e6d4603 #4694
Updated insert_text and removed some code duplication.


git-svn-id: file:///svn/phpbb/trunk@6504 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-16 12:07:51 +00:00
David M
c7f9d94b75 looks like nobody ever found this bug :D
git-svn-id: file:///svn/phpbb/trunk@6503 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-15 19:22:25 +00:00
Graham Eames
dd5a27dc6f Allow fractional values for sizes [#4744]
git-svn-id: file:///svn/phpbb/trunk@6502 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-14 21:13:51 +00:00
David M
4d0ebfcdf2 #4720
git-svn-id: file:///svn/phpbb/trunk@6501 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-14 21:00:26 +00:00
David M
2cc31fee0e if we want a string, don't close the DB and cache
git-svn-id: file:///svn/phpbb/trunk@6500 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-14 19:05:51 +00:00
David M
44ba76d075 fix the dbal
git-svn-id: file:///svn/phpbb/trunk@6499 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-14 18:54:37 +00:00
Graham Eames
ca19477a97 Fix time limiting in mcp [#4730]
git-svn-id: file:///svn/phpbb/trunk@6498 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-14 16:58:07 +00:00
Meik Sievertsen
4afaca12dc - store sql_layer directly within the layer itself
- new method sql_multi_insert to circumvent db-specific hacks
(hopefully not introduced any parsing errors)


git-svn-id: file:///svn/phpbb/trunk@6497 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-14 14:56:46 +00:00
Graham Eames
46922674ea Remove unused constants
git-svn-id: file:///svn/phpbb/trunk@6496 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-14 13:21:46 +00:00
Graham Eames
72f1d4f25d Need to set the clean form on install
git-svn-id: file:///svn/phpbb/trunk@6495 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-14 13:02:04 +00:00
Nils Adermann
c65048bd91 - introducing clean usernames, needs to be tested more, I'm not sure I didn't miss anything
- homograph list should probably be extended


git-svn-id: file:///svn/phpbb/trunk@6494 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-13 22:10:18 +00:00
Graham Eames
23d25ddcd1 More FAQ changes, with thanks to Techie-Micheal for assistance with some of these
git-svn-id: file:///svn/phpbb/trunk@6493 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-13 19:29:43 +00:00
David M
15ec1c443f #4710
git-svn-id: file:///svn/phpbb/trunk@6492 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-13 02:00:30 +00:00
Graham Eames
1418beacfd Use correct template variable to allow sorting to work [#4712]
git-svn-id: file:///svn/phpbb/trunk@6491 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-12 20:24:26 +00:00
Graham Eames
b6546a1487 Censor last post topic [#4714]
git-svn-id: file:///svn/phpbb/trunk@6490 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-12 20:05:50 +00:00
David M
a2ac86744f #4718
git-svn-id: file:///svn/phpbb/trunk@6489 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-12 18:59:14 +00:00
Meik Sievertsen
f373eba5a4 comment out for the moment - it may be not fair to disallow "virtual" urls. :)
git-svn-id: file:///svn/phpbb/trunk@6488 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-12 15:33:24 +00:00
Meik Sievertsen
23ef85fa74 some test code, hopefully working for all occassions where we are using the functions...
git-svn-id: file:///svn/phpbb/trunk@6487 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-12 15:20:33 +00:00
Dominik Dröscher
c2567c38ff #4316
git-svn-id: file:///svn/phpbb/trunk@6486 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-12 12:37:13 +00:00
Dominik Dröscher
7255ab8f39 I hate duplicate CSS. That was the last one for tonight. I swear!
git-svn-id: file:///svn/phpbb/trunk@6485 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 22:56:42 +00:00
Dominik Dröscher
cd37633cde Nicer solution for the rtl problem. Thanks Jon!
git-svn-id: file:///svn/phpbb/trunk@6484 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 22:54:10 +00:00
Dominik Dröscher
7c328f2de0 Yes IE6, I like you as much as you like me.
git-svn-id: file:///svn/phpbb/trunk@6483 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 22:42:16 +00:00
Dominik Dröscher
a1df726e9f Some subsilver fixes:
#4628
#4448
#4014


git-svn-id: file:///svn/phpbb/trunk@6482 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 22:35:41 +00:00
Graham Eames
152a653fd4 #3980
git-svn-id: file:///svn/phpbb/trunk@6481 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 20:37:53 +00:00
David M
31463d2ccc #4700
git-svn-id: file:///svn/phpbb/trunk@6480 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 19:56:27 +00:00
Meik Sievertsen
d7ee6969d2 :)
git-svn-id: file:///svn/phpbb/trunk@6479 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 14:59:28 +00:00
Meik Sievertsen
99d968dd2e some fixes
git-svn-id: file:///svn/phpbb/trunk@6478 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 13:48:30 +00:00
Meik Sievertsen
97c72d7075 - make sure all sort keys are valid and selectable.
git-svn-id: file:///svn/phpbb/trunk@6477 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 10:43:20 +00:00
Meik Sievertsen
a765165cd1 do not use parse_str because it could lead to "unexpected" output which could lead to XSS
git-svn-id: file:///svn/phpbb/trunk@6476 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-11 07:02:29 +00:00
Meik Sievertsen
e168cd2793 ok, i do not why the db is setting the type for user id to string - but with this change bots should no longer "spawn" sessions. ;)
git-svn-id: file:///svn/phpbb/trunk@6475 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-10 13:59:02 +00:00
David M
23a6cf3efb #4622
stole this bug too :P


git-svn-id: file:///svn/phpbb/trunk@6474 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-10 02:04:55 +00:00
David M
c63392c89e new collation for MySQL >= 4.1.3, should be a tad faster
git-svn-id: file:///svn/phpbb/trunk@6473 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-10 01:46:59 +00:00
David M
e9df6f3546 #4680
this bothered me :P


git-svn-id: file:///svn/phpbb/trunk@6472 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-10 01:39:48 +00:00
David M
42dcd7929e hopefully no bugs...
- faster encoding and way faster decoding (hopefully)
- waaaaay faster strtoupper strtolower transforms
- more powerful utf8_substr
- removed two (now) useless functions

P.S.
decode and upper/lower all had bugs before :P


git-svn-id: file:///svn/phpbb/trunk@6471 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-09 17:44:06 +00:00
Meik Sievertsen
0b2aaae28b - forum image being an additional image instead of replacing forum indicators
- reasons fixes


git-svn-id: file:///svn/phpbb/trunk@6470 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-08 19:04:49 +00:00
Dominik Dröscher
f8be2a133b missing span
git-svn-id: file:///svn/phpbb/trunk@6469 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-08 14:31:03 +00:00
Graham Eames
91dcde955e Changes to language functionality.
Notes to translators:
* Language directory should where possible be named xx[_yy[_zz]] as appropriate for the language code (lower case with underscores to separate)
* USER_LANG should contain the relevant iso code which is returned with page content (ie en-gb for the default language pack)


git-svn-id: file:///svn/phpbb/trunk@6468 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-08 13:42:23 +00:00
Meik Sievertsen
9cfa28b502 remove useless information from tz array
git-svn-id: file:///svn/phpbb/trunk@6467 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-08 11:25:20 +00:00
Meik Sievertsen
9a73fb26b2 filenames and directories are lowercase only
git-svn-id: file:///svn/phpbb/trunk@6466 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-08 11:21:40 +00:00
David M
df20358f6d oops ;-)
git-svn-id: file:///svn/phpbb/trunk@6465 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 22:53:39 +00:00
David M
722ab535a6 Case folding! :D
git-svn-id: file:///svn/phpbb/trunk@6464 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 22:51:55 +00:00
Graham Eames
6972d28633 View profile now shows relevant add/remove links
git-svn-id: file:///svn/phpbb/trunk@6463 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 21:02:06 +00:00
Graham Eames
32c2ea4339 View profile now shows relevant add/remove links
git-svn-id: file:///svn/phpbb/trunk@6462 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 20:11:45 +00:00
Graham Eames
d7545025c3 Make the UTF tools available - recent changes require them in the install and they are likely to be needed in conversion as well
Fix some broken redirects
Change the structure of language packs we scan for.
	(language packs should be named in the form xx-yy - all lowercase with hyphens as the separator)


git-svn-id: file:///svn/phpbb/trunk@6461 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 19:07:42 +00:00
Jonathan Stanley
17f25374ad Set S_USER_LANG for the installer, though requires review since phpBB3
mandates that the language pack directory is in xx/xx-YY/xx-yy format, as browsers
 choke with non-hyphenated formats, eg: xx_YY/xx_yy/xx@Zzzz.


git-svn-id: file:///svn/phpbb/trunk@6460 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 17:54:53 +00:00
Meik Sievertsen
485935e1f1 he braces style is deprecated as of PHP 6
git-svn-id: file:///svn/phpbb/trunk@6459 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 17:40:07 +00:00
Meik Sievertsen
a7df65168c better not. ;)
git-svn-id: file:///svn/phpbb/trunk@6458 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 17:11:51 +00:00
Meik Sievertsen
c40783e6a2 strpos...
git-svn-id: file:///svn/phpbb/trunk@6457 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 16:49:44 +00:00
Meik Sievertsen
eac1b02843 role_name does not need to be case-insensitive
git-svn-id: file:///svn/phpbb/trunk@6456 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 15:53:17 +00:00
Meik Sievertsen
f27edc4b5b for some things we do not need the utf8 function. :)
git-svn-id: file:///svn/phpbb/trunk@6455 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 15:47:55 +00:00
Graham Eames
66c78d114b The zebra ran into a paint factory
git-svn-id: file:///svn/phpbb/trunk@6454 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 14:12:50 +00:00
Graham Eames
e4a4bd0d4e Minor typo
git-svn-id: file:///svn/phpbb/trunk@6453 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 13:14:58 +00:00
Meik Sievertsen
f8528a659c tried to begin adjusting all string functions where applicable - still a *lot* to do.
i hope i catched all relevant sections and did not mess something up.


git-svn-id: file:///svn/phpbb/trunk@6452 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 12:36:31 +00:00
Jonathan Stanley
e87f740a9e Explicitly setting the (X)HTML content-language for the ACP so that Unicode font matching within browsers work correctly when Chinese/Korean/Japanese language packs are selected due to Han Unification
which map different graphemes to the same codepoint.

References:

http://www.w3.org/International/tutorials/tutorial-lang/
http://en.wikipedia.org/wiki/Han_unification


git-svn-id: file:///svn/phpbb/trunk@6451 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-07 00:56:58 +00:00
David M
3ad6069d01 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6450 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-06 22:44:58 +00:00
David M
6c49652a19 #4518
git-svn-id: file:///svn/phpbb/trunk@6449 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-06 22:27:17 +00:00
David M
7777bd5f50 #3794
git-svn-id: file:///svn/phpbb/trunk@6448 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-06 21:37:17 +00:00
Meik Sievertsen
0f0d160ded - support re-caching of theme data if stylesheet.css changed and load_tplcompile enabled
- mcp fixes
- fixed some usability issues


git-svn-id: file:///svn/phpbb/trunk@6447 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-06 18:43:55 +00:00
Meik Sievertsen
c645088a34 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6446 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-06 12:55:36 +00:00
Jonathan Stanley
d4524f1b10 oopsie?!?! :D
git-svn-id: file:///svn/phpbb/trunk@6445 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-05 23:38:13 +00:00
Jonathan Stanley
1577507574 Some initial FAQ (that's FACK, not Eff Aye Que) expansion for phpBB3, keeping in mind the secret template is a little different. ;)
git-svn-id: file:///svn/phpbb/trunk@6444 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-05 23:16:16 +00:00
Graham Eames
db202159e2 Add coluring to search-posts results
git-svn-id: file:///svn/phpbb/trunk@6443 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-05 19:58:37 +00:00
David M
9c83c919a2 #4616
git-svn-id: file:///svn/phpbb/trunk@6442 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-05 00:55:27 +00:00
Graham Eames
dcdd47cb75 Do not show styles select if overriding style
git-svn-id: file:///svn/phpbb/trunk@6441 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-04 20:51:51 +00:00
Graham Eames
50a0c827ce Check that we actually have a valid fp
git-svn-id: file:///svn/phpbb/trunk@6440 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-04 18:25:05 +00:00
Meik Sievertsen
26aba1a1f1 - finally removed sql_numrows
- sql_fetchfield now in dbal.php
- check query id correctly as well as other tiny fixes


git-svn-id: file:///svn/phpbb/trunk@6439 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-04 15:15:40 +00:00
Nils Adermann
f7f6e9bcde - query id can be zero [Bug #4584]
git-svn-id: file:///svn/phpbb/trunk@6438 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-03 20:38:03 +00:00
Meik Sievertsen
aca3b8c5cf ha, the first one...
git-svn-id: file:///svn/phpbb/trunk@6437 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-03 20:28:59 +00:00
Meik Sievertsen
5284f32178 - extend config checking to include check for writeable path
- removed not utilized user_allow_email column from schema
- removed inactive groups (they had no use at all, since inactive users are not able to login)
	The only benefit those brought are distinguish users - but this is no longer needed too due to the inactive code present. This also allows us to retain group memberships as well as default settings for users being set inactive due to profile changes.
- rewrote user_active_flip to support multiple users and a mode, as well as coping with the aforementioned changes
- implemented updated jabber class to support SRV server records and for better jabberd2 support.
- jabber errors now logged to the error log with a full transaction
- fixed user_delete calls to include usernames where possible and also update last post information correctly
- implemented additioal checks to user management to cope with common mistakes
- On installation, guess the required mysql schema as best as possible. Users now only need to decide if they want to use the mysqli extension or not (mysqli selected by default) and no longer need to know their mysql version.
- founders do not need to re-activate their account on profile changes
- remove older session if re-authentication was successful (re-authentication always assigns a new session id)
- set the cookie directly instead of using php's function
- added inactive_remind to see which users got deactivated because of reminders (or re-activation) sent out

hopefully not introduced too many bugs - those testing with CVS releases, please concentrate on user registration, activation, profile changes (email/password)...


git-svn-id: file:///svn/phpbb/trunk@6436 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-03 18:35:59 +00:00
Jonathan Stanley
d7f87be493 Reworded string to better clarify the error
git-svn-id: file:///svn/phpbb/trunk@6435 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-03 13:39:55 +00:00
David M
71c30b8157 #4226
git-svn-id: file:///svn/phpbb/trunk@6434 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-03 03:59:16 +00:00
David M
c4d8c23357 complete check for FB
git-svn-id: file:///svn/phpbb/trunk@6433 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-03 03:17:56 +00:00
David M
50dc65177f kill the cache
git-svn-id: file:///svn/phpbb/trunk@6432 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-02 22:35:50 +00:00
David M
2ce3ab3dc0 remove my debug code
git-svn-id: file:///svn/phpbb/trunk@6431 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-02 15:33:30 +00:00
David M
94121dc765 #4572
git-svn-id: file:///svn/phpbb/trunk@6430 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-02 15:32:41 +00:00
David M
ec9978f2eb #4564
git-svn-id: file:///svn/phpbb/trunk@6429 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-02 15:31:14 +00:00
Meik Sievertsen
cc4a0a2f7a consistent acp layout regarding backlinks and messages.
git-svn-id: file:///svn/phpbb/trunk@6428 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-02 15:11:40 +00:00
Graham Eames
fc76c94ab1 Make sure comments in generated language files include UTF reference
git-svn-id: file:///svn/phpbb/trunk@6427 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-01 20:49:39 +00:00
Graham Eames
17989aba24 Allow for tomorrow in relative dates
git-svn-id: file:///svn/phpbb/trunk@6426 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-01 17:18:37 +00:00
David M
aa71cfaa8b - Goodbye MySQL4, hello unified MySQL driver. MySQL 3.23 to MySQL 5.0 are now in one driver.
git-svn-id: file:///svn/phpbb/trunk@6425 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-01 16:20:05 +00:00
Graham Eames
fd0b2e7df3 Prevent reuse of previous password
git-svn-id: file:///svn/phpbb/trunk@6424 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-01 16:12:53 +00:00
Graham Eames
c42b75d1bc Prevent cookies from other applications interfering with our forms
git-svn-id: file:///svn/phpbb/trunk@6423 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-01 11:10:15 +00:00
David M
bc15445b58 - forgot to make the same change to the ODBC driver
- MySQL 3.x works now
- FirebirdSQL is now on the same level as MySQL and PostgreSQL, zero hacks exist inside the core code now


git-svn-id: file:///svn/phpbb/trunk@6422 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-10-01 08:48:32 +00:00
Graham Eames
bc770de9b9 Minor l10n change
git-svn-id: file:///svn/phpbb/trunk@6421 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-30 16:03:37 +00:00
Meik Sievertsen
4c2e2b83c7 just realizing that it is better to limit the uses of RANGE.
git-svn-id: file:///svn/phpbb/trunk@6420 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-30 15:06:03 +00:00
Meik Sievertsen
b08c54f35e - fixing a bug i am unsure about when it occurs (but it occurs). The symptoms are broken template cache files if after removing unnecessary php opening/closing tags result in statements being syntactially incorrect.
- added real syncing to forums acp (not only forum statistics rebuild)


git-svn-id: file:///svn/phpbb/trunk@6419 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-30 14:58:05 +00:00
Meik Sievertsen
e4fc191e0d of course $host instead of $domain
git-svn-id: file:///svn/phpbb/trunk@6418 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-29 12:06:06 +00:00
Jonathan Stanley
3766d9128d Teh grammar striketh! Oh... and something to please the Typographists. ;)
git-svn-id: file:///svn/phpbb/trunk@6417 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-28 17:51:30 +00:00
Jonathan Stanley
ab76b65cc4 A couple small fixes.
git-svn-id: file:///svn/phpbb/trunk@6416 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-28 17:43:13 +00:00
Meik Sievertsen
34f09c8dea err, no, from the php manual actually... the zend function has some security issues.
git-svn-id: file:///svn/phpbb/trunk@6415 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-28 15:11:57 +00:00
Meik Sievertsen
26befa0941 - added confirmation to removing bbcodes
- added optional MX and DNSBL checks
- added backtrace (triggering sql error) on error within sql_in_set as well as making sure it is handling an array
- let users having f_list access to a forum actually see the forum without a topic list and not displaying an error message - this allows for giving people access to subforums but not the parent forum without the need to add the (sub-)forum to the index.
- some additional bugfixes


git-svn-id: file:///svn/phpbb/trunk@6414 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-28 15:04:59 +00:00
Meik Sievertsen
67accdb072 updated coding guidelines. ;)
git-svn-id: file:///svn/phpbb/trunk@6413 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-28 12:42:36 +00:00
Jonathan Stanley
f48f1c743b A minor boo-boo. :P
git-svn-id: file:///svn/phpbb/trunk@6412 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-28 01:57:49 +00:00
Meik Sievertsen
734492958e These changes should let olympus scale a little bit better.
i haven't adjusted the schemas but added the details to create_schema_files - david is able to build them then in line with his changes. :)


git-svn-id: file:///svn/phpbb/trunk@6411 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-26 19:59:41 +00:00
Graham Eames
e339c36ec0 Update group faq and add section on zebras
git-svn-id: file:///svn/phpbb/trunk@6410 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-26 19:57:44 +00:00
Graham Eames
8a362bdc85 Initial cleanup of "Issues", "Private Messaging" & "Topics"
Further changes will follow


git-svn-id: file:///svn/phpbb/trunk@6409 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-25 21:02:41 +00:00
Graham Eames
9f865447f3 4+1=5
git-svn-id: file:///svn/phpbb/trunk@6408 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-25 18:59:34 +00:00
Meik Sievertsen
12f2fbc415 use the "old" approach
git-svn-id: file:///svn/phpbb/trunk@6407 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-25 14:32:05 +00:00
Dominik Dröscher
8e06ad3829 Welcome the new pagination.html - splitting up multiple pages since 1897.
git-svn-id: file:///svn/phpbb/trunk@6406 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-24 16:02:25 +00:00
Meik Sievertsen
e1beb68ae1 fix bug #4454
git-svn-id: file:///svn/phpbb/trunk@6405 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-24 15:07:08 +00:00
Dominik Dröscher
7e9a6dd8b5 Oops, will keep this out for now. Need to discuss where to put the leged first.
git-svn-id: file:///svn/phpbb/trunk@6404 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-24 14:47:42 +00:00
Meik Sievertsen
287fe750ea i am tired of the support requests for those having changed the permissions of the cache folder on an update (not intentionally most of the time though)
git-svn-id: file:///svn/phpbb/trunk@6403 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-24 14:43:33 +00:00
Dominik Dröscher
46c961b5f5 Giving breadcrumbs their own home. (#4450)
Note that this is currently kinda broken, please no bug reports on the bottom breadcrumb not showing!


git-svn-id: file:///svn/phpbb/trunk@6402 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-24 14:34:39 +00:00
Meik Sievertsen
25fc7e62cd this change may introduce yet another query (not if store_reverse is used internally most of the time), but i hardly noticable on small forums. This change scales very very better than the old method. With the old one viewforum became slower and slower the more topics were present. For me the difference for a forum with 100.000 topics were 0.4 seconds (local server) - for others the speed increase should be noticeably higher.
git-svn-id: file:///svn/phpbb/trunk@6401 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-24 14:03:57 +00:00
Graham Eames
cb31a4446d Forgot this one yesterday
git-svn-id: file:///svn/phpbb/trunk@6400 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-24 12:24:22 +00:00
Jonathan Stanley
6ac33db38d Righto... my first checkin for these language related thingies. Hopefully nothing
has blown up! ;)

The basic style guide is:

1) British English, Cambridge style... ie: -ise, not -ize, etc.
2) Sentence-case pervasively with exception of acronyms/abbreviations, which if not in their contracted form, shall be in title-case. If you don't like it, you can
 restyle it via CSS using text-transform: none|uppercase|lowercase|capitalize; ...
 additional hooks may be added to the strings to assist this.
3) For those that have missed the switch to UTF-8, it means that the language files need not use numeric entities anymore. &lt;, &gt; and &amp; stay though, as
 they must always be entitised.

There'll be more tweaks and changes, though this "big 'un" is out of the way and will get progressively chilly so that it can be frozen for RC1 after
 however many betas there may be. ;) Wooh! :P


git-svn-id: file:///svn/phpbb/trunk@6399 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-24 00:28:32 +00:00
Graham Eames
1d2e60b068 #3896
git-svn-id: file:///svn/phpbb/trunk@6398 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 19:30:01 +00:00
Graham Eames
11c278a037 #4422
git-svn-id: file:///svn/phpbb/trunk@6397 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 15:47:31 +00:00
David M
bab608a1b9 oops
git-svn-id: file:///svn/phpbb/trunk@6396 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 13:44:24 +00:00
Graham Eames
a5a9f16c0d And the schema changes for the inactive user changes
git-svn-id: file:///svn/phpbb/trunk@6395 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 12:39:48 +00:00
Graham Eames
cbece78f7b A reworking of how we handle inactive users
git-svn-id: file:///svn/phpbb/trunk@6394 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 12:27:51 +00:00
Meik Sievertsen
36fa521f92 #4428
git-svn-id: file:///svn/phpbb/trunk@6393 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 11:49:27 +00:00
Dominik Dröscher
1ab3494b44 Bug #3592
This changes the layout for links without redirect count a little but it stops breaking the layout in certain situations.


git-svn-id: file:///svn/phpbb/trunk@6392 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 11:40:21 +00:00
Meik Sievertsen
70dffaacbd fix custom bbcode html replacement to correctly replace references
It failed if there was a number directly after the token, resulting in $12345, where $1 was needed. Fixed by using ${x}

also made sure that newlines within the html replacement are not replaced with <br />.


git-svn-id: file:///svn/phpbb/trunk@6391 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 11:37:05 +00:00
Dominik Dröscher
d62e93ee30 Bug #3876
No need to have the forum list twice in the templates. Goodbye viewbody_subfourm, you served us well!


git-svn-id: file:///svn/phpbb/trunk@6390 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 11:17:03 +00:00
Meik Sievertsen
6d08ef7b3a made sql_rowseek consistent with the dbal methods as well as fixing sql_query_limit for mssql, especially if sql_query_limit($sql, 0, 0) is given...
git-svn-id: file:///svn/phpbb/trunk@6389 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 11:10:37 +00:00
Dominik Dröscher
7542fabaa7 Bug #4322
git-svn-id: file:///svn/phpbb/trunk@6388 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 10:48:20 +00:00
Meik Sievertsen
02c875ebb4 #3802
git-svn-id: file:///svn/phpbb/trunk@6387 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 10:08:05 +00:00
Meik Sievertsen
2069aa0f83 hopefully fixes bug #3135
git-svn-id: file:///svn/phpbb/trunk@6386 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 09:51:18 +00:00
David M
786b34e4d3 SET NAMES on the MySQL 4.1.2+ DBs
git-svn-id: file:///svn/phpbb/trunk@6385 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 02:54:17 +00:00
David M
0f8630e077 the tokenizer is buggy across several versions of PHP. The regex that is always used complies strictly with what the internal lexer uses, we are safe.
git-svn-id: file:///svn/phpbb/trunk@6384 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-23 02:46:43 +00:00
Meik Sievertsen
1d7e3e0fd9 some tiny fixes here and there
git-svn-id: file:///svn/phpbb/trunk@6383 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-22 22:14:05 +00:00
Meik Sievertsen
587ec3fa77 #4406
git-svn-id: file:///svn/phpbb/trunk@6382 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-20 13:20:18 +00:00
David M
b7dab9cdab - Oracle now works with large amounts of text
- MSSQL now works :P (sans UTF-8 support)
- The current schema files work well enough to install, etc. but must be tightened. Will get to it when I get some time...


git-svn-id: file:///svn/phpbb/trunk@6381 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-19 04:50:02 +00:00
Nils Adermann
ea065f3e67 - no more encoding mixture, say hello to UTF-8 (I'll add a validation solution for PHP 4.3.3/4 ASAP) [side effect: fixes Bug #3762]
- take local server time into consideration for birthday/age calculation
- faster active topic search
- allow changing active topic time frame [Bug #4150]
- reload stylesheet on language change [Bug #4222]


git-svn-id: file:///svn/phpbb/trunk@6380 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-17 22:02:28 +00:00
Graham Eames
e2ac2f9d7d Confirm zebra removal...... I mean friend/foe deletion :P
git-svn-id: file:///svn/phpbb/trunk@6379 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-17 15:22:01 +00:00
Meik Sievertsen
8b70eca57c *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6378 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-17 14:45:52 +00:00
Meik Sievertsen
e43b9d2f9b removed debug_extra notice
other fixes
state that mysql.php shouldn't be used for mysql 4.1+ (actually, it should deny using it)


git-svn-id: file:///svn/phpbb/trunk@6377 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-17 14:43:49 +00:00
David M
c6c3df2a73 commenting some code :D
git-svn-id: file:///svn/phpbb/trunk@6376 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-17 02:52:19 +00:00
Graham Eames
bbc4a0c3fe * Fix default language option if more than one pack is present
* Fix moderator roles to match their description
* Add new forum role for closer mapping of converted permissions


git-svn-id: file:///svn/phpbb/trunk@6375 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-16 19:36:48 +00:00
Graham Eames
26d4694071 Extra check on table prefix for mysql
git-svn-id: file:///svn/phpbb/trunk@6374 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-16 14:04:20 +00:00
David M
b1aa007693 oops
git-svn-id: file:///svn/phpbb/trunk@6373 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-16 13:27:21 +00:00
David M
a46a0c10c9 drat
git-svn-id: file:///svn/phpbb/trunk@6372 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-16 13:25:31 +00:00
David M
fe1367b31e bug fixes
schema changes
i really hope nothing went wrong


git-svn-id: file:///svn/phpbb/trunk@6371 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-16 06:07:06 +00:00
David M
9479bc428f yet another oops...
git-svn-id: file:///svn/phpbb/trunk@6370 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-15 22:38:42 +00:00
David M
ccaaa3a307 whitespace :P
git-svn-id: file:///svn/phpbb/trunk@6369 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-15 22:24:41 +00:00
David M
2a4c853f87 new utf8_* stuff
git-svn-id: file:///svn/phpbb/trunk@6368 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-15 22:15:10 +00:00
Meik Sievertsen
f9297794b6 implement bare-bone validation for config variables...
git-svn-id: file:///svn/phpbb/trunk@6367 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-15 14:08:48 +00:00
Meik Sievertsen
79137c312c - Fix some bugs
- fixed retrieving of permissions if the LIKE statement is used as well as proper supporting (needs testing on mssql)


git-svn-id: file:///svn/phpbb/trunk@6366 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-14 14:57:29 +00:00
Meik Sievertsen
665adc1722 seems like i forgot something. :)
git-svn-id: file:///svn/phpbb/trunk@6365 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-13 18:19:39 +00:00
Meik Sievertsen
b76222cb6e - fixed some bugs
- changed attachment handling a bit
- tried to remove target tags out of the code
- do not add session ids to urls for bots as well as not creating a new session on each page view for them

I bet i introduced some bugs too. ;)


git-svn-id: file:///svn/phpbb/trunk@6364 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-13 16:08:36 +00:00
Meik Sievertsen
35c5fe21cb removing some test data to not give the impression we provide an update between betas.
git-svn-id: file:///svn/phpbb/trunk@6363 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-11 18:03:15 +00:00
David M
d3f8ea83db oops
git-svn-id: file:///svn/phpbb/trunk@6362 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-10 15:04:56 +00:00
Graham Eames
227980c7d1 Add the lock file to allow dynamic menus
git-svn-id: file:///svn/phpbb/trunk@6361 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-08 20:06:00 +00:00
Graham Eames
6568ab756c Next phase of last post changes + a few minor bugs
Note: This template variable is available but will not be used by default


git-svn-id: file:///svn/phpbb/trunk@6360 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-08 18:00:38 +00:00
Dominik Dröscher
b150ed0324 Some more username colouring
git-svn-id: file:///svn/phpbb/trunk@6359 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-08 17:35:21 +00:00
Dominik Dröscher
6a2197f196 Coloured usernames should always appear bold
git-svn-id: file:///svn/phpbb/trunk@6358 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-07 20:16:13 +00:00
Dominik Dröscher
2a470b7e4c #4174 - closing some spans
git-svn-id: file:///svn/phpbb/trunk@6357 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-07 08:33:19 +00:00
Nils Adermann
8799d8d65c oops
git-svn-id: file:///svn/phpbb/trunk@6356 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-06 20:58:53 +00:00
Graham Eames
4018c48abb Consistancy with the actual link text
git-svn-id: file:///svn/phpbb/trunk@6355 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-06 19:23:23 +00:00
Meik Sievertsen
504eef65c5 check file type
git-svn-id: file:///svn/phpbb/trunk@6354 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-05 15:17:45 +00:00
Meik Sievertsen
2c2a2c10d9 oh, forgot one thing
git-svn-id: file:///svn/phpbb/trunk@6353 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-05 09:22:57 +00:00
Meik Sievertsen
8ab85ebdb0 - fix security issue in download.php
- fixing some phpdocumentor warnings/errors
- adjust pop-before-smtp "auth" (nowadays no one should rely on it)
- add backtrace for smtp email errors if DEBUG_EXTRA is enabled


git-svn-id: file:///svn/phpbb/trunk@6352 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-04 20:35:46 +00:00
Meik Sievertsen
8c567e8c68 - fixing profile bug
- adjusting acl_gets calls (they are or'd - make sure they get checked correctly based on the situation)
- automatically assign the u_download and u_search permission to the guest group


git-svn-id: file:///svn/phpbb/trunk@6351 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-04 13:47:56 +00:00
Graham Eames
5ea461108e - Fix warning removal, x - 0 = x ;-)
- Make sure that the cached colour information is updated when altering groups
   - Also consolidate some related code at the same time


git-svn-id: file:///svn/phpbb/trunk@6350 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-02 15:36:45 +00:00
Meik Sievertsen
64af84dc6b the file updater. This is in CVS but the file is not able to be used without the correct update packages - no need to try.
Please note that even if the file is now in CVS it does not mean we provide an update path from Beta2 to any other version.


git-svn-id: file:///svn/phpbb/trunk@6349 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-02 14:34:20 +00:00
Meik Sievertsen
609744041b our new update_to_latest.php file replacement. ;)
Please note that even if the file is now in CVS it does not mean we provide an update path from Beta2 to any other version.


git-svn-id: file:///svn/phpbb/trunk@6348 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-02 13:53:50 +00:00
Meik Sievertsen
f3b545bb59 add version check to acp. Now no longer directly displayed at the acp index but accessible through the System tab and viewable by any admin (no special permisison needed).
git-svn-id: file:///svn/phpbb/trunk@6347 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-02 13:39:21 +00:00
Meik Sievertsen
49a94efe1f some icons from tortoiseCVS. Someone more competent in creating icons may want to replace them. ;)
git-svn-id: file:///svn/phpbb/trunk@6346 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-02 13:34:37 +00:00
Meik Sievertsen
3ea2d53cb2 some changes/fixes
git-svn-id: file:///svn/phpbb/trunk@6345 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-02 13:33:06 +00:00
Dominik Dröscher
cf7a261408 necessary!
git-svn-id: file:///svn/phpbb/trunk@6344 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-02 12:56:49 +00:00
Dominik Dröscher
5e2cfc887f Fixing a few minor things ... Sorry Jon, got bored and fixed some of the spelling mistakes assigned to you. :)
git-svn-id: file:///svn/phpbb/trunk@6343 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-02 12:00:21 +00:00
Meik Sievertsen
5f30881c2c fix some bugs - hopefully not breaking anything...
git-svn-id: file:///svn/phpbb/trunk@6342 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-09-01 13:16:22 +00:00
Dominik Dröscher
888bbf6ff4 Forgot to check whether visual confirmation displayed properly with the new reauth layout. I didn't. Did I mention that I hate working with tables for layout? Thank the gods for the new style. ;-)
git-svn-id: file:///svn/phpbb/trunk@6341 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-31 22:11:30 +00:00
Dominik Dröscher
85902a9056 - removing the registration text / privacy policy and terms of use link for admin reauthentication - --------- - changing the layout of the reauth login a little due to the above changes
git-svn-id: file:///svn/phpbb/trunk@6340 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-31 21:49:29 +00:00
Dominik Dröscher
4d61431256 Fixed cell width
git-svn-id: file:///svn/phpbb/trunk@6339 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 20:12:54 +00:00
Dominik Dröscher
4354729066 Some interface work on the ACP:
- #3774 and more


git-svn-id: file:///svn/phpbb/trunk@6338 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 19:47:36 +00:00
Graham Eames
996d946148 Correctly set IP address on initial post and user profile
git-svn-id: file:///svn/phpbb/trunk@6337 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 19:44:32 +00:00
Graham Eames
d64e44b878 Error if no post in a forum
git-svn-id: file:///svn/phpbb/trunk@6336 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 19:33:55 +00:00
David M
239bd5e37c oops :P
git-svn-id: file:///svn/phpbb/trunk@6335 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 13:15:36 +00:00
David M
733774d747 - Bug #3986
git-svn-id: file:///svn/phpbb/trunk@6334 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 01:31:50 +00:00
David M
3f6318f2b1 - Bug #4028
git-svn-id: file:///svn/phpbb/trunk@6333 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 01:15:40 +00:00
David M
bb3034eb26 - Bug #4000
git-svn-id: file:///svn/phpbb/trunk@6332 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 00:58:36 +00:00
David M
bd4391d4ca - Bug #3978
git-svn-id: file:///svn/phpbb/trunk@6331 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-30 00:52:14 +00:00
Nils Adermann
457078f2cf - only highlight when there is anything to highlight
git-svn-id: file:///svn/phpbb/trunk@6330 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-29 20:25:28 +00:00
Meik Sievertsen
1564013fdd a script to update old bbcode bitfields to the new format. ;)
git-svn-id: file:///svn/phpbb/trunk@6329 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-29 17:23:44 +00:00
Meik Sievertsen
1307146a93 small correction to the coding guidelines
git-svn-id: file:///svn/phpbb/trunk@6328 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-29 15:52:05 +00:00
Meik Sievertsen
69983a2d4e fixing bug #4078
git-svn-id: file:///svn/phpbb/trunk@6327 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-29 15:05:56 +00:00
Meik Sievertsen
284cba438b hopefully fixing bug #3966
git-svn-id: file:///svn/phpbb/trunk@6326 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-29 14:57:17 +00:00
Nils Adermann
b4c095cb3e -forgot list items
git-svn-id: file:///svn/phpbb/trunk@6325 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-28 21:15:05 +00:00
Dominik Dröscher
64dc59ac82 What is that you say? Coding guidelines? I don't know no freaking coding guidelines!
git-svn-id: file:///svn/phpbb/trunk@6324 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-28 20:20:38 +00:00
Dominik Dröscher
4cf8487e8d Some language changes. Don't get too excited when I submit stuff.
git-svn-id: file:///svn/phpbb/trunk@6323 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-28 20:11:48 +00:00
Dominik Dröscher
e59432cbc5 Hehehehe ...
git-svn-id: file:///svn/phpbb/trunk@6322 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-28 18:45:18 +00:00
Nils Adermann
c0a880b665 - birthdays/age in user's timezone and not server's local time
- parse bbcode in posts with fewer characters than selected maximum on search results page
- retrieve search word context in posts which are longer than maximum characters (no raw BBCode anymore)
- formatted text is processed in the same order everywhere now: censor_text, replace newlines, bbcode, smileys, attachments, highlighting [including Bug #2048]
- highlighting pattern updated to exclude style and script (e.g custom BBCode) [Bug #3856]
- fixed a style problem in Opera [Bug #3770]
- performance increase for user::img()
- slight adjustments to search


git-svn-id: file:///svn/phpbb/trunk@6321 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-28 17:20:21 +00:00
Meik Sievertsen
1d37b69ddd - some bugfixes
- using E_USER_WARNING if an error occurred within the ACP (sadly not able to use it as a default for trigger_error - it seems to be hardcoded in PHP)


git-svn-id: file:///svn/phpbb/trunk@6320 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-28 15:50:33 +00:00
Dominik Dröscher
902285684d Some more minor style bugs fixed.
git-svn-id: file:///svn/phpbb/trunk@6319 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-27 19:22:06 +00:00
Dominik Dröscher
6d583dcf6e Testing, testing, ... is this thing on?
Some cleaning up on view profile - bug #3834


git-svn-id: file:///svn/phpbb/trunk@6318 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-27 18:32:22 +00:00
Meik Sievertsen
e7cbcfe874 some fixes.
David, could you check the pass_complex expressions? They are:
.* PASS_TYPE_ANY (any characters are allowed, no check)
[a-zA-Z] PASS_TYPE_CASE (password must contain alphanumerics)
[a-zA-Z0-9] PASS_TYPE_ALPHA (password must contain alphanumerics and numbers)
[a-zA-Z\W] PASS_TYPE_SYMBOL (password must contain alphanumers, numbers and symbols)

At the moment the pass complexity check is done within validate_password(), but the expressions are wrong. :)


git-svn-id: file:///svn/phpbb/trunk@6317 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-25 15:15:53 +00:00
Meik Sievertsen
d1ae8c52a4 colour is a string. :)
git-svn-id: file:///svn/phpbb/trunk@6316 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-23 15:46:10 +00:00
Graham Eames
e6e1be9827 Fix some minor bugs arising from yesterday.
Nils - I haven't looked into the other related pages yet


git-svn-id: file:///svn/phpbb/trunk@6315 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-23 14:59:52 +00:00
Meik Sievertsen
5fda5b4ab0 fix redirect if we are within the admin directory (not /ucp.php but /{admin_directory}/index.php)
git-svn-id: file:///svn/phpbb/trunk@6314 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-23 07:52:07 +00:00
Meik Sievertsen
cb23c1f044 Thanks to the GPL we are able to use the pear package text_diff - now splitted into the diff classes, the renderer and the engine
git-svn-id: file:///svn/phpbb/trunk@6313 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-22 21:29:45 +00:00
Meik Sievertsen
1d42d1b981 some updates. Also adjusted the utf tools and normalizer more to our coding guidelines.
git-svn-id: file:///svn/phpbb/trunk@6312 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-22 21:26:06 +00:00
Graham Eames
b0afc8e632 Phase 2 of the changes
This should now be complete


git-svn-id: file:///svn/phpbb/trunk@6311 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-22 11:01:56 +00:00
Meik Sievertsen
556bbfe856 specialchar sql query to ensure proper display if there are html characters within the sql query
git-svn-id: file:///svn/phpbb/trunk@6310 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-22 10:57:57 +00:00
Graham Eames
4553293053 Initial batch of colourization changes. This includes:
- schema changes for first post and last post
 - display in viewforum, search and ucp of first post
 - update of database on posting
Still outstanding
 - display of last post


git-svn-id: file:///svn/phpbb/trunk@6309 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-21 15:58:48 +00:00
Meik Sievertsen
1332ec033f - add some language variables i will need at another location. ;)
- also add X-Sendfile support to the download.php file.


git-svn-id: file:///svn/phpbb/trunk@6308 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-20 19:50:08 +00:00
Graham Eames
49d56f90e5 Poll ended at....
git-svn-id: file:///svn/phpbb/trunk@6307 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-20 17:47:47 +00:00
Graham Eames
56d517d1be Duplicated entry in the sort options
+ misc template issues


git-svn-id: file:///svn/phpbb/trunk@6306 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-20 15:48:00 +00:00
Graham Eames
80162a8145 Minor schema change related to avatars so that they can be > 127px in size
Add additional note about the install directory
Remove some empty tags from the template


git-svn-id: file:///svn/phpbb/trunk@6305 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-20 12:59:15 +00:00
Meik Sievertsen
9db68f5d4e put a comment to the captcha_gd header so everyone understands that no more policies are allowed to the extend that some will most likely be removed.
git-svn-id: file:///svn/phpbb/trunk@6304 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-20 11:04:27 +00:00
David M
7c59533950 more efficient + fixing an oops
git-svn-id: file:///svn/phpbb/trunk@6303 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-19 14:36:00 +00:00
David M
f39eeda225 The regex used here are more or less identical to those used internally by the PHP lexer (ok, ok, they are a *little* bit more optimized), we should not need to call the tokenizer at all now...
git-svn-id: file:///svn/phpbb/trunk@6302 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-19 04:42:13 +00:00
David M
11dba17606 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6301 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-18 21:19:39 +00:00
David M
7e3c54ed60 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6300 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-18 20:59:43 +00:00
David M
0fa54c182a *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6299 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-18 20:44:25 +00:00
David M
c2f253af23 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6298 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-17 13:23:49 +00:00
David M
6294974d86 forgot to remove some debug code :P
git-svn-id: file:///svn/phpbb/trunk@6297 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-17 04:27:38 +00:00
David M
cfc23dd562 - getcwd replacement
- realpath stuff thanks to Chris


git-svn-id: file:///svn/phpbb/trunk@6296 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-17 04:26:07 +00:00
David M
10f1be96ff If this does not fix it, I am not quite so sure it *can* be fixed as this output exactly models that of the official MySQL tools...
git-svn-id: file:///svn/phpbb/trunk@6295 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-17 01:47:14 +00:00
David M
e6be1795ca *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6294 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-17 01:15:01 +00:00
David M
481f090a39 chr(0x20 | 0x10) = "0"
git-svn-id: file:///svn/phpbb/trunk@6293 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-15 02:13:05 +00:00
David M
75ca1c9764 If i could force you all to use PHP 5.1.0+, then i could just use the count param with preg_replace. Oh well...
git-svn-id: file:///svn/phpbb/trunk@6292 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-15 01:08:51 +00:00
Graham Eames
332bd12835 Add GD to the list of optional requirements since it allows more VC images to be used
git-svn-id: file:///svn/phpbb/trunk@6291 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-13 18:21:43 +00:00
Meik Sievertsen
125b1dde8a re-allow editing icons and smilies. :/
git-svn-id: file:///svn/phpbb/trunk@6290 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-13 14:08:23 +00:00
Nils Adermann
559ff6c678 we don't want all topics when searching for just a few\!
git-svn-id: file:///svn/phpbb/trunk@6289 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-13 12:23:32 +00:00
Graham Eames
dced943db5 Revert a deletion made earlier today
git-svn-id: file:///svn/phpbb/trunk@6287 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 20:24:25 +00:00
Meik Sievertsen
5b164b086b make sure we do not have empty select fields
git-svn-id: file:///svn/phpbb/trunk@6286 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 19:36:36 +00:00
Graham Eames
5c0b8186a0 Hide forums you can't move posts to from within the mcp
git-svn-id: file:///svn/phpbb/trunk@6285 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 19:06:09 +00:00
Nils Adermann
3675b8fcd6 - set default_style when the old default style is being deleted
- Do not search for moved topics in the premade searches (new/active/unanswered) and if one occurs for whatever reason, at least display it properly [Bug #3756]


git-svn-id: file:///svn/phpbb/trunk@6284 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 18:46:47 +00:00
David M
31cf21e3c2 radius += 2
git-svn-id: file:///svn/phpbb/trunk@6283 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 18:46:06 +00:00
David M
38397c58fa *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6282 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 18:26:54 +00:00
David M
edb40a59aa *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6281 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 17:56:33 +00:00
David M
e85b5d9f6e forgot this :P
git-svn-id: file:///svn/phpbb/trunk@6280 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 17:08:26 +00:00
Meik Sievertsen
2ab9ebad06 firebird :P
git-svn-id: file:///svn/phpbb/trunk@6279 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 17:06:38 +00:00
David M
974347b35a Firebird :P
git-svn-id: file:///svn/phpbb/trunk@6278 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 16:50:13 +00:00
Graham Eames
22dd6ccc5d Missing lang strings
git-svn-id: file:///svn/phpbb/trunk@6277 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 15:56:17 +00:00
Graham Eames
560c570823 Allow ACP access if install/ is present and display the generic board disabled message otherwise so that a user does not know the reason for it being disabled
git-svn-id: file:///svn/phpbb/trunk@6276 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 15:37:28 +00:00
Meik Sievertsen
f5cabf864c bugfixes
git-svn-id: file:///svn/phpbb/trunk@6275 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 15:10:43 +00:00
Nils Adermann
ef71892edd - casting to int so this won't throw any unwanted errors
git-svn-id: file:///svn/phpbb/trunk@6274 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 15:02:04 +00:00
Nils Adermann
b3b09186fe m_approve_fid should be negated
git-svn-id: file:///svn/phpbb/trunk@6273 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 14:58:02 +00:00
Nils Adermann
e9a14eebf6 - removed some more useless language strings [Bug #3648]
- removed hard to translate words "by" and "on"


git-svn-id: file:///svn/phpbb/trunk@6272 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 13:55:01 +00:00
Meik Sievertsen
8405f0d324 sql_in_set changes
git-svn-id: file:///svn/phpbb/trunk@6271 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 13:14:39 +00:00
Meik Sievertsen
0c6bfcf4c7 update schema for oracle
git-svn-id: file:///svn/phpbb/trunk@6270 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 12:54:16 +00:00
Graham Eames
5431815b0a Language variable for consistancy with the other mcp modules
git-svn-id: file:///svn/phpbb/trunk@6269 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 11:04:33 +00:00
Graham Eames
a4c580e8f8 Check the prefix length to ensure that the key names are within the maximum for that DBMS
git-svn-id: file:///svn/phpbb/trunk@6268 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 07:00:26 +00:00
David M
ca2a672d20 - New color generation system, please report any images that have issues.
git-svn-id: file:///svn/phpbb/trunk@6267 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 02:09:41 +00:00
Nils Adermann
b1ef984526 - auto sync attachment topic flag [Bug #2949]
- corrected paths for templates stored in the db and filenames displayed in the template editor [Bug #3662]
- removed some useless language strings [Bug #3648]
- corrected escaping of usernames and passwords in auth modules [Bug #3696], added ldap_escape


git-svn-id: file:///svn/phpbb/trunk@6266 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 01:58:58 +00:00
David M
b5a6291fa5 - oops
git-svn-id: file:///svn/phpbb/trunk@6265 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-12 01:38:00 +00:00
David M
a8c49875f7 heh
git-svn-id: file:///svn/phpbb/trunk@6264 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-11 22:06:54 +00:00
David M
86f3d738a0 so.... what does this thing do?
well, the super fast, ultra efficient, massively huge BBCode handling system was implemented differently on each DBMS. Although this provided the best performance, the solution was a bit hacky.

So what does this new thing do? We use base64 encoding to make everything nice and shiny, it turns into nice, safe characters that we can just jam into varchars on essentially any database. This has two implications: we must decode every bitfield we get AND we have slightly fewer IDs to work with. It goes down from 2040 BBCodes to 1512. We lose like a quarter of them :P

P.S. I hope nothing broke :P


git-svn-id: file:///svn/phpbb/trunk@6263 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-11 21:52:46 +00:00
Nils Adermann
9086adad3c Oops, I forgot the negate bit in sql_in_set()
git-svn-id: file:///svn/phpbb/trunk@6262 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-11 18:21:59 +00:00
Nils Adermann
d8af8223cd Adding the sql_in_set function which should give us a bit of a performance improvement for queries using IN with just one value
git-svn-id: file:///svn/phpbb/trunk@6261 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-11 17:43:03 +00:00
Meik Sievertsen
7508b00978 submit some attachment changes/fixes as well as fixing the language pack download for zip files.
git-svn-id: file:///svn/phpbb/trunk@6260 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-11 13:21:51 +00:00
Meik Sievertsen
b70a0369af fixing bug #3702
git-svn-id: file:///svn/phpbb/trunk@6259 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-11 10:24:37 +00:00
Meik Sievertsen
09dc825079 - include missing files in language pack download
- add mods directory, else we most likely forget that language files within the mods directory are automatically editable (to support seperating mod language files).


git-svn-id: file:///svn/phpbb/trunk@6258 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-11 10:09:54 +00:00
Nils Adermann
83e6dcb1ce - removed a useless line [Bug #3656]
- do not reuse session ids [Bug #3626]
- Bug #3684
- added refresh imageset option


git-svn-id: file:///svn/phpbb/trunk@6257 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-10 13:33:06 +00:00
Meik Sievertsen
53085a4c78 - load tracking updates. Need to be tested on a clean installation too - at the moment only tiny quirks are noticed at area51.
- reported bugs fixed


git-svn-id: file:///svn/phpbb/trunk@6256 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-09 21:03:46 +00:00
David M
b470f34807 Nobody found this bug so i guess nobody has such an old DB :P
MySQL < 4.1.2 has a broken varbinary. TINYBLOB is (2**8)-1 characters = 255. This means we can let older DBs use our stuff without any fear.


git-svn-id: file:///svn/phpbb/trunk@6255 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-09 15:53:10 +00:00
Nils Adermann
c69a6f7acd - fixed some problems with themes
- added support for {IMG_NAME_SRC}, {IMG_NAME_WIDTH} and {IMG_NAME_HEIGHT}
- fulltext_native has to use group by in a few more quries


git-svn-id: file:///svn/phpbb/trunk@6254 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-08 19:02:44 +00:00
Graham Eames
2ed25800c5 Add a missing image, thanks dhn :)
git-svn-id: file:///svn/phpbb/trunk@6253 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-07 19:44:17 +00:00
David M
285ffad3c1 This is kinda nice.. Before MySQL 5.0.3, traling spaces were removed when values were stored. This means that some BBCodes might not have worked. A bad thing. So, I cleverly stick a \0 at the end if this is the case. The \0 does not really modify the bitfield at all, it simply represents that there are no BBCodes in that range of eight. Idealy, we should do a version check to see if this is needed but this is just a nice fix for now...
git-svn-id: file:///svn/phpbb/trunk@6252 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-07 18:43:30 +00:00
Meik Sievertsen
46d7df8772 ups
git-svn-id: file:///svn/phpbb/trunk@6251 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-07 13:25:56 +00:00
Meik Sievertsen
19db55e8f3 updated schema files. Also added a new load setting and some missing keys.
git-svn-id: file:///svn/phpbb/trunk@6250 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-07 13:22:42 +00:00
Meik Sievertsen
644c4bd046 also make sure users not allowing cookies are retained on the first visit ;)
git-svn-id: file:///svn/phpbb/trunk@6249 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-07 10:45:05 +00:00
Meik Sievertsen
9193878c05 Fix session id assignment for bots (previously this bug related in bots creating a new session for every view, now bots are assigned one session like normal users - still no rotation).
If cookie is there but having an empty session try to get it through the url - but also resetting the user


git-svn-id: file:///svn/phpbb/trunk@6248 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-07 10:42:22 +00:00
David M
b789628c57 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6247 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-07 03:21:28 +00:00
David M
cbd65ca2c9 Databases that gain cool points:
MSSQL
Firebird
SQLite
Oracle

Databases that lose cool points:
MySQL
PostgreSQL

MySQL recently-ish gained character set features. PostgreSQL has zero, none; one must create the database as unicode. The only way I can think of getting PostgreSQL to do what I want it to do would require something rather crazy...


git-svn-id: file:///svn/phpbb/trunk@6246 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 19:20:35 +00:00
Nils Adermann
7c01c5ceb9 Backup files are now named backup_[timestamp].sql.*
git-svn-id: file:///svn/phpbb/trunk@6245 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 18:47:11 +00:00
David M
ed69b27cb6 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6244 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 18:18:02 +00:00
David M
5541765c4a - Bug
git-svn-id: file:///svn/phpbb/trunk@6243 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 18:06:00 +00:00
Graham Eames
34a8d610c0 Fix a minor typo
git-svn-id: file:///svn/phpbb/trunk@6242 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 17:43:39 +00:00
Nils Adermann
8b079894f3 - finally making the age calculation work [Bug #3582]
- replacing all occurances of L_NONE with a more specific string [Bug #3494]
- a few corrections to html id attributes in the installer
- using correct permission in mcp_report [Bug #2471]
- allow deleting the avatar, when no upload method is enabled and hide the delete button if no avatar is set


git-svn-id: file:///svn/phpbb/trunk@6241 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 17:25:29 +00:00
Graham Eames
4af44652ac Fix a couple of hard-coded strings in the templates
git-svn-id: file:///svn/phpbb/trunk@6240 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 14:18:05 +00:00
David M
f8c6379915 *** empty log message ***
git-svn-id: file:///svn/phpbb/trunk@6239 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 06:06:00 +00:00
David M
2f901a5203 This should end some issues we have been having regarding the proper binary encoding of stuff. :D
Acyd Burn: quit breaking the schema :P


git-svn-id: file:///svn/phpbb/trunk@6238 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-06 05:52:41 +00:00
Meik Sievertsen
b4b901b825 - fixed some bugs
- made imageset naming more consistent
- updated every schema to be consistent and also fixed it (every db should install fine now)
-


git-svn-id: file:///svn/phpbb/trunk@6237 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-05 15:49:28 +00:00
Graham Eames
0a007bd5d7 Deal with incorrect keys in the config file
git-svn-id: file:///svn/phpbb/trunk@6236 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-03 21:00:51 +00:00
Graham Eames
6742bcece7 Hide smilies if disabled
git-svn-id: file:///svn/phpbb/trunk@6235 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-03 20:24:56 +00:00
Graham Eames
a4f35f045e Min ranks
git-svn-id: file:///svn/phpbb/trunk@6234 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-03 19:52:48 +00:00
Graham Eames
957a3bcda1 Assorted minor language changes
git-svn-id: file:///svn/phpbb/trunk@6233 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-03 19:10:39 +00:00
Meik Sievertsen
82f42bb5fa - custom profile field fixed
- fixing sql_fetchfield from cache
- changing the quote parser. In my tests i have not seen changed behaviour - but i might have broken something with this change.


git-svn-id: file:///svn/phpbb/trunk@6232 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-03 15:23:34 +00:00
Graham Eames
650007a5f1 Fix a speeling error ;-)
git-svn-id: file:///svn/phpbb/trunk@6231 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-02 17:55:34 +00:00
Meik Sievertsen
a7225f2952 ok, but this time...
git-svn-id: file:///svn/phpbb/trunk@6230 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-02 17:38:48 +00:00
Meik Sievertsen
a07193a22a this change should let firebird work again correctly... or not.
git-svn-id: file:///svn/phpbb/trunk@6229 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-02 17:18:23 +00:00
Meik Sievertsen
b15a3111be - fixing some bugs
- removed file_exists calls for auth plugins since they need to be there once set up


git-svn-id: file:///svn/phpbb/trunk@6228 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-02 15:53:19 +00:00
Nils Adermann
48a48aa86d fixing a typo ;-)
git-svn-id: file:///svn/phpbb/trunk@6227 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-02 09:36:31 +00:00
Nils Adermann
63322c5a0e mysqli results are objects, not resources
git-svn-id: file:///svn/phpbb/trunk@6226 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-02 09:13:39 +00:00
Nils Adermann
09081e410f - acm_file uses an index pointer to the current row instead of shifting the result array now [Bug #2451]
- all dbals adjusted to use the cache in sql_fetchfield, sql_rowseek, sql_numrows and sql_freeresult [Bug #2451]
- use include_once for dbal.php to at least theoretically allow connections to multiple databases at once
- added a space to an SQL query [Bug #3506]
- detailed information on adding friends/foes [Bugs #2509, #2499]
- e modifier stands for evil, so I removed it ;-)
- corrected progress_bar image filename in imageset.cfg [Bug #3374]


git-svn-id: file:///svn/phpbb/trunk@6225 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-01 16:14:14 +00:00
Meik Sievertsen
ced8624b8e - fixing some bugs
- shortening some db columns to meet the requirements
- correctly increase/decrease user post counts
- fix the topic title length bug(s)


git-svn-id: file:///svn/phpbb/trunk@6224 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-01 15:29:47 +00:00
David M
541dbf8af0 - BBCode helpline is now customizable
git-svn-id: file:///svn/phpbb/trunk@6223 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-01 05:06:33 +00:00
David M
3c69c8f00a - Captcha ACP
- BBCode stuff


git-svn-id: file:///svn/phpbb/trunk@6222 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-01 04:23:13 +00:00
David M
85e049dd66 eh
git-svn-id: file:///svn/phpbb/trunk@6221 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-01 04:01:35 +00:00
David M
3fb98a7598 - Something, something, something
git-svn-id: file:///svn/phpbb/trunk@6220 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-01 03:56:36 +00:00
David M
1527407654 me === idiot
git-svn-id: file:///svn/phpbb/trunk@6219 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-08-01 03:45:40 +00:00
David M
936b1d2586 Who is an idiot? I AM
git-svn-id: file:///svn/phpbb/trunk@6218 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-30 18:21:02 +00:00
Graham Eames
8b14bdc73d Adding the new warning image to the appropriate places
Thanks to dhn for the image


git-svn-id: file:///svn/phpbb/trunk@6217 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-30 14:20:12 +00:00
Nils Adermann
0815df3c58 - removed an accidentaly pasted line [Bug #3227]
- added missing images to acp_styles [Bug #2623] and added a new image btn_warn
- use the style name when exporting a style instead of the non existant path [Bug #2343]
- fixed an incorrect call of acp_styles::install_style() [Bug #2325]
- always define $search_query in fulltext_mysql [Bug #3476]


git-svn-id: file:///svn/phpbb/trunk@6216 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-30 14:09:52 +00:00
Graham Eames
7bff8d1096 Correct some of the sort options
git-svn-id: file:///svn/phpbb/trunk@6215 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-29 11:35:32 +00:00
Graham Eames
f3610a934c Fix list indentation
git-svn-id: file:///svn/phpbb/trunk@6214 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-29 10:59:56 +00:00
David M
b8076c575c - Bugs
git-svn-id: file:///svn/phpbb/trunk@6213 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-28 03:45:32 +00:00
David M
22d778fcff - Fix Oracle
- Make MySQL schema a little different than the others...
- Fix MCP_TOPIC


git-svn-id: file:///svn/phpbb/trunk@6212 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-28 02:56:02 +00:00
Nils Adermann
007f4f6987 - fixed the age calculation (note: turn on your brain before commiting something like this the next time) [Bug #3337]
- removed the split_words array, introduced an enforced search_query
- the forum used for global topics in the search is now a forum, and no longer a category [Bug #2561]
- Bug #3404
- allow accessing reports by report_id, in contrast to mcp_queue this cannot just use the post id, since there can be multiple closed reports per post, so closed reports have to be accessed by report id, open reports, can optionally be accessed by report id or post id [Bug #3149]
- only attempt to unflag reported topics on closing a report when there are any without other reported posts [Bug #3057]
- updated fulltext_mysql to use the the search_query string
- overwrote the old fulltext_native with our improved version since it consumes too much time to maintain boths and we would switch to the improved version later anyway
- always show a link to search a user's posts even if the postcount is zero since he  might only have posted in forums which do not count posts [Bug #3267]


git-svn-id: file:///svn/phpbb/trunk@6211 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-27 19:02:47 +00:00
David M
412cf50689 oops :P
git-svn-id: file:///svn/phpbb/trunk@6210 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-25 11:58:11 +00:00
David M
9532514c2a OK...
This commit should increase the total number of BBCodes from 31 to 2040. Some things to watch out for:

Each database likes to deal with binary data in its own, special way. They are, quite frankly, too cool for school.

MySQL, MSSQL and Oracle all allow me to send in a default value for their binary column using a hex number. However, MSSQL forces me to send the specific data as a hex number and thus we must CAST it.

PostgreSQL allows me to set a binary column, but with a twist. It demands that the default be in _octal_ and its datatype allows somewhere around a gigabyte's worth of BBCodes ( PGSQL users, we shut you down to 2040 for your own good! )

Firebird has no decent mechanism for allowing me to shuttle in binary data so I must force my way in. By virtue of triggers and a UDF, we ram in our default values.

SQLite is the most bizarre of them all. They have no mechanism for turning an ASCII code into a ASCII character. Because of this, we have a trigger and a UDF (just like Firebird!) but with a twist! The UDF is defined on the PHP side of things instead of SQL. SQLite also demands that it's data be encoded before being sent off.

Other notes:
- SQLite installs again :D
- Firebird nearly installs again :P
- Database backup is not screwed up :P

P.S.
I hope nothing broke :D


git-svn-id: file:///svn/phpbb/trunk@6209 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-24 10:08:36 +00:00
Ludovic Arnaud
48b2dc1277 Fixed: bug #3243
git-svn-id: file:///svn/phpbb/trunk@6208 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-24 07:53:35 +00:00
Ludovic Arnaud
b7b8bf3857 Fixed: oops, forgot ASP-like tags
Fixed: <?! was not escaped, despite being valid PHP
(cvstats++)


git-svn-id: file:///svn/phpbb/trunk@6207 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-23 22:38:27 +00:00
Ludovic Arnaud
ed69875649 Fixed: bug #3352 (function token_get_all() is missing)
git-svn-id: file:///svn/phpbb/trunk@6206 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-23 22:16:05 +00:00
Ludovic Arnaud
afad755f93 Fixed: a double slash appears in the installer URL if you go to the board and config.php is missing
git-svn-id: file:///svn/phpbb/trunk@6205 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-23 21:26:53 +00:00
Ludovic Arnaud
185702fd5d Fixed: if phpBB isn't installed, it redirects to http://host.tld\/install/index.php on my Windows dev server
Changed: instead of undoubling double slashes, we replace any number of consecutive backslashes and forward slashes with a single slash


git-svn-id: file:///svn/phpbb/trunk@6204 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-23 20:59:41 +00:00
Graham Eames
4680dfce39 Include a link to the post by default when issuing a warning
git-svn-id: file:///svn/phpbb/trunk@6203 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-23 20:59:08 +00:00
Graham Eames
5e7f9e1a0d Silly copy and paste error :(
git-svn-id: file:///svn/phpbb/trunk@6202 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-23 18:52:56 +00:00
Graham Eames
ba5d555669 Make sure that the language does get passed between all modules
git-svn-id: file:///svn/phpbb/trunk@6201 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-23 17:43:48 +00:00
Graham Eames
4cf863dcb3 Changes to the language handling during the install
git-svn-id: file:///svn/phpbb/trunk@6200 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-23 16:04:51 +00:00
Graham Eames
5879c1c5c1 * Error handling on bans
* Missing language strings
* Grammatical correction in viewtopic (singular vs plural)


git-svn-id: file:///svn/phpbb/trunk@6199 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-21 20:44:27 +00:00
Meik Sievertsen
73ac6b1423 - some bugfixes
- set ip_check to A.B.C. by default
- display postings in other encodings by default and present link to force the encoding as usual.


git-svn-id: file:///svn/phpbb/trunk@6198 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-20 21:45:24 +00:00
Ludovic Arnaud
3f3db8cdaa Changed: add a space both before AND after Hangul and CJK characters so that they are never part of another word
git-svn-id: file:///svn/phpbb/trunk@6197 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-20 21:26:54 +00:00
Graham Eames
d20997f5bc * Missing image in imageset editing
* Sort the list of images
* Enforce default username limits on install


git-svn-id: file:///svn/phpbb/trunk@6196 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-20 20:27:23 +00:00
Meik Sievertsen
191a21d461 could have been a copy&paste error, but the expression is also removing the </script> tag from valid script blocks (javascript for example). :)
git-svn-id: file:///svn/phpbb/trunk@6195 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-20 18:39:00 +00:00
Meik Sievertsen
13bf07d275 another expression for grabbing php code in templates provided by david
also included "the ultimate solution" provided by ludovic (only added a check for T_OPEN_TAG_WITH_ECHO


git-svn-id: file:///svn/phpbb/trunk@6194 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-20 17:57:56 +00:00
Meik Sievertsen
b4d834ed09 revert a change i made (we already adjust line endings to be rfc-compliant and use \n for the php mail function as suggested by the manual)
git-svn-id: file:///svn/phpbb/trunk@6193 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-20 17:55:36 +00:00
Graham Eames
1984ab5af5 Efficiency improvement to the log viewing code
+ reverting what appears to be an accidental change to the report viewing code


git-svn-id: file:///svn/phpbb/trunk@6192 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-18 20:34:26 +00:00
Graham Eames
ec3bcb4a82 Absolutely no changes whatsoever......I'm just fixing some broken line-endings which have crept in so that they match the coding standards
git-svn-id: file:///svn/phpbb/trunk@6191 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-18 19:47:54 +00:00
Meik Sievertsen
99a7ce5bbe fix the schema files as well as other tiny bugs.
git-svn-id: file:///svn/phpbb/trunk@6190 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-17 15:32:46 +00:00
Meik Sievertsen
1a5e4f446a - fix bug within php code removal expression. Thanks to BenP for reporting it to our security tracker.
git-svn-id: file:///svn/phpbb/trunk@6189 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-17 15:06:11 +00:00
David M
fa205b922d hmm... This commit does not increase the number of BBCodes. However, this does other things that we need to do first. This splits the usage of allow_* from the BBCode bitfield in forum descriptions, forum rules and group descriptions. This also fixes a tiny, tiny severe issue that nobody found :D I hope it works :P
git-svn-id: file:///svn/phpbb/trunk@6188 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-17 03:23:31 +00:00
Ludovic Arnaud
29d92430c5 Changed: moved functions that encode/decode NCRs from and to UTF-8 to utf_tools.php
git-svn-id: file:///svn/phpbb/trunk@6187 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-15 17:01:59 +00:00
Ludovic Arnaud
7b8f0da356 Fixed: missing file
git-svn-id: file:///svn/phpbb/trunk@6186 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-15 17:01:09 +00:00
Ludovic Arnaud
791bf27040 Updated UTF files
git-svn-id: file:///svn/phpbb/trunk@6185 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-15 16:58:22 +00:00
Graham Eames
c2390e18a8 Improved i18n support within log messages
git-svn-id: file:///svn/phpbb/trunk@6184 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-15 16:21:23 +00:00
Ludovic Arnaud
603e6cf590 Fixed: no need to pad CJK and Hangul anymore
git-svn-id: file:///svn/phpbb/trunk@6183 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-15 15:46:56 +00:00
Ludovic Arnaud
5f88af1a75 Added: support for CJK and Hangul into the search engine
git-svn-id: file:///svn/phpbb/trunk@6182 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-15 15:44:54 +00:00
Ludovic Arnaud
3b4944a476 Fixed: better SQL escaping
Removed: extended inserts on mssql and sqlite, were they really worth it?


git-svn-id: file:///svn/phpbb/trunk@6181 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-15 14:23:26 +00:00
David M
0bc61ae76c - Some profile stuff :D
- Some DB stuff :D


git-svn-id: file:///svn/phpbb/trunk@6180 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-15 10:31:51 +00:00
Nils Adermann
3a883600e8 fixing a typo in postgres dbal
git-svn-id: file:///svn/phpbb/trunk@6179 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-14 22:23:44 +00:00
Meik Sievertsen
d10e5bfc1a add not applied sql_escape in memberlist
git-svn-id: file:///svn/phpbb/trunk@6178 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-14 12:59:55 +00:00
Meik Sievertsen
c4f2430645 - renamed the following columns:
comment -> attach_comment
new, forwarded, unread, marked, deleted -> pm_new, pm_forwarded, pm_unread, pm_marked, pm_deleted
module_name -> module_basename
value -> lang_value

- every column is now NOT NULL
- every column is now having a DEFAULT value
- hopefully mostly consistent across every db schema
- untested schemas: sqlite, oracle, firebird


git-svn-id: file:///svn/phpbb/trunk@6177 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-13 12:51:56 +00:00
Ludovic Arnaud
4cd73bf7e5 Fixed: unescaped SQL strings make Bertie cry
git-svn-id: file:///svn/phpbb/trunk@6176 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-12 23:41:34 +00:00
Nils Adermann
5bf6bc1880 - it's \r\n not \n\r [Bug #3121]
- a few little search bugfixes
- drop in the improved version of the native search based on UTF-8 (still needs some work before it can replace the current native search)
  Thanks Ashe :)


git-svn-id: file:///svn/phpbb/trunk@6175 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-12 23:21:57 +00:00
Ludovic Arnaud
44b78d7c8d Added: UTF-8 tools. Both functions are used by the "improved" search engine. We'll need utf8_strlen() if we go with UTF-8 in 3.2
TODO: native recoding engine, written in PHP


git-svn-id: file:///svn/phpbb/trunk@6174 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-12 22:56:04 +00:00
Meik Sievertsen
7768d67e22 this little file should help us in creating/editing all schema files. This file already includes the proposed NULL/NOT NULL/DEFAULT changes.
The resulting schema needs to be tested - postgresql schema lacks it's CHECK values and UNSIGNED has been added. MSSQL no longer uses alter stable statements to create defaults.


git-svn-id: file:///svn/phpbb/trunk@6173 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-12 16:39:15 +00:00
Ludovic Arnaud
2cc2509473 Changed: split the tables used by the search indexer in order to load them on a need-to-use basis and preserve memory
git-svn-id: file:///svn/phpbb/trunk@6172 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-12 16:29:42 +00:00
Meik Sievertsen
9c844b15ce - also check for registered users since i do not think guests and bots want to change their password.
git-svn-id: file:///svn/phpbb/trunk@6171 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-12 06:20:50 +00:00
Meik Sievertsen
f62ac3a32f #2487 Ok, this one is finally fixed. :) Thanks to Dark Soul for letting me test this at his server. :)
and now i am going into my corner crying out loud.


git-svn-id: file:///svn/phpbb/trunk@6170 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-11 22:09:56 +00:00
Ludovic Arnaud
5aed89a8a1 Fixed: forgot to remove some debug code :(
git-svn-id: file:///svn/phpbb/trunk@6169 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-11 00:37:44 +00:00
Ludovic Arnaud
7167adb2cf Fixed: bug #3191 take two. That one should work as expected.
git-svn-id: file:///svn/phpbb/trunk@6168 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-11 00:04:02 +00:00
Ludovic Arnaud
d2e81e8bee Fixed: bug #3191 as per NeoThermic's patch
git-svn-id: file:///svn/phpbb/trunk@6167 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-10 23:55:08 +00:00
Graham Eames
eb9548f465 A few miscelaneous tweaks
git-svn-id: file:///svn/phpbb/trunk@6166 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-10 19:16:47 +00:00
Meik Sievertsen
4f7c52e9e3 fix some bugs... again. :)
git-svn-id: file:///svn/phpbb/trunk@6165 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-10 15:55:10 +00:00
Ludovic Arnaud
0fa9103a0c Changed: being anal with the notation of Unicode codepoints
Fixed: moved some constants out of the if construct because they're needed by other classes, even if the utfnormal extension exists


git-svn-id: file:///svn/phpbb/trunk@6164 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-10 03:05:27 +00:00
Ludovic Arnaud
0521ffa7d8 Added: UTF-8 normalizer along with all the data files required
git-svn-id: file:///svn/phpbb/trunk@6163 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-10 01:53:30 +00:00
Ludovic Arnaud
8c5b957228 Added: finished UTF normalization conformance tests
Added: now generate_utf_files.php also generates the files needed by the search indexer


git-svn-id: file:///svn/phpbb/trunk@6162 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-10 01:40:59 +00:00
Meik Sievertsen
46af817cb0 - tackle some usability issues
- fix bug #3147
- added the lock-images made by SHS`
- fixed MSSQL errors (adding the correct ESCAPE sequence)


git-svn-id: file:///svn/phpbb/trunk@6161 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-09 16:23:57 +00:00
David M
455add06f2 Realized that we never needed to CAST() in the first place after i remembered why i chose a DOMAIN implementation over a TYPE implementation...
DOMAINs are simpler and thus the system is capable of determining what is _really_ going on (which is why it handles indexing for us :D)


git-svn-id: file:///svn/phpbb/trunk@6160 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-09 05:13:36 +00:00
David M
0424200ac6 Short story: Oracle does not like sub queries that contain columns that have the same name
Long story: Expanding the implicitly defined columns to explicitly defined columns lets us determine which columns we are actually grabbing. This lets us avoid the problem of having two columns having the same name even though one is implicit and the other is explicit.

What does this mean? It means that when doing a limit on Oracle with an implicit column and a bunch of explicit columns, the explicit columns are the ones that "win".


git-svn-id: file:///svn/phpbb/trunk@6159 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-09 05:09:37 +00:00
Ludovic Arnaud
9ab98d0d79 Added: that script will run the UTF normalizer through a serie of conformance tests designed by the Unicode consortium for that purpose. Only the first part of the tests has been implemented yet
TODO: test for invariants


git-svn-id: file:///svn/phpbb/trunk@6158 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-09 01:54:39 +00:00
Ludovic Arnaud
17cad8f11f Added: that file will generate the files needed for Unicode normalization. The actual files will be added to CVS once we decide where to store them
git-svn-id: file:///svn/phpbb/trunk@6157 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-09 01:49:01 +00:00
Graham Eames
811b63baab Fix installation and user registration bugs
git-svn-id: file:///svn/phpbb/trunk@6156 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-08 16:53:42 +00:00
Graham Eames
62230baffd Appears that the redirect in common.php didn't work on all setups we tried, so swapping it for some new code which does
git-svn-id: file:///svn/phpbb/trunk@6155 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-07 21:50:24 +00:00
Graham Eames
63dbf43693 Change redirection logic to match the RFC better in those cases before redirect() is available to us
git-svn-id: file:///svn/phpbb/trunk@6154 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-07 20:47:25 +00:00
Nils Adermann
97cd5b1c3d - fix a stupid bug in style.php
- and we'd also like the post encoding :D


git-svn-id: file:///svn/phpbb/trunk@6153 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-07 20:38:04 +00:00
Nils Adermann
c6227ad5b0 - fixed a parse error (oops)
- pass forum_ids to search indexing functions
- fixed a bug in fulltext_native's cache destroying


git-svn-id: file:///svn/phpbb/trunk@6152 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-07 18:43:52 +00:00
Nils Adermann
a5c23243c7 - display age in user profile and make it available on viewtopic
- various tiny bugfixes including [Bug #2351] [Bug #2549] [Bug #2681] [Bug #3015]
- strip first, then change newlines [Bug #2403]
- added support for creating user profiles to the login function (makes use of user_add), triggered by LOGIN_SUCCESS_CREATE_PROFILE constant
- moved newest user updating from ucp_register to user_add function
- renamed the admin_ auth module function to acp_
- added initialisation code to auth_apache which checks whether it will work
- added user_add support to both auth_ldap and auth_apache
- some auth_ldap tweaks, should work with users deeper in the organisation structure too now
- adjusted global topics in mcp_report to work like mcp_queue


git-svn-id: file:///svn/phpbb/trunk@6151 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-07 12:36:44 +00:00
Graham Eames
8c128de642 Change meta handling, we can use existing functions for what we need and remove the redundant code
git-svn-id: file:///svn/phpbb/trunk@6150 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-06 17:07:01 +00:00
Meik Sievertsen
462dc69b8e some bugfixes
git-svn-id: file:///svn/phpbb/trunk@6149 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-06 16:46:53 +00:00
Meik Sievertsen
2b531a279f fix for a bug spotted by ToonArmy within bug #3000 (thanks to him for providing a sample patch too)
git-svn-id: file:///svn/phpbb/trunk@6148 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-06 15:00:31 +00:00
Meik Sievertsen
0050879825 re-check cookie_secure value within generate_board_url() for those users having it enabled but not running on a SSL connection (which of course results in server errors). This should (hopefully) further minimize support requests. ;)
Thanks again to aninhill for giving me full access to his board to be able to spot this error.


git-svn-id: file:///svn/phpbb/trunk@6147 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-05 15:48:43 +00:00
Ludovic Arnaud
bfb26c8a4a Changed: moved the thing that compares the amount of matches to the amount of terms from outside the query (in PHP) to inside of it, thanks to a well-placed HAVING clause
git-svn-id: file:///svn/phpbb/trunk@6146 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-04 15:16:57 +00:00
David M
291ab6216e - Make sure that the table is empty before we start cramming things inside :D
git-svn-id: file:///svn/phpbb/trunk@6145 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-04 04:08:30 +00:00
David M
6a1f1f5721 - CAPTCHA: removed the extra slash
More backup stuff

- Made some things nicer for some of the DBs
- Made postgreSQL work on non empty databases
- Made SQLite ultra fast on restore

- Properly escaped (as far as I know) the profile data fields so that one may now use reserved words as column names


git-svn-id: file:///svn/phpbb/trunk@6144 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-04 03:54:41 +00:00
Ludovic Arnaud
5ccfc08d09 Fixed: PHP notices appear when a post uses an icon that does not exist anymore
PS: that's my first CVS commit in a while, my fingers are crossed


git-svn-id: file:///svn/phpbb/trunk@6143 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-04 01:51:27 +00:00
Graham Eames
9118c5ad83 Missing language string
git-svn-id: file:///svn/phpbb/trunk@6142 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-03 19:41:55 +00:00
David M
1b48afeb30 - Database: eh? meh.
- CAPTCHA: A little easier to see which options map to which controls


git-svn-id: file:///svn/phpbb/trunk@6141 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-03 00:53:54 +00:00
David M
662e12d466 - Dramatic speed-up in SQLite backup code
- Wrote *another* patch around SQLite
- SQLite has a lack of (among other things) solid definition of their tables. e.g. "foo" and foo are both valid col names... Database backup and profile creation are now both aware of such "features"

meh, i hope this all works...


git-svn-id: file:///svn/phpbb/trunk@6140 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-03 00:21:40 +00:00
Meik Sievertsen
98fc394eb3 - fixed language pack management a bit (supporting backslashes)
- fixed ftp_fsock, also fixing a reported bug in there


git-svn-id: file:///svn/phpbb/trunk@6139 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-02 21:42:54 +00:00
Graham Eames
fdd82e4c12 Force the database connection to use to avoid a couple of problems seen in internal testing
git-svn-id: file:///svn/phpbb/trunk@6137 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-02 19:33:28 +00:00
Graham Eames
4c457ecc92 Prevent sqlite databases within the forum directory
git-svn-id: file:///svn/phpbb/trunk@6136 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-01 21:45:35 +00:00
Meik Sievertsen
6df6eb0e60 - add additional auth check to the permission roles modules
- added new function to return globally used expressions (get_preg_expression($mode)). This should be very helpful in getting wide spread similar checks (regular expressions) to one place reducing the risk of forgetting to change every location if you fix one. ;) We will add additional ones later, at the moment only the email check is retrieved...
- added "active module" var to the module class returning the current active module
- changed call to image magick
- add administrator to global moderators group by default
- extend auth_option column a little bit
- other bugfixes


git-svn-id: file:///svn/phpbb/trunk@6135 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-01 19:11:52 +00:00
Graham Eames
7ad5db1856 These needed to be #p for proper compliance
git-svn-id: file:///svn/phpbb/trunk@6134 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-01 15:00:50 +00:00
David M
3efe7ffb1f bugs? bugs.
git-svn-id: file:///svn/phpbb/trunk@6133 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-07-01 06:30:49 +00:00
Graham Eames
30563df345 SOme changes to handle special characters in the database password
git-svn-id: file:///svn/phpbb/trunk@6132 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-30 20:17:55 +00:00
Graham Eames
ee8a9a6135 New template variables in the mcp (not used by subsilver)
git-svn-id: file:///svn/phpbb/trunk@6131 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-29 19:57:06 +00:00
Graham Eames
66f5db4cec Nothing interesting, just a couple of slight language alterations
git-svn-id: file:///svn/phpbb/trunk@6130 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-28 20:26:45 +00:00
David M
c748c31fe5 ketchup? catcher? catheter? no. CAPTCHA
- New CAPTCHA ACP, only lets you enable what you can actually use :D
- CAPTCHA ACP also has a nifty demo link that lets you preview a CAPTCHA with the current settings that you enable.

I hope it all works...


git-svn-id: file:///svn/phpbb/trunk@6129 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-28 02:43:44 +00:00
Graham Eames
b451ced10e Try and protect against people trying to select an inappropriate DBAL
git-svn-id: file:///svn/phpbb/trunk@6128 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-26 21:05:49 +00:00
Graham Eames
c476382934 Split the final step of the install into 2 steps
This should help to avoid any timeouts on slow servers with the amount being done


git-svn-id: file:///svn/phpbb/trunk@6127 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-26 20:13:07 +00:00
Graham Eames
2cc905b28e Some changes to the way folder images are handled for "special" topics
git-svn-id: file:///svn/phpbb/trunk@6126 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-25 15:23:01 +00:00
Graham Eames
43fd5901ae The ability to view hidden users should not be part of the standard or restricted user roles
git-svn-id: file:///svn/phpbb/trunk@6125 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-24 21:20:43 +00:00
Graham Eames
737dea1370 Show message to those browsing whilst board is disabled
git-svn-id: file:///svn/phpbb/trunk@6124 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-24 15:52:17 +00:00
Graham Eames
097769fd07 Apply load_onlinetrack to view profile as well
git-svn-id: file:///svn/phpbb/trunk@6123 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-24 13:37:23 +00:00
Meik Sievertsen
3439d0f96e ok, first attempt at solving some compatibility issues.
- dropping in replacement for realpath


git-svn-id: file:///svn/phpbb/trunk@6122 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-24 13:27:04 +00:00
Graham Eames
1042800c28 Correct info image name
git-svn-id: file:///svn/phpbb/trunk@6121 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-24 13:15:32 +00:00
Graham Eames
03956bca97 Try to at least give very old PHP versions a reason why they can't do anything
We might review this again later to try and find the reason they were getting a blank page, but given the age of 4.2.x, there hopefully won't be too many people still running it


git-svn-id: file:///svn/phpbb/trunk@6120 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-23 20:48:30 +00:00
Graham Eames
a27ce549bd - Extra error handling to deal with a user not specifying a database name
- Re-add the move of the manage users module


git-svn-id: file:///svn/phpbb/trunk@6119 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-23 20:02:16 +00:00
Meik Sievertsen
16a40387f1 forgot some changes for post_time
git-svn-id: file:///svn/phpbb/trunk@6118 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-23 14:25:21 +00:00
Meik Sievertsen
9c31a05b1c make sure set_config is called with the correct is_dynamic value
git-svn-id: file:///svn/phpbb/trunk@6117 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-23 14:04:41 +00:00
Nils Adermann
e6c3b97999 - improve newposts search performance
git-svn-id: file:///svn/phpbb/trunk@6116 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-23 12:19:27 +00:00
Meik Sievertsen
8b1555c15b change ACL_NO to ACL_NEVER and ACL_UNSET to ACL_NO to let our users get what is meant on the first look.
the downside is that the information is no more accurate (permissions are still unset, defaulting to no) - someone might to overlook all explanations. :)


git-svn-id: file:///svn/phpbb/trunk@6115 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-22 16:49:04 +00:00
Meik Sievertsen
725b21f2d2 time to squash some bugs
git-svn-id: file:///svn/phpbb/trunk@6114 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-22 15:14:03 +00:00
Graham Eames
daa0435614 Improve i18n by installing all available language packs on install
+ unb0rk the mysql schema ;)


git-svn-id: file:///svn/phpbb/trunk@6113 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-21 20:18:02 +00:00
Meik Sievertsen
8dbef23cea show error if template path could not be determined
git-svn-id: file:///svn/phpbb/trunk@6112 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-21 16:52:10 +00:00
Meik Sievertsen
d8137406e2 disable recalculating the binary tree - this function might have a severe problem. :D And additionally it should not be needed anymore.
git-svn-id: file:///svn/phpbb/trunk@6111 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-21 16:42:24 +00:00
David M
0346b9da37 schema! hooray!
git-svn-id: file:///svn/phpbb/trunk@6110 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-21 05:16:08 +00:00
Graham Eames
73c7f34176 mysqli error + email hash
git-svn-id: file:///svn/phpbb/trunk@6109 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-20 20:46:01 +00:00
Graham Eames
0cc3aff18d Prevent warning self
git-svn-id: file:///svn/phpbb/trunk@6108 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-20 20:32:53 +00:00
Nils Adermann
4448249a44 - correctly display subcategories
- use L_TRANSLATION_INFO [Bug #2357]
- always begin with ACL_UNSET in permission trace
- allow copy permissions when editing a forum
- default to parent forum for copying permissions
- no duplication of the breadcrumps on registration [Bug #2307]


git-svn-id: file:///svn/phpbb/trunk@6107 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-20 19:00:30 +00:00
David M
c125ae1276 oops?
git-svn-id: file:///svn/phpbb/trunk@6106 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-20 00:21:16 +00:00
David M
9b0d2143bb what? yeah...
- turns out the backup issue was not a backup issue but a schema issue
- let there be color


git-svn-id: file:///svn/phpbb/trunk@6105 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-20 00:09:45 +00:00
Meik Sievertsen
52045ff263 some bugfixes
git-svn-id: file:///svn/phpbb/trunk@6104 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-19 21:30:32 +00:00
Graham Eames
cbfcf07af3 A few changes to the doc links for the beta process
git-svn-id: file:///svn/phpbb/trunk@6103 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-19 21:02:44 +00:00
Graham Eames
790f4dcc02 Prevent direct access to these files
git-svn-id: file:///svn/phpbb/trunk@6102 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-19 20:52:01 +00:00
Graham Eames
aa443a868d Deleting logs
git-svn-id: file:///svn/phpbb/trunk@6101 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-19 20:40:29 +00:00
David M
ac3f3b1ae9 SQL!
git-svn-id: file:///svn/phpbb/trunk@6100 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-18 15:50:00 +00:00
David M
5735c5176e fixes...
git-svn-id: file:///svn/phpbb/trunk@6099 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-18 15:35:32 +00:00
David M
ef9b725379 dumbness++
git-svn-id: file:///svn/phpbb/trunk@6098 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-18 15:21:31 +00:00
Graham Eames
bd3c8c50c0 This fixes a consistancy issue re the ISO language code on install, but there's still a bigger issue related to thsi to look at
git-svn-id: file:///svn/phpbb/trunk@6097 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-18 14:56:17 +00:00
Graham Eames
d3b8612402 Begone damn typo's
git-svn-id: file:///svn/phpbb/trunk@6096 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-18 14:41:40 +00:00
Graham Eames
f9f10be464 Misc installation bugs
git-svn-id: file:///svn/phpbb/trunk@6095 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-18 11:55:45 +00:00
Meik Sievertsen
6cf4180bb7 I missed the version change. Anyone knows what is with the private checkin list? I seem to get no mails - it used to be fast.
git-svn-id: file:///svn/phpbb/trunk@6093 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 20:30:41 +00:00
Meik Sievertsen
2043827f52 hey dev team mates, here are the brand new beta checkins (as promised). Please ensure this stays in our private cvs until the 23rd June, except the bug fixes.
git-svn-id: file:///svn/phpbb/trunk@6092 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 20:28:39 +00:00
Nils Adermann
20a27095bd - correctly display user forum permissions if all forums are selected [Bug #2285]
- correctly display user forum permissions if multiple users are selected


git-svn-id: file:///svn/phpbb/trunk@6091 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 18:39:34 +00:00
David M
4b1af3e32c SQLite does not support certain usage of COUNT(DISTINCT *), thus we must emulate it
git-svn-id: file:///svn/phpbb/trunk@6090 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 18:05:25 +00:00
Graham Eames
1c02e24333 BBCode parsing when warning
git-svn-id: file:///svn/phpbb/trunk@6089 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 17:16:03 +00:00
Graham Eames
3aafcffec0 #2277
git-svn-id: file:///svn/phpbb/trunk@6088 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 13:40:58 +00:00
Meik Sievertsen
3735ecdb16 hopefully not making things worse...
git-svn-id: file:///svn/phpbb/trunk@6087 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 13:16:51 +00:00
Nils Adermann
add20b4a92 - remove last karma leftovers
git-svn-id: file:///svn/phpbb/trunk@6086 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 12:16:56 +00:00
Meik Sievertsen
dc53e86bf9 fix bug #2267 (inline quotes are not having bbcodes correctly applied)
git-svn-id: file:///svn/phpbb/trunk@6085 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 11:54:42 +00:00
Graham Eames
505e08d59d And back to 6 :)
git-svn-id: file:///svn/phpbb/trunk@6084 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 11:51:57 +00:00
Graham Eames
7be12661b5 Use correct ISO coutry code - default language files are en_GB
git-svn-id: file:///svn/phpbb/trunk@6083 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 11:43:19 +00:00
David M
751a154af0 - SQLite handling in custom profiles
- Removed an extra ';'
- Install works with SQLite again


git-svn-id: file:///svn/phpbb/trunk@6082 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 11:32:07 +00:00
Meik Sievertsen
10846d462a fix bugs #2271 and #2273
git-svn-id: file:///svn/phpbb/trunk@6081 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 11:28:21 +00:00
Nils Adermann
f04a3349e6 - fix some bugs in imageset editing, includes [Bug #2269]
git-svn-id: file:///svn/phpbb/trunk@6080 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 09:30:59 +00:00
Graham Eames
3562bc5580 Language updates for consistancy
git-svn-id: file:///svn/phpbb/trunk@6079 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 08:05:14 +00:00
Graham Eames
e5bc3d88b6 Change the test so that sqlite is happy a well
git-svn-id: file:///svn/phpbb/trunk@6078 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 07:33:23 +00:00
David M
1cc7445017 - Some fixes
git-svn-id: file:///svn/phpbb/trunk@6077 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-17 06:50:58 +00:00
Meik Sievertsen
a32c084507 anyone want to buy a C?
git-svn-id: file:///svn/phpbb/trunk@6076 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-16 23:20:32 +00:00
Nils Adermann
d4a2bec8d3 - proper redirect after deleting a report [Bug #2260]
- sql_escape words before fulltext update
- correct language string for "search facilities" in acp_search


git-svn-id: file:///svn/phpbb/trunk@6075 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-16 18:31:51 +00:00
Meik Sievertsen
010e453b45 fix bug #2258
git-svn-id: file:///svn/phpbb/trunk@6074 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-16 17:31:00 +00:00
Meik Sievertsen
b0c3e39582 - removed db cache (might re-appear, but for now we do not see the need for it)
- all changes to styles/subsilver/template are purely cosmetic (no functional changes)
- cosmetics
- bugfixes
- add index to modules table
- use modules ordering code for forums too


git-svn-id: file:///svn/phpbb/trunk@6073 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-16 16:54:51 +00:00
Meik Sievertsen
a3c9182e0f use move_modules_by function Ashe did for us. Now everyone, thank him. :)
git-svn-id: file:///svn/phpbb/trunk@6072 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-15 23:06:41 +00:00
Meik Sievertsen
e9110c666e re-allow moving modules around
git-svn-id: file:///svn/phpbb/trunk@6071 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-15 21:39:44 +00:00
Meik Sievertsen
86cc481f1c check for correct entered date for date profile field
git-svn-id: file:///svn/phpbb/trunk@6070 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-15 15:16:33 +00:00
Meik Sievertsen
a161503f2a fix for checking required field on booleans
git-svn-id: file:///svn/phpbb/trunk@6069 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-15 15:12:55 +00:00
Meik Sievertsen
832faaa6c8 fix a small mistake (bug #2238)
git-svn-id: file:///svn/phpbb/trunk@6068 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-15 14:59:14 +00:00
Meik Sievertsen
75b3410e83 erm, ok, my fault. :/
git-svn-id: file:///svn/phpbb/trunk@6067 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-14 22:09:09 +00:00
Graham Eames
1409df5205 Improved i18n of default date format on new installs
+ misc bug fixes


git-svn-id: file:///svn/phpbb/trunk@6066 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-14 21:04:04 +00:00
Graham Eames
fc5e04b669 Fix the changes to bot creation
git-svn-id: file:///svn/phpbb/trunk@6065 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-14 20:14:18 +00:00
Nils Adermann
7b8a5f99b1 - forgot to actually move the cache file :@
git-svn-id: file:///svn/phpbb/trunk@6064 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-14 19:01:10 +00:00
Nils Adermann
c9e971759d - automatically sync topic_reported when deleting a post [Bug #2152]
- retrieve forum information in report.php
- don't update deleted topics
- proper permission check for "admin or moderator"
- allow changing poster while ip dropdown contains a different user [Bug #2190]
- fixed a typo in acp_styles [Bug #2188]
- allow inserting BBCode at the first position of the textarea [Bug #2078]
- allow the style name to be different than the style path


git-svn-id: file:///svn/phpbb/trunk@6063 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-14 18:59:12 +00:00
Meik Sievertsen
771d9f21cb haha, this is clearly needed. :D
git-svn-id: file:///svn/phpbb/trunk@6062 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-14 17:50:13 +00:00
Meik Sievertsen
7159120b25 - store error result in dbal for later retrieving
- use method for moving modules up/down (will be extended later to not only support an amount of 1)
- utilize the module methods in installation


git-svn-id: file:///svn/phpbb/trunk@6061 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-14 17:45:06 +00:00
Meik Sievertsen
90b7ac2dbf adjust the naming for add/edit/remove permissions
git-svn-id: file:///svn/phpbb/trunk@6060 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-14 08:55:13 +00:00
David M
76a475f107 Another one bites the dust
git-svn-id: file:///svn/phpbb/trunk@6059 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-13 22:39:04 +00:00
Meik Sievertsen
1aac08acc0 make sure custom profile fields are created correctly on registration (#2225)
git-svn-id: file:///svn/phpbb/trunk@6058 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-13 21:06:29 +00:00
Graham Eames
b0b7963817 Only create a session if on doesn't exist. In theory, checking for the presence of a sid should be enough to determine this.....
git-svn-id: file:///svn/phpbb/trunk@6057 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-13 18:50:21 +00:00
Meik Sievertsen
81d7bbff36 use user_add function for bot adding
git-svn-id: file:///svn/phpbb/trunk@6056 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-13 18:32:48 +00:00
Meik Sievertsen
e1437d7a21 - added class="radio" to all radio- and checkboxes
- make sure the database gets closed correctly in cron.php
- bugfixes


git-svn-id: file:///svn/phpbb/trunk@6055 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-13 15:06:32 +00:00
Meik Sievertsen
298d3c0c50 - get swatch converted into new acp format
- add page title to ucp pages
- add ability to supress getting the who is online list in page_header() (saves us ideally 1-2 queries on ucp/mcp pages)
- fixing pm rules a bit as well as now having complete author memberships for author_in_group (sender -> is in usergroup -> xxx)


git-svn-id: file:///svn/phpbb/trunk@6054 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-12 22:16:27 +00:00
David M
4a0ddb9dfb assorted backup fixes
git-svn-id: file:///svn/phpbb/trunk@6053 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-12 21:55:30 +00:00
Graham Eames
fdaba4d67e Fix no avatar image - it shouldn't be set in the code but via the template
git-svn-id: file:///svn/phpbb/trunk@6052 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-12 20:27:58 +00:00
Meik Sievertsen
6da1354976 removed the ability to parse after closing brackets, since this seems to create a bunch of new problems
added a space after quotes for correctly parsing urls/smilies
instead of splitting the url just compare with strpos
david: please review once you get home. :)


git-svn-id: file:///svn/phpbb/trunk@6051 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-12 16:09:55 +00:00
Meik Sievertsen
896e552dde re-allow registration. ;)
git-svn-id: file:///svn/phpbb/trunk@6050 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-12 08:21:43 +00:00
Graham Eames
c7d2dfb164 UI change to default date format
git-svn-id: file:///svn/phpbb/trunk@6049 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-11 19:32:17 +00:00
Meik Sievertsen
01b4145381 - fixed a few bugs
- added user_add() function
- check posted images ([img]) for same domain/scipt and php files
- auth_api.html updated to the coding guidelines look&feel
- introduced ability to force non page-updates (cron is using it)
- correctly resend coppa email


git-svn-id: file:///svn/phpbb/trunk@6048 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-11 18:13:52 +00:00
David M
ce3b07eee7 ;-)
git-svn-id: file:///svn/phpbb/trunk@6047 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-11 05:06:48 +00:00
Nils Adermann
72bb508210 - allow searching for post_count = 0 [Bug #2154]
- better permission check for user search by ip
- permissions for max attachments adjusted


git-svn-id: file:///svn/phpbb/trunk@6046 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 23:53:20 +00:00
Nils Adermann
1c169ed089 - forgot to commit common.php
- cleaning up a few more mcp permissions
- adjust some links
- make global topics work properly in MCP


git-svn-id: file:///svn/phpbb/trunk@6045 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 23:11:03 +00:00
Graham Eames
8b40e7fe33 Try and protect against users being silly and trying to go direct to a later page
git-svn-id: file:///svn/phpbb/trunk@6044 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 21:08:01 +00:00
Meik Sievertsen
c102bec023 try to prevent re-parsing of parsed bbcode content
git-svn-id: file:///svn/phpbb/trunk@6043 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 20:16:02 +00:00
David M
4613de6f87 - BBCode bugs
- PostgreSQL now gives us database info (if you are running 8.1 or have the dbsize contrib module installed)


git-svn-id: file:///svn/phpbb/trunk@6042 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 16:51:24 +00:00
Graham Eames
6bbeda9450 Fix img_imagick handling
git-svn-id: file:///svn/phpbb/trunk@6041 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 16:16:38 +00:00
Nils Adermann
349518c11f - check whether config.php exists
- add <p> to installation dialogue
- forgot to commit an mcp info file


git-svn-id: file:///svn/phpbb/trunk@6040 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 16:09:46 +00:00
Graham Eames
7e917eb5d2 Hide search links if you are not allowed to use them
(if we're not sure, then they are displayed just to be safe)


git-svn-id: file:///svn/phpbb/trunk@6039 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 14:56:39 +00:00
Graham Eames
6bd06a709e Broken link in FAQ (the rest of this still needs updating)
git-svn-id: file:///svn/phpbb/trunk@6038 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 14:30:48 +00:00
Graham Eames
90c514188a Group ordering on legend
git-svn-id: file:///svn/phpbb/trunk@6037 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 14:20:55 +00:00
Graham Eames
a3570cd048 Warn user links #2153
git-svn-id: file:///svn/phpbb/trunk@6036 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 11:51:10 +00:00
Graham Eames
793d9b8c53 Fix a slight typo
git-svn-id: file:///svn/phpbb/trunk@6035 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-10 10:40:25 +00:00
Nils Adermann
ace2ee4eec This looks a bit like an ugly hack, I know :(
But hopefully it will solve most of our encoding problems with jabber [Bug #1585]


git-svn-id: file:///svn/phpbb/trunk@6034 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 23:46:39 +00:00
Graham Eames
06981cb97b Check permissions on avatar upload folder
git-svn-id: file:///svn/phpbb/trunk@6033 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 20:34:09 +00:00
David M
3152110bea Another bug bites the dust
git-svn-id: file:///svn/phpbb/trunk@6032 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 19:51:18 +00:00
Nils Adermann
74673ae06e - a few adjustments to permissions, specifically with regard to global topics
- forgot to change a line in permission trace [Bug #2100]
- syntax highlighting for php5
- [Bug #2093]


git-svn-id: file:///svn/phpbb/trunk@6031 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 19:49:24 +00:00
Graham Eames
0cf31f0e2a Fix the ability to report/view reports and warn in global announcements
git-svn-id: file:///svn/phpbb/trunk@6030 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 19:37:47 +00:00
David M
898decd6cc - Language download works again
git-svn-id: file:///svn/phpbb/trunk@6029 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 19:27:08 +00:00
Nils Adermann
753994810a - a few adjustments to permissions, specifically with regard to global topics
- forgot to change a line in permission trace [Bug #2100]
- syntax highlighting for php5
- [Bug #2093]


git-svn-id: file:///svn/phpbb/trunk@6028 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 19:20:51 +00:00
David M
adc6d2a0c1 - Fixed a bug
- PGSQL got updated, we now backup created domains


git-svn-id: file:///svn/phpbb/trunk@6027 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 19:20:32 +00:00
Graham Eames
68a8052434 - Change groups listed on index by default
- Change addition of bots on install


git-svn-id: file:///svn/phpbb/trunk@6026 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-09 09:20:51 +00:00
Meik Sievertsen
ef08df5675 - bugfix roll
- fixed sql_query_limit on mssql/mssql_odbc


git-svn-id: file:///svn/phpbb/trunk@6024 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-08 20:26:03 +00:00
Meik Sievertsen
580a318d16 add title to "no role"
git-svn-id: file:///svn/phpbb/trunk@6023 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-08 13:46:03 +00:00
Meik Sievertsen
4306d4d083 - fix some smaller bugs
- removed custom profiles preview field from acp


git-svn-id: file:///svn/phpbb/trunk@6022 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-08 10:59:36 +00:00
Meik Sievertsen
0e7adebad6 ok, sorry for this. :/
- cleaned up table names/constants


git-svn-id: file:///svn/phpbb/trunk@6021 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-07 19:32:23 +00:00
Meik Sievertsen
13b9021ae4 correctly decode message on quotepost (#2099)
git-svn-id: file:///svn/phpbb/trunk@6020 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-07 18:22:51 +00:00
Meik Sievertsen
e1cf8fd13c fix bug #2086
remove cached sql results for moderator cache table if re-applying moderators


git-svn-id: file:///svn/phpbb/trunk@6019 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-07 18:12:38 +00:00
Meik Sievertsen
5232ded67e dumdidum
git-svn-id: file:///svn/phpbb/trunk@6018 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-07 10:10:53 +00:00
Meik Sievertsen
5f34b5d150 #2109
git-svn-id: file:///svn/phpbb/trunk@6017 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-07 08:44:12 +00:00
Meik Sievertsen
c307c5021a check if supported gd image type matches the uploaded image type - if not, thumbnails are not created.
git-svn-id: file:///svn/phpbb/trunk@6016 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-07 08:35:13 +00:00
Meik Sievertsen
dd9ad539fd ok, this one is rather large... the most important change:
re-introduce append_sid: old style continues to work, not a performance hog as it was in 2.0.x -> structure is different

apart from this, code cleanage, bug fixing, etc.


git-svn-id: file:///svn/phpbb/trunk@6015 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-06 20:53:46 +00:00
Meik Sievertsen
2c8afb820e make sure we check the attachment status for the correct user ;)
git-svn-id: file:///svn/phpbb/trunk@6014 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-06 10:54:51 +00:00
Meik Sievertsen
2ab88e7c56 ok, try this one. :) Hopefully not breaking anything.
git-svn-id: file:///svn/phpbb/trunk@6013 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-06 10:45:43 +00:00
Meik Sievertsen
69f132fec8 ah, damn, revert this change. If we check here, hidden modules are no longer able to be called.
git-svn-id: file:///svn/phpbb/trunk@6012 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-06 10:38:14 +00:00
Meik Sievertsen
f8440e370f correctly hide categories with only hidden modules
git-svn-id: file:///svn/phpbb/trunk@6011 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-06 10:36:07 +00:00
Graham Eames
d404c70552 Some extra template variables *_EXPLAIN which some might wish to use
git-svn-id: file:///svn/phpbb/trunk@6010 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-04 18:49:19 +00:00
Nils Adermann
5c181bc528 - permission trace correctly uses language variables now
- updated documentation for the auth class
- use cache for "SELECT forum_name FROM phpbb_forums WHERE forum_id = X" queries everywhere and not only in functions_display
- updated the permission trace to include information about global settings overwriting local ones
- take global permissions into account for local permission results on the view permission pages for users
- only allow to change the post author with m_chgposter


git-svn-id: file:///svn/phpbb/trunk@6009 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-04 16:30:58 +00:00
Graham Eames
f3499d1251 Assign page titles within the mcp
git-svn-id: file:///svn/phpbb/trunk@6008 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-04 15:01:35 +00:00
Nils Adermann
6ba50e34d6 - removed useless code from style.php
- added a view template cache mode to acp_styles
- syntax highlighting for the acp css
- completed refresh actions for themes and templates
- fixed theme and template installation
- use a function for generating database theme data
- removed useless code from mcp_queue.php

we might need to do some more tests of acp_styles with safe_mode on


git-svn-id: file:///svn/phpbb/trunk@6007 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-03 22:19:41 +00:00
David M
9aa9cb4bb6 DB stuff, nothing cool at all unless you use Oracle.
git-svn-id: file:///svn/phpbb/trunk@6006 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-03 20:34:40 +00:00
Graham Eames
d198979747 We are gathered here today to say goodbye to install/install.php
She has served us well through the last few years, but it is now time to retire


git-svn-id: file:///svn/phpbb/trunk@6005 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-03 20:24:38 +00:00
Graham Eames
5f97852459 Sync error reporting
git-svn-id: file:///svn/phpbb/trunk@6004 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-03 19:50:16 +00:00
Graham Eames
8f55adbedb Watch me juggle with the tree!
git-svn-id: file:///svn/phpbb/trunk@6003 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-03 13:57:53 +00:00
Meik Sievertsen
7d264396df some adjustments
nils: please have a look at the @todo comment in mcp_queue.php


git-svn-id: file:///svn/phpbb/trunk@6002 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-02 13:26:27 +00:00
Meik Sievertsen
b087e60113 do not allow users to resign from their default group if they are not allowed to change their default group
git-svn-id: file:///svn/phpbb/trunk@6001 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-02 13:16:50 +00:00
Meik Sievertsen
718f97325f correctly re-init auth array on login/logout (bug #2055 is related to it)
git-svn-id: file:///svn/phpbb/trunk@6000 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-02 10:35:53 +00:00
Meik Sievertsen
b9355bc16d #2059
git-svn-id: file:///svn/phpbb/trunk@5999 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-02 10:29:41 +00:00
Meik Sievertsen
6bce606202 do not overwrite avatars from users if changing/uploading group avatar and changing/uploading avatar in ACP user panel (#1880)
git-svn-id: file:///svn/phpbb/trunk@5998 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-02 10:26:38 +00:00
Meik Sievertsen
148fab6579 i see the reports arise...
git-svn-id: file:///svn/phpbb/trunk@5997 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-02 09:35:56 +00:00
Meik Sievertsen
35e750fc19 outch, had some debug code in...
git-svn-id: file:///svn/phpbb/trunk@5996 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-01 20:51:19 +00:00
Meik Sievertsen
721a9dd4a1 - create forums by default
- hide prune options if not enabled
- fixed module management enable/disable switch if in module itself
- fixed some schema errors
- adjusted $user->page array generation for developers calling scripts outside of phpBB root


git-svn-id: file:///svn/phpbb/trunk@5995 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-06-01 13:47:42 +00:00
Graham Eames
4354cda6dc Misc module ordering stuff/missing modules.
There's still 1 minor bit to fix up....


git-svn-id: file:///svn/phpbb/trunk@5994 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-31 20:26:48 +00:00
Nils Adermann
91a35359ed - add support for min/max of numerical search backend settings
- change word_text maximum length
- don't update search settings if nothing was changed


git-svn-id: file:///svn/phpbb/trunk@5993 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-30 21:46:12 +00:00
Meik Sievertsen
64e7df76a6 do not irretate users on install :D
git-svn-id: file:///svn/phpbb/trunk@5989 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-30 17:00:08 +00:00
Meik Sievertsen
99a6e79d9b language changes by SHS` [en-GB (OED)] - our thanks to him!
git-svn-id: file:///svn/phpbb/trunk@5988 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-30 16:50:06 +00:00
Meik Sievertsen
eaeaf5bfb6 hopefully fixing bug #2022 with this
git-svn-id: file:///svn/phpbb/trunk@5987 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-30 16:40:16 +00:00
Nils Adermann
ea04b3bcbc - various corrections related to permissions in the mcp, including [Bug #1994] and [Bug #1924]
- fixed some quickmod bugs [#1994] and [Bug #1898]
- browse reports/unapproved posts by topic id
- correctly hide approval details
- added return message to mcp_ban [Bug #1851]
- adjusted some links, including [Bug #1855]
- added some missing language variables, including [Bug #1824], [Bug #1841], [Bug #1852] and [Bug #1864]
- always show all options in mcp_topic [Bug #1938]


git-svn-id: file:///svn/phpbb/trunk@5986 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-30 12:24:07 +00:00
David M
74799e168d - We are now at _seven_ different policies, not counting the non-GD version. We must remove something...
- Made the CAPTCHA system idiot proof, disabling all the policies still lets an image get created.
- We handle the case of a user having GD but no TTF. Thankfully, we have CAPTCHAs that don't need TTF!
- Fixed that stupid language string...
- Renamed Occlude to Overlap
- Shape is now only enabled if TTF support is detected


git-svn-id: file:///svn/phpbb/trunk@5985 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-30 04:27:14 +00:00
Graham Eames
5465ceb507 Fix a typo I'd introduced previously
git-svn-id: file:///svn/phpbb/trunk@5984 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-29 15:11:50 +00:00
Nils Adermann
3752616bb6 - making user_last_search a NULL column so MSSQL won't hate us
- making ignore_words and synonyms optional for language packs


git-svn-id: file:///svn/phpbb/trunk@5983 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 19:24:13 +00:00
Meik Sievertsen
19a36ed364 - adjusted coding guidelines
- fixed custom bbcode {TEXT} token
- added unapproved item/info for unapproved posts in a topic


git-svn-id: file:///svn/phpbb/trunk@5982 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 19:15:24 +00:00
Nils Adermann
ebf4f4ec8e - added search by author_id to solve problems with looking up posts of users with a name containing wildcards
- user based flood control (seperate limits for users and guests) [Bug #1357]
- inform the user about ignored words if he receives a "no words specified" message
- solve problems with the number of entries per page [Bug #1973]
- different height for popup window ["Bug" #1814]
- speed improvements for posting and search reindexing in fulltext_native
 -> use php files for ignore words and synonyms


git-svn-id: file:///svn/phpbb/trunk@5981 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 19:06:21 +00:00
Meik Sievertsen
b84ebb999d hmm, still not giving the expected results
git-svn-id: file:///svn/phpbb/trunk@5980 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 17:18:47 +00:00
Meik Sievertsen
2f4c3ea0be counting on primary key should be slightly faster...
git-svn-id: file:///svn/phpbb/trunk@5979 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 16:06:58 +00:00
Meik Sievertsen
d794557825 - fix nasty error in functions_admin generating a fatal error on inclusion
- adjusted error reporting level to get those errors instead of just the script halting.


git-svn-id: file:///svn/phpbb/trunk@5978 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 16:00:53 +00:00
Meik Sievertsen
d5b6b9cf85 - get every bbcode tpl block defined within bbcode.html. ;) (#1889)
git-svn-id: file:///svn/phpbb/trunk@5977 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 15:42:06 +00:00
Graham Eames
1526ae1fc8 The template for the convertor/upgrade script so that we've got all the template files in
You'll have to wait for the code that goes with it :)


git-svn-id: file:///svn/phpbb/trunk@5976 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 15:11:19 +00:00
Meik Sievertsen
a50e901f29 - do not allow pruning founders
- do not display full path to installation in error message text (only occurence would be "header already sent" warnings)


git-svn-id: file:///svn/phpbb/trunk@5975 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 14:58:59 +00:00
David M
77deaf754b meh, old versions of MySQL are not cool...
git-svn-id: file:///svn/phpbb/trunk@5974 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-28 03:44:18 +00:00
Meik Sievertsen
ce4445f74a - remove description from profile fields
- added disclaimer about DEBUG_EXTRA to the ACP (i think this is needed - some idiots might think it is wise to have this enabled on a production board. :) We *may* let it there for the Betas though, but it will be removed during the RC's)
- some bugfixes


git-svn-id: file:///svn/phpbb/trunk@5973 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-27 16:24:21 +00:00
David M
b51b978854 - force a default charset
- better highlight code in search


git-svn-id: file:///svn/phpbb/trunk@5972 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-27 13:25:27 +00:00
David M
6d072d8fc7 New data type for PostgreSQL users!
varchar_ci allows for case insensitive recall of data. Works with all sorts of operations and sorts. This implementation was chosen over a user defined data type because we can easily avoid having to create our own operator class, an action that can only be done by a 'superuser'. Extending the varchar data type lets us use the internal indexing voodoo while still working on J. Random Admin's privileges.

I hope it works, please post up any problems via the proper methods.


git-svn-id: file:///svn/phpbb/trunk@5971 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-27 06:22:38 +00:00
Meik Sievertsen
82e7e7cfc3 forgot this file...
git-svn-id: file:///svn/phpbb/trunk@5968 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-26 16:11:18 +00:00
Meik Sievertsen
9fca29eae3 some tiny changes...
git-svn-id: file:///svn/phpbb/trunk@5967 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-26 15:04:27 +00:00
David M
8dc9fc089b ...
git-svn-id: file:///svn/phpbb/trunk@5966 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-25 19:21:50 +00:00
Meik Sievertsen
fec41273a4 first round of custom profile changes
git-svn-id: file:///svn/phpbb/trunk@5965 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-25 19:15:04 +00:00
Graham Eames
a59f59de21 Fix a rather silly bug in the module install code.
Quick access works now :)


git-svn-id: file:///svn/phpbb/trunk@5964 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-24 18:49:39 +00:00
David M
28a306ae00 - Bug #1947
git-svn-id: file:///svn/phpbb/trunk@5961 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-22 19:58:53 +00:00
David M
484ecb9188 - Bug 1893
git-svn-id: file:///svn/phpbb/trunk@5960 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-22 05:42:49 +00:00
Meik Sievertsen
aa2da96774 dumdidum
git-svn-id: file:///svn/phpbb/trunk@5959 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-21 17:02:33 +00:00
Meik Sievertsen
ece0598027 no longer needed because we handle shadow topics as "always read" (not to be misreaded as "original topic")
git-svn-id: file:///svn/phpbb/trunk@5958 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-21 16:57:35 +00:00
Meik Sievertsen
530b7e94c5 - fixing a few smaller bugs/glitches
- init user session in cron.php (else it can produce errors if functions expect the user object being set)
- fix sql escaping for mssql/mssql_odbc


git-svn-id: file:///svn/phpbb/trunk@5957 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-21 16:54:19 +00:00
Nils Adermann
2ddac10375 - solve duplication of text [Bug #1229]
- fixed [*] BBcode [Bug #1625]


git-svn-id: file:///svn/phpbb/trunk@5956 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-21 13:22:51 +00:00
Nils Adermann
80168f9260 - fix some bugs in the theme editor
git-svn-id: file:///svn/phpbb/trunk@5955 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-21 01:24:56 +00:00
Nils Adermann
205c3245a5 - fix some bugs in the theme editor
git-svn-id: file:///svn/phpbb/trunk@5954 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-21 01:08:31 +00:00
Nils Adermann
5fb416fc26 - added a theme editor
- some adjustments in acp_styles.php
- fixed storing themes in db (needs revisiting)


git-svn-id: file:///svn/phpbb/trunk@5953 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 23:56:12 +00:00
Meik Sievertsen
5029170afb - fixed a few smaller things
git-svn-id: file:///svn/phpbb/trunk@5952 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 18:39:35 +00:00
David M
037f0bf4da - Lets make stuff wider
- Firebird, second class citizen no more! (at least till something else breaks)


git-svn-id: file:///svn/phpbb/trunk@5951 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 17:32:07 +00:00
Nils Adermann
25d6fbed2a - fix a nasty bug in search indexing
git-svn-id: file:///svn/phpbb/trunk@5950 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 16:50:57 +00:00
Meik Sievertsen
e4ac133954 #1871
git-svn-id: file:///svn/phpbb/trunk@5949 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 16:23:25 +00:00
Graham Eames
91282dde1b A few top level changes to the module structure.
More will follow since the quick access section is currently broken


git-svn-id: file:///svn/phpbb/trunk@5948 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 15:12:32 +00:00
Meik Sievertsen
badcfdd1ed character class... character class... character class...
git-svn-id: file:///svn/phpbb/trunk@5947 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 14:49:38 +00:00
Meik Sievertsen
08a223c4d6 - allow commenting out on one line:
<!-- <!-- IF WHATEVER --><br /><b>{WHATEVER}:</b><!-- ENDIF --> -->
bug #1869

(i hope i did not break something :o)


git-svn-id: file:///svn/phpbb/trunk@5946 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 14:41:53 +00:00
Meik Sievertsen
7c6db75ac0 we might have a look at NULL values if we use them within request_var() as default value (due to the type assignment)
git-svn-id: file:///svn/phpbb/trunk@5945 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 14:31:03 +00:00
Meik Sievertsen
dbb6b3f6cf - actually let the user import smilies/icons paks. ;)
- fix TRUNCATE TABLE syntax (mssql does not understand TRUNCATE alone)


git-svn-id: file:///svn/phpbb/trunk@5944 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 14:20:12 +00:00
Graham Eames
f77c0f0541 Banning makes more sense with usernames listed first, then IP then email as this is the most likely order of use
git-svn-id: file:///svn/phpbb/trunk@5943 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 14:11:01 +00:00
Meik Sievertsen
781adf5ff4 no ip listing for googlebot because the ip changes from time to time
git-svn-id: file:///svn/phpbb/trunk@5941 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 13:54:27 +00:00
Meik Sievertsen
0115e94cfd - seperate queries and cached queries
- display correct read/unread information while displaying active topics
- fix for SELECT DISTINCT in mssql using sql_query_limit
- fix for forum updating in ACP using mssql (and probably other dbal having problems with primary keys in updates)


git-svn-id: file:///svn/phpbb/trunk@5940 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 13:20:38 +00:00
Meik Sievertsen
c81a44ea30 - fix #1715
git-svn-id: file:///svn/phpbb/trunk@5939 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 11:41:27 +00:00
Graham Eames
86f5226025 Fix a couple of issues in mcp_main
git-svn-id: file:///svn/phpbb/trunk@5938 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 11:22:30 +00:00
Graham Eames
4ca6f06df1 Missing page title
git-svn-id: file:///svn/phpbb/trunk@5937 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 11:17:41 +00:00
David M
c63af4e75a eh? meh.
git-svn-id: file:///svn/phpbb/trunk@5936 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 02:14:50 +00:00
David M
808094d1f5 eh? meh.
git-svn-id: file:///svn/phpbb/trunk@5935 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-20 01:03:56 +00:00
David M
917eeebc1a a few changes ;-)
git-svn-id: file:///svn/phpbb/trunk@5934 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-19 22:50:25 +00:00
Meik Sievertsen
8e800e333c - fixed dotted topics on some occassions being wrong
- fixed post author change
- fixed moving topics (they should not count into read tracking now) - think about having only one column for shadow topics/similar to forum links
- moved a function from functions.php to functions_display.php (this function is only used by viewtopic and viewforum which already include this file)
- some rather tiny fixes for mssql


git-svn-id: file:///svn/phpbb/trunk@5933 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-19 21:08:48 +00:00
Graham Eames
c0e3a86ebb Fix a slightly odd naming that we just spotted
git-svn-id: file:///svn/phpbb/trunk@5932 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-19 19:33:44 +00:00
Meik Sievertsen
3c02d5f2df - fixing a few tiny bugs
- added new function to (re)apply sids where needed (login and mcp quickmod) - #1829


git-svn-id: file:///svn/phpbb/trunk@5931 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-18 21:03:56 +00:00
Meik Sievertsen
7e25c8d9cc - added a few missing log variables
- include acp/common.php language file if displaying logs (LOG_ variables should be stored there only now)
- added check to cron.php
- added database_gc config variable
- recalculate binary trees every once a week ;)


git-svn-id: file:///svn/phpbb/trunk@5929 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-18 18:18:32 +00:00
David M
f15d6862ae eh? meh.
git-svn-id: file:///svn/phpbb/trunk@5928 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 23:19:33 +00:00
David M
bcdb8c2659 This is a screwy world! Screwy I tell you!
git-svn-id: file:///svn/phpbb/trunk@5927 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 21:37:05 +00:00
David M
a0600f06be This is a screwy world! Screwy I tell you!
git-svn-id: file:///svn/phpbb/trunk@5926 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 19:48:47 +00:00
Graham Eames
14e3edffc2 Fix the module insertion for UCP and MCP (the changes for the ACP had meant it was going in backwards!)
git-svn-id: file:///svn/phpbb/trunk@5925 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 19:44:28 +00:00
David M
5e1d4527e8 This is a screwy world! Screwy I tell you!
git-svn-id: file:///svn/phpbb/trunk@5924 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 19:29:20 +00:00
Meik Sievertsen
545bf57cb3 #1843
git-svn-id: file:///svn/phpbb/trunk@5923 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 17:32:46 +00:00
Meik Sievertsen
760d0a66d4 fix bug #1857
git-svn-id: file:///svn/phpbb/trunk@5922 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 16:58:56 +00:00
Meik Sievertsen
4ea4f1d1da nils... maybe let the template editor save with unix linefeeds by default (or inherit them from the file)? :)
git-svn-id: file:///svn/phpbb/trunk@5921 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 16:41:04 +00:00
Meik Sievertsen
7ba89a0b2d fixing bug #1860
git-svn-id: file:///svn/phpbb/trunk@5920 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 16:26:54 +00:00
David M
6a1591f2be - Significant speed increase, MySQL can't ORDER BY arbitrary statements anyway
git-svn-id: file:///svn/phpbb/trunk@5919 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-17 11:24:34 +00:00
David M
68e374067b Firebird!
git-svn-id: file:///svn/phpbb/trunk@5918 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-16 22:14:59 +00:00
Meik Sievertsen
d52e31a489 some changes before i forget...
git-svn-id: file:///svn/phpbb/trunk@5916 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-16 17:46:47 +00:00
David M
501aa7bde7 non MySQL Databases are people too!
git-svn-id: file:///svn/phpbb/trunk@5915 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-15 00:27:11 +00:00
David M
badac963ac SQL!
git-svn-id: file:///svn/phpbb/trunk@5914 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-14 23:48:52 +00:00
Graham Eames
c385986201 Display bans in order of username not user_id so that you stand a chance of finding someone in a long list :)
git-svn-id: file:///svn/phpbb/trunk@5913 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-14 15:07:43 +00:00
Graham Eames
81be4479ab Assigning to the wrong variable - the whole message should now be visible
git-svn-id: file:///svn/phpbb/trunk@5912 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-14 11:34:59 +00:00
David M
2499d92c83 - captcha stuff
- unique_id


git-svn-id: file:///svn/phpbb/trunk@5911 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-13 17:48:21 +00:00
Meik Sievertsen
c652f7a4a7 HA - classical
git-svn-id: file:///svn/phpbb/trunk@5910 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-13 11:08:49 +00:00
Graham Eames
0cf613a31c Remove some unneeded debug code
git-svn-id: file:///svn/phpbb/trunk@5909 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-13 10:59:58 +00:00
Meik Sievertsen
d1c418b9e2 - david: copy&paste error? ;)
git-svn-id: file:///svn/phpbb/trunk@5908 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-13 10:59:16 +00:00
David M
fd609f28ba - Firebird is people too
git-svn-id: file:///svn/phpbb/trunk@5907 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-13 02:14:59 +00:00
David M
d5fc1c29f2 - Split the viewtopic query into two pieces. We gain speed by avoiding the need to GROUP BY/ORDER BY the selected elements. We also gain cross-DB compliance. Yay!
git-svn-id: file:///svn/phpbb/trunk@5906 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-13 00:57:13 +00:00
Meik Sievertsen
8b88ffe996 using another approach
git-svn-id: file:///svn/phpbb/trunk@5905 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-13 00:24:54 +00:00
Nils Adermann
215693d897 - adding a file which displays duplicate language keys
- removed a few duplicates with equal contents [Bug #1193]


git-svn-id: file:///svn/phpbb/trunk@5904 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 23:45:27 +00:00
David M
08e708f76b - Cleaner math
git-svn-id: file:///svn/phpbb/trunk@5903 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 22:02:07 +00:00
Meik Sievertsen
a8d99f2228 - introduce new function build_url to easily build a valid url from the user->page object as well as optionally removing certain keys
- changed attachment config to utilize the config build methods
- cleaned up posting.php
- the submit/delete_post functions are now usable (functions_posting.php)
- adjusted header icons (transparency)
- a bunch of fixes for mssql
- bug fixes


git-svn-id: file:///svn/phpbb/trunk@5902 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 20:52:58 +00:00
Graham Eames
7dd067bf5a Dealing with some duplicate language strings.
I'll leave the rest of the files to you Nils ;-)


git-svn-id: file:///svn/phpbb/trunk@5901 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 20:01:21 +00:00
Graham Eames
8a37c7572c Fix the module insertion
git-svn-id: file:///svn/phpbb/trunk@5900 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 19:44:28 +00:00
Graham Eames
aa42a83b9e Some altered error handling - there was still hard-coded output hanging over from before
git-svn-id: file:///svn/phpbb/trunk@5899 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 19:43:25 +00:00
Graham Eames
22ada4e282 A new template for fatal database errors
git-svn-id: file:///svn/phpbb/trunk@5898 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 19:42:33 +00:00
Meik Sievertsen
4b247a5054 ok, maybe now?
test new sf infrastructure again, now using the syncmail script in out cvsroot directory


git-svn-id: file:///svn/phpbb/trunk@5896 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 16:20:47 +00:00
Meik Sievertsen
e18efcf810 test new sf cvs with tiny bugfix
git-svn-id: file:///svn/phpbb/trunk@5895 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-12 16:05:07 +00:00
Nils Adermann
f83b7e1581 - added the template editor (doesn't use a hardcoded list of template filenames for categorisation anymore)
- fix some bugs related to storing template files in the database
- allow templates stored in subfolders of the /styles/name/template/ folder


git-svn-id: file:///svn/phpbb/trunk@5894 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-07 21:44:23 +00:00
David M
870cb6efd0 - eh? meh.
git-svn-id: file:///svn/phpbb/trunk@5893 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-07 02:54:13 +00:00
Graham Eames
75db599274 A minor change to the default icon_id, so that there is no icon if someone directly inserts into the db without specifying one
git-svn-id: file:///svn/phpbb/trunk@5892 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-06 21:00:08 +00:00
David M
6d3a8bd107 - Make it impossible to open/delete/download files that don't exist :P
git-svn-id: file:///svn/phpbb/trunk@5891 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-06 20:35:30 +00:00
Graham Eames
830f1fdab7 A small missing change from the reformatting earlier to make it clearer
git-svn-id: file:///svn/phpbb/trunk@5890 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-06 20:02:37 +00:00
Graham Eames
1200082de6 - Some slight style changes to the installer to make the explanation more visibly different from the label
- Added a brief explanation of register_globals to the requirements page
 - A few other odds and ends of language strings that aren't used yet but will be later (it was easier to leave them in than remove before committing :D)


git-svn-id: file:///svn/phpbb/trunk@5889 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-06 15:50:59 +00:00
Nils Adermann
2ee2701eb1 - introduce LA_, UA_ and A_ template variables (they allow styles to use template variables used for javascript in subSilver outside javascript in their own template while they won't break our javascript if they contain quotes) also fixes [Bug #1116]
- corrected page title for search indexing progress bar [Bug #1695]
- correct poster name for the anonymous user in mcp_queue and mcp_reports


git-svn-id: file:///svn/phpbb/trunk@5888 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-06 15:15:40 +00:00
Graham Eames
3640410cc0 Remove references to max_warnings as we are not using the value
More advanced handling of warnings (ie ability to automatically ban at a threshold is likely to follow in 3.2 instead)


git-svn-id: file:///svn/phpbb/trunk@5887 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-06 14:57:10 +00:00
David M
3d2a45ab04 I hope nothing broke!
- Added a query builder, it is currently only used for complex queries that involve a FROM clause with two tables and a left join
- Changed some function calls in the DBAL
- Made the viewtopic queries nicer


git-svn-id: file:///svn/phpbb/trunk@5885 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-05 22:06:17 +00:00
Graham Eames
b6ffae82b9 A couple of minor slips of the finger
git-svn-id: file:///svn/phpbb/trunk@5884 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-05 18:28:58 +00:00
Meik Sievertsen
e25b2c5f35 - some adjustements for phpdocumentor
git-svn-id: file:///svn/phpbb/trunk@5883 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-05 17:56:33 +00:00
Meik Sievertsen
8f765e50a3 - put the error reporting check into another location (since we do want to display our notices. ;))
- default error reporting in common.php
- E_ALL being set if DEBUG_EXTRA defined


git-svn-id: file:///svn/phpbb/trunk@5882 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-05 12:28:38 +00:00
Meik Sievertsen
b5608afe03 - fix bug #1727 (need to be watched - problems could arise by this change)
- added a note about login_box() to the coding guidelines


git-svn-id: file:///svn/phpbb/trunk@5881 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-04 18:25:01 +00:00
Meik Sievertsen
3a38f80168 fix bug #1736
git-svn-id: file:///svn/phpbb/trunk@5880 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-04 17:20:54 +00:00
Meik Sievertsen
839d2b6e2c hmm, hopefully this is working a bit better.
git-svn-id: file:///svn/phpbb/trunk@5879 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-04 16:56:30 +00:00
Meik Sievertsen
16ed174ba2 hmm, maybe i should not comment this statement, eh?
git-svn-id: file:///svn/phpbb/trunk@5878 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-04 16:00:58 +00:00
Meik Sievertsen
e11da225e0 - slightly adjusted the DEBUG/DEBUG_EXTRA requirements
- changed error_reporting to E_ALL
- our error handler now takes the error_reporting value into account allowing us to correctly supress notices


git-svn-id: file:///svn/phpbb/trunk@5877 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-04 15:49:22 +00:00
David M
b131931edb eh? meh.
git-svn-id: file:///svn/phpbb/trunk@5876 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-04 14:45:06 +00:00
Meik Sievertsen
9a9a9ff6f3 - fixed ul/li margin
- fixed [code=php] tag (tags got mangled on edit)
- fixed a tiny issue within the ban function


git-svn-id: file:///svn/phpbb/trunk@5875 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-04 06:54:43 +00:00
David M
9a0ad16272 - Bug #1709
git-svn-id: file:///svn/phpbb/trunk@5874 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-02 17:59:51 +00:00
Graham Eames
14adf393c2 Remove the module entries from the schema data file and generate the list instead
This should be the last major item with hard-coded id values in it


git-svn-id: file:///svn/phpbb/trunk@5873 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-01 19:45:42 +00:00
Meik Sievertsen
6724e1bab6 - added standard/default roles + default roles assigned to users/groups
git-svn-id: file:///svn/phpbb/trunk@5872 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-05-01 12:44:28 +00:00
Graham Eames
9918f8ee93 We want to use this code in the install system as well
git-svn-id: file:///svn/phpbb/trunk@5871 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-30 14:45:46 +00:00
Meik Sievertsen
3536a60e10 - changed SUPER_MODERATORS to GLOBAL_MODERATORS
- do not cache moderators having no allowed auth settings
- added fsock method to transfer class (this has been made by wGEric for us)


git-svn-id: file:///svn/phpbb/trunk@5870 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-30 14:09:13 +00:00
Meik Sievertsen
e69278b5cd some adjusted defaults. ;)
git-svn-id: file:///svn/phpbb/trunk@5869 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-30 13:06:40 +00:00
Meik Sievertsen
3826df9760 give location for missing email files for better support
git-svn-id: file:///svn/phpbb/trunk@5868 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-30 12:57:37 +00:00
Meik Sievertsen
9751cf71e9 empty is only accepting vars
git-svn-id: file:///svn/phpbb/trunk@5867 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-30 12:50:43 +00:00
Meik Sievertsen
28fe12956d - use php_uname('n') instead of posix_uname and HTTP_HOST
- updated the authors file a bit


git-svn-id: file:///svn/phpbb/trunk@5866 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-30 12:19:11 +00:00
Meik Sievertsen
076a235bb0 introduce LA_ for addslashing language variables for use in js vars (idea by naderman)
git-svn-id: file:///svn/phpbb/trunk@5865 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-29 17:19:24 +00:00
David M
f1de99ff9a - Case
git-svn-id: file:///svn/phpbb/trunk@5864 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-29 17:02:24 +00:00
David M
92719715b1 - ___ is not nice to people who use FTP, font files are thus renamed
git-svn-id: file:///svn/phpbb/trunk@5863 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-29 16:38:01 +00:00
David M
63c9b5d663 - CAPTCHA!
Xore and NeoThermic are very cool, you must thank them!


git-svn-id: file:///svn/phpbb/trunk@5862 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-29 16:30:56 +00:00
Meik Sievertsen
a94222ee5a fix bug #1549
git-svn-id: file:///svn/phpbb/trunk@5861 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-29 14:48:23 +00:00
Meik Sievertsen
b011b84060 blah
git-svn-id: file:///svn/phpbb/trunk@5860 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-29 13:31:32 +00:00
Meik Sievertsen
859902ea24 reverting changes to the installer
do not introduce a function we never call outside of common.php


git-svn-id: file:///svn/phpbb/trunk@5859 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-29 13:14:33 +00:00
Meik Sievertsen
7bc05c5e24 - fixing some bugs, containing fixes for anonymous username displays, eaccelerator issue, permission trace and a few smaller bugs.
git-svn-id: file:///svn/phpbb/trunk@5858 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-29 01:18:57 +00:00
David M
656274cd57 - Added some missing lang strings
git-svn-id: file:///svn/phpbb/trunk@5857 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-28 16:37:12 +00:00
David M
14ed732bff - fixed gen_rand_string
git-svn-id: file:///svn/phpbb/trunk@5856 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-28 15:58:57 +00:00
Meik Sievertsen
34fcc7dbe1 graham, sorry for this but i had to... ;)
- utilize common.php in installer (we only need to change one location then)
- use $user->lang instead of $lang to be able to use language template vars and having consistant namings


git-svn-id: file:///svn/phpbb/trunk@5855 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-28 12:49:44 +00:00
David M
1b065fb74a Viewtopic:
- PGSQL friendly

New Install:
- file_get_contents

New/Old Install:
- remove remarks for PGSQL, some versions don't like 'em
- fixed the regex in remove_remarks
- rewrote split_sql_file

Schema:
- removed explicit inserts, replaced with implicit inserts. This is more friendly to our non auto incrementing friends. (One set of data is not fixed yet, the modules table)
- removed all those SELECT SETVAL statements, they were not needed.


git-svn-id: file:///svn/phpbb/trunk@5854 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-28 02:18:17 +00:00
Nils Adermann
5994371c0a - allow searches for multibyte characters in fulltext_native
- use preg_quote safely


git-svn-id: file:///svn/phpbb/trunk@5853 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-27 14:20:43 +00:00
Nils Adermann
5f503ddabf oops
git-svn-id: file:///svn/phpbb/trunk@5852 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-26 21:29:54 +00:00
Graham Eames
fcb8d86cb2 Fix a broken explain link
git-svn-id: file:///svn/phpbb/trunk@5851 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-26 20:02:35 +00:00
Graham Eames
3148470919 Renaming fulltext_phpbb to fulltext_native for clarity and changing a few variables
git-svn-id: file:///svn/phpbb/trunk@5850 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-26 19:13:46 +00:00
Nils Adermann
9bc05019a6 - safer globals deregistration
git-svn-id: file:///svn/phpbb/trunk@5849 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-26 18:22:28 +00:00
Meik Sievertsen
01ad065ae5 - adding user logs (displaying all users instead of limited to the user if viewing user notes)
- fixed a tiny set of bugs...


git-svn-id: file:///svn/phpbb/trunk@5848 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-26 18:10:57 +00:00
Meik Sievertsen
db56792e91 - use varchar2 in favor of clob for some columns...
git-svn-id: file:///svn/phpbb/trunk@5847 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-26 12:06:21 +00:00
David M
31947017c4 - Use specfic keys
- Unborked mysqli :D
- PGSQL now supports sequences! woo!
- adsrc is not cool anymore, adbin is where it's all at...


git-svn-id: file:///svn/phpbb/trunk@5846 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-26 06:30:09 +00:00
Graham Eames
cb053afc47 Rename some of the config variables to eliminate issues caused by them containing phpbb_
git-svn-id: file:///svn/phpbb/trunk@5845 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-25 19:20:01 +00:00
David M
91925b93d8 - Bug #1237
git-svn-id: file:///svn/phpbb/trunk@5844 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-25 03:28:10 +00:00
David M
c57ebe71a9 - Bug #1285
git-svn-id: file:///svn/phpbb/trunk@5843 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-25 03:17:21 +00:00
David M
a279978718 - Tuples? Nah,
- Install works w/ Oracle
- Got the queries in the database acp to conform to the CS
- profile acp now creates the proper alter column statement depending on the dbal


git-svn-id: file:///svn/phpbb/trunk@5842 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-24 22:13:52 +00:00
Graham Eames
b622c0f31a Add a measure to stop people using this file as a preparatory step to removing it completely
(I haven't killed it totally yet since there are still a couple of internal uses for it)


git-svn-id: file:///svn/phpbb/trunk@5841 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-23 19:25:15 +00:00
David M
d03e541179 - Query explain now works for MSSQL, MSSQL-ODBC and PostgreSQL
- MSSQL schema now properly includes prefixes inside of all constraints


git-svn-id: file:///svn/phpbb/trunk@5839 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-23 17:28:06 +00:00
Meik Sievertsen
de4299c81c - build explain links a bit different...
- fix btn_ip reference (it is btn_info now)
- removed sql_report.css (we use the acp css)
- updated the sql report layout


git-svn-id: file:///svn/phpbb/trunk@5838 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-23 14:23:22 +00:00
Nils Adermann
d6af193b53 - properly check the Comment column on older MySQL versions [Bug #1637]
git-svn-id: file:///svn/phpbb/trunk@5837 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-23 13:10:34 +00:00
Nils Adermann
d9576fd70b - allow user A to have user B as a friend if A is a foe of B
- don't allow users to have the Anonymous user on their foe/friend list [Bug #1205]
- properly hide users on the online/offline friend list in ucp [Bug #1206]


git-svn-id: file:///svn/phpbb/trunk@5836 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-23 13:08:48 +00:00
David M
a58fa3a9f2 - eh? meh.
git-svn-id: file:///svn/phpbb/trunk@5834 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 20:21:22 +00:00
David M
9404dfe2fb - Bug #1210
git-svn-id: file:///svn/phpbb/trunk@5832 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 18:54:41 +00:00
David M
67c580e148 - Bug #1185
git-svn-id: file:///svn/phpbb/trunk@5831 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 18:42:27 +00:00
David M
2b23fb6a1f - Bug #1257
git-svn-id: file:///svn/phpbb/trunk@5830 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 18:37:19 +00:00
David M
171a535dd5 - this works on other DBs now too :D
git-svn-id: file:///svn/phpbb/trunk@5829 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 18:34:13 +00:00
David M
756aaf1005 - Bug #1259... again
git-svn-id: file:///svn/phpbb/trunk@5828 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 18:27:43 +00:00
David M
0a0976d6e7 - Bug #1261
git-svn-id: file:///svn/phpbb/trunk@5827 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 18:27:00 +00:00
David M
f878d0cf95 - Bug 1260
git-svn-id: file:///svn/phpbb/trunk@5826 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 18:23:09 +00:00
David M
118516b982 - Bug #1259
git-svn-id: file:///svn/phpbb/trunk@5825 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 18:09:58 +00:00
Meik Sievertsen
856650861f - removed group settings from roles
- added forum icon in front of forums in permissions acp
- added trace permissions in permission masks (thanks naderman for writing the first code and for the idea... :))
- some bugfixes
- PHP6 fix


git-svn-id: file:///svn/phpbb/trunk@5824 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 16:18:40 +00:00
Graham Eames
68c349fdc1 Harden the check slightly in case someone does something really silly and has a file of that name instead of a directory
git-svn-id: file:///svn/phpbb/trunk@5823 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 15:06:05 +00:00
David M
086ea06191 - Bug #1453
git-svn-id: file:///svn/phpbb/trunk@5822 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 14:40:04 +00:00
Graham Eames
ebae19ff71 The return of the option to download the config file if it could not be written
git-svn-id: file:///svn/phpbb/trunk@5821 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 13:59:46 +00:00
Meik Sievertsen
832ac398c4 @tom: this needs to be replaced by the correct image later
git-svn-id: file:///svn/phpbb/trunk@5820 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 13:58:22 +00:00
Graham Eames
cf214949b6 OK< so it did break it - copy and paste error
git-svn-id: file:///svn/phpbb/trunk@5819 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 13:50:17 +00:00
Graham Eames
e6a85132f6 - Added a constant to indicate where we are for use in other functions
- Slight changes to writing of the config file, more to come


git-svn-id: file:///svn/phpbb/trunk@5818 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 11:59:37 +00:00
David M
0bad52c9a5 i can't seem to not commit this debug code :-(
git-svn-id: file:///svn/phpbb/trunk@5817 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 03:53:03 +00:00
David M
c016f4593e - extrapolation is uncool, lets get the _real_name instead of guessing
- fixed some bugs :P


git-svn-id: file:///svn/phpbb/trunk@5816 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-22 03:52:07 +00:00
Nils Adermann
478ab68a7e - added login error constant for various external auth failures
- completed auth plugin interface (init_method, login_method, autologin_method, validate_session_method, logout_method)
- updated ldap and apache auth plugins to return an info array
- added apache autologin


git-svn-id: file:///svn/phpbb/trunk@5815 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-21 22:41:05 +00:00
Graham Eames
09073c368f It helps to add new config variables to the schema...
git-svn-id: file:///svn/phpbb/trunk@5814 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-21 21:19:25 +00:00
Graham Eames
6f4c1b1a22 Porting the random number generator code over
Fingers crossed that this doesn't break anything.... ;-)


git-svn-id: file:///svn/phpbb/trunk@5813 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-21 20:42:10 +00:00
David M
10e8b6130d - Olympus can now _install_ every database, more work to come on getting the rest of the board to work
git-svn-id: file:///svn/phpbb/trunk@5811 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-21 01:09:04 +00:00
Graham Eames
fee3ec305c Fix a couple of references to the old error handler
git-svn-id: file:///svn/phpbb/trunk@5809 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-20 15:10:27 +00:00
Graham Eames
32e738031d Log the install to the admin log
git-svn-id: file:///svn/phpbb/trunk@5807 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-20 11:37:58 +00:00
Graham Eames
b3a6c67d55 Fix some warnings when selecting a user
TODO: Need to look at where else this information is displayed and see about abstracting it


git-svn-id: file:///svn/phpbb/trunk@5806 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-20 11:07:11 +00:00
David M
7695b94f76 Firebird changes
- fixed sql_nextid()
- sql_affectedrows fixed for PHP 5+
- sql_affectedrows modified so that it works for PHP 4 ( don't expect a valid numeric answer! )


git-svn-id: file:///svn/phpbb/trunk@5805 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-19 05:20:18 +00:00
David M
fae28007b6 - d'oh!
git-svn-id: file:///svn/phpbb/trunk@5804 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-19 04:50:25 +00:00
David M
cc48830e02 - Firebird support for backing up
- some bug fixes :P


git-svn-id: file:///svn/phpbb/trunk@5803 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-19 04:48:58 +00:00
David M
8893d6f5b3 - oopse
git-svn-id: file:///svn/phpbb/trunk@5802 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-19 04:46:55 +00:00
David M
3e67fe55cb - make freeresult work as it should
git-svn-id: file:///svn/phpbb/trunk@5801 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 21:38:01 +00:00
David M
a8e11e2264 - Forgot to remove a lang string
- Firebird!
- Fixes for mssql and mssql-odbc


git-svn-id: file:///svn/phpbb/trunk@5800 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 21:06:00 +00:00
David M
fcd3d18fb3 - CS
git-svn-id: file:///svn/phpbb/trunk@5799 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 16:22:32 +00:00
David M
a231834a4d - More bugfixes (Sorry!)
- ODBC support


git-svn-id: file:///svn/phpbb/trunk@5798 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 15:21:15 +00:00
David M
d2461c2fd2 - Nobody wants my debug code :D
git-svn-id: file:///svn/phpbb/trunk@5797 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 15:14:16 +00:00
David M
01fdcf2d83 - An index can have multiple columns :P
git-svn-id: file:///svn/phpbb/trunk@5796 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 15:13:33 +00:00
David M
8e18b11e34 - firebird returns an error code (if you are on php 5)
git-svn-id: file:///svn/phpbb/trunk@5795 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 04:17:53 +00:00
David M
1149fd2ca8 - oopsie
git-svn-id: file:///svn/phpbb/trunk@5794 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 03:56:26 +00:00
David M
03b9af1f28 - Olympus now properly works with MS SQL
- DB backup system handles MS SQL
- A few bug fixes to the backup system ;)


git-svn-id: file:///svn/phpbb/trunk@5793 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-18 02:41:59 +00:00
Meik Sievertsen
5b3d732456 its late
git-svn-id: file:///svn/phpbb/trunk@5792 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-17 22:40:49 +00:00
Meik Sievertsen
8d456a0fd7 say hello to role descriptions, role ordering and tooltips on role selects
git-svn-id: file:///svn/phpbb/trunk@5791 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-17 22:36:43 +00:00
Meik Sievertsen
a0f8e1323a - clean up marklist calls (global function)
- added new feature: test out others permissions (admin permissions will not be copied)
- changed attachment processing by directly using the template engine
- fixed some attachment related bugs
- additional tiny fixes


git-svn-id: file:///svn/phpbb/trunk@5790 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-17 13:09:50 +00:00
David M
8c2f02ca00 - Store and Download is now takes advantage of on-the-fly stuff correctly
- Download and deletion of stored backups now allowed


git-svn-id: file:///svn/phpbb/trunk@5789 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-16 17:31:02 +00:00
Meik Sievertsen
b0aa0e6050 hmm, das hat hoffentlich keiner gesehen... :P
git-svn-id: file:///svn/phpbb/trunk@5788 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-15 18:54:35 +00:00
Meik Sievertsen
72c4282f9a slightly modified general tab layout to remove the confusion between board defaults and board settings.
git-svn-id: file:///svn/phpbb/trunk@5787 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-15 18:51:00 +00:00
David M
ea71c3046d - Some archivers are worthless in this world
git-svn-id: file:///svn/phpbb/trunk@5786 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-15 18:00:34 +00:00
Meik Sievertsen
164b55b394 i do not think i need this any longer. ;)
git-svn-id: file:///svn/phpbb/trunk@5785 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-15 14:55:33 +00:00
Meik Sievertsen
84738055a2 - fixed some bugs
- made sql schemas consistent
- added correct sequences and generators to sql schemas
- extended some rows to hold more data. This solves issues with multibyte characters and too short topic titles, names, etc.
- allow multibyte characters in usernames


git-svn-id: file:///svn/phpbb/trunk@5784 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-15 14:48:36 +00:00
Meik Sievertsen
0562395c27 fixing a bug within the installer (displaying notices) and making sure the installer is using the error handler.
git-svn-id: file:///svn/phpbb/trunk@5783 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-14 15:10:51 +00:00
Graham Eames
8017db012b Fix an issue affecting eaccelerator users
git-svn-id: file:///svn/phpbb/trunk@5780 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-10 20:12:30 +00:00
Nils Adermann
fc394d6302 - check m_ permission for quickmod [Bug #1317]
- don't sync the global forum (id 0) [Bug #1383]
- corrections to available time zones [Bug #1306]
- only display open reports on mcp_front
- added whois information to mcp_post [Bug #1400]
- copy "dot" when copying a topic [Bug #1321]
- some language corrections [Bugs #1324, #1255, #1317]
- mozWrap scrolls back to previous position now [Bug #1190]
- some style related corrections [Bugs #1322, #1454, #1316]
- corrected copyrights [Bug #1468]
- fixed links on search results page [Bug #1469]


git-svn-id: file:///svn/phpbb/trunk@5779 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-09 21:20:24 +00:00
Graham Eames
5b24c3a7fb Check the password set in the install against the default rules
git-svn-id: file:///svn/phpbb/trunk@5776 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 18:34:13 +00:00
Meik Sievertsen
3db7073415 added/changed language strings
git-svn-id: file:///svn/phpbb/trunk@5775 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 17:48:54 +00:00
Meik Sievertsen
a2ac7a6cc6 - fix for a php bug (not able to connect on custom ports if the server is localhost - though 127.0.0.1 works) -> #1444
git-svn-id: file:///svn/phpbb/trunk@5774 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 17:34:04 +00:00
Graham Eames
1e0ee65aed Fix a broken tree
git-svn-id: file:///svn/phpbb/trunk@5773 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 15:52:06 +00:00
Graham Eames
ec78e241b7 Set the cookie domain by default on installs which don't have a server_name set
git-svn-id: file:///svn/phpbb/trunk@5772 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 14:46:32 +00:00
Nils Adermann
c5b203b485 - allow reporting posts that have a closed report
- show multiple reports for one post correctly
- Bug #1389


git-svn-id: file:///svn/phpbb/trunk@5771 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 14:30:46 +00:00
Meik Sievertsen
fc167b2e42 - fix moving up/down for smilies and icons
- display number of total topics in viewforum for forums having active topics set to to true


git-svn-id: file:///svn/phpbb/trunk@5770 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 14:16:31 +00:00
Meik Sievertsen
fecdf14358 extending the encoding fields a bit (11 chars seem to be not enough)
git-svn-id: file:///svn/phpbb/trunk@5769 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 13:12:27 +00:00
Meik Sievertsen
b62ffc0bb0 groupcp.php no longer exist (#1442)
git-svn-id: file:///svn/phpbb/trunk@5768 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 13:06:13 +00:00
Meik Sievertsen
96afdb5168 - changed _module_*_url to only use the main module name but the mode as parameter
- custom module lang function now suffixed by _lang
- added general custom function with mode and module_row parameter

- do not display friends/foes if zebra has been disabled


git-svn-id: file:///svn/phpbb/trunk@5767 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 13:01:04 +00:00
Meik Sievertsen
4801f813cd - fix the template error (no headers displayed, wrong ! assignment, wrong check for .loop)
git-svn-id: file:///svn/phpbb/trunk@5766 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-08 10:56:08 +00:00
Meik Sievertsen
431e494ae4 To all people having their bug status set to fixed: SF pserver CVS access is currently down, therefore the snapshots are still out of date.
- fix a bunch of bugs
- <!-- $Id$ --> is no longer allowed in template (.html) files
- changed layout of private message screens (folders are menu items)
- removed unread mode for private messages
- added new feature to template engine - "jump out of loop" or "loop another loop within my loop" :D (will be documented within the coding guidelines)
- added autologin field to sessions
- check session length checks
- added add_log statement to sessions to track session valid to invalid changes if ip/browser change depending on config settings (only debug)
- added multibyte support for various variables (exception at the moment is usernames which needs some discussion)
- hopefully not broke something. :/


git-svn-id: file:///svn/phpbb/trunk@5765 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-06 17:15:45 +00:00
Graham Eames
3933f0bab3 This now gives a full path through the new install system.
New features:
 - Rearranged config items
 - Added advanced config page for optional settings
 - Email admin on install
NOTE: This only works if config.php is writable, if it is unwritable, you must fallback to the old method, edit install_install.php where the redirect is commented out in the database settings to do this


git-svn-id: file:///svn/phpbb/trunk@5764 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-05 12:53:27 +00:00
Graham Eames
3f5f4d9818 Fix the vanishing menu item
git-svn-id: file:///svn/phpbb/trunk@5763 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-05 12:47:19 +00:00
David M
09d9cd6e24 - This should work! :D
git-svn-id: file:///svn/phpbb/trunk@5760 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-04-05 01:17:05 +00:00
Meik Sievertsen
0293556bc9 fix layout for internet explorer (needs further tweaks, the permissions screens are looking "horrible" in ie, fine in ff though. ;))
git-svn-id: file:///svn/phpbb/trunk@5759 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-29 18:23:26 +00:00
Meik Sievertsen
f388c2d96e #1362 - Url shortening error on local URL's
git-svn-id: file:///svn/phpbb/trunk@5758 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-29 17:56:03 +00:00
Meik Sievertsen
cf9617bdb5 erm, yes, this one was easy. :)
git-svn-id: file:///svn/phpbb/trunk@5757 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-29 17:50:08 +00:00
Meik Sievertsen
c6cf57a138 #1382
git-svn-id: file:///svn/phpbb/trunk@5756 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-29 17:46:17 +00:00
Meik Sievertsen
5b253228d7 use correct entity
git-svn-id: file:///svn/phpbb/trunk@5755 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-29 17:38:09 +00:00
Meik Sievertsen
86ed5e5828 Do not display adding friend/foe for anonymous and users own profile
git-svn-id: file:///svn/phpbb/trunk@5754 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-29 08:45:42 +00:00
Meik Sievertsen
dd1e25e830 #1340
git-svn-id: file:///svn/phpbb/trunk@5753 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-29 08:37:33 +00:00
Nils Adermann
112a0e8761 - don't show too old reports/queue entries
git-svn-id: file:///svn/phpbb/trunk@5752 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 18:59:00 +00:00
Meik Sievertsen
a22c4b96bf #1297 - only check username length if name change is allowed
git-svn-id: file:///svn/phpbb/trunk@5751 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 18:09:55 +00:00
Nils Adermann
2372c30785 - did I mention I don't like mcp_sorting()? ;-)
git-svn-id: file:///svn/phpbb/trunk@5750 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 18:07:38 +00:00
Meik Sievertsen
ceb03a3804 (hopefully) fixed the error display for uploading avatars (if avatar is too big)
git-svn-id: file:///svn/phpbb/trunk@5749 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 18:01:15 +00:00
Meik Sievertsen
1aed382e52 fix additional group related thingy (correctly display memberships)
git-svn-id: file:///svn/phpbb/trunk@5748 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 17:52:03 +00:00
Meik Sievertsen
59921266fb add some language items... 😁
git-svn-id: file:///svn/phpbb/trunk@5747 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 17:36:57 +00:00
Meik Sievertsen
4c2275e1fa sorry david. :/
git-svn-id: file:///svn/phpbb/trunk@5746 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 17:25:27 +00:00
Meik Sievertsen
9adbf3726a #1264 - fix redirecting if page dir is empty
git-svn-id: file:///svn/phpbb/trunk@5745 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 17:23:23 +00:00
Meik Sievertsen
7e47a8ddb0 added ability to hide coppa groups (mainly applied to permission screens)
git-svn-id: file:///svn/phpbb/trunk@5744 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 17:10:07 +00:00
David M
fe9590cf5a - Bug 1301
git-svn-id: file:///svn/phpbb/trunk@5743 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 16:46:49 +00:00
Meik Sievertsen
20e6dbb389 fixing some bugs
git-svn-id: file:///svn/phpbb/trunk@5742 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 14:04:55 +00:00
Meik Sievertsen
8936be1628 correct user management link
git-svn-id: file:///svn/phpbb/trunk@5741 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 13:49:23 +00:00
Meik Sievertsen
b6b43a7580 add group_legend to group management
git-svn-id: file:///svn/phpbb/trunk@5740 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 13:47:16 +00:00
David M
f52ef0a6ec - Visual Confirmation for guest posting
git-svn-id: file:///svn/phpbb/trunk@5739 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-28 12:44:27 +00:00
Meik Sievertsen
3ad9c2f089 #1304, #1335, #1336
git-svn-id: file:///svn/phpbb/trunk@5738 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-27 21:42:47 +00:00
Meik Sievertsen
056aa160f9 #1327
git-svn-id: file:///svn/phpbb/trunk@5737 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-27 21:32:08 +00:00
Graham Eames
253c2fadcd Adding admin settings to the new system (not used yet)
git-svn-id: file:///svn/phpbb/trunk@5736 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-27 19:30:44 +00:00
Nils Adermann
f430f01634 - use radio class for radio buttons
- use lower case anchor in FAQ
- add a lang key for ACP_SEARCH


git-svn-id: file:///svn/phpbb/trunk@5735 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-27 19:30:37 +00:00
Nils Adermann
397fff57f2 - redirection should properly work now
- align jumpbox properly


git-svn-id: file:///svn/phpbb/trunk@5734 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-27 18:45:18 +00:00
Nils Adermann
e7140d658d - add missing pagination to queue/reports
- hide the close button on closed reports page
- fix a JS bug in mcp/acp ban view


git-svn-id: file:///svn/phpbb/trunk@5733 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-27 12:48:29 +00:00
Graham Eames
19b5f17ff8 Fix a minor typo [#1346]
git-svn-id: file:///svn/phpbb/trunk@5732 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-26 21:17:09 +00:00
Graham Eames
84c01baff3 The logs indicate a large aquatic creature in the future if this gets removed by mistake again ;-)
git-svn-id: file:///svn/phpbb/trunk@5731 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-26 18:49:46 +00:00
Nils Adermann
c4ebef7f27 - some JS magic to make color bbcode work properly with selected text [Bug #1118]
git-svn-id: file:///svn/phpbb/trunk@5730 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-26 16:12:54 +00:00
Meik Sievertsen
1e895071d4 ok, this should work now (multi-table deletion syntax changed between mysql 4.0 and mysql 4.1)
git-svn-id: file:///svn/phpbb/trunk@5728 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-26 11:36:54 +00:00
Nils Adermann
8a32e0de74 - correctly use DISTINCT and GROUP BY in search related SQL [Bug #1256]
- always display views and replies in search results [Bug #1223]
- display error messages occuring during search index creation/deletion [Bug #1274]
- correctly align the ACP link on the search results page [Bug #1160]
- fixed the search forum box [Bug #1300] and added a search topic box (subBlue: can you please position this a little more visible, didn't want to mess with the CSS ;-))
- correctly check and use show_results on the search page


git-svn-id: file:///svn/phpbb/trunk@5727 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-26 01:36:26 +00:00
Graham Eames
ed32b4d8dc A small change to the ordering to try and ensure that the mysql module with the most functionality is listed first so that people are not using the old mysql3 one if they don't check the list.
This will probably get looked at again later


git-svn-id: file:///svn/phpbb/trunk@5726 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 19:53:53 +00:00
Meik Sievertsen
1a8c91b0d4 ok, thought about this now for too long. I think the best solution circumventing memory consumption and not introducing "hacks" is to seperate module information (and probably more in 3.2 for installation/uninstallation) from the main code.
git-svn-id: file:///svn/phpbb/trunk@5725 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 19:14:55 +00:00
Meik Sievertsen
64fbadf3d6 changed the way re-authentication is handled, basically hardening the process.
- also forbid re-authenticating as another user.

needs further testing.


git-svn-id: file:///svn/phpbb/trunk@5724 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 17:21:32 +00:00
Meik Sievertsen
1096b13c7e make sure sql ary is filled before executing the query
git-svn-id: file:///svn/phpbb/trunk@5723 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 17:00:53 +00:00
Meik Sievertsen
c92e1c12a0 save graham temporarly some headaches. ;)
git-svn-id: file:///svn/phpbb/trunk@5722 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 16:19:20 +00:00
Meik Sievertsen
30a0cf29fb do not ask why i put the pm table there instead of the polls. :o
- remove forum description from title tag (now it's able to hold bbcode etc. resulting in broken layout)


git-svn-id: file:///svn/phpbb/trunk@5721 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 16:10:57 +00:00
Graham Eames
80e28a2db7 BBCode parser needs instantiating [#1241]
git-svn-id: file:///svn/phpbb/trunk@5720 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 16:05:03 +00:00
Meik Sievertsen
5d2bba8e70 #1232
git-svn-id: file:///svn/phpbb/trunk@5719 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 15:46:20 +00:00
Graham Eames
384e434fca UI changes to the database settings section of the installer
Note: To prevent issues with incorrect database settings, it is now no longer possible to pass this point without the settings having been tested to make sure they work


git-svn-id: file:///svn/phpbb/trunk@5718 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 15:44:35 +00:00
Meik Sievertsen
852dcd3127 #1251
git-svn-id: file:///svn/phpbb/trunk@5717 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 15:39:29 +00:00
Meik Sievertsen
b2e44f5ba1 bug #1271
git-svn-id: file:///svn/phpbb/trunk@5716 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 15:35:20 +00:00
Meik Sievertsen
844aad7ff7 fix "copy permissions" as well as shortening the $acl_url for redirecting to the permissions screen.
git-svn-id: file:///svn/phpbb/trunk@5715 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 15:32:52 +00:00
Graham Eames
791b580f43 Get user lookups working [#1281, #1282]
git-svn-id: file:///svn/phpbb/trunk@5714 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 15:30:57 +00:00
Meik Sievertsen
d1676cb6bf my attempt to fix custom profile fields
- added the load settings for custom profile fields
- re-added our famous make_clickable function
- removed group_by clauses (due to the lang id selection the group by clause is no more needed)

I hope that i have not just created new bugs. ;)


git-svn-id: file:///svn/phpbb/trunk@5712 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 14:16:17 +00:00
Meik Sievertsen
7f497764e1 fixed tiny bugs
git-svn-id: file:///svn/phpbb/trunk@5711 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 13:05:28 +00:00
Meik Sievertsen
f49a8147b7 fix #1213
git-svn-id: file:///svn/phpbb/trunk@5710 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 12:35:23 +00:00
Meik Sievertsen
5de37a5c0a - extended session_page and user_lastpage to hold a maximum of 200 chars (instead of 100) - session_page gets truncated to 200 chars
- streamlined the process of generating text with bbcode/smilies/urls (forum rules, forum descriptions, group descriptions at the moment)
- a bunch of schema changes for the bbcode-enabled text and the session page change (sorry for this)
- if decode_message is used there is no need to include functions_posting.php anymore (should fix the search.php bug too)


git-svn-id: file:///svn/phpbb/trunk@5709 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 12:07:13 +00:00
David M
529aabd46d - We do On-the-fly file writting for everything in backups, should speed things up
- Removed the ability to make archives for backups... Its one sql file, no need to use some heavy archive to store it...
- Made it easier to use the restore feature
- Flushed the data buffer at the end of every insert statement, this should make large tables (like posts and topics) faster to backup
- Some bug fixes :D


git-svn-id: file:///svn/phpbb/trunk@5708 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-25 01:03:17 +00:00
Meik Sievertsen
e8e4d92d01 ahhh, there we have it... related to several reports about code blocks and bbcode parsing (#1302)
git-svn-id: file:///svn/phpbb/trunk@5707 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-24 18:05:47 +00:00
Nils Adermann
56a70484ef - some adjustments for search related config options
- one year is 365 days long (52 * 7 = 364, but we have one more day each year ;-)) [Bug #1181]
- fixed search own posts link in UCP [Bug #1163]
- corrections to timezone selection [Bug #1148]
- fix quickmod tools on post details page [Bug #1188]


git-svn-id: file:///svn/phpbb/trunk@5705 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-23 19:23:52 +00:00
David M
cccada69c0 - Bug 1245
git-svn-id: file:///svn/phpbb/trunk@5704 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-23 01:59:14 +00:00
David M
09d5c596eb - Improved Backup ACP UI, more work to come...
git-svn-id: file:///svn/phpbb/trunk@5703 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-23 01:48:49 +00:00
Graham Eames
58f723374b Adding in the next page of the installer
Note that this still falls back to the old code part-way through the install


git-svn-id: file:///svn/phpbb/trunk@5702 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 21:03:47 +00:00
Meik Sievertsen
22063e974a - hopefully fixed inactive create forum input field + button for safari 2.0.2 (floating issue?)
- updated format_date calls (fixed ancient calls)
- fixed newest username setting for activating users through the admin panel


git-svn-id: file:///svn/phpbb/trunk@5701 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 18:48:46 +00:00
Meik Sievertsen
654a35c653 strange... must've been my editor not reloading between updates.
git-svn-id: file:///svn/phpbb/trunk@5700 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 17:38:46 +00:00
Meik Sievertsen
1e2ed1bc9f adjusting sql_freeresult a bit as well as our error handler (it now prints out if it is because of DEBUG_EXTRA being defined - which is not enabled within the betas/rc's and stable releases).
git-svn-id: file:///svn/phpbb/trunk@5699 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 17:30:20 +00:00
Meik Sievertsen
02239880a5 make sure we check the array we use before we use it. ;)
git-svn-id: file:///svn/phpbb/trunk@5698 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 17:04:59 +00:00
Meik Sievertsen
d73353cdae ok, this will fix various permission discrepances. :) What happened is that the static permission cache and the static acl forum ids were used... globally (of course). But this led to users inheriting permissions from previously called user permission setups resulting in users seeing private forums in profiles as well as other areas i could imagine being "wrong". Thanks to Yawner for letting me login with his username. :D
git-svn-id: file:///svn/phpbb/trunk@5697 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 13:36:58 +00:00
Meik Sievertsen
267e4d4616 fix pruning of users
git-svn-id: file:///svn/phpbb/trunk@5696 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 11:13:33 +00:00
Meik Sievertsen
6e166aa889 added some language strings as well as fixing the activity listing (Yawner, could you please test it again at area51?)
git-svn-id: file:///svn/phpbb/trunk@5695 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 10:33:30 +00:00
Meik Sievertsen
b206d63c51 do not validate username when disallowing it. ;) - #1220
git-svn-id: file:///svn/phpbb/trunk@5694 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 10:17:48 +00:00
Meik Sievertsen
95e7b12706 Use another color for special group seperation (makes it easier to distinct between special groups and selected groups) - #1147
git-svn-id: file:///svn/phpbb/trunk@5693 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 10:10:36 +00:00
David M
aba2d59c88 - Needless regular expressions
git-svn-id: file:///svn/phpbb/trunk@5692 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 06:23:37 +00:00
David M
0f32198272 - Bug 1200
git-svn-id: file:///svn/phpbb/trunk@5691 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 02:28:41 +00:00
David M
b2f24f965c - Bug 1201
git-svn-id: file:///svn/phpbb/trunk@5690 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 02:20:59 +00:00
David M
2b24cdb40f - Bug 1192
git-svn-id: file:///svn/phpbb/trunk@5689 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 02:17:34 +00:00
David M
64e72f98d4 - Bug 1202
git-svn-id: file:///svn/phpbb/trunk@5688 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 02:10:33 +00:00
David M
58466c2a9d - Bug 1197
git-svn-id: file:///svn/phpbb/trunk@5687 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 01:49:32 +00:00
David M
3e1ca2ab65 - Bug 1194
git-svn-id: file:///svn/phpbb/trunk@5686 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 01:36:28 +00:00
David M
77167195c7 - Bug 1183
git-svn-id: file:///svn/phpbb/trunk@5685 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 00:48:43 +00:00
David M
a52cff70d2 - Bug 1144
- Bug 1199
- We can't free a result that was already free()'d!


git-svn-id: file:///svn/phpbb/trunk@5684 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-22 00:45:58 +00:00
David M
c5a7c26693 - Fixed my fix :D
git-svn-id: file:///svn/phpbb/trunk@5683 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-21 23:45:59 +00:00
David M
6950059475 - Bug 1100
git-svn-id: file:///svn/phpbb/trunk@5682 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-21 23:40:37 +00:00
David M
0818b471e6 - Bug 1177
git-svn-id: file:///svn/phpbb/trunk@5681 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-21 23:29:54 +00:00
Meik Sievertsen
6e80318f89 ability to set all role options to UNSET
git-svn-id: file:///svn/phpbb/trunk@5680 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-21 21:39:16 +00:00
Graham Eames
295a463e99 Retrieve user_warning count in case a template designer wishes to display it on this page
git-svn-id: file:///svn/phpbb/trunk@5679 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-21 19:23:45 +00:00
Meik Sievertsen
21de871aff - a bunch of bugfixes. :P
git-svn-id: file:///svn/phpbb/trunk@5678 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-21 19:23:34 +00:00
Graham Eames
44c60cff4d A small typo that I didn't commit last night
git-svn-id: file:///svn/phpbb/trunk@5677 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-21 18:00:48 +00:00
Graham Eames
41d2a2052c Change the handling of language detection to avoid errors if the language header is either not sent by the browser or there is no matching language available.
Also added support for forcing a language via the URL for now, this may or may not remain


git-svn-id: file:///svn/phpbb/trunk@5676 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-20 21:03:51 +00:00
Graham Eames
c01c69e63f Missing language strings in warning system [Bug #1156]
git-svn-id: file:///svn/phpbb/trunk@5675 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-20 20:42:48 +00:00
Nils Adermann
cbbc1d2a45 - Bug 1104: fixed a typo ($necoding => $encoding)
- Bug 1139: active_topics now has a button to submit the "Display posts from previous <time>" form
- active_topics doesn't return NULL rows anymore
- fix a padding bug in the search forum listing


git-svn-id: file:///svn/phpbb/trunk@5674 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-19 22:25:43 +00:00
Graham Eames
7dda2cd9bf Move the $Id tag to prevent output errors
git-svn-id: file:///svn/phpbb/trunk@5673 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-19 18:47:56 +00:00
Meik Sievertsen
c272b05969 - bbcode ids need to be greater than NUM_CORE_BBCODES
git-svn-id: file:///svn/phpbb/trunk@5672 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-19 14:58:34 +00:00
Nils Adermann
5f6473fd54 Two little changes to language files:
- Bug 1093
- Bug 1087


git-svn-id: file:///svn/phpbb/trunk@5671 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-19 14:49:59 +00:00
Meik Sievertsen
b4c9cd7590 - add our beloved in_phpbb check
git-svn-id: file:///svn/phpbb/trunk@5670 89ea8834-ac86-4346-8a33-228a782c2dd0
2006-03-19 14:23:21 +00:00
573 changed files with 126531 additions and 40041 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 358 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 570 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 249 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 239 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 333 B

After

Width:  |  Height:  |  Size: 333 B

View File

Before

Width:  |  Height:  |  Size: 344 B

After

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

View File

@@ -11,14 +11,15 @@
/**
*/
define('IN_PHPBB', 1);
define('ADMIN_START', 1);
define('NEED_SID', true);
// Include files
$phpbb_root_path = './../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
require($phpbb_root_path . 'common.'.$phpEx);
require($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
require($phpbb_root_path . 'includes/functions_module.'.$phpEx);
require($phpbb_root_path . 'common.' . $phpEx);
require($phpbb_root_path . 'includes/functions_admin.' . $phpEx);
require($phpbb_root_path . 'includes/functions_module.' . $phpEx);
// Start session management
$user->session_begin();
@@ -51,7 +52,7 @@ $phpbb_admin_path = './';
// Some oft used variables
$safe_mode = (@ini_get('safe_mode') || @strtolower(ini_get('safe_mode')) == 'on') ? true : false;
$file_uploads = (@ini_get('file_uploads') || strtolower(@ini_get('file_uploads')) == 'on') ? true : false;
$file_uploads = (@ini_get('file_uploads') || strtolower(@ini_get('file_uploads')) == 'on') ? true : false;
$module_id = request_var('i', '');
$mode = request_var('mode', '');
@@ -59,6 +60,9 @@ $mode = request_var('mode', '');
$template->set_custom_template($phpbb_admin_path . 'style', 'admin');
$template->assign_var('T_TEMPLATE_PATH', $phpbb_admin_path . 'style');
// the acp template is never stored in the database
$user->theme['template_storedb'] = false;
// Force pagination seperation for admin style
$user->theme['pagination_sep'] = '';
@@ -73,7 +77,7 @@ $module->set_active($module_id, $mode);
// Assign data to the template engine for the list of modules
// We do this before loading the active module for correct menu display in trigger_error
$module->assign_tpl_vars("{$phpbb_admin_path}index.$phpEx$SID");
$module->assign_tpl_vars(append_sid("{$phpbb_admin_path}index.$phpEx"));
// Load and execute the relevant module
$module->load_active();
@@ -87,25 +91,25 @@ $template->set_filenames(array(
adm_page_footer();
// ---------
// FUNCTIONS
//
/**
* Header for acp pages
*/
function adm_page_header($page_title)
{
global $config, $db, $user, $template;
global $phpbb_root_path, $phpbb_admin_path, $phpEx, $SID;
global $phpbb_root_path, $phpbb_admin_path, $phpEx, $SID, $_SID;
if (defined('HEADER_INC'))
{
return;
}
define('HEADER_INC', true);
// gzip_compression
if ($config['gzip_compress'])
{
if (extension_loaded('zlib') && !headers_sent())
if (@extension_loaded('zlib') && !headers_sent())
{
ob_start('ob_gzhandler');
}
@@ -114,33 +118,57 @@ function adm_page_header($page_title)
$template->assign_vars(array(
'PAGE_TITLE' => $page_title,
'USERNAME' => $user->data['username'],
'SID' => $SID,
'_SID' => $_SID,
'SESSION_ID' => $user->session_id,
'ROOT_PATH' => $phpbb_admin_path,
'U_LOGOUT' => "{$phpbb_root_path}ucp.$phpEx$SID&amp;mode=logout",
'U_ADM_INDEX' => "{$phpbb_admin_path}index.$phpEx$SID",
'U_INDEX' => "{$phpbb_root_path}index.$phpEx$SID",
'U_LOGOUT' => append_sid("{$phpbb_root_path}ucp.$phpEx", 'mode=logout'),
'U_ADM_INDEX' => append_sid("{$phpbb_admin_path}index.$phpEx"),
'U_INDEX' => append_sid("{$phpbb_root_path}index.$phpEx"),
'S_CONTENT_DIRECTION' => $user->lang['DIRECTION'],
'S_CONTENT_ENCODING' => $user->lang['ENCODING'],
'S_CONTENT_DIR_LEFT' => $user->lang['LEFT'],
'S_CONTENT_DIR_RIGHT' => $user->lang['RIGHT'],
)
);
'T_IMAGES_PATH' => "{$phpbb_root_path}images/",
'T_SMILIES_PATH' => "{$phpbb_root_path}{$config['smilies_path']}/",
'T_AVATAR_PATH' => "{$phpbb_root_path}{$config['avatar_path']}/",
'T_AVATAR_GALLERY_PATH' => "{$phpbb_root_path}{$config['avatar_gallery_path']}/",
'T_ICONS_PATH' => "{$phpbb_root_path}{$config['icons_path']}/",
'T_RANKS_PATH' => "{$phpbb_root_path}{$config['ranks_path']}/",
'T_UPLOAD_PATH' => "{$phpbb_root_path}{$config['upload_path']}/",
if (!empty($config['send_encoding']))
{
header('Content-type: text/html; charset: ' . $user->lang['ENCODING']);
}
header('Cache-Control: private, no-cache="set-cookie", pre-check=0, post-check=0');
'ICON_MOVE_UP' => '<img src="' . $phpbb_admin_path . 'images/icon_up.gif" alt="' . $user->lang['MOVE_UP'] . '" title="' . $user->lang['MOVE_UP'] . '" />',
'ICON_MOVE_UP_DISABLED' => '<img src="' . $phpbb_admin_path . 'images/icon_up_disabled.gif" alt="' . $user->lang['MOVE_UP'] . '" title="' . $user->lang['MOVE_UP'] . '" />',
'ICON_MOVE_DOWN' => '<img src="' . $phpbb_admin_path . 'images/icon_down.gif" alt="' . $user->lang['MOVE_DOWN'] . '" title="' . $user->lang['MOVE_DOWN'] . '" />',
'ICON_MOVE_DOWN_DISABLED' => '<img src="' . $phpbb_admin_path . 'images/icon_down_disabled.gif" alt="' . $user->lang['MOVE_DOWN'] . '" title="' . $user->lang['MOVE_DOWN'] . '" />',
'ICON_EDIT' => '<img src="' . $phpbb_admin_path . 'images/icon_edit.gif" alt="' . $user->lang['EDIT'] . '" title="' . $user->lang['EDIT'] . '" />',
'ICON_EDIT_DISABLED' => '<img src="' . $phpbb_admin_path . 'images/icon_edit_disabled.gif" alt="' . $user->lang['EDIT'] . '" title="' . $user->lang['EDIT'] . '" />',
'ICON_DELETE' => '<img src="' . $phpbb_admin_path . 'images/icon_delete.gif" alt="' . $user->lang['DELETE'] . '" title="' . $user->lang['DELETE'] . '" />',
'ICON_DELETE_DISABLED' => '<img src="' . $phpbb_admin_path . 'images/icon_delete_disabled.gif" alt="' . $user->lang['DELETE'] . '" title="' . $user->lang['DELETE'] . '" />',
'ICON_SYNC' => '<img src="' . $phpbb_admin_path . 'images/icon_sync.gif" alt="' . $user->lang['RESYNC'] . '" title="' . $user->lang['RESYNC'] . '" />',
'ICON_SYNC_DISABLED' => '<img src="' . $phpbb_admin_path . 'images/icon_sync_disabled.gif" alt="' . $user->lang['RESYNC'] . '" title="' . $user->lang['RESYNC'] . '" />',
'S_USER_LANG' => $user->lang['USER_LANG'],
'S_CONTENT_DIRECTION' => $user->lang['DIRECTION'],
'S_CONTENT_ENCODING' => 'UTF-8',
));
// application/xhtml+xml not used because of IE
header('Content-type: text/html; charset=UTF-8');
header('Cache-Control: private, no-cache="set-cookie"');
header('Expires: 0');
header('Pragma: no-cache');
return;
}
/**
* Page footer for acp pages
*/
function adm_page_footer($copyright_html = true)
{
global $db, $config, $template, $SID, $user, $auth, $starttime, $phpbb_root_path, $phpEx, $cache;
global $db, $config, $template, $user, $auth, $cache;
global $starttime, $phpbb_root_path, $phpbb_admin_path, $phpEx;
// Output page creation time
if (defined('DEBUG'))
@@ -148,12 +176,12 @@ function adm_page_footer($copyright_html = true)
$mtime = explode(' ', microtime());
$totaltime = $mtime[0] + $mtime[1] - $starttime;
if (!empty($_REQUEST['explain']) && $auth->acl_get('a_') && method_exists($db, 'sql_report'))
if (!empty($_REQUEST['explain']) && $auth->acl_get('a_') && defined('DEBUG_EXTRA') && method_exists($db, 'sql_report'))
{
$db->sql_report('display');
}
$debug_output = sprintf('Time : %.3fs | ' . $db->sql_num_queries() . ' Queries | GZIP : ' . (($config['gzip_compress']) ? 'On' : 'Off' ) . ' | Load : ' . (($user->load) ? $user->load : 'N/A'), $totaltime);
$debug_output = sprintf('Time : %.3fs | ' . $db->sql_num_queries() . ' Queries | GZIP : ' . (($config['gzip_compress']) ? 'On' : 'Off') . (($user->load) ? ' | Load : ' . $user->load : ''), $totaltime);
if ($auth->acl_get('a_') && defined('DEBUG_EXTRA'))
{
@@ -169,36 +197,36 @@ function adm_page_footer($copyright_html = true)
}
}
$debug_output .= ' | <a href="' . (($_SERVER['REQUEST_URI']) ? htmlspecialchars($_SERVER['REQUEST_URI']) : "index.$phpEx$SID") . ((strpos($_SERVER['REQUEST_URI'], '?') !== false) ? '&amp;' : '?') . 'explain=1">Explain</a>';
$debug_output .= ' | <a href="' . build_url() . '&amp;explain=1">Explain</a>';
}
}
$template->assign_vars(array(
'DEBUG_OUTPUT' => (defined('DEBUG')) ? $debug_output : '',
'TRANSLATION_INFO' => (!empty($user->lang['TRANSLATION_INFO'])) ? $user->lang['TRANSLATION_INFO'] : '',
'S_COPYRIGHT_HTML' => $copyright_html,
'VERSION' => $config['version']
)
'VERSION' => $config['version'])
);
$template->display('body');
// Unload cache, must be done before the DB connection if closed
if (!empty($cache))
{
$cache->unload();
}
// Close our DB connection.
$db->sql_close();
garbage_collection();
exit;
}
/**
* Generate back link for acp pages
*/
function adm_back_link($u_action)
{
return '<br /><br /><a href="' . $u_action . '">&laquo; Back to previous page</a>';
global $user;
return '<br /><br /><a href="' . $u_action . '">&laquo; ' . $user->lang['BACK_TO_PREV'] . '</a>';
}
/**
* Build select field options in acp pages
*/
function build_select($option_ary, $option_default = false)
{
global $user;
@@ -213,6 +241,9 @@ function build_select($option_ary, $option_default = false)
return $html;
}
/**
* Build radio fields in acp pages
*/
function h_radio($name, &$input_ary, $input_default = false, $id = false, $key = false)
{
global $user;
@@ -230,6 +261,9 @@ function h_radio($name, &$input_ary, $input_default = false, $id = false, $key =
return $html;
}
/**
* Build configuration template for acp configuration pages
*/
function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)
{
global $user, $module;
@@ -245,21 +279,21 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)
$maxlength = (int) $tpl_type[2];
$tpl = '<input id="' . $key . '" type="' . $tpl_type[0] . '"' . (($size) ? ' size="' . $size . '"' : '') . ' maxlength="' . (($maxlength) ? $maxlength : 255) . '" name="' . $name . '" value="' . $new[$config_key] . '" />';
break;
break;
case 'dimension':
$size = (int) $tpl_type[1];
$maxlength = (int) $tpl_type[2];
$tpl = '<input id="' . $key . '" type="text"' . (($size) ? ' size="' . $size . '"' : '') . ' maxlength="' . (($maxlength) ? $maxlength : 255) . '" name="config[' . $config_key . '_height]" value="' . $new[$config_key . '_height'] . '" /> x <input type="text"' . (($size) ? ' size="' . $size . '"' : '') . ' maxlength="' . (($maxlength) ? $maxlength : 255) . '" name="config[' . $config_key . '_width]" value="' . $new[$config_key . '_width'] . '" />';
break;
break;
case 'textarea':
$rows = (int) $tpl_type[1];
$cols = (int) $tpl_type[2];
$tpl = '<textarea id="' . $key . '" name="' . $name . '" rows="' . $rows . '" cols="' . $cols . '">' . $new[$config_key] . '</textarea>';
break;
break;
case 'radio':
$key_yes = ($new[$config_key]) ? ' checked="checked"' : '';
@@ -272,7 +306,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)
$tpl_yes = '<input type="radio" id="' . $key . '" name="' . $name . '" value="1"' . $key_yes . ' class="radio" />&nbsp;' . (($type_no) ? $user->lang['YES'] : $user->lang['ENABLED']);
$tpl = ($tpl_type_cond[0] == 'yes' || $tpl_type_cond[0] == 'enabled') ? $tpl_yes . '&nbsp;&nbsp;' . $tpl_no : $tpl_no . '&nbsp;&nbsp;' . $tpl_yes;
break;
break;
case 'select':
case 'custom':
@@ -291,7 +325,7 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)
{
break;
}
if (isset($vars['params']))
{
$args = array();
@@ -327,18 +361,145 @@ function build_cfg_template($tpl_type, $key, &$new, $config_key, $vars)
$tpl = $return;
}
break;
break;
default:
break;
break;
}
if (isset($vars['append']))
{
$tpl .= $vars['append'];
}
return $tpl;
}
/**
* Going through a config array and validate values, writing errors to $error.
*/
function validate_config_vars($config_vars, &$cfg_array, &$error)
{
global $phpbb_root_path, $user;
foreach ($config_vars as $config_name => $config_definition)
{
if (!isset($cfg_array[$config_name]) || strpos($config_name, 'legend') !== false)
{
continue;
}
if (!isset($config_definition['validate']))
{
continue;
}
// Validate a bit. ;) String is already checked through request_var(), therefore we do not check this again
switch ($config_definition['validate'])
{
case 'bool':
$cfg_array[$config_name] = ($cfg_array[$config_name]) ? 1 : 0;
break;
case 'int':
$cfg_array[$config_name] = (int) $cfg_array[$config_name];
break;
// Absolute path
case 'script_path':
if (!$cfg_array[$config_name])
{
break;
}
$destination = str_replace('\\', '/', $cfg_array[$config_name]);
if ($destination !== '/')
{
// Adjust destination path (no trailing slash)
if (substr($destination, -1, 1) == '/')
{
$destination = substr($destination, 0, -1);
}
$destination = str_replace(array('../', './'), '', $destination);
if ($destination[0] != '/')
{
$destination = '/' . $destination;
}
}
$cfg_array[$config_name] = trim($destination);
break;
// Relative path (appended $phpbb_root_path)
case 'rpath':
case 'rwpath':
if (!$cfg_array[$config_name])
{
break;
}
$destination = $cfg_array[$config_name];
// Adjust destination path (no trailing slash)
if (substr($destination, -1, 1) == '/' || substr($destination, -1, 1) == '\\')
{
$destination = substr($destination, 0, -1);
}
$destination = str_replace(array('../', '..\\', './', '.\\'), '', $destination);
if ($destination && ($destination[0] == '/' || $destination[0] == "\\"))
{
$destination = '';
}
$cfg_array[$config_name] = trim($destination);
// Path being relative (still prefixed by phpbb_root_path), but with the ability to escape the root dir...
case 'path':
case 'wpath':
if (!$cfg_array[$config_name])
{
break;
}
$cfg_array[$config_name] = trim($cfg_array[$config_name]);
// Make sure no NUL byte is present...
if (strpos($cfg_array[$config_name], '\0') !== false || strpos($cfg_array[$config_name], '%00') !== false)
{
$cfg_array[$config_name] = '';
break;
}
if (!file_exists($phpbb_root_path . $cfg_array[$config_name]))
{
$error[] = sprintf($user->lang['DIRECTORY_DOES_NOT_EXIST'], $cfg_array[$config_name]);
}
if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !is_dir($phpbb_root_path . $cfg_array[$config_name]))
{
$error[] = sprintf($user->lang['DIRECTORY_NOT_DIR'], $cfg_array[$config_name]);
}
// Check if the path is writeable
if ($config_definition['validate'] == 'wpath' || $config_definition['validate'] == 'rwpath')
{
if (file_exists($phpbb_root_path . $cfg_array[$config_name]) && !is_writeable($phpbb_root_path . $cfg_array[$config_name]))
{
$error[] = sprintf($user->lang['DIRECTORY_NOT_WRITEABLE'], $cfg_array[$config_name]);
}
}
break;
}
}
return;
}
?>

View File

@@ -2,6 +2,10 @@
<a name="maincontent"></a>
<!-- IF U_BACK -->
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<!-- ENDIF -->
<h1>{L_TITLE}</h1>
<p>{L_TITLE_EXPLAIN}</p>
@@ -33,122 +37,73 @@
<!-- IF S_ATTACHMENT_SETTINGS -->
<form id="attachsettings" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_ACP_ATTACHMENT_SETTINGS}</legend>
<dl>
<dt><label for="upload_dir">{L_UPLOAD_DIR}:</label><br /><span>{L_UPLOAD_DIR_EXPLAIN}</span></dt>
<dd><input type="text" id="upload_dir" size="25" maxlength="100" name="upload_path" value="{UPLOAD_PATH}" /></dd>
</dl>
<dl>
<dt><label for="display_order">{L_DISPLAY_ORDER}:</label><br /><span>{L_DISPLAY_ORDER_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="display_order" name="display_order" value="0"<!-- IF not DISPLAY_ORDER --> checked="checked"<!-- ENDIF --> /> {L_DESCENDING} &nbsp; <input type="radio" name="display_order" value="1"<!-- IF DISPLAY_ORDER --> checked="checked"<!-- ENDIF --> class="radio" /> {L_ASCENDING}</dd>
</dl>
<dl>
<dt><label for="attach_quota">{L_ATTACH_QUOTA}:</label><br /><span>{L_ATTACH_QUOTA_EXPLAIN}</span></dt>
<dd><input type="text" id="attach_quota" size="8" maxlength="15" name="attachment_quota" value="{ATTACHMENT_QUOTA}" /> <select name="quota_size">{S_QUOTA_SIZE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="max_filesize">{L_ATTACH_MAX_FILESIZE}:</label><br /><span>{L_ATTACH_MAX_FILESIZE_EXPLAIN}</span></dt>
<dd><input type="text" id="max_filesize" size="8" maxlength="15" name="max_filesize" value="{MAX_FILESIZE}" /> <select name="size">{S_MAX_FILESIZE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="max_pm_filesize">{L_ATTACH_MAX_PM_FILESIZE}:</label><br /><span>{L_ATTACH_MAX_PM_FILESIZE_EXPLAIN}</span></dt>
<dd><input type="text" id="max_pm_filesize" size="8" maxlength="15" name="max_filesize_pm" value="{MAX_PM_FILESIZE}" /> <select name="pm_size">{S_MAX_PM_FILESIZE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="max_attachments">{L_MAX_ATTACHMENTS}:</label></dt>
<dd><input type="text" id="max_attachments" size="3" maxlength="3" name="max_attachments" value="{MAX_ATTACHMENTS}" /></dd>
</dl>
<dl>
<dt><label for="max_attachments_pm">{L_MAX_ATTACHMENTS_PM}:</label></dt>
<dd><input type="text" id="max_attachments_pm" size="3" maxlength="3" name="max_attachments_pm" value="{MAX_ATTACHMENTS_PM}" /></dd>
</dl>
<dl>
<dt><label for="secure_downloads">{L_SECURE_DOWNLOADS}:</label><br /><span>{L_SECURE_DOWNLOADS_EXPLAIN}</span></dt>
<dd><input type="radio" id="secure_downloads" name="secure_downloads" value="1"<!-- IF SECURE_DOWNLOADS --> checked="checked"<!-- ENDIF --> class="radio" /> {L_YES}&nbsp;&nbsp;<input type="radio" name="secure_downloads" value="0"<!-- IF not SECURE_DOWNLOADS --> checked="checked"<!-- ENDIF --> class="radio" /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="allow_deny">{L_SECURE_ALLOW_DENY}:</label><br /><span>{L_SECURE_ALLOW_DENY_EXPLAIN}</span></dt>
<dd><input type="radio" id="allow_deny" name="secure_allow_deny" value="1"<!-- IF SECURE_ALLOW_DENY --> checked="checked"<!-- ENDIF --> class="radio" /> {L_ORDER_ALLOW_DENY}&nbsp;&nbsp;<input type="radio" name="secure_allow_deny" value="0"<!-- IF not SECURE_ALLOW_DENY --> checked="checked"<!-- ENDIF --> class="radio" /> {L_ORDER_DENY_ALLOW}</dd>
</dl>
<dl>
<dt><label for="referer">{L_SECURE_EMPTY_REFERER}:</label><br /><span>{L_SECURE_EMPTY_REFERER_EXPLAIN}</span></dt>
<dd><input type="radio" id="referer" name="secure_allow_empty_referer" value="1"<!-- IF ALLOW_EMPTY_REFERER --> checked="checked"<!-- ENDIF --> class="radio" /> {L_YES}&nbsp;&nbsp;<input type="radio" name="secure_allow_empty_referer" value="0"<!-- IF not ALLOW_EMPTY_REFERER --> checked="checked"<!-- ENDIF --> class="radio" /> {L_NO}</dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_SETTINGS_CAT_IMAGES} [{L_ASSIGNED_GROUP}: {ASSIGNED_GROUPS}]</legend>
<dl>
<dt><label for="display_inlined">{L_DISPLAY_INLINED}:</label><br /><span>{L_DISPLAY_INLINED_EXPLAIN}</span></dt>
<dd><input type="radio" id="display_inlined" name="img_display_inlined" value="1"<!-- IF DISPLAY_INLINED --> checked="checked"<!-- ENDIF --> class="radio" /> {L_YES}&nbsp;&nbsp;<input type="radio" name="img_display_inlined" value="0"<!-- IF not DISPLAY_INLINED --> checked="checked"<!-- ENDIF --> class="radio" /> {L_NO}</dd>
</dl>
<!-- IF S_THUMBNAIL_SUPPORT -->
<dl>
<dt><label for="create_thumbnail">{L_CREATE_THUMBNAIL}:</label><br /><span>{L_CREATE_THUMBNAIL_EXPLAIN}</span></dt>
<dd><input type="radio" id="create_thumbnail" name="img_create_thumbnail" value="1"<!-- IF CREATE_THUMBNAIL --> checked="checked"<!-- ENDIF --> class="radio" /> {L_YES}&nbsp;&nbsp;<input type="radio" name="img_create_thumbnail" value="0"<!-- IF not CREATE_THUMBNAIL --> checked="checked"<!-- ENDIF --> class="radio" /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="thumb_filesize">{L_MIN_THUMB_FILESIZE}:</label><br /><span>{L_MIN_THUMB_FILESIZE_EXPLAIN}</span></dt>
<dd><input type="text" id="thumb_filesize" size="7" maxlength="15" name="img_min_thumb_filesize" value="{MIN_THUMB_FILESIZE}" /> {L_BYTES}</dd>
</dl>
<!-- IF not S_THUMBNAIL_SUPPORT -->
<div class="errorbox">
<p>{L_NO_THUMBNAIL_SUPPORT}</p>
</div>
<!-- ENDIF -->
<dl>
<dt><label for="imagick_path">{L_IMAGICK_PATH}:</label><br /><span>{L_IMAGICK_PATH_EXPLAIN}</span></dt>
<dd><input type="text" id="imagick_path" size="20" maxlength="200" name="img_imagick" value="{IMG_IMAGICK}" />&nbsp;&nbsp;<span>[ <a href="{U_SEARCH_IMAGICK}">{L_SEARCH_IMAGICK}</a> ]</span></dd>
</dl>
<dl>
<dt><label for="image_size">{L_MAX_IMAGE_SIZE}:</label><br /><span>{L_MAX_IMAGE_SIZE_EXPLAIN}</span></dt>
<dd><input type="text" id="image_size" size="3" maxlength="4" name="img_max_width" value="{MAX_WIDTH}" /> px X <input type="text" size="3" maxlength="4" name="img_max_height" value="{MAX_HEIGHT}" /> px</dd>
</dl>
<dl>
<dt><label for="link_size">{L_IMAGE_LINK_SIZE}:</label><br /><span>{L_IMAGE_LINK_SIZE_EXPLAIN}</span></dt>
<dd><input type="text" id="link_size" size="3" maxlength="4" name="img_link_width" value="{LINK_WIDTH}" /> px X <input type="text" size="3" maxlength="4" name="img_link_height" value="{LINK_HEIGHT}" /> px</dd>
</dl>
<form id="attachsettings" method="post" action="{U_ACTION}">
<!-- BEGIN options -->
<!-- IF options.S_LEGEND -->
<!-- IF not options.S_FIRST_ROW -->
</fieldset>
<!-- ENDIF -->
<fieldset>
<legend>{options.LEGEND}</legend>
<!-- ELSE -->
<dl>
<dt><label for="{options.KEY}">{options.TITLE}:</label><!-- IF options.S_EXPLAIN --><br /><span>{options.TITLE_EXPLAIN}</span><!-- ENDIF --></dt>
<dd>{options.CONTENT}</dd>
</dl>
<!-- ENDIF -->
<!-- END options -->
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
<!-- IF not S_SECURE_DOWNLOADS -->
<div class="errorbox">
<p>{L_SECURE_DOWNLOAD_NOTICE}</p>
</div>
<div class="errorbox">
<p>{L_SECURE_DOWNLOAD_NOTICE}</p>
</div>
<!-- ENDIF -->
<fieldset>
<legend>{L_SECURE_TITLE}</legend>
<p>{L_DOWNLOAD_ADD_IPS_EXPLAIN}</p>
<dl>
<dt><label for="ip_hostname">{L_IP_HOSTNAME}:</label></dt>
<dd><textarea id="ip_hostname" cols="40" rows="3" name="ips"></textarea></dd>
</dl>
<dl>
<dt><label for="exclude">{L_IP_EXCLUDE}:</label><br /><span>{L_EXCLUDE_ENTERED_IP}</span></dt>
<dd><input type="radio" id="exclude" name="ipexclude" value="1" class="radio" /> {L_YES} &nbsp; <input type="radio" name="ipexclude" value="0" checked="checked" class="radio" /> {L_NO}</dd>
</dl>
</fieldset>
<dl>
<dt><label for="ip_hostname">{L_IP_HOSTNAME}:</label></dt>
<dd><textarea id="ip_hostname" cols="40" rows="3" name="ips"></textarea></dd>
</dl>
<dl>
<dt><label for="exclude">{L_IP_EXCLUDE}:</label><br /><span>{L_EXCLUDE_ENTERED_IP}</span></dt>
<dd><input type="radio" id="exclude" name="ipexclude" value="1" class="radio" /> {L_YES} &nbsp; <input type="radio" name="ipexclude" value="0" checked="checked" class="radio" /> {L_NO}</dd>
</dl>
<fieldset class="quick">
<p class="quick">
<input class="button1" type="submit" id="securesubmit" name="securesubmit" value="{L_SUBMIT}" />
</p>
</fieldset>
<fieldset>
<legend>{L_REMOVE_IPS}</legend>
<!-- IF S_DEFINED_IPS -->
<p>{L_DOWNLOAD_REMOVE_IPS_EXPLAIN}</p>
<p>{L_DOWNLOAD_REMOVE_IPS_EXPLAIN}</p>
<dl>
<dt><label for="remove_ip_hostname">{L_IP_HOSTNAME}:</label></dt>
<dd><select name="unip[]" id="remove_ip_hostname" multiple="multiple" size="10">{DEFINED_IPS}</select></dd>
</dl>
</fieldset>
<fieldset class="quick">
<input class="button1" type="submit" id="unsecuresubmit" name="unsecuresubmit" value="{L_SUBMIT}" />
</fieldset>
<p class="quick">
<input class="button1" type="submit" id="unsecuresubmit" name="unsecuresubmit" value="{L_SUBMIT}" />
</p>
</fieldset>
<!-- ELSE -->
<p>{L_NO_IPS_DEFINED}</p>
@@ -216,57 +171,58 @@
<input type="hidden" name="g" value="{GROUP_ID}" />
<legend>{L_LEGEND}</legend>
<dl>
<dt><label for="group_name">{L_GROUP_NAME}:</label></dt>
<dd><input type="text" id="group_name" size="20" maxlength="100" name="group_name" value="{GROUP_NAME}" /></dd>
</dl>
<dl>
<dt><label for="category">{L_SPECIAL_CATEGORY}:</label><br /><span>{L_SPECIAL_CATEGORY_EXPLAIN}</span></dt>
<dd>{S_CATEGORY_SELECT}</dd>
</dl>
<dl>
<dt><label for="allowed">{L_ALLOWED}:</label></dt>
<dd><input type="checkbox" id="allowed" name="allow_group" value="1"<!-- IF ALLOW_GROUP --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="allow_in_pm">{L_ALLOW_IN_PM}:</label></dt>
<dd><input type="checkbox" id="allow_in_pm" name="allow_in_pm" value="1"<!-- IF ALLOW_IN_PM --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="download_mode">{L_DOWNLOAD_MODE}:</label><br /><span>{L_DOWNLOAD_MODE_EXPLAIN}</span></dt>
<dd>{S_DOWNLOAD_SELECT}</dd>
</dl>
<dl>
<dt><label for="upload_icon">{L_UPLOAD_ICON}:</label></dt>
<dd><select name="upload_icon" id="upload_icon" onchange="update_image(this.options[selectedIndex].value);">
<option value="no_image"<!-- IF S_NO_IMAGE --> selected="selected"<!-- ENDIF -->>{L_NO_IMAGE}</option>{S_FILENAME_LIST}
</select></dd>
<dd>&nbsp;<img <!-- IF S_NO_IMAGE -->src="{PHPBB_ROOT_PATH}images/spacer.gif"<!-- ELSE -->src="{UPLOAD_ICON_SRC}"<!-- ENDIF --> name="image_upload_icon" alt="" title="" />&nbsp;</dd>
</dl>
<dl>
<dt><label for="extgroup_filesize">{L_MAX_EXTGROUP_FILESIZE}:</label></dt>
<dd><input type="text" id="extgroup_filesize" size="3" maxlength="15" name="max_filesize" value="{EXTGROUP_FILESIZE}" /> <select name="size_select">{S_EXT_GROUP_SIZE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="assigned_extensions">{L_ASSIGNED_EXTENSIONS}:</label></dt>
<dd><div id="ext">{ASSIGNED_EXTENSIONS}</div> <span>[<a href="{U_EXTENSIONS}">{L_GO_TO_EXTENSIONS}</a> ]</span></dd>
<dd><select name="extensions[]" id="assigned_extensions" class="narrow" onchange="show_extensions(this);" multiple="multiple" size="8">{S_EXTENSION_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="allowed_forums">{L_ALLOWED_FORUMS}:</label><br /><span>{L_ALLOWED_FORUMS_EXPLAIN}</span></dt>
<dd><input type="radio" id="allowed_forums" class="radio" name="forum_select" value="0"<!-- IF not S_FORUM_IDS --> checked="checked"<!-- ENDIF --> />&nbsp;{L_ALLOW_ALL_FORUMS}&nbsp;&nbsp;<input type="radio" class="radio" name="forum_select" value="1"<!-- IF S_FORUM_IDS --> checked="checked"<!-- ENDIF --> />&nbsp;{L_ALLOW_SELECTED_FORUMS}</dd>
<dd><select name="allowed_forums[]" multiple="multiple" size="8">{S_FORUM_ID_OPTIONS}</select></dd>
</dl>
</fieldset>
<dl>
<dt><label for="group_name">{L_GROUP_NAME}:</label></dt>
<dd><input type="text" id="group_name" size="20" maxlength="100" name="group_name" value="{GROUP_NAME}" /></dd>
</dl>
<dl>
<dt><label for="category">{L_SPECIAL_CATEGORY}:</label><br /><span>{L_SPECIAL_CATEGORY_EXPLAIN}</span></dt>
<dd>{S_CATEGORY_SELECT}</dd>
</dl>
<dl>
<dt><label for="allowed">{L_ALLOWED}:</label></dt>
<dd><input type="checkbox" class="radio" id="allowed" name="allow_group" value="1"<!-- IF ALLOW_GROUP --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="allow_in_pm">{L_ALLOW_IN_PM}:</label></dt>
<dd><input type="checkbox" class="radio" id="allow_in_pm" name="allow_in_pm" value="1"<!-- IF ALLOW_IN_PM --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="upload_icon">{L_UPLOAD_ICON}:</label></dt>
<dd><select name="upload_icon" id="upload_icon" onchange="update_image(this.options[selectedIndex].value);">
<option value="no_image"<!-- IF S_NO_IMAGE --> selected="selected"<!-- ENDIF -->>{L_NO_IMAGE}</option>{S_FILENAME_LIST}
</select></dd>
<dd>&nbsp;<img <!-- IF S_NO_IMAGE -->src="{PHPBB_ROOT_PATH}images/spacer.gif"<!-- ELSE -->src="{UPLOAD_ICON_SRC}"<!-- ENDIF --> name="image_upload_icon" alt="" title="" />&nbsp;</dd>
</dl>
<dl>
<dt><label for="extgroup_filesize">{L_MAX_EXTGROUP_FILESIZE}:</label></dt>
<dd><input type="text" id="extgroup_filesize" size="3" maxlength="15" name="max_filesize" value="{EXTGROUP_FILESIZE}" /> <select name="size_select">{S_EXT_GROUP_SIZE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="assigned_extensions">{L_ASSIGNED_EXTENSIONS}:</label></dt>
<dd><div id="ext">{ASSIGNED_EXTENSIONS}</div> <span>[<a href="{U_EXTENSIONS}">{L_GO_TO_EXTENSIONS}</a> ]</span></dd>
<dd><select name="extensions[]" id="assigned_extensions" class="narrow" onchange="show_extensions(this);" multiple="multiple" size="8">{S_EXTENSION_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="allowed_forums">{L_ALLOWED_FORUMS}:</label><br /><span>{L_ALLOWED_FORUMS_EXPLAIN}</span></dt>
<dd><input type="radio" id="allowed_forums" class="radio" name="forum_select" value="0"<!-- IF not S_FORUM_IDS --> checked="checked"<!-- ENDIF --> />&nbsp;{L_ALLOW_ALL_FORUMS}&nbsp;&nbsp;<input type="radio" class="radio" name="forum_select" value="1"<!-- IF S_FORUM_IDS --> checked="checked"<!-- ENDIF --> />&nbsp;{L_ALLOW_SELECTED_FORUMS}</dd>
<dd><select name="allowed_forums[]" multiple="multiple" size="8">{S_FORUM_ID_OPTIONS}</select></dd>
</dl>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
<!-- ELSE -->
<form id="extgroups" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_TITLE}</legend>
<table cellspacing="1">
<col class="row1" /><col class="row1" /><col class="row2" />
<thead>
@@ -278,25 +234,27 @@
</thead>
<tbody>
<!-- BEGIN groups -->
<!-- IF groups.S_ADD_SPACER -->
<!-- IF groups.S_ADD_SPACER and not groups.S_FIRST_ROW -->
<tr>
<td class="spacer" colspan="3">&nbsp;</td>
</tr>
<!-- ENDIF -->
<tr>
<td><a href="{groups.U_EDIT}">{groups.GROUP_NAME}</a></td>
<td><strong>{groups.GROUP_NAME}</strong>
<!-- IF groups.S_GROUP_ALLOWED and not groups.S_ALLOWED_IN_PM --><br /><span>&raquo; {L_NOT_ALLOWED_IN_PM}</span><!-- ENDIF -->
<!-- IF groups.S_ALLOWED_IN_PM and not groups.S_GROUP_ALLOWED --><br /><span>&raquo; {L_ONLY_ALLOWED_IN_PM}</span><!-- ENDIF -->
</td>
<td>{groups.CATEGORY}</td>
<td align="center" valign="middle" style="white-space: nowrap;">&nbsp;<a href="{groups.U_EDIT}">{L_EDIT}</a> | <a href="{groups.U_DELETE}">{L_DELETE}</a> | <a href="{groups.U_ACT_DEACT}">{groups.L_ACT_DEACT}</a>&nbsp;</td>
<td align="center" valign="middle" style="white-space: nowrap;">&nbsp;<a href="{groups.U_EDIT}">{ICON_EDIT}</a>&nbsp;&nbsp;<a href="{groups.U_DELETE}">{ICON_DELETE}</a>&nbsp;</td>
</tr>
<!-- END groups -->
</tbody>
</table>
<form id="extgroups" method="post" action="{U_ACTION}">
<fieldset class="quick">
<p class="quick">
{L_CREATE_GROUP}: <input type="text" name="group_name" maxlength="30" />
<input class="button2" name="add" type="submit" value="{L_SUBMIT}" />
</fieldset>
</p>
</fieldset>
</form>
<!-- ENDIF -->
@@ -306,18 +264,18 @@
<form id="add_ext" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_ADD_EXTENSION}</legend>
<dl>
<dt><label for="add_extension">{L_EXTENSION}</label></dt>
<dd><input type="text" id="add_extension" size="20" maxlength="100" name="add_extension" value="{ADD_EXTENSION}" /></dd>
</dl>
<dl>
<dt><label for="extension_group">{L_EXTENSION_GROUP}</label></dt>
<dd>{GROUP_SELECT_OPTIONS}</dd>
</dl>
</fieldset>
<dl>
<dt><label for="add_extension">{L_EXTENSION}</label></dt>
<dd><input type="text" id="add_extension" size="20" maxlength="100" name="add_extension" value="{ADD_EXTENSION}" /></dd>
</dl>
<dl>
<dt><label for="extension_group">{L_EXTENSION_GROUP}</label></dt>
<dd>{GROUP_SELECT_OPTIONS}</dd>
</dl>
<fieldset class="quick">
<p class="quick">
<input type="submit" id="add_extension_check" name="add_extension_check" class="button2" value="{L_SUBMIT}" />
</p>
</fieldset>
</form>
@@ -326,6 +284,9 @@
<form id="change_ext" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_TITLE}</legend>
<table cellspacing="1">
<col class="row1" /><col class="row1" /><col class="row2" />
<thead>
@@ -343,18 +304,18 @@
</tr>
<!-- ENDIF -->
<tr>
<input type="hidden" name="extension_change_list[]" value="{extensions.EXTENSION_ID}" />
<td><b>{extensions.EXTENSION}</b></td>
<td>{extensions.GROUP_OPTIONS}</td>
<td><input type="checkbox" name="extension_id_list[]" value="{extensions.EXTENSION_ID}" /></td>
<td><input type="checkbox" class="radio" name="extension_id_list[]" value="{extensions.EXTENSION_ID}" /><input type="hidden" name="extension_change_list[]" value="{extensions.EXTENSION_ID}" /></td>
</tr>
<!-- END extensions -->
</tbody>
</table>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
@@ -363,10 +324,14 @@
<form id="orphan" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_TITLE}</legend>
<table cellspacing="1">
<thead>
<tr>
<th>{L_FILENAME}</th>
<th>{L_FILEDATE}</th>
<th>{L_FILESIZE}</th>
<th>{L_ATTACH_POST_ID}</th>
<th>{L_ATTACH_TO_POST}</th>
@@ -376,28 +341,33 @@
<tbody>
<!-- BEGIN orphan -->
<!-- IF orphan.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{orphan.U_FILE}" rel="file">{orphan.FILE}</a></td>
<td><a href="{orphan.U_FILE}">{orphan.REAL_FILENAME}</a></td>
<td>{orphan.FILETIME}</td>
<td>{orphan.FILESIZE}</td>
<td><b>ID: </b><input type="text" name="post_id[{orphan.FILE}]" size="7" maxlength="10" value="{orphan.POST_IDS}" /></td>
<td><input type="checkbox" name="add[{orphan.FILE}]" /></td>
<td><input type="checkbox" name="delete[{orphan.FILE}]" /></td>
<td><b>ID: </b><input type="text" name="post_id[{orphan.ATTACH_ID}]" size="7" maxlength="10" value="{orphan.POST_ID}" /></td>
<td><input type="checkbox" class="radio" name="add[{orphan.ATTACH_ID}]" /></td>
<td><input type="checkbox" class="radio" name="delete[{orphan.ATTACH_ID}]" /></td>
</tr>
<!-- END orphan -->
<tr>
<td colspan="3">&nbsp;</td>
<td class="small"><a href="javascript:marklist('orphan', 'add', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('orphan', 'add', false);">{L_UNMARK_ALL}</a></td>
<td class="small"><a href="javascript:marklist('orphan', 'delete', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('orphan', 'delete', false);">{L_UNMARK_ALL}</a></td>
<tr class="row4">
<td colspan="4">&nbsp;</td>
<td class="small"><a href="#" onclick="marklist('orphan', 'add', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('orphan', 'add', false); return false;">{L_UNMARK_ALL}</a></td>
<td class="small"><a href="#" onclick="marklist('orphan', 'delete', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('orphan', 'delete', false); return false;">{L_UNMARK_ALL}</a></td>
</tr>
</tbody>
</table>
<fieldset class="submit-buttons">
<br />
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -12,18 +12,21 @@
<!--
var ban_length = new Array();
ban_length[-1] = '';
<!-- BEGIN ban_length -->
ban_length['{ban_length.BAN_ID}'] = "{ban_length.LENGTH}";
ban_length['{ban_length.BAN_ID}'] = "{ban_length.A_LENGTH}";
<!-- END ban_length -->
var ban_reason = new Array();
ban_reason[-1] = '';
<!-- BEGIN ban_reason -->
ban_reason['{ban_reason.BAN_ID}'] = "{ban_reason.REASON}";
ban_reason['{ban_reason.BAN_ID}'] = "{ban_reason.A_REASON}";
<!-- END ban_reason -->
var ban_give_reason = new Array();
ban_give_reason[-1] = '';
<!-- BEGIN ban_give_reason -->
ban_give_reason['{ban_give_reason.BAN_ID}'] = "{ban_give_reason.REASON}";
ban_give_reason['{ban_give_reason.BAN_ID}'] = "{ban_give_reason.A_REASON}";
<!-- END ban_give_reason -->
function display_details(option)
@@ -40,33 +43,33 @@
<fieldset>
<legend>{L_TITLE}</legend>
<dl>
<dt><label for="ban">{L_BAN_CELL}:</label></dt>
<dd><textarea name="ban" cols="40" rows="3" id="ban"></textarea></dd>
<!-- IF S_USERNAME_BAN --><dd>[ <a href="#" onclick="window.open('{U_FIND_USER}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;">{L_FIND_USERNAME}</a> ]</dd><!-- ENDIF -->
</dl>
<dl>
<dt><label for="banlength">{L_BAN_LENGTH}:</label></dt>
<dd><select name="banlength" id="banlength">{S_BAN_END_OPTIONS}</select></dd>
<dd><input type="text" name="banlengthother" /> (YYYY-MM-DD)</dd>
</dl>
<dl>
<dt><label for="banexclude">{L_BAN_EXCLUDE}:</label><br /><span>{L_BAN_EXCLUDE_EXPLAIN}</span></dt>
<dd><input type="radio" name="banexclude" value="1" class="radio" /> {L_YES} &nbsp; <input type="radio" name="banexclude" id="banexclude" value="0" checked="checked" class="radio" /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="banreason">{L_BAN_REASON}:</label></dt>
<dd><input name="banreason" type="text" id="banreason" class="medium" /></dd>
</dl>
<dl>
<dt><label for="bangivereason">{L_BAN_GIVE_REASON}:</label></dt>
<dd><input name="bangivereason" type="text" id="bangivereason" class="medium" /></dd>
</dl>
</fieldset>
<dl>
<dt><label for="ban">{L_BAN_CELL}:</label></dt>
<dd><textarea name="ban" cols="40" rows="3" id="ban"></textarea></dd>
<!-- IF S_USERNAME_BAN --><dd>[ <a href="#" onclick="window.open('{U_FIND_USER}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;">{L_FIND_USERNAME}</a> ]</dd><!-- ENDIF -->
</dl>
<dl>
<dt><label for="banlength">{L_BAN_LENGTH}:</label></dt>
<dd><select name="banlength" id="banlength">{S_BAN_END_OPTIONS}</select></dd>
<dd><input type="text" name="banlengthother" maxlength="10" /> (YYYY-MM-DD)</dd>
</dl>
<dl>
<dt><label for="banexclude">{L_BAN_EXCLUDE}:</label><br /><span>{L_BAN_EXCLUDE_EXPLAIN}</span></dt>
<dd><input type="radio" name="banexclude" value="1" class="radio" /> {L_YES} &nbsp; <input type="radio" name="banexclude" id="banexclude" value="0" checked="checked" class="radio" /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="banreason">{L_BAN_REASON}:</label></dt>
<dd><input name="banreason" type="text" id="banreason" class="medium" maxlength="3000" /></dd>
</dl>
<dl>
<dt><label for="bangivereason">{L_BAN_GIVE_REASON}:</label></dt>
<dd><input name="bangivereason" type="text" id="bangivereason" class="medium" maxlength="3000" /></dd>
</dl>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="bansubmit" name="bansubmit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="banreset" name="banreset" value="{L_RESET}" />
</p>
</fieldset>
<br /><br />
@@ -81,33 +84,34 @@
<!-- IF S_BANNED_OPTIONS -->
<dl>
<dt><label for="unban">{L_BAN_CELL}:</label></dt>
<dd><select id="unban" name="unban[]" multiple="multiple" size="10" style="width: 50%" onchange="display_details(this.options[this.selectedIndex].value)">{BANNED_OPTIONS}</select></dd>
<dd><select id="unban" name="unban[]" multiple="multiple" size="10" style="width: 50%" onchange="if (this.selectedIndex > -1) display_details(this.options[this.selectedIndex].value); else display_details(-1);">{BANNED_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="unbanlength">{L_BAN_LENGTH}:</label></dt>
<dd><input style="border: 0px;" type="text" name="unbanlength" id="unbanlength" class="full" /></dd>
<dd><input style="border: 0px;" type="text" name="unbanlength" id="unbanlength" class="full" disabled="disabled" /></dd>
</dl>
<dl>
<dt><label for="unbanreason">{L_BAN_REASON}:</label></dt>
<dd><input style="border: 0px;" type="text" name="unbanreason" id="unbanreason" class="full" /></dd>
<dd><input style="border: 0px;" type="text" name="unbanreason" id="unbanreason" class="full" disabled="disabled" /></dd>
</dl>
<dl>
<dt><label for="unbangivereason">{L_BAN_GIVE_REASON}:</label></dt>
<dd><input style="border: 0px;" type="text" name="unbangivereason" id="unbangivereason" class="full" /></dd>
<dd><input style="border: 0px;" type="text" name="unbangivereason" id="unbangivereason" class="full" disabled="disabled" /></dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
<input class="button1" type="submit" id="unbansubmit" name="unbansubmit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="unbanreset" name="unbanreset" value="{L_RESET}" />
</fieldset>
<p class="submit-buttons">
<input class="button1" type="submit" id="unbansubmit" name="unbansubmit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="unbanreset" name="unbanreset" value="{L_RESET}" />
</p>
</fieldset>
<!-- ELSE -->
<p>{L_NO_BAN_CELL}</p>
</fieldset>
<!-- ENDIF -->
</form>
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -15,36 +15,47 @@
<fieldset>
<legend>{L_BBCODE_USAGE}</legend>
<p>{L_BBCODE_USAGE_EXPLAIN}</p>
<dl>
<dt><label for="bbcode_match">{L_EXAMPLES}</label><br /><br /><span>{L_BBCODE_USAGE_EXAMPLE}</span></dt>
<dd><textarea id="bbcode_match" name="bbcode_match" cols="60" rows="5">{BBCODE_MATCH}</textarea></dd>
</dl>
<dl>
<dt><label for="bbcode_match">{L_EXAMPLES}</label><br /><br /><span>{L_BBCODE_USAGE_EXAMPLE}</span></dt>
<dd><textarea id="bbcode_match" name="bbcode_match" cols="60" rows="5">{BBCODE_MATCH}</textarea></dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_HTML_REPLACEMENT}</legend>
<p>{L_HTML_REPLACEMENT_EXPLAIN}</p>
<dl>
<dt><label for="bbcode_tpl">{L_EXAMPLES}</label><br /><br /><span>{L_HTML_REPLACEMENT_EXAMPLE}</span></dt>
<dd><textarea id="bbcode_tpl" name="bbcode_tpl" cols="60" rows="8">{BBCODE_TPL}</textarea></dd>
</dl>
<dl>
<dt><label for="bbcode_tpl">{L_EXAMPLES}</label><br /><br /><span>{L_HTML_REPLACEMENT_EXAMPLE}</span></dt>
<dd><textarea id="bbcode_tpl" name="bbcode_tpl" cols="60" rows="8">{BBCODE_TPL}</textarea></dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_BBCODE_HELPLINE}</legend>
<p>{L_BBCODE_HELPLINE_EXPLAIN}</p>
<dl>
<dt><label for="bbcode_helpline">{L_BBCODE_HELPLINE_TEXT}</label></dt>
<dd><input type="text" id="bbcode_helpline" name="bbcode_helpline" size="60" maxlength="255" value="{BBCODE_HELPLINE}" /></dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_SETTINGS}</legend>
<dl>
<dt><label for="display_on_posting">{L_DISPLAY_ON_POSTING}</label></dt>
<dd><input type="checkbox" name="display_on_posting" id="display_on_posting" value="1"<!-- IF DISPLAY_ON_POSTING --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="display_on_posting">{L_DISPLAY_ON_POSTING}</label></dt>
<dd><input type="checkbox" class="radio" name="display_on_posting" id="display_on_posting" value="1"<!-- IF DISPLAY_ON_POSTING --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
<br />
<table cellspacing="1">
<table cellspacing="1" id="down">
<thead>
<tr>
<th colspan="2">{L_TOKENS}</th>
@@ -75,31 +86,34 @@
<p>{L_ACP_BBCODES_EXPLAIN}</p>
<table cellspacing="1">
<form id="acp_bbcodes" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_ACP_BBCODES}</legend>
<table cellspacing="1" id="down">
<thead>
<tr>
<th>{L_BBCODE_TAG}</th>
<th>{L_ACTION}</th>
</tr>
<tr>
<th>{L_BBCODE_TAG}</th>
<th>{L_ACTION}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN bbcodes -->
<!-- IF bbcodes.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td style="text-align: center;">{bbcodes.BBCODE_TAG}</td>
<td style="text-align: center;"><a href="{bbcodes.U_EDIT}">{L_EDIT}</a> | <a href="{bbcodes.U_DELETE}">{L_DELETE}</a></td>
<td style="text-align: right; width: 40px;"><a href="{bbcodes.U_EDIT}">{ICON_EDIT}</a> <a href="{bbcodes.U_DELETE}">{ICON_DELETE}</a></td>
</tr>
<!-- END bbcodes -->
</tbody>
</table>
<form id="acp_bbcodes" method="post" action="{U_ACTION}">
<fieldset class="quick">
<p class="quick">
<input class="button2" name="submit" type="submit" value="{L_ADD_BBCODE}" />
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -6,6 +6,13 @@
<p>{L_TITLE_EXPLAIN}</p>
<!-- IF S_ERROR -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<form id="acp_board" method="post" action="{U_ACTION}">
<!-- BEGIN options -->
@@ -24,6 +31,7 @@
<!-- ENDIF -->
<!-- END options -->
<!-- IF S_AUTH -->
<!-- BEGIN auth_tpl -->
{auth_tpl.TPL}
@@ -32,10 +40,11 @@
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -21,35 +21,35 @@
<fieldset>
<legend>{L_TITLE}</legend>
<dl>
<dt><label for="bot_name">{L_BOT_NAME}:</label><br /><span>{L_BOT_NAME_EXPLAIN}</span></dt>
<dd><input name="bot_name" type="text" id="bot_name" value="{BOT_NAME}" /></dd>
</dl>
<dl>
<dt><label for="bot_style">{L_BOT_STYLE}:</label><br /><span>{L_BOT_STYLE_EXPLAIN}</span></dt>
<dd><select id="bot_style" name="bot_style">{S_STYLE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="bot_lang">{L_BOT_LANG}:</label><br /><span>{L_BOT_LANG_EXPLAIN}</span></dt>
<dd><select id="bot_lang" name="bot_lang">{S_LANG_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="bot_active">{L_BOT_ACTIVE}:</label></dt>
<dd><select id="bot_active" name="bot_active">{S_ACTIVE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="bot_agent">{L_BOT_AGENT}:</label><br /><span>{L_BOT_AGENT_EXPLAIN}</span></dt>
<dd><input name="bot_agent" type="text" id="bot_agent" value="{BOT_AGENT}" /></dd>
</dl>
<dl>
<dt><label for="bot_ip">{L_BOT_IP}:</label><br /><span>{L_BOT_IP_EXPLAIN}</span></dt>
<dd><input name="bot_ip" type="text" id="bot_ip" value="{BOT_IP}" /></dd>
</dl>
</fieldset>
<dl>
<dt><label for="bot_name">{L_BOT_NAME}:</label><br /><span>{L_BOT_NAME_EXPLAIN}</span></dt>
<dd><input name="bot_name" type="text" id="bot_name" value="{BOT_NAME}" maxlength="255" /></dd>
</dl>
<dl>
<dt><label for="bot_style">{L_BOT_STYLE}:</label><br /><span>{L_BOT_STYLE_EXPLAIN}</span></dt>
<dd><select id="bot_style" name="bot_style">{S_STYLE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="bot_lang">{L_BOT_LANG}:</label><br /><span>{L_BOT_LANG_EXPLAIN}</span></dt>
<dd><select id="bot_lang" name="bot_lang">{S_LANG_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="bot_active">{L_BOT_ACTIVE}:</label></dt>
<dd><select id="bot_active" name="bot_active">{S_ACTIVE_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="bot_agent">{L_BOT_AGENT}:</label><br /><span>{L_BOT_AGENT_EXPLAIN}</span></dt>
<dd><input name="bot_agent" type="text" id="bot_agent" value="{BOT_AGENT}" maxlength="255" /></dd>
</dl>
<dl>
<dt><label for="bot_ip">{L_BOT_IP}:</label><br /><span>{L_BOT_IP_EXPLAIN}</span></dt>
<dd><input name="bot_ip" type="text" id="bot_ip" value="{BOT_IP}" maxlength="255" /></dd>
</dl>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
@@ -64,12 +64,12 @@
<table cellspacing="1">
<thead>
<tr>
<th>{L_BOT_NAME}</th>
<th>{L_BOT_LAST_VISIT}</th>
<th colspan="3">{L_OPTIONS}</th>
<th>{L_MARK}</th>
</tr>
<tr>
<th>{L_BOT_NAME}</th>
<th>{L_BOT_LAST_VISIT}</th>
<th colspan="3">{L_OPTIONS}</th>
<th>{L_MARK}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN bots -->
@@ -79,7 +79,7 @@
<td style="text-align: center;">&nbsp;<a href="{bots.U_ACTIVATE_DEACTIVATE}">{bots.L_ACTIVATE_DEACTIVATE}</a>&nbsp;</td>
<td style="text-align: center;">&nbsp;<a href="{bots.U_EDIT}">{L_EDIT}</a>&nbsp;</td>
<td style="text-align: center;">&nbsp;<a href="{bots.U_DELETE}">{L_DELETE}</a>&nbsp;</td>
<td style="text-align: center;"><input type="checkbox" name="mark[]" value="{bots.BOT_ID}" class="radio" /></td>
<td style="text-align: center;"><input type="checkbox" class="radio" name="mark[]" value="{bots.BOT_ID}" /></td>
</tr>
<!-- END bots -->
</tbody>
@@ -89,7 +89,7 @@
<input class="button2" name="add" type="submit" value="{L_BOT_ADD}" />
</fieldset>
<fieldset class="quick">
<fieldset class="quick" style="float: right;">
<select name="action">{S_BOT_OPTIONS}</select>
<input class="button2" name="submit" type="submit" value="{L_SUBMIT}" />
</fieldset>
@@ -98,4 +98,4 @@
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -0,0 +1,41 @@
<!-- INCLUDE overall_header.html -->
<a name="maincontent"></a>
<h1>{L_ACP_VC_SETTINGS}</h1>
<p>{L_ACP_VC_SETTINGS_EXPLAIN}</p>
<form id="acp_captcha" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_GENERAL_OPTIONS}</legend>
<dl>
<dt><label for="enable_confirm">{L_VISUAL_CONFIRM_REG}:</label><br /><span>{L_VISUAL_CONFIRM_REG_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="enable_confirm" name="enable_confirm" value="1"<!-- IF REG_ENABLE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_ENABLED}&nbsp; &nbsp;<input type="radio" class="radio" name="enable_confirm" value="0"<!-- IF not REG_ENABLE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_DISABLED}</dd>
</dl>
<dl>
<dt><label for="enable_post_confirm">{L_VISUAL_CONFIRM_POST}:</label><br /><span>{L_VISUAL_CONFIRM_POST_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="enable_post_confirm" name="enable_post_confirm" value="1"<!-- IF POST_ENABLE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_ENABLED}&nbsp; &nbsp;<input type="radio" class="radio" name="enable_post_confirm" value="0"<!-- IF not POST_ENABLE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_DISABLED}</dd>
</dl>
<!-- IF GD -->
<dl>
<dt><label for="captcha_gd">{L_CAPTCHA_GD}:</label><br /><span>{L_CAPTCHA_GD_EXPLAIN}</span></dt>
<dd><input id="captcha_gd" name="captcha_gd" value="1" class="radio" type="radio"<!-- IF CAPTCHA_GD --> checked="checked"<!-- ENDIF --> />&nbsp;{L_YES}&nbsp;&nbsp;<input name="captcha_gd" value="0" class="radio" type="radio"<!-- IF not CAPTCHA_GD --> checked="checked"<!-- ENDIF --> />&nbsp;{L_NO}</dd>
</dl>
<dl>
<dt><label for="captcha_gd_noise">{L_CAPTCHA_GD_NOISE}:</label><br /><span>{L_CAPTCHA_GD_NOISE_EXPLAIN}</span></dt>
<dd><input id="captcha_gd_noise" name="captcha_gd_noise" value="1" class="radio" type="radio"<!-- IF CAPTCHA_GD_NOISE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_YES}&nbsp;&nbsp;<input name="captcha_gd_noise" value="0" class="radio" type="radio"<!-- IF not CAPTCHA_GD_NOISE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_NO}</dd>
</dl>
<!-- ENDIF -->
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->

View File

@@ -1,57 +1,89 @@
<!-- INCLUDE overall_header.html -->
<a name="maincontent"></a>
<!-- IF MODE eq 'restore' -->
<h1>{L_ACP_RESTORE}</h1>
<h1>{L_ACP_RESTORE}</h1>
<p>{L_ACP_RESTORE_EXPLAIN}</p>
<p>{L_ACP_RESTORE_EXPLAIN}</p>
<form id="acp_backup" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_RESTORE_OPTIONS}</legend>
<form id="acp_backup" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_RESTORE_OPTIONS}</legend>
<dl>
<dt><label for="user">{L_SELECT_FILE}:</label></dt>
<dd><select id="file" name="file" size="10"><!-- BEGIN files --><option value="{files.FILE}"<!-- IF not files.SUPPORTED --> disabled="disabled"<!-- ENDIF --><!-- IF files.SELECTED --> selected="selected"<!-- ENDIF -->>{files.FILE}</option><!-- END files --></select></dd>
<dt><label for="file">{L_SELECT_FILE}:</label></dt>
<dd><select id="file" name="file" size="10"><!-- BEGIN files --><option value="{files.FILE}"<!-- IF files.S_LAST_ROW --> selected="selected"<!-- ENDIF -->>{files.NAME}</option><!-- END files --></select></dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_START_RESTORE}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
</form>
<!-- IF .files -->
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_START_RESTORE}" />&nbsp;
<input class="button2" type="submit" id="delete" name="delete" value="{L_DELETE_BACKUP}" />&nbsp;
<input class="button2" type="submit" id="download" name="download" value="{L_DOWNLOAD_BACKUP}" />
</p>
<!-- ENDIF -->
</fieldset>
</form>
<!-- ELSE -->
<h1>{L_ACP_BACKUP}</h1>
<h1>{L_ACP_BACKUP}</h1>
<p>{L_ACP_BACKUP_EXPLAIN}</p>
<p>{L_ACP_BACKUP_EXPLAIN}</p>
<form id="acp_backup" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_BACKUP_OPTIONS}</legend>
<script type="text/javascript">
<!--
function selector(bool)
{
var table = document.getElementById('table');
for (var i = 0; i < table.options.length; i++)
{
table.options[i].selected = bool;
}
}
//-->
</script>
<form id="acp_backup" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_BACKUP_OPTIONS}</legend>
<dl>
<dt><label for="user">{L_BACKUP_TYPE}:</label></dt>
<dd><input type="radio" name="type" value="full" id="type" checked="checked" />&nbsp;{L_FULL_BACKUP}&nbsp;&nbsp;<input type="radio" name="type" value="structure" id="type" />&nbsp;{L_STRUCTURE_ONLY}&nbsp;&nbsp;<input type="radio" name="type" value="data" id="type" />&nbsp;{L_DATA_ONLY}</dd>
<dt><label for="type">{L_BACKUP_TYPE}:</label></dt>
<dd><input type="radio" class="radio" name="type" value="full" id="type" checked="checked" />&nbsp;{L_FULL_BACKUP}&nbsp;&nbsp;<input type="radio" name="type" class="radio" value="structure" />&nbsp;{L_STRUCTURE_ONLY}&nbsp;&nbsp;<input type="radio" class="radio" name="type" value="data" />&nbsp;{L_DATA_ONLY}</dd>
</dl>
<dl>
<dt><label for="user">{L_FILE_TYPE}:</label></dt>
<!-- BEGIN methods -->
<dd><input name="method" id="method" type="radio" value="{methods.TYPE}"<!-- IF methods.S_FIRST_ROW -->checked="checked"<!-- ENDIF --> />&nbsp;{methods.TYPE}</dd>
<!-- END methods -->
<dt><label for="method">{L_FILE_TYPE}:</label></dt>
<dd><!-- BEGIN methods -->
<input name="method"<!-- IF methods.S_FIRST_ROW --> id="method" checked="checked"<!-- ENDIF --> type="radio" class="radio" value="{methods.TYPE}" />&nbsp;{methods.TYPE}
<!-- END methods --></dd>
</dl>
<dl>
<dt><label for="user">{L_ACTION}:</label></dt>
<dd><input type="radio" name="where" value="download" id="where" checked="checked" />&nbsp;{L_DOWNLOAD}&nbsp;&nbsp;<input type="radio" name="where" value="store" id="where" />&nbsp;{L_STORE_LOCAL}</dd>
<dt><label for="where">{L_ACTION}:</label></dt>
<dd><input type="radio" class="radio" name="where" value="store_and_download" id="where" checked="checked" />&nbsp;{L_STORE_AND_DOWNLOAD}&nbsp;&nbsp;<input type="radio" class="radio" name="where" value="store" />&nbsp;{L_STORE_LOCAL}&nbsp;&nbsp;<input type="radio" class="radio" name="where" value="download" />&nbsp;{L_DOWNLOAD}</dd>
</dl>
<dl>
<dt><label for="user">{L_TABLE_SELECT}:</label></dt>
<dt><label for="table">{L_TABLE_SELECT}:</label></dt>
<dd><select id="table" name="table[]" size="10" multiple="multiple">
<!-- BEGIN tables -->
<dd><input name="table[]" id="table[]" type="checkbox" value="{tables.TABLE}" />&nbsp;{tables.TABLE}</dd>
<option value="{tables.TABLE}">{tables.TABLE}</option>
<!-- END tables -->
</select></dd>
<dd><a href="#" onclick="selector(true)">{L_SELECT_ALL}</a> :: <a href="#" onclick="selector(false)">{L_DESELECT_ALL}</a></dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
</form>
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -10,14 +10,14 @@
<fieldset>
<legend>{L_ADD_DISALLOW_TITLE}</legend>
<dl>
<dt><label for="user">{L_USERNAME}:</label><br /><span>{L_ADD_DISALLOW_EXPLAIN}</span></dt>
<dd><input id="user" type="text" name="disallowed_user" class="medium" /></dd>
</dl>
</fieldset>
<dl>
<dt><label for="user">{L_USERNAME}:</label><br /><span>{L_ADD_DISALLOW_EXPLAIN}</span></dt>
<dd><input id="user" type="text" name="disallowed_user" class="medium" maxlength="255" /></dd>
</dl>
<fieldset class="quick">
<p class="quick">
<input class="button1" type="submit" name="disallow" value="{L_SUBMIT}" />
</p>
</fieldset>
<h1>{L_DELETE_DISALLOW_TITLE}</h1>
@@ -31,17 +31,15 @@
<dt><label for="disallowed">{L_USERNAME}:</label></dt>
<dd><select name="disallowed_id" id="disallowed">{S_DISALLOWED_NAMES}</select></dd>
</dl>
</fieldset>
<fieldset class="quick">
<input class="button1" type="submit" name="allow" value="{L_SUBMIT}" />
</fieldset>
<p class="quick">
<input class="button1" type="submit" name="allow" value="{L_SUBMIT}" />
</p>
<!-- ELSE -->
<p>{L_NO_DISALLOWED}</p>
</fieldset>
<!-- ENDIF -->
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -24,7 +24,7 @@
<dl>
<dt><label for="usernames">{L_SEND_TO_USERS}:</label><br /><span>{L_SEND_TO_USERS_EXPLAIN}</span></dt>
<dd><textarea name="usernames" id="usernames" rows="5" cols="40">{USERNAMES}</textarea></dd>
<dd>[ <a href="#" onclick="window.open('{U_FIND_USERNAME}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;">{L_FIND_USERNAME}</a> ]</dd>
<dd>[ <a href="{U_FIND_USERNAME}" onclick="find_username(); return false;">{L_FIND_USERNAME}</a> ]</dd>
</dl>
<dl>
<dt><label for="subject">{L_SUBJECT}:</label></dt>
@@ -39,16 +39,16 @@
<dd><select id="priority" name="mail_priority_flag">{S_PRIORITY_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="send">{L_SEND_IMMEDIATLY}:</label></dt>
<dd><input id="send" type="checkbox" name="send_immediatly" checked="checked" /></dd>
<dt><label for="send">{L_SEND_IMMEDIATELY}:</label></dt>
<dd><input id="send" type="checkbox" class="radio" name="send_immediately" checked="checked" /></dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_EMAIL}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -7,6 +7,9 @@
<script type="text/javascript">
<!--
/**
* Handle displaying/hiding several options based on the forum type
*/
function display_options(value)
{
<!-- IF not S_ADD_ACTION and S_FORUM_ORIG_POST -->
@@ -20,6 +23,17 @@
}
<!-- ENDIF -->
<!-- IF not S_ADD_ACTION and S_FORUM_ORIG_CAT and S_HAS_SUBFORUMS -->
if (value == {FORUM_LINK})
{
dE('cat_to_link_actions', 1);
}
else
{
dE('cat_to_link_actions', -1);
}
<!-- ENDIF -->
if (value == {FORUM_POST})
{
dE('forum_post_options', 1);
@@ -43,6 +57,41 @@
}
}
/**
* Init the wanted display functionality if javascript is enabled.
* If javascript is not available, the user is still able to properly administrate.
*/
onload = function()
{
<!-- IF not S_ADD_ACTION and S_FORUM_ORIG_POST -->
<!-- IF S_FORUM_POST -->
dE('type_actions', -1);
<!-- ENDIF -->
<!-- ENDIF -->
<!-- IF not S_ADD_ACTION and S_FORUM_ORIG_CAT and S_HAS_SUBFORUMS -->
<!-- IF S_FORUM_CAT -->
dE('cat_to_link_actions', -1);
<!-- ENDIF -->
<!-- ENDIF -->
<!-- IF not S_FORUM_POST -->
dE('forum_post_options', -1);
<!-- ENDIF -->
<!-- IF not S_FORUM_CAT -->
dE('forum_cat_options', -1);
<!-- ENDIF -->
<!-- IF not S_FORUM_LINK -->
dE('forum_link_options', -1);
<!-- ENDIF -->
<!-- IF S_FORUM_LINK -->
dE('forum_rules_options', -1);
<!-- ENDIF -->
}
//-->
</script>
@@ -53,10 +102,10 @@
<p>{L_FORUM_EDIT_EXPLAIN}</p>
<!-- IF S_ERROR -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<form id="forumedit" method="post" action="{U_EDIT_ACTION}">
@@ -68,12 +117,24 @@
<dd><select id="forum_type" name="forum_type" onchange="display_options(this.options[this.selectedIndex].value);">{S_FORUM_TYPE_OPTIONS}</select></dd>
</dl>
<!-- IF not S_ADD_ACTION and S_FORUM_ORIG_POST -->
<div id="type_actions"<!-- IF S_FORUM_POST --> style="display: none;"<!-- ENDIF -->>
<dl>
<dt><label for="type_action">{L_DECIDE_MOVE_DELETE_CONTENT}:</label></dt>
<dd><input type="radio" class="radio" id="type_action" name="type_action" value="delete" checked="checked" /> {L_DELETE_ALL_POSTS}</dd>
<!-- IF S_MOVE_FORUM_OPTIONS --><dd><input type="radio" class="radio" name="type_action" value="move" /> {L_MOVE_POSTS_TO} <select name="to_forum_id">{S_MOVE_FORUM_OPTIONS}</select></dd><!-- ENDIF -->
</dl>
<div id="type_actions">
<dl>
<dt><label for="type_action">{L_DECIDE_MOVE_DELETE_CONTENT}:</label></dt>
<dd><input type="radio" class="radio" id="type_action" name="type_action" value="delete" checked="checked" /> {L_DELETE_ALL_POSTS}</dd>
<!-- IF S_MOVE_FORUM_OPTIONS --><dd><input type="radio" class="radio" name="type_action" value="move" /> {L_MOVE_POSTS_TO} <select name="to_forum_id">{S_MOVE_FORUM_OPTIONS}</select></dd><!-- ENDIF -->
</dl>
</div>
<!-- ENDIF -->
<!-- IF not S_ADD_ACTION and S_FORUM_ORIG_CAT and S_HAS_SUBFORUMS -->
<div id="cat_to_link_actions">
<dl>
<dt><label for="action_subforums">{L_DECIDE_MOVE_DELETE_SUBFORUMS}:</label></dt>
<!-- IF S_FORUMS_LIST -->
<dd><input type="radio" class="radio" name="action_subforums" value="move" checked="checked" /> {L_MOVE_SUBFORUMS_TO} <select name="subforums_to_id">{S_FORUMS_LIST}</select></dd>
<!-- ELSE -->
<dd><input type="radio" class="radio" id="action_subforums" name="action_subforums" value="delete" checked="checked" /> {L_DELETE_SUBFORUMS}</dd>
<!-- ENDIF -->
</dl>
</div>
<!-- ENDIF -->
<dl>
@@ -82,48 +143,63 @@
</dl>
<dl>
<dt><label for="forum_name">{L_FORUM_NAME}:</label></dt>
<dd><input class="medium" type="text" id="forum_name" name="forum_name" value="{FORUM_NAME}" /></dd>
<dd><input class="medium" type="text" id="forum_name" name="forum_name" value="{FORUM_NAME}" maxlength="255" /></dd>
</dl>
<dl>
<dt><label for="forum_desc">{L_FORUM_DESC}:</label><br /><span>{L_FORUM_DESC_EXPLAIN}</span></dt>
<dd><textarea id="forum_desc" name="forum_desc" rows="5" cols="45">{FORUM_DESC}</textarea></dd>
<dd><textarea id="forum_desc" name="forum_desc" rows="5" cols="45" maxlength="255">{FORUM_DESC}</textarea></dd>
<dd><input type="checkbox" class="radio" name="desc_parse_bbcode"<!-- IF S_DESC_BBCODE_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_BBCODE} &nbsp; <input type="checkbox" class="radio" name="desc_parse_smilies"<!-- IF S_DESC_SMILIES_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_SMILIES} &nbsp; <input type="checkbox" class="radio" name="desc_parse_urls"<!-- IF S_DESC_URLS_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_URLS}</dd>
</dl>
<dl>
<dt><label for="forum_image">{L_FORUM_IMAGE}:</label><br /><span>{L_FORUM_IMAGE_EXPLAIN}</span></dt>
<dd><input class="medium" type="text" id="forum_image" name="forum_image" value="{FORUM_IMAGE}" /></dd>
<dd><input class="medium" type="text" id="forum_image" name="forum_image" value="{FORUM_IMAGE}" maxlength="255" /></dd>
<!-- IF FORUM_IMAGE_SRC -->
<dd><img src="{FORUM_IMAGE_SRC}" alt="{L_FORUM_IMAGE}" /></dd>
<!-- ENDIF -->
</dl>
<dl>
<dt><label for="forum_password">{L_FORUM_PASSWORD}:</label><br /><span>{L_FORUM_PASSWORD_EXPLAIN}</span></dt>
<dd><input type="password" id="forum_password" name="forum_password" value="{FORUM_PASSWORD}" maxlength="40" /></dd>
</dl>
<dl>
<dt><label for="forum_password_confirm">{L_FORUM_PASSWORD_CONFIRM}:</label><br /><span>{L_FORUM_PASSWORD_CONFIRM_EXPLAIN}</span></dt>
<dd><input type="password" id="forum_password_confirm" name="forum_password_confirm" value="{FORUM_PASSWORD_CONFIRM}" /></dd>
</dl>
<dl>
<dt><label for="forum_style">{L_FORUM_STYLE}:</label></dt>
<dd><select id="forum_style" name="forum_style"><option value="0">{L_DEFAULT_STYLE}</option>{S_STYLES_OPTIONS}</select></dd>
</dl>
<!-- IF S_ADD_ACTION -->
<dl>
<dt><label for="forum_perm_from">{L_COPY_PERMISSIONS}:</label><br /><span>{L_COPY_PERMISSIONS_EXPLAIN}</span></dt>
<dd><select id="forum_perm_from" name="forum_perm_from"><option value="0">{L_NO_PERMISSIONS}</option>{S_FORUM_OPTIONS}</select></dd>
</dl>
<!-- ENDIF -->
</fieldset>
<div id="forum_cat_options"<!-- IF not S_FORUM_CAT --> style="display: none;"<!-- ENDIF -->>
<div id="forum_cat_options">
<fieldset>
<legend>{L_GENERAL_FORUM_SETTINGS}</legend>
<dl>
<dt><label for="display_active">{L_DISPLAY_ACTIVE_TOPICS}:</label><br /><span>{L_DISPLAY_ACTIVE_TOPICS_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="display_active" value="1"<!-- IF S_DISPLAY_ACTIVE_TOPICS --> id="display_active" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="display_active" value="0"<!-- IF not S_DISPLAY_ACTIVE_TOPICS --> id="display_active" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
</fieldset>
</fieldset>
</div>
<div id="forum_post_options"<!-- IF not S_FORUM_POST --> style="display: none;"<!-- ENDIF -->>
<div id="forum_post_options">
<fieldset>
<legend>{L_GENERAL_FORUM_SETTINGS}</legend>
<dl>
<dt><label for="forum_status">{L_FORUM_STATUS}:</label></dt>
<dd><select id="forum_status" name="forum_status">{S_STATUS_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="display_on_index">{L_LIST_INDEX}:</label><br /><span>{L_LIST_INDEX_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="display_on_index" value="1"<!-- IF S_DISPLAY_ON_INDEX --> id="display_on_index" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="display_on_index" value="0"<!-- IF not S_DISPLAY_ON_INDEX --> id="display_on_index" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="enable_post_review">{L_ENABLE_POST_REVIEW}:</label><br /><span>{L_ENABLE_POST_REVIEW_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="enable_post_review" value="1"<!-- IF S_ENABLE_POST_REVIEW --> id="enable_post_review" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="enable_post_review" value="0"<!-- IF not S_ENABLE_POST_REVIEW --> id="enable_post_review" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="enable_indexing">{L_ENABLE_INDEXING}:</label><br /><span>{L_ENABLE_INDEXING_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="enable_indexing" value="1"<!-- IF S_ENABLE_INDEXING --> id="enable_indexing" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="enable_indexing" value="0"<!-- IF not S_ENABLE_INDEXING --> id="enable_indexing" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
@@ -132,31 +208,33 @@
<dt><label for="enable_icons">{L_ENABLE_TOPIC_ICONS}:</label></dt>
<dd><input type="radio" class="radio" name="enable_icons" value="1"<!-- IF S_TOPIC_ICONS --> id="enable_icons" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="enable_icons" value="0"<!-- IF not S_TOPIC_ICONS --> id="enable_icons" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
<!-- IF S_SHOW_DISPLAY_ON_INDEX -->
<dl>
<dt><label for="display_on_index">{L_LIST_INDEX}:</label><br /><span>{L_LIST_INDEX_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="display_on_index" value="1"<!-- IF S_DISPLAY_ON_INDEX --> id="display_on_index" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="display_on_index" value="0"<!-- IF not S_DISPLAY_ON_INDEX --> id="display_on_index" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
<!-- ENDIF -->
<dl>
<dt><label for="display_recent">{L_ENABLE_RECENT}:</label><br /><span>{L_ENABLE_RECENT_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="display_recent" value="1"<!-- IF S_DISPLAY_ACTIVE_TOPICS --> id="display_recent" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="display_recent" value="0"<!-- IF not S_DISPLAY_ACTIVE_TOPICS --> id="display_recent" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="topics_per_page">{L_FORUM_TOPICS_PAGE}:</label><br /><span>{L_FORUM_TOPICS_PAGE_EXPLAIN}</span></dt>
<dd><input type="text" id="topics_per_page" name="topics_per_page" value="{TOPICS_PER_PAGE}" size="4" maxlength="4" /></dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_FORUM_PRUNE_SETTINGS}</legend>
<dl>
<dt><label for="enable_prune">{L_FORUM_AUTO_PRUNE}:</label><br /><span>{L_FORUM_AUTO_PRUNE_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="enable_prune" value="1"<!-- IF S_PRUNE_ENABLE --> id="enable_prune" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="enable_prune" value="0"<!-- IF not S_PRUNE_ENABLE --> id="enable_prune" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="prune_freq">{L_AUTO_PRUNE_FREQ}:</label><br /><span>{L_AUTO_PRUNE_FREQ_EXPLAIN}</span></dt>
<dd><input type="text" id="prune_freq" name="prune_freq" value="{PRUNE_FREQ}" /> {L_DAYS}</dd>
<dd><input type="text" id="prune_freq" name="prune_freq" value="{PRUNE_FREQ}" maxlength="4" size="4" /> {L_DAYS}</dd>
</dl>
<dl>
<dt><label for="prune_days">{L_AUTO_PRUNE_DAYS}:</label><br /><span>{L_AUTO_PRUNE_DAYS_EXPLAIN}</span></dt>
<dd><input type="text" id="prune_days" name="prune_days" value="{PRUNE_DAYS}" /> {L_DAYS}</dd>
<dd><input type="text" id="prune_days" name="prune_days" value="{PRUNE_DAYS}" maxlength="4" size="4" /> {L_DAYS}</dd>
</dl>
<dl>
<dt><label for="prune_viewed">{L_AUTO_PRUNE_VIEWED}:</label><br /><span>{L_AUTO_PRUNE_VIEWED_EXPLAIN}</span></dt>
<dd><input type="text" id="prune_viewed" name="prune_viewed" value="{PRUNE_VIEWED}" /> {L_DAYS}</dd>
<dd><input type="text" id="prune_viewed" name="prune_viewed" value="{PRUNE_VIEWED}" maxlength="4" size="4" /> {L_DAYS}</dd>
</dl>
<dl>
<dt><label for="prune_old_polls">{L_PRUNE_OLD_POLLS}:</label><br /><span>{L_PRUNE_OLD_POLLS_EXPLAIN}</span></dt>
@@ -170,27 +248,19 @@
<dt><label for="prune_sticky">{L_PRUNE_STICKY}:</label></dt>
<dd><input type="radio" class="radio" name="prune_sticky" value="1"<!-- IF S_PRUNE_STICKY --> id="prune_sticky" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="prune_sticky" value="0"<!-- IF not S_PRUNE_STICKY --> id="prune_sticky" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="topics_per_page">{L_FORUM_TOPICS_PAGE}:</label><br /><span>{L_FORUM_TOPICS_PAGE_EXPLAIN}</span></dt>
<dd><input type="text" id="topics_per_page" name="topics_per_page" value="{TOPICS_PER_PAGE}" /></dd>
</dl>
<dl>
<dt><label for="forum_password">{L_FORUM_PASSWORD}:</label><br /><span>{L_FORUM_PASSWORD_EXPLAIN}</span></dt>
<dd><input type="password" id="forum_password" name="forum_password" value="{FORUM_PASSWORD}" /></dd>
</dl>
<dl>
<dt><label for="forum_password_confirm">{L_FORUM_PASSWORD_CONFIRM}:</label><br /><span>{L_FORUM_PASSWORD_CONFIRM_EXPLAIN}</span></dt>
<dd><input type="password" id="forum_password_confirm" name="forum_password_confirm" value="{FORUM_PASSWORD_CONFIRM}" /></dd>
</dl>
</fieldset>
</div>
<div id="forum_link_options"<!-- IF not S_FORUM_LINK --> style="display: none;"<!-- ENDIF -->>
<div id="forum_link_options">
<fieldset>
<legend>{L_GENERAL_FORUM_SETTINGS}</legend>
<dl>
<dt><label for="link_display_on_index">{L_LIST_INDEX}:</label><br /><span>{L_LIST_INDEX_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="link_display_on_index" value="1"<!-- IF S_DISPLAY_ON_INDEX --> id="link_display_on_index" checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="link_display_on_index" value="0"<!-- IF not S_DISPLAY_ON_INDEX --> id="link_display_on_index" checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
<dl>
<dt><label for="forum_link">{L_FORUM_LINK}:</label><br /><span>{L_FORUM_LINK_EXPLAIN}</span></dt>
<dd><input class="medium" type="text" id="forum_link" name="forum_link" value="{FORUM_DATA_LINK}" /></dd>
<dd><input class="medium" type="text" id="forum_link" name="forum_link" value="{FORUM_DATA_LINK}" maxlength="255" /></dd>
</dl>
<dl>
<dt><label for="forum_link_track">{L_FORUM_LINK_TRACK}:</label><br /><span>{L_FORUM_LINK_TRACK_EXPLAIN}</span></dt>
@@ -199,12 +269,12 @@
</fieldset>
</div>
<div id="forum_rules_options"<!-- IF S_FORUM_LINK --> style="display: none;"<!-- ENDIF -->>
<div id="forum_rules_options">
<fieldset>
<legend>{L_FORUM_RULES}</legend>
<dl>
<dt><label for="forum_rules_link">{L_FORUM_RULES_LINK}:</label><br /><span>{L_FORUM_RULES_LINK_EXPLAIN}</span></dt>
<dd><input class="medium" type="text" id="forum_rules_link" name="forum_rules_link" value="{FORUM_RULES_LINK}" /></dd>
<dd><input class="medium" type="text" id="forum_rules_link" name="forum_rules_link" value="{FORUM_RULES_LINK}" maxlength="255" /></dd>
</dl>
<!-- IF FORUM_RULES_PREVIEW -->
<dl>
@@ -215,12 +285,13 @@
<dl>
<dt><label for="forum_rules">{L_FORUM_RULES}:</label><br /><span>{L_FORUM_RULES_EXPLAIN}</span></dt>
<dd><textarea id="forum_rules" name="forum_rules" rows="4" cols="70">{FORUM_RULES_PLAIN}</textarea></dd>
<dd><input type="checkbox" name="parse_bbcode"<!-- IF S_BBCODE_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_BBCODE} &nbsp; <input type="checkbox" name="parse_smilies"<!-- IF S_SMILIES_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_SMILIES} &nbsp; <input type="checkbox" name="parse_urls"<!-- IF S_URLS_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_URLS}</dd>
<dd><input type="checkbox" class="radio" name="rules_parse_bbcode"<!-- IF S_BBCODE_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_BBCODE} &nbsp; <input type="checkbox" class="radio" name="rules_parse_smilies"<!-- IF S_SMILIES_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_SMILIES} &nbsp; <input type="checkbox" class="radio" name="rules_parse_urls"<!-- IF S_URLS_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_URLS}</dd>
</dl>
</fieldset>
</div>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="update" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
@@ -236,10 +307,10 @@
<p>{L_FORUM_DELETE_EXPLAIN}</p>
<!-- IF S_ERROR -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<form id="acp_forum" method="post" action="{U_ACTION}">
@@ -268,80 +339,136 @@
<!-- ENDIF -->
</dl>
<!-- ENDIF -->
</fieldset>
<fieldset class="quick">
<p class="quick">
<input class="button1" type="submit" name="update" value="{L_SUBMIT}" />
</p>
</fieldset>
</form>
<!-- ELSEIF S_CONTINUE_SYNC -->
<script type="text/javascript">
<!--
var close_waitscreen = 0;
window.open('{UA_PROGRESS_BAR}', '_sync', 'height=240, resizable=yes, scrollbars=no, width=400');
//-->
</script>
<h1>{L_FORUM_ADMIN}</h1>
<p>{L_FORUM_ADMIN_EXPLAIN}</p>
<p>{L_PROGRESS_EXPLAIN}</p>
<!-- ELSE -->
<script type="text/javascript">
<!--
/**
* Popup search progress bar
*/
function popup_progress_bar()
{
var close_waitscreen = 0;
window.open('{UA_PROGRESS_BAR}', '_sync', 'height=240, resizable=yes, scrollbars=no, width=400');
}
//-->
</script>
<h1>{L_FORUM_ADMIN}</h1>
<p>{L_FORUM_ADMIN_EXPLAIN}</p>
<!-- IF ERROR_MSG -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<!-- IF S_RESYNCED -->
<script type="text/javascript">
<!--
var close_waitscreen = 1;
//-->
</script>
<div class="successbox">
<h3>{L_NOTIFY}</h3>
<p>{L_FORUM_RESYNCED}</p>
</div>
<!-- ENDIF -->
<p><strong>{NAVIGATION}<!-- IF S_NO_FORUMS --> [<a href="{U_EDIT}">{L_EDIT}</a> | <a href="{U_DELETE}">{L_DELETE}</a><!-- IF not S_LINK --> | <a href="{U_SYNC}">{L_RESYNC}</a><!-- ENDIF --->]<!-- ENDIF --></strong></p>
<!-- IF forums -->
<table cellspacing="1">
<col class="row1" /><col class="row1" /><col class="row2" />
<tbody>
<!-- BEGIN forums -->
<tr>
<td style="width: 5%;">{forums.FOLDER_IMAGE}</td>
<td>
<strong><!-- IF forums.S_LINK -->{forums.FORUM_NAME}<!-- ELSE --><a href="{forums.U_FORUM}">{forums.FORUM_NAME}</a><!-- ENDIF --></strong>
<!-- IF forums.FORUM_DESCRIPTION --><br /><span>{forums.FORUM_DESCRIPTION}</span><!-- ENDIF -->
<!-- IF forums.S_FORUM_POST --><br /><br /><span>{L_TOPICS}: <b>{forums.FORUM_TOPICS}</b> / {L_POSTS}: <b>{forums.FORUM_POSTS}</b></span><!-- ENDIF -->
</td>
<td style="width: 15%; text-align: right; white-space: nowrap;"><!-- IF not forums.S_FIRST_ROW --><a href="{forums.U_MOVE_UP}"><img src="images/icon_up.gif" alt="{L_MOVE_UP}" title="{L_MOVE_UP}" width="16" height="16" /></a> <!-- ENDIF -->
<!-- IF not forums.S_LAST_ROW --><a href="{forums.U_MOVE_DOWN}"><img src="images/icon_down.gif" alt="{L_MOVE_DOWN}" title="{L_MOVE_DOWN}" width="16" height="16" /></a> <!-- ENDIF -->
<a href="{forums.U_EDIT}"><img src="images/icon_edit.gif" alt="{L_EDIT}" title="{L_EDIT}" width="16" height="16" /></a>
<!-- IF not forums.S_LINK --><a href="{forums.U_SYNC}"><img src="images/icon_sync.gif" alt="{L_RESYNC}" title="{L_RESYNC}" width="16" height="16" /></a> <!-- ENDIF -->
<a href="{forums.U_DELETE}"><img src="images/icon_delete.gif" alt="{L_DELETE}" title="{L_DELETE}" width="16" height="16" /></a></td>
</tr>
<!-- END forums -->
</tbody>
</table>
<!-- ENDIF -->
<!-- IF .forums -->
<table cellspacing="1">
<col class="row1" /><col class="row1" /><col class="row2" />
<tbody>
<!-- BEGIN forums -->
<tr>
<td style="width: 5%;">{forums.FOLDER_IMAGE}</td>
<td>
<!-- IF forums.FORUM_IMAGE --><div style="float: left; margin-right: 5px;">{forums.FORUM_IMAGE}</div><!-- ENDIF -->
<strong><!-- IF forums.S_FORUM_LINK -->{forums.FORUM_NAME}<!-- ELSE --><a href="{forums.U_FORUM}">{forums.FORUM_NAME}</a><!-- ENDIF --></strong>
<!-- IF forums.FORUM_DESCRIPTION --><br /><span>{forums.FORUM_DESCRIPTION}</span><!-- ENDIF -->
<!-- IF forums.S_FORUM_POST --><br /><br /><span>{L_TOPICS}: <b>{forums.FORUM_TOPICS}</b> / {L_POSTS}: <b>{forums.FORUM_POSTS}</b></span><!-- ENDIF -->
</td>
<td style="vertical-align: top; width: 100px; text-align: right; white-space: nowrap;">
<!-- IF forums.S_FIRST_ROW && not forums.S_LAST_ROW -->
{ICON_MOVE_UP_DISABLED}
<a href="{forums.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF not forums.S_FIRST_ROW && not forums.S_LAST_ROW-->
<a href="{forums.U_MOVE_UP}">{ICON_MOVE_UP}</a>
<a href="{forums.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF forums.S_LAST_ROW && not forums.S_FIRST_ROW -->
<a href="{forums.U_MOVE_UP}">{ICON_MOVE_UP}</a>
{ICON_MOVE_DOWN_DISABLED}
<!-- ELSE -->
{ICON_MOVE_UP_DISABLED}
{ICON_MOVE_DOWN_DISABLED}
<!-- ENDIF -->
<a href="{forums.U_EDIT}">{ICON_EDIT}</a>
<!-- IF not forums.S_FORUM_LINK -->
<a href="{forums.U_SYNC}" onclick="popup_progress_bar();">{ICON_SYNC}</a>
<!-- ELSE -->
{ICON_SYNC_DISABLED}
<!-- ENDIF -->
<a href="{forums.U_DELETE}">{ICON_DELETE}</a>
</td>
</tr>
<!-- END forums -->
</tbody>
</table>
<!-- ENDIF -->
<form id="fselect" method="post" action="{U_SEL_ACTION}">
<fieldset class="quick">
{L_SELECT_FORUM}: <select name="parent_id" onchange="if(this.options[this.selectedIndex].value != -1){ this.form.submit(); }">{FORUM_BOX}</select>
<input class="button2" type="submit" value="{L_GO}" />
</fieldset>
</form>
<form id="forums" method="post" action="{U_ACTION}">
<fieldset class="quick" style="float: left;">
<fieldset class="quick">
<input type="hidden" name="action" value="add" />
<input type="text" name="forum_name" />
<input type="text" name="forum_name" value="" maxlength="255" />
<input class="button2" name="addforum" type="submit" value="{L_CREATE_FORUM}" />
</fieldset>
</form>
<form id="fselect" method="post" action="{U_SEL_ACTION}">
<fieldset class="quick">
{L_SELECT_FORUM}: <select name="parent_id" onchange="if(this.options[this.selectedIndex].value != -1){ this.form.submit(); }">{FORUM_BOX}</select>
<input class="button2" type="submit" value="{L_GO}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -21,14 +21,15 @@
<fieldset>
<legend>{L_GROUP_DETAILS}</legend>
<dl>
<dt><label<!-- IF not S_SPECIAL_GROUP --> for="group_name"<!-- ENDIF -->>{L_GROUP_NAME}:</label></dt>
<dd><!-- IF S_SPECIAL_GROUP --><b>{GROUP_NAME}</b><!-- ENDIF --><input name="group_name" type="<!-- IF S_SPECIAL_GROUP -->hidden<!-- ELSE -->text<!-- ENDIF -->" id="group_name" value="{GROUP_INTERNAL_NAME}" /></dd>
</dl>
<dl>
<dt><label for="group_description">{L_GROUP_DESC}:</label></dt>
<dd><input name="group_description" type="text" id="group_description" value="{GROUP_DESCRIPTION}" /></dd>
</dl>
<dl>
<dt><label<!-- IF not S_SPECIAL_GROUP --> for="group_name"<!-- ENDIF -->>{L_GROUP_NAME}:</label></dt>
<dd><!-- IF S_SPECIAL_GROUP --><b>{GROUP_NAME}</b><!-- ENDIF --><input name="group_name" type="<!-- IF S_SPECIAL_GROUP -->hidden<!-- ELSE -->text<!-- ENDIF -->" id="group_name" value="{GROUP_INTERNAL_NAME}" /></dd>
</dl>
<dl>
<dt><label for="group_desc">{L_GROUP_DESC}:</label></dt>
<dd><textarea id="group_desc" name="group_desc" rows="5" cols="45">{GROUP_DESC}</textarea></dd>
<dd><input type="checkbox" class="radio" name="desc_parse_bbcode"<!-- IF S_DESC_BBCODE_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_BBCODE} &nbsp; <input type="checkbox" class="radio" name="desc_parse_smilies"<!-- IF S_DESC_SMILIES_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_SMILIES} &nbsp; <input type="checkbox" class="radio" name="desc_parse_urls"<!-- IF S_DESC_URLS_CHECKED --> checked="checked"<!-- ENDIF --> /> {L_PARSE_URLS}</dd>
</dl>
<!-- IF not S_SPECIAL_GROUP -->
<dl>
<dt><label for="group_type">{L_GROUP_TYPE}:</label><br /><span>{L_GROUP_TYPE_EXPLAIN}</span></dt>
@@ -43,60 +44,70 @@
<input name="group_type" type="hidden" value="{GROUP_TYPE_SPECIAL}" />
<!-- ENDIF -->
<!-- IF S_ADD_GROUP -->
<dl>
<dt><label for="group_perm_from">{L_COPY_PERMISSIONS}:</label><br /><span>{L_COPY_PERMISSIONS_EXPLAIN}</span></dt>
<dd><select id="group_perm_from" name="group_perm_from"><option value="0">{L_NO_PERMISSIONS}</option>{S_GROUP_OPTIONS}</select></dd>
</dl>
<!-- IF S_ADD_GROUP and S_GROUP_PERM -->
<dl>
<dt><label for="group_perm_from">{L_COPY_PERMISSIONS}:</label><br /><span>{L_COPY_PERMISSIONS_EXPLAIN}</span></dt>
<dd><select id="group_perm_from" name="group_perm_from"><option value="0">{L_NO_PERMISSIONS}</option>{S_GROUP_OPTIONS}</select></dd>
</dl>
<!-- ENDIF -->
</fieldset>
<fieldset>
<legend>{L_GROUP_SETTINGS_SAVE}</legend>
<dl>
<dt><label for="group_receive_pm">{L_GROUP_RECEIVE_PM}:</label></dt>
<dd><input name="group_receive_pm" type="checkbox" id="group_receive_pm"{GROUP_RECEIVE_PM} /></dd>
</dl>
<dl>
<dt><label for="group_message_limit">{L_GROUP_MESSAGE_LIMIT}:</label><br /><span>{L_GROUP_MESSAGE_LIMIT_EXPLAIN}</span></dt>
<dd><input name="group_message_limit" type="text" id="group_message_limit" maxlength="4" size="4" value="{GROUP_MESSAGE_LIMIT}" /></dd>
</dl>
<dl>
<dt><label for="group_colour">{L_GROUP_COLOR}:</label><br /><span>{L_GROUP_COLOR_EXPLAIN}</span></dt>
<dd><input name="group_colour" type="text" id="group_colour" value="{GROUP_COLOUR}" size="6" maxlength="6" />&nbsp;&nbsp;<span>[ <a href="#" onclick="swatch(); return false">{L_COLOUR_SWATCH}</a> ]</span></dd>
</dl>
<dl>
<dt><label for="group_rank">{L_GROUP_RANK}:</label></dt>
<dd><select name="group_rank" id="group_rank">{S_RANK_OPTIONS}</select></dd>
</dl>
<!-- IF S_USER_FOUNDER -->
<dl>
<dt><label for="group_founder_manage">{L_GROUP_FOUNDER_MANAGE}:</label><br /><span>{L_GROUP_FOUNDER_MANAGE_EXPLAIN}</span></dt>
<dd><input name="group_founder_manage" type="checkbox" class="radio" id="group_founder_manage"{GROUP_FOUNDER_MANAGE} /></dd>
</dl>
<!-- ENDIF -->
<dl>
<dt><label for="group_legend">{L_GROUP_LEGEND}:</label></dt>
<dd><input name="group_legend" type="checkbox" class="radio" id="group_legend"{GROUP_LEGEND} /></dd>
</dl>
<dl>
<dt><label for="group_receive_pm">{L_GROUP_RECEIVE_PM}:</label></dt>
<dd><input name="group_receive_pm" type="checkbox" class="radio" id="group_receive_pm"{GROUP_RECEIVE_PM} /></dd>
</dl>
<dl>
<dt><label for="group_message_limit">{L_GROUP_MESSAGE_LIMIT}:</label><br /><span>{L_GROUP_MESSAGE_LIMIT_EXPLAIN}</span></dt>
<dd><input name="group_message_limit" type="text" id="group_message_limit" maxlength="4" size="4" value="{GROUP_MESSAGE_LIMIT}" /></dd>
</dl>
<dl>
<dt><label for="group_colour">{L_GROUP_COLOR}:</label><br /><span>{L_GROUP_COLOR_EXPLAIN}</span></dt>
<dd><input name="group_colour" type="text" id="group_colour" value="{GROUP_COLOUR}" size="6" maxlength="6" />&nbsp;&nbsp;<span>[ <a href="#" onclick="swatch(); return false">{L_COLOUR_SWATCH}</a> ]</span></dd>
</dl>
<dl>
<dt><label for="group_rank">{L_GROUP_RANK}:</label></dt>
<dd><select name="group_rank" id="group_rank">{S_RANK_OPTIONS}</select></dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_GROUP_AVATAR}</legend>
<dl>
<dt><label>{L_CURRENT_IMAGE}:</label><br /><span>{L_AVATAR_EXPLAIN}</span></dt>
<dd>{AVATAR_IMAGE}</dd>
<dd><input type="checkbox" name="delete" />&nbsp;<span>{L_DELETE_AVATAR}</span></dd>
</dl>
<dl>
<dt><label>{L_CURRENT_IMAGE}:</label><br /><span>{L_AVATAR_EXPLAIN}</span></dt>
<dd>{AVATAR_IMAGE}</dd>
<dd><input type="checkbox" class="radio" name="delete" />&nbsp;<span>{L_DELETE_AVATAR}</span></dd>
</dl>
<!-- IF not S_IN_AVATAR_GALLERY -->
<!-- IF S_CAN_UPLOAD -->
<dl>
<dt><label for="uploadfile">{L_UPLOAD_AVATAR_FILE}:</label></dt>
<dd><input type="hidden" name="MAX_FILE_SIZE" value="{AVATAR_MAX_FILESIZE}" /><input type="file" id="uploadfile" name="uploadfile" /></dd>
<dd><input type="file" id="uploadfile" name="uploadfile" /></dd>
</dl>
<dl>
<dt><label for="uploadurl">{L_UPLOAD_AVATAR_URL}:</label><br /><span>{L_UPLOAD_AVATAR_URL_EXPLAIN}</span></dt>
<dd><input name="uploadurl" type="text" id="uploadurl" value="" /></dd>
</dl>
<!-- ENDIF -->
<dl>
<dt><label for="remotelink">{L_LINK_REMOTE_AVATAR}:</label><br /><span>{L_LINK_REMOTE_AVATAR_EXPLAIN}</span></dt>
<dd><input name="remotelink" type="text" id="remotelink" value="" /></dd>
</dl>
<dl>
<dt><label for="width">{L_LINK_REMOTE_SIZE}:</label><br /><span>{L_LINK_REMOTE_SIZE_EXPLAIN}</span></dt>
<dd><input name="width" type="text" id="width" size="3" value="{GROUP_AVATAR_WIDTH}" /> <span>px X </span> <input type="text" name="height" size="3" value="{GROUP_AVATAR_HEIGHT}" /> <span>px</span></dd>
</dl>
<dl>
<dt><label for="remotelink">{L_LINK_REMOTE_AVATAR}:</label><br /><span>{L_LINK_REMOTE_AVATAR_EXPLAIN}</span></dt>
<dd><input name="remotelink" type="text" id="remotelink" value="" /></dd>
</dl>
<dl>
<dt><label for="width">{L_LINK_REMOTE_SIZE}:</label><br /><span>{L_LINK_REMOTE_SIZE_EXPLAIN}</span></dt>
<dd><input name="width" type="text" id="width" size="3" value="{GROUP_AVATAR_WIDTH}" /> <span>px X </span> <input type="text" name="height" size="3" value="{GROUP_AVATAR_HEIGHT}" /> <span>px</span></dd>
</dl>
<!-- IF S_DISPLAY_GALLERY -->
<dl>
<dt><label>{L_AVATAR_GALLERY}:</label></dt>
@@ -108,26 +119,26 @@
<fieldset>
<legend>{L_AVATAR_GALLERY}</legend>
<dl>
<dt><label for="category">{L_AVATAR_CATEGORY}:</label></dt>
<dd><select name="category" id="category">{S_CAT_OPTIONS}</select>&nbsp;<input class="button2" type="submit" value="{L_GO}" name="display_gallery" /></dd>
</dl>
<dl>
<table cellspacing="1">
<!-- BEGIN avatar_row -->
<tr>
<!-- BEGIN avatar_column -->
<td class="row1" style="text-align: center;"><img src="{avatar_row.avatar_column.AVATAR_IMAGE}" alt="{avatar_row.avatar_column.AVATAR_NAME}" title="{avatar_row.avatar_column.AVATAR_NAME}" /></td>
<!-- END avatar_column -->
</tr>
<tr>
<!-- BEGIN avatar_option_column -->
<td class="row2" style="text-align: center;"><input type="radio" class="radio" name="avatar_select" value="{avatar_row.avatar_option_column.S_OPTIONS_AVATAR}" /></td>
<!-- END avatar_option_column -->
</tr>
<!-- END avatar_row -->
</table>
</dl>
<dl>
<dt><label for="category">{L_AVATAR_CATEGORY}:</label></dt>
<dd><select name="category" id="category">{S_CAT_OPTIONS}</select>&nbsp;<input class="button2" type="submit" value="{L_GO}" name="display_gallery" /></dd>
</dl>
<dl>
<table cellspacing="1">
<!-- BEGIN avatar_row -->
<tr>
<!-- BEGIN avatar_column -->
<td class="row1" style="text-align: center;"><img src="{avatar_row.avatar_column.AVATAR_IMAGE}" alt="{avatar_row.avatar_column.AVATAR_NAME}" title="{avatar_row.avatar_column.AVATAR_NAME}" /></td>
<!-- END avatar_column -->
</tr>
<tr>
<!-- BEGIN avatar_option_column -->
<td class="row2" style="text-align: center;"><input type="radio" class="radio" name="avatar_select" value="{avatar_row.avatar_option_column.S_OPTIONS_AVATAR}" /></td>
<!-- END avatar_option_column -->
</tr>
<!-- END avatar_row -->
</table>
</dl>
</fieldset>
<fieldset class="quick" style="margin-top: -15px;">
@@ -138,6 +149,7 @@
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="update" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
@@ -148,12 +160,16 @@
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<h1>{L_GROUP_MEMBERS}</h1>
<h1>{L_GROUP_MEMBERS} :: {GROUP_NAME}</h1>
<p>{L_GROUP_MEMBERS_EXPLAIN}</p>
<form id="list" method="post" action="{U_ACTION}">
<fieldset class="quick">
<a href="{U_DEFAULT_ALL}">&raquo; {L_MAKE_DEFAULT_FOR_ALL}</a>
</fieldset>
<table cellspacing="1">
<thead>
<tr>
@@ -165,24 +181,22 @@
</tr>
</thead>
<tbody>
<!-- IF not S_GROUP_SPECIAL -->
<tr>
<td class="row3" colspan="5"><b>{L_GROUP_LEAD}</b></td>
<tr>
<td class="row3" colspan="5"><b>{L_GROUP_LEAD}</b></td>
</tr>
<!-- BEGIN leader -->
<!-- IF leader.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{leader.U_USER_EDIT}">{leader.USERNAME}</a></td>
<td style="text-align: center;"><!-- IF leader.S_GROUP_DEFAULT -->{L_YES}<!-- ELSE -->{L_NO}<!-- ENDIF --></td>
<td style="text-align: center;">{leader.JOINED}</td>
<td style="text-align: center;">{leader.USER_POSTS}</td>
<td style="text-align: center;"><input type="checkbox" class="radio" name="mark[]" value="{leader.USER_ID}" /></td>
</tr>
<!-- BEGIN leader -->
<!-- IF leader.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{leader.U_USER_EDIT}">{leader.USERNAME}</a></td>
<td style="text-align: center;"><!-- IF leader.S_GROUP_DEFAULT -->{L_YES}<!-- ELSE -->{L_NO}<!-- ENDIF --></td>
<td style="text-align: center;">{leader.JOINED}</td>
<td style="text-align: center;">{leader.USER_POSTS}</td>
<td style="text-align: center;"><input type="checkbox" name="mark[]" value="{leader.USER_ID}" /></td>
</tr>
<!-- BEGINELSE -->
<tr>
<td class="row1" colspan="5" style="text-align: center;">{L_GROUPS_NO_MODS}</td>
</tr>
<!-- END leader -->
<!-- ENDIF -->
<!-- BEGINELSE -->
<tr>
<td class="row1" colspan="5" style="text-align: center;">{L_GROUPS_NO_MODS}</td>
</tr>
<!-- END leader -->
<tr>
<td class="row3" colspan="5"><b>{L_GROUP_APPROVED}</b></td>
</tr>
@@ -197,7 +211,7 @@
<td style="text-align: center;"><!-- IF member.S_GROUP_DEFAULT -->{L_YES}<!-- ELSE -->{L_NO}<!-- ENDIF --></td>
<td style="text-align: center;">{member.JOINED}</td>
<td style="text-align: center;">{member.USER_POSTS}</td>
<td style="text-align: center;"><input type="checkbox" name="mark[]" value="{member.USER_ID}" /></td>
<td style="text-align: center;"><input type="checkbox" class="radio" name="mark[]" value="{member.USER_ID}" /></td>
</tr>
<!-- ENDIF -->
<!-- BEGINELSE -->
@@ -207,20 +221,16 @@
<!-- END member -->
</tbody>
</table>
<div class="pagination" style="float: left;">
<!-- IF PAGINATION -->
<a href="javascript:jumpto();" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
<!-- ELSE -->
{S_ON_PAGE}
<!-- ENDIF -->
<!-- IF PAGINATION -->
<div class="pagination">
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
<fieldset class="quick">
<span class="small"><a href="javascript:marklist('list', 'mark', true);">{L_MARK_ALL}</a> :: <a href="javascript:marklist('list', 'mark', false);">{L_UNMARK_ALL}</a></span><br />
<select name="action"><option class="sep" value="">{L_SELECT_OPTION}</option>{S_ACTION_OPTIONS}</select>
<input class="button2" type="submit" name="update" value="{L_SUBMIT}" />
<p class="small"><a href="#" onclick="marklist('list', 'mark', true); return false;">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('list', 'mark', false); return false;">{L_UNMARK_ALL}</a></p>
</fieldset>
<h1>{L_ADD_USERS}</h1>
@@ -240,12 +250,12 @@
<dl>
<dt><label for="usernames">{L_USERNAME}:</label><br /><span>{L_USERNAMES_EXPLAIN}</span></dt>
<dd><textarea id="usernames" name="usernames" cols="40" rows="5"></textarea></dd>
<dd>[ <a href="{U_FIND_USERNAME}" target="usersearch">{L_FIND_USERNAME}</a> ]</dd>
<dd>[ <a href="{U_FIND_USERNAME}" onclick="find_username(); return false;">{L_FIND_USERNAME}</a> ]</dd>
</dl>
</fieldset>
<fieldset class="quick">
<p class="quick">
<input class="button2" type="submit" name="addusers" value="{L_SUBMIT}" />
</p>
</fieldset>
</form>
@@ -256,6 +266,13 @@
<p>{L_ACP_GROUPS_MANAGE_EXPLAIN}</p>
<!-- IF S_ERROR -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<h1>{L_USER_DEF_GROUPS}</h1>
<p>{L_USER_DEF_GROUPS_EXPLAIN}</p>
@@ -266,23 +283,32 @@
<col class="col1" /><col class="col1" /><col class="col2" /><col class="col2" /><col class="col2" />
<thead>
<tr>
<th style="width: 50%">{L_MANAGE}</th>
<th style="width: 50%">{L_GROUP}</th>
<th>{L_TOTAL_MEMBERS}</th>
<th colspan="3">{L_OPTIONS}</th>
<th colspan="2">{L_OPTIONS}</th>
<th>{L_ACTION}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN groups -->
<!-- IF groups.S_SPECIAL -->
<!-- IF groups.S_FIRST_ROW -->
<tr>
<td colspan="5" class="row3">{L_NO_GROUPS_CREATED}</td>
</tr>
<!-- ENDIF -->
</tbody>
</table>
<fieldset class="quick">
<!-- IF S_GROUP_ADD -->
{L_CREATE_GROUP}: <input type="text" name="group_name" value="" /> <input class="button2" type="submit" name="add" value="{L_SUBMIT}" />
{L_CREATE_GROUP}: <input type="text" name="group_name" value="" /> <input class="button2" type="submit" name="submit" value="{L_SUBMIT}" />
<input type="hidden" name="add" value="1" />
<!-- ENDIF -->
</fieldset>
</form>
<h1>{L_SPECIAL_GROUPS}</h1>
<p>{L_SPECIAL_GROUPS_EXPLAIN}</p>
@@ -291,18 +317,19 @@
<col class="col1" /><col class="col1" /><col class="col2" /><col class="col2" /><col class="col2" />
<thead>
<tr>
<th style="width: 50%">{L_MANAGE}</th>
<th style="width: 50%">{L_GROUP}</th>
<th>{L_TOTAL_MEMBERS}</th>
<th colspan="3">{L_OPTIONS}</th>
<th colspan="2">{L_OPTIONS}</th>
<th>{L_ACTION}</th>
</tr>
</thead>
<tbody>
<!-- ELSE -->
<tr>
<td><a href="{groups.U_LIST}">{groups.GROUP_NAME}</a></td>
<td><strong>{groups.GROUP_NAME}</strong></td>
<td style="text-align: center;">{groups.TOTAL_MEMBERS}</td>
<td style="text-align: center;"><a href="{groups.U_DEFAULT}">{L_GROUP_DEFAULT}</a></td>
<td style="text-align: center;"><a href="{groups.U_EDIT}">{L_EDIT}</a></td>
<td style="text-align: center;"><a href="{groups.U_EDIT}">{L_SETTINGS}</a></td>
<td style="text-align: center;"><a href="{groups.U_LIST}">{L_MEMBERS}</a></td>
<td style="text-align: center;"><!-- IF not groups.S_GROUP_SPECIAL and groups.U_DELETE --><a href="{groups.U_DELETE}">{L_DELETE}</a><!-- ELSE -->{L_DELETE}<!-- ENDIF --></td>
</tr>
<!-- ENDIF -->
@@ -310,8 +337,6 @@
</tbody>
</table>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -12,6 +12,9 @@
<form id="acp_icons" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_TITLE}</legend>
<table cellspacing="1">
<thead>
<tr>
@@ -42,13 +45,13 @@
<td style="text-align: center;"><img src="{items.IMG_SRC}" alt="" title="" /><input type="hidden" name="image[{items.IMG}]" value="1" /></td>
<td style="vertical-align: top;">[{items.IMG}]</td>
<!-- IF S_SMILIES -->
<td><input class="post" type="text" name="code[{items.IMG}]" value="{items.CODE}" size="10" /></td>
<td><input class="post" type="text" name="emotion[{items.IMG}]" value="{items.EMOTION}" size="10" /></td>
<td><input class="post" type="text" name="code[{items.IMG}]" value="{items.CODE}" size="10" maxlength="50" /></td>
<td><input class="post" type="text" name="emotion[{items.IMG}]" value="{items.EMOTION}" size="10" maxlength="50" /></td>
<!-- ENDIF -->
<td><input class="post" type="text" size="3" name="width[{items.IMG}]" value="{items.WIDTH}" /></td>
<td><input class="post" type="text" size="3" name="height[{items.IMG}]" value="{items.HEIGHT}" /></td>
<td>
<input type="checkbox" name="display_on_posting[{items.IMG}]"{items.POSTING_CHECKED} />
<input type="checkbox" class="radio" name="display_on_posting[{items.IMG}]"{items.POSTING_CHECKED} />
<!-- IF items.S_ID -->
<input type="hidden" name="id[{items.IMG}]" value="{items.ID}" />
<!-- ENDIF -->
@@ -57,16 +60,17 @@
<td><select name="order[{items.IMG}]">{S_ORDER_LIST}</select></td>
<!-- ENDIF -->
<!-- IF S_ADD -->
<td><input type="checkbox" name="add_img[{items.IMG}]" value="1" /></td>
<td><input type="checkbox" class="radio" name="add_img[{items.IMG}]" value="1" /></td>
<!-- ENDIF -->
</tr>
<!-- END items -->
</tbody>
</table>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
@@ -86,7 +90,6 @@
<!-- IF not S_PAK_OPTIONS -->
<p>{L_NO_PAK_OPTIONS}</p>
</fieldset>
<!-- ELSE -->
<dl>
@@ -96,12 +99,12 @@
<dt><label for="current">{L_CURRENT}</label><br /><span>{L_CURRENT_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="current" name="current" value="keep" checked="checked" /> {L_KEEP_ALL}&nbsp; &nbsp;<input type="radio" class="radio" name="current" value="replace" /> {L_REPLACE_MATCHES}&nbsp; &nbsp;<input type="radio" class="radio" name="current" value="delete" /> {L_DELETE_ALL}&nbsp;</dd>
</dl>
</fieldset>
<fieldset class="quick">
<p class="quick">
<input class="button1" type="submit" id="import" name="import" value="{L_IMPORT_SUBMIT}" />
</fieldset>
</p>
<!-- ENDIF -->
</fieldset>
</form>
@@ -118,8 +121,14 @@
</div>
<!-- ENDIF -->
<form id="acp_icons" method="post" action="{U_ACTION}">
<div style="text-align: right;"><a href="{U_IMPORT}">{L_IMPORT}</a> | <a href="{U_EXPORT}">{L_EXPORT}</a></div>
<fieldset class="tabulated">
<legend>{L_TITLE}</legend>
<table cellspacing="1">
<thead>
<tr>
@@ -128,8 +137,7 @@
<th>{L_CODE}</th>
<th>{L_EMOTION}</th>
<!-- ENDIF -->
<th>{L_ACTION}</th>
<th>{L_REORDER}</th>
<th>{L_OPTIONS}</th>
</tr>
</thead>
<tbody>
@@ -140,26 +148,28 @@
</tr>
<!-- ENDIF -->
<!-- IF items.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td style="text-align: center;"><img src="{items.IMG_SRC}" width="{items.WIDTH}" height="{items.HEIGHT}" alt="{items.ALT_TEXT}" title="{items.ALT_TEXT}" /></td>
<td style="width: 85%; text-align: center;"><img src="{items.IMG_SRC}" width="{items.WIDTH}" height="{items.HEIGHT}" alt="{items.ALT_TEXT}" title="{items.ALT_TEXT}" /></td>
<!-- IF S_SMILIES -->
<td style="text-align: center;">{items.CODE}</td>
<td style="text-align: center;">{items.EMOTION}</td>
<!-- ENDIF -->
<td style="text-align: center;"><a href="{items.U_EDIT}">{L_EDIT}</a> | <a href="{items.U_DELETE}">{L_DELETE}</a></td>
<td style="text-align: center;"><a href="{items.U_MOVE_UP}">{L_MOVE_UP}</a> <br /> <a href="{items.MOVE_DOWN}">{L_MOVE_DOWN}</a></td>
<td style="text-align: right; white-space: nowrap;">
<!-- IF items.S_FIRST_ROW -->{ICON_MOVE_UP_DISABLED}<!-- ELSE --><a href="{items.U_MOVE_UP}">{ICON_MOVE_UP}</a><!-- ENDIF -->&nbsp;
<!-- IF items.S_LAST_ROW -->{ICON_MOVE_DOWN_DISABLED}<!-- ELSE --><a href="{items.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a><!-- ENDIF -->
&nbsp;<a href="{items.U_EDIT}">{ICON_EDIT}</a> <a href="{items.U_DELETE}">{ICON_DELETE}</a>
</td>
</tr>
<!-- END items -->
</tbody>
</table>
<form id="acp_icons" method="post" action="{U_ACTION}">
<fieldset class="quick">
<p class="quick">
<input class="button2" name="add" type="submit" value="{L_ICON_ADD}" />&nbsp; &nbsp;<input class="button2" type="submit" name="edit" value="{L_ICON_EDIT}" />
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -0,0 +1,71 @@
<!-- INCLUDE overall_header.html -->
<a name="maincontent"></a>
<h2>{L_INACTIVE_USERS}</h2>
<p>{L_INACTIVE_USERS_EXPLAIN}</p>
<form id="inactive" method="post" action="{U_ACTION}">
<div class="clearfix"></div>
<!-- IF PAGINATION -->
<div class="pagination">
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
<table cellspacing="1">
<thead>
<tr>
<th>{L_USERNAME}</th>
<th>{L_JOINED}</th>
<th>{L_INACTIVE_DATE}</th>
<th>{L_INACTIVE_REASON}</th>
<th>{L_LAST_VISIT}</th>
<th>{L_MARK}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN inactive -->
<!-- IF inactive.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{inactive.U_USER_ADMIN}">{inactive.USERNAME}</a></td>
<td>{inactive.JOINED}</td>
<td>{inactive.INACTIVE_DATE}</td>
<td>{inactive.REASON}</td>
<td>{inactive.LAST_VISIT}</td>
<td>&nbsp;<input type="checkbox" class="radio" name="mark[]" value="{inactive.USER_ID}" />&nbsp;</td>
</tr>
<!-- BEGINELSE -->
<tr>
<td colspan="6" style="text-align: center;">{L_NO_INACTIVE_USERS}</td>
</tr>
<!-- END inactive -->
</tbody>
</table>
<fieldset class="display-options">
{L_DISPLAY_LOG}: &nbsp;{S_LIMIT_DAYS}&nbsp;{L_SORT_BY}: {S_SORT_KEY} {S_SORT_DIR}
<input class="button2" type="submit" value="{L_GO}" name="sort" />
</fieldset>
<hr />
<!-- IF PAGINATION -->
<div class="pagination">
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
<fieldset class="quick">
<select name="action">{S_INACTIVE_OPTIONS}</select>
<input class="button2" type="submit" name="submit" value="{L_SUBMIT}" />
<p class="small"><a href="#" onclick="marklist('inactive', 'mark', true); return false;">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('inactive', 'mark', false); return false;">{L_UNMARK_ALL}</a></p>
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->

View File

@@ -17,37 +17,42 @@
<fieldset>
<legend>{L_ACP_JABBER_SETTINGS}</legend>
<dl>
<dt><label for="jab_enable">{L_JAB_ENABLE}:</label><br /><span>{L_JAB_ENABLE_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="jab_enable" name="jab_enable" value="1"<!-- IF JAB_ENABLE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_ENABLED}&nbsp; &nbsp;<input type="radio" class="radio" name="jab_enable" value="0"<!-- IF not JAB_ENABLE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_DISABLED}</dd>
</dl>
<dl>
<dt><label for="jab_host">{L_JAB_SERVER}:</label><br /><span>{L_JAB_SERVER_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_host" name="jab_host" value="{JAB_HOST}" /></dd>
</dl>
<dl>
<dt><label for="jab_port">{L_JAB_PORT}:</label><br /><span>{L_JAB_PORT_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_port" name="jab_port" value="{JAB_PORT}" /></dd>
</dl>
<dl>
<dt><label for="jab_username">{L_JAB_USERNAME}:</label><br /><span>{L_JAB_USERNAME_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_username" name="jab_username" value="{JAB_USERNAME}" /></dd>
</dl>
<dl>
<dt><label for="jab_password">{L_JAB_PASSWORD}:</label></dt>
<dd><input type="text" id="jab_password" name="jab_password" value="{JAB_PASSWORD}" /></dd>
</dl>
<dl>
<dt><label for="jab_resource">{L_JAB_RESOURCE}:</label><br /><span>{L_JAB_RESOURCE_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_resource" name="jab_resource" value="{JAB_RESOURCE}" /></dd>
</dl>
</fieldset>
<dl>
<dt><label for="jab_enable">{L_JAB_ENABLE}:</label><br /><span>{L_JAB_ENABLE_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="jab_enable" name="jab_enable" value="1"<!-- IF JAB_ENABLE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_ENABLED}&nbsp; &nbsp;<input type="radio" class="radio" name="jab_enable" value="0"<!-- IF not JAB_ENABLE --> checked="checked"<!-- ENDIF --> />&nbsp;{L_DISABLED}</dd>
</dl>
<dl>
<dt><label for="jab_host">{L_JAB_SERVER}:</label><br /><span>{L_JAB_SERVER_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_host" name="jab_host" value="{JAB_HOST}" /></dd>
</dl>
<dl>
<dt><label for="jab_port">{L_JAB_PORT}:</label><br /><span>{L_JAB_PORT_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_port" name="jab_port" value="{JAB_PORT}" maxlength="5" size="5" /></dd>
</dl>
<dl>
<dt><label for="jab_username">{L_JAB_USERNAME}:</label><br /><span>{L_JAB_USERNAME_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_username" name="jab_username" value="{JAB_USERNAME}" /></dd>
</dl>
<dl>
<dt><label for="jab_password">{L_JAB_PASSWORD}:</label></dt>
<dd><input type="password" id="jab_password" name="jab_password" value="{JAB_PASSWORD}" /></dd>
</dl>
<dl>
<dt><label for="jab_resource">{L_JAB_RESOURCE}:</label><br /><span>{L_JAB_RESOURCE_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_resource" name="jab_resource" value="{JAB_RESOURCE}" /></dd>
</dl>
<dl>
<dt><label for="jab_package_size">{L_JAB_PACKAGE_SIZE}:</label><br /><span>{L_JAB_PACKAGE_SIZE_EXPLAIN}</span></dt>
<dd><input type="text" id="jab_package_size" name="jab_package_size" value="{JAB_PACKAGE_SIZE}" maxlength="5" size="5" /></dd>
</dl>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -7,7 +7,7 @@
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<h1>{L_SELECT_DOWNLOAD_FORMAT}</h1>
<form id="selectmethod" method="post" action="{U_ACTION}">
<fieldset>
@@ -16,10 +16,10 @@
<dt><label for="use_method">{L_DOWNLOAD_AS}:</label></dt>
<dd>{RADIO_BUTTONS}</dd>
</dl>
</fieldset>
<fieldset class="quick">
<p class="quick">
<input type="submit" class="button2" value="{L_DOWNLOAD}" name="download" />
</p>
</fieldset>
</form>
@@ -36,24 +36,24 @@
<legend>{LANG_LOCAL_NAME}</legend>
<dl>
<dt><label for="lang_english_name">{L_LANG_ENGLISH_NAME}:</label></dt>
<dd><input type="text" id="lang_english_name" name="lang_english_name" value="{LANG_ENGLISH_NAME}" /></dd>
<dd><input type="text" id="lang_english_name" name="lang_english_name" value="{LANG_ENGLISH_NAME}" maxlength="100" /></dd>
</dl>
<dl>
<dt><label for="lang_local_name">{L_LANG_LOCAL_NAME}:</label></dt>
<dd><input type="text" id="lang_local_name" name="lang_local_name" value="{LANG_LOCAL_NAME}" /></dd>
<dd><input type="text" id="lang_local_name" name="lang_local_name" value="{LANG_LOCAL_NAME}" maxlength="255" /></dd>
</dl>
<dl>
<dt><label>{L_LANG_ISO_CODE}:</label></dt>
<dd><b>{LANG_ISO}</b></dd>
<dd><strong>{LANG_ISO}</strong></dd>
</dl>
<dl>
<dt><label for="lang_author">{L_LANG_AUTHOR}:</label></dt>
<dd><input type="text" id="lang_author" name="lang_author" value="{LANG_AUTHOR}" /></dd>
<dd><input type="text" id="lang_author" name="lang_author" value="{LANG_AUTHOR}" maxlength="255" /></dd>
</dl>
</fieldset>
<fieldset class="quick" style="margin-top: -15px;">
<p class="quick" style="margin-top: -15px;">
<input type="submit" name="update_details" class="button2" value="{L_SUBMIT}" />
</p>
</fieldset>
</form>
@@ -72,7 +72,7 @@
<h1>{L_MISSING_LANG_VARIABLES}</h1>
<p>{L_MISSING_VARS_EXPLAIN}</p>
<form id="missing" method="post" action="{U_MISSING_ACTION}">
<table cellspacing="1">
@@ -85,7 +85,7 @@
<tbody>
<!-- BEGIN missing -->
<tr class="row4">
<td><b>{missing.FILE}</b></td>
<td><strong>{missing.FILE}</strong></td>
<td style="text-align: right;"><input type="submit" name="missing_file[{missing.KEY}]" value="{L_SELECT}" class="button2" /></td>
</tr>
{missing.TPL}
@@ -104,20 +104,29 @@
<p>{L_LANGUAGE_ENTRIES_EXPLAIN}</p>
<form id="entries" method="post" action="{U_ENTRY_ACTION}">
<form id="lang_entries" method="post" action="{U_ENTRY_ACTION}">
<!-- IF S_FROM_STORE -->
<fieldset class="quick" style="float: left;">
<input type="submit" name="remove_store" value="{L_REMOVE_FROM_STORAGE_FOLDER}" class="button2" />
</fieldset>
<!-- ENDIF -->
<fieldset class="quick" style="float: right;">
<select name="language_file">{S_LANG_OPTIONS}</select>&nbsp;<input type="submit" class="button2" name="change" value="{L_SELECT}" />
</fieldset>
<br /><br /><br />
<!-- DIRTY DIRTY DIRTY IE -->
<!--[if lt IE 8]>
<style type="text/css">
input.langvalue, textarea.langvalue {
width: 450px;
}
</style>
< ![endif]-->
<table cellspacing="1">
<thead>
<!-- IF S_EMAIL_FILE -->
@@ -131,26 +140,35 @@
</tr>
<!-- ENDIF -->
<tr>
<td class="row3"><b>{PRINT_MESSAGE}<!-- IF S_FROM_STORE --><br /><span style="color: red;">{L_FILE_FROM_STORAGE}</span><!-- ENDIF --></b></td>
<td class="row3" style="text-align: right;"><input type="submit" name="download_file" class="button2" value="{L_SUBMIT_AND_DOWNLOAD}" />&nbsp;&nbsp;<input type="submit" name="submit_file" class="button2" value="{L_SUBMIT}" /><!-- IF ALLOW_UPLOAD -->&nbsp;&nbsp;{L_UPLOAD_METHOD}:&nbsp;<!-- BEGIN buttons--><input type="radio"<!-- IF buttons.S_FIRST_ROW --> id="method" checked="checked"<!-- ENDIF --> value="{buttons.VALUE}" name="method">&nbsp;{buttons.VALUE}&nbsp;<!-- END buttons --><input type="submit" name="upload_file" class="button2" value="{L_SUBMIT_AND_UPLOAD}" /><!-- ENDIF --></td>
<td rowspan="2" class="row3"><strong>{PRINT_MESSAGE}<!-- IF S_FROM_STORE --><br /><span style="color: red;">{L_FILE_FROM_STORAGE}</span><!-- ENDIF --></strong></td>
<td class="row3" style="text-align: right;"><input type="submit" name="download_file" class="button2" value="{L_SUBMIT_AND_DOWNLOAD}" />&nbsp;&nbsp;<input type="submit" name="submit_file" class="button2" value="{L_SUBMIT}" /></td>
</tr>
<tr>
<td class="row3" style="text-align: right;">
<!-- IF ALLOW_UPLOAD -->&nbsp;&nbsp;{L_UPLOAD_METHOD}:&nbsp;<!-- BEGIN buttons--><input type="radio" class="radio"<!-- IF buttons.S_FIRST_ROW --> id="method" checked="checked"<!-- ENDIF --> value="{buttons.VALUE}" name="method" />&nbsp;{buttons.VALUE}&nbsp;<!-- END buttons --><input type="submit" name="upload_file" class="button2" value="{L_SUBMIT_AND_UPLOAD}" /><!-- ENDIF --></td>
</tr>
</thead>
<tbody>
<!-- IF S_EMAIL_FILE -->
<tr>
<td class="row2" colspan="2" style="text-align: center;"><textarea name="entry" id="entry" cols="80" rows="20" style="width: 90%">{LANG}</textarea></td>
<td class="row2" colspan="2" style="text-align: center;"><textarea name="entry" id="entry" cols="80" rows="20">{LANG}</textarea></td>
</tr>
<!-- ELSE -->
{TPL}
<!-- ENDIF -->
<tr>
<td class="row3" colspan="3" style="text-align: right;"><input type="submit" name="download_file" class="button2" value="{L_SUBMIT_AND_DOWNLOAD}" />&nbsp;&nbsp;<input type="submit" name="submit_file" class="button2" value="{L_SUBMIT}" /><!-- IF ALLOW_UPLOAD -->&nbsp;&nbsp;{L_UPLOAD_METHOD}:&nbsp;<!-- BEGIN buttons--><input type="radio" value="{buttons.VALUE}" name="method">&nbsp;{buttons.VALUE}&nbsp;<!-- END buttons --><input type="submit" name="upload_file" class="button2" value="{L_SUBMIT_AND_UPLOAD}" /><!-- ENDIF --></td>
<td class="row3" colspan="3" style="text-align: right;"><!-- IF ALLOW_UPLOAD -->&nbsp;&nbsp;{L_UPLOAD_METHOD}:&nbsp;<!-- BEGIN buttons--><input type="radio" class="radio" value="{buttons.VALUE}" name="method" />&nbsp;{buttons.VALUE}&nbsp;<!-- END buttons --><input type="submit" name="upload_file" class="button2" value="{L_SUBMIT_AND_UPLOAD}" /><!-- ENDIF --></td>
</tr>
<tr>
<td class="row3" colspan="3" style="text-align: right;"><input type="submit" name="download_file" class="button2" value="{L_SUBMIT_AND_DOWNLOAD}" />&nbsp;&nbsp;<input type="submit" name="submit_file" class="button2" value="{L_SUBMIT}" /></td>
</tr>
</tbody>
</table>
</form>
<!-- ELSEIF S_UPLOAD -->
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<h1>{L_UPLOAD_SETTINGS}</h1>
@@ -171,12 +189,12 @@
<legend>{L_UPLOAD_SETTINGS}</legend>
<dl>
<dt><label>{L_UPLOAD_METHOD}:</label></dt>
<dd><b>{NAME}</b></dd>
<dd><strong>{NAME}</strong></dd>
</dl>
<!-- BEGIN data -->
<dl>
<dt><label for="store">{data.NAME}:</label><br /><span>{data.EXPLAIN}</span></dt>
<dd><input type="text" id="{data.DATA}" name="{data.DATA}" value="{data.DEFAULT}" checked="checked" /></dd>
<dt><label for="{data.DATA}">{data.NAME}:</label><br /><span>{data.EXPLAIN}</span></dt>
<dd><input type="<!-- IF data.DATA == 'password' -->password<!-- ELSE -->text<!-- ENDIF -->" id="{data.DATA}" name="{data.DATA}" value="{data.DEFAULT}" /></dd>
</dl>
<!-- END data -->
</fieldset>
@@ -188,6 +206,7 @@
</fieldset>
</form>
<!-- ELSE -->
<h1>{L_ACP_LANGUAGE_PACKS}</h1>
@@ -206,27 +225,27 @@
</thead>
<tbody>
<tr>
<td class="row3" colspan="5"><b>{L_INSTALLED_LANGUAGE_PACKS}</b></td>
<td class="row3" colspan="5"><strong>{L_INSTALLED_LANGUAGE_PACKS}</strong></td>
</tr>
<!-- BEGIN lang -->
<!-- IF lang.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{lang.U_DETAILS}">{lang.ENGLISH_NAME}</a> {lang.TAG}</td>
<td>{lang.LOCAL_NAME}</td>
<td style="text-align: center;"><b>{lang.ISO}</b></td>
<td style="text-align: center;"><strong>{lang.ISO}</strong></td>
<td style="text-align: center;">{lang.USED_BY}</td>
<td style="text-align: center;">&nbsp;<a href="{lang.U_DOWNLOAD}">{L_DOWNLOAD}</a>&nbsp;|&nbsp;<a href="{lang.U_DELETE}">{L_DELETE}</a></td>
</tr>
<!-- END lang -->
<!-- IF .notinst -->
<tr>
<td class="row3" colspan="5"><b>{L_UNINSTALLED_LANGUAGE_PACKS}</b></td>
<td class="row3" colspan="5"><strong>{L_UNINSTALLED_LANGUAGE_PACKS}</strong></td>
</tr>
<!-- ENDIF -->
<!-- BEGIN notinst -->
<!-- IF notinst.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td>{notinst.NAME}</td>
<td>{notinst.LOCAL_NAME}</td>
<td style="text-align: center;"><b>{notinst.ISO}</b></td>
<td style="text-align: center;"><strong>{notinst.ISO}</strong></td>
<td colspan="2" style="text-align: center;"><a href="{notinst.U_INSTALL}">{L_INSTALL}</a></td>
</tr>
<!-- END notinst -->
@@ -235,4 +254,4 @@
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -8,66 +8,78 @@
<form id="list" method="post" action="{U_ACTION}">
<fieldset class="quick" style="float: left;">
{L_DISPLAY_LOG}: &nbsp;{S_LIMIT_DAYS}&nbsp;{L_SORT_BY}: {S_SORT_KEY} {S_SORT_DIR}
<input class="button2" type="submit" value="{L_GO}" name="sort" />
</fieldset>
<div class="clearfix"></div>
<!-- IF PAGINATION -->
<div class="pagination">
<!-- IF PAGINATION -->
<a href="javascript:jumpto();" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
<!-- ELSE -->
{S_ON_PAGE}
<!-- ENDIF -->
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
<!-- IF .log -->
<table cellspacing="1">
<thead>
<tr>
<th>{L_USERNAME}</th>
<th>{L_IP}</th>
<th>{L_TIME}</th>
<th>{L_ACTION}</th>
<th>{L_MARK}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN log -->
<!-- IF log.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td>{log.USERNAME}</td>
<td style="text-align: center;">{log.IP}</td>
<td style="text-align: center;">{log.DATE}</td>
<td>{log.ACTION}<!-- IF log.DATA --><br />{log.DATA}</span><!-- ENDIF --></td>
<td style="text-align: center;"><input type="checkbox" name="mark[]" value="{log.ID}" /></td>
<table cellspacing="1">
<thead>
<tr>
<th>{L_USERNAME}</th>
<th>{L_IP}</th>
<th>{L_TIME}</th>
<th>{L_ACTION}</th>
<th>{L_MARK}</th>
</tr>
<!-- END log -->
</tbody>
</table>
</thead>
<tbody>
<!-- BEGIN log -->
<!-- IF log.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td>
{log.USERNAME}
<!-- IF log.REPORTEE_USERNAME -->
<br />&raquo; {log.REPORTEE_USERNAME}
<!-- ENDIF -->
</td>
<td style="text-align: center;">{log.IP}</td>
<td style="text-align: center;">{log.DATE}</td>
<td>{log.ACTION}<!-- IF log.DATA --><br /><span>{log.DATA}</span><!-- ENDIF --></td>
<td style="text-align: center;"><input type="checkbox" class="radio" name="mark[]" value="{log.ID}" /></td>
</tr>
<!-- END log -->
</tbody>
</table>
<!-- ELSE -->
<div class="errorbox">
<p>{L_NO_ENTRIES}</p>
</div>
<!-- ENDIF -->
<!-- IF S_SHOW_FORUMS -->
<fieldset class="quick" style="float: left;">
{L_SELECT_FORUM}: <select name="f" onchange="if(this.options[this.selectedIndex].value != -1){ this.form.submit(); }">{S_FORUM_BOX}</select>
<input class="button2" type="submit" value="{L_GO}" />
<fieldset class="display-options">
{L_DISPLAY_LOG}: &nbsp;{S_LIMIT_DAYS}&nbsp;{L_SORT_BY}: {S_SORT_KEY} {S_SORT_DIR}
<input class="button2" type="submit" value="{L_GO}" name="sort" />
</fieldset>
<hr />
<!-- IF PAGINATION -->
<div class="pagination">
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
<!-- IF S_SHOW_FORUMS -->
<fieldset class="quick">
{L_SELECT_FORUM}: <select name="f" onchange="if(this.options[this.selectedIndex].value != -1){ this.form.submit(); }">{S_FORUM_BOX}</select>
<input class="button2" type="submit" value="{L_GO}" />
</fieldset>
<!-- ENDIF -->
<!-- IF S_CLEARLOGS -->
<fieldset class="quick">
<b class="small"><a href="#" onclick="marklist('list', 'mark', true);">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('list', 'mark', false);">{L_UNMARK_ALL}</a></b><br />
<input class="button2" type="submit" name="delmarked" value="{L_DELETE_MARKED}" />&nbsp;
<input class="button2" type="submit" name="delall" value="{L_DELETE_ALL}" />&nbsp;
<input class="button2" type="submit" name="delall" value="{L_DELETE_ALL}" /><br />
<p class="small"><a href="#" onclick="marklist('list', 'mark', true); return false;">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('list', 'mark', false); return false;">{L_UNMARK_ALL}</a></p>
</fieldset>
<!-- ENDIF -->
</form>
<!-- INCLUDE overall_footer.html -->

View File

@@ -1,141 +1,171 @@
<!-- INCLUDE overall_header.html -->
<a name="maincontent"></a><h1>{L_WELCOME_PHPBB}</h1>
<a name="maincontent"></a>
<p>{L_ADMIN_INTRO}</p>
<!-- IF S_RESTORE_PERMISSIONS -->
<table cellspacing="1">
<caption>{L_FORUM_STATS}</caption>
<col class="col1" /><col class="col2" /><col class="col1" /><col class="col2" />
<thead>
<tr>
<th>{L_STATISTIC}</th>
<th>{L_VALUE}</th>
<th>{L_STATISTIC}</th>
<th>{L_VALUE}</th>
</tr>
</thead>
<tbody>
<tr>
<td>{L_NUMBER_POSTS}: </td>
<td><b>{TOTAL_POSTS}</b></td>
<td>{L_POSTS_PER_DAY}: </td>
<td><b>{POSTS_PER_DAY}</b></td>
</tr>
<tr>
<td>{L_NUMBER_TOPICS}: </td>
<td><b>{TOTAL_TOPICS}</b></td>
<td>{L_TOPICS_PER_DAY}: </td>
<td><b>{TOPICS_PER_DAY}</b></td>
</tr>
<tr>
<td>{L_NUMBER_USERS}: </td>
<td><b>{TOTAL_USERS}</b></td>
<td>{L_USERS_PER_DAY}: </td>
<td><b>{USERS_PER_DAY}</b></td>
</tr>
<tr>
<td>{L_NUMBER_FILES}: </td>
<td><b>{TOTAL_FILES}</b></td>
<td>{L_FILES_PER_DAY}: </td>
<td><b>{FILES_PER_DAY}</b></td>
</tr>
<tr>
<td>{L_BOARD_STARTED}: </td>
<td><b>{START_DATE}</b></td>
<td>{L_AVATAR_DIR_SIZE}: </td>
<td><b>{AVATAR_DIR_SIZE}</b></td>
</tr>
<tr>
<td>{L_DATABASE_SIZE}: </td>
<td><b>{DBSIZE}</b></td>
<td>{L_UPLOAD_DIR_SIZE}: </td>
<td><b>{UPLOAD_DIR_SIZE}</b></td>
</tr>
<tr>
<td>{L_GZIP_COMPRESSION}: </td>
<td><b>{GZIP_COMPRESSION}</b></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</tbody>
</table>
<h1>{L_PERMISSIONS_TRANSFERRED}</h1>
<form id="stats" method="post" action="{U_ACTION}">
<fieldset class="quick">
<select name="action">{S_ACTION_OPTIONS}</select>
<p>{L_PERMISSIONS_TRANSFERRED_EXPLAIN}</p>
<input class="button2" type="submit" name="submit" value="{L_SUBMIT}" />
</fieldset>
</form>
<!-- ELSE -->
<h2>{L_ADMIN_LOG}</h2>
<h1>{L_WELCOME_PHPBB}</h1>
<p>{L_ADMIN_LOG_INDEX_EXPLAIN}</p>
<p>{L_ADMIN_INTRO}</p>
<table cellspacing="1">
<thead>
<tr>
<th>{L_USERNAME}</th>
<th>{L_IP}</th>
<th>{L_TIME}</th>
<th>{L_ACTION}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN log -->
<!-- IF log.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td>{log.USERNAME}</td>
<td style="text-align: center;">{log.IP}</td>
<td style="text-align: center;">{log.DATE}</td>
<td>{log.ACTION}</td>
</tr>
<!-- END log -->
</tbody>
</table>
<!-- IF S_INACTIVE_USERS -->
<h2>{L_INACTIVE_USERS}</h2>
<p>{L_INACTIVE_USERS_EXPLAIN}</p>
<form id="inactive" method="post" action="{U_ACTION}">
<!-- IF S_REMOVE_INSTALL -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{L_REMOVE_INSTALL}</p>
</div>
<!-- ENDIF -->
<table cellspacing="1">
<caption>{L_FORUM_STATS}</caption>
<col class="col1" /><col class="col2" /><col class="col1" /><col class="col2" />
<thead>
<tr>
<th>{L_USERNAME}</th>
<th>{L_JOINED}</th>
<th>{L_MARK}</th>
</tr>
<tr>
<th>{L_STATISTIC}</th>
<th>{L_VALUE}</th>
<th>{L_STATISTIC}</th>
<th>{L_VALUE}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN inactive -->
<!-- IF inactive.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<tr>
<td>{L_NUMBER_POSTS}: </td>
<td><b>{TOTAL_POSTS}</b></td>
<td>{L_POSTS_PER_DAY}: </td>
<td><b>{POSTS_PER_DAY}</b></td>
</tr>
<tr>
<td>{L_NUMBER_TOPICS}: </td>
<td><b>{TOTAL_TOPICS}</b></td>
<td>{L_TOPICS_PER_DAY}: </td>
<td><b>{TOPICS_PER_DAY}</b></td>
</tr>
<tr>
<td>{L_NUMBER_USERS}: </td>
<td><b>{TOTAL_USERS}</b></td>
<td>{L_USERS_PER_DAY}: </td>
<td><b>{USERS_PER_DAY}</b></td>
</tr>
<tr>
<td>{L_NUMBER_FILES}: </td>
<td><b>{TOTAL_FILES}</b></td>
<td>{L_FILES_PER_DAY}: </td>
<td><b>{FILES_PER_DAY}</b></td>
</tr>
<td><a href="{inactive.U_USER_ADMIN}">{inactive.USERNAME}</a></td>
<td>{inactive.DATE}</td>
<td>&nbsp;<input type="checkbox" name="mark[]" value="{inactive.USER_ID}" />&nbsp;</td>
</tr>
<!-- BEGINELSE -->
<tr>
<td colspan="3" style="text-align: center;">{L_NO_INACTIVE_USERS}</td>
</tr>
<!-- END inactive -->
<tr>
<td>{L_BOARD_STARTED}: </td>
<td><b>{START_DATE}</b></td>
<td>{L_AVATAR_DIR_SIZE}: </td>
<td><b>{AVATAR_DIR_SIZE}</b></td>
</tr>
<tr>
<td>{L_DATABASE_SIZE}: </td>
<td><b>{DBSIZE}</b></td>
<td>{L_UPLOAD_DIR_SIZE}: </td>
<td><b>{UPLOAD_DIR_SIZE}</b></td>
</tr>
<tr>
<td>{L_DATABASE_SERVER_INFO}: </td>
<td><b>{DATABASE_INFO}</b></td>
<td>{L_GZIP_COMPRESSION}: </td>
<td><b>{GZIP_COMPRESSION}</b></td>
</tr>
<!-- IF S_TOTAL_ORPHAN -->
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>{L_NUMBER_ORPHAN}: </td>
<td><b>{TOTAL_ORPHAN}</b></td>
</tr>
<!-- ENDIF -->
</tbody>
</table>
<!-- IF .inactive -->
<!-- IF S_ACTION_OPTIONS -->
<form id="stats" method="post" action="{U_ACTION}">
<fieldset class="quick">
<p><a href="javascript:marklist('inactive', 'mark', true);">{L_MARK_ALL}</a> &bull; <a href="javascript:marklist('inactive', 'mark', false);">{L_UNMARK_ALL}</a></p>
<select name="action">{S_INACTIVE_OPTIONS}</select>
<select name="action">{S_ACTION_OPTIONS}</select>
<input class="button2" type="submit" name="submit" value="{L_SUBMIT}" />
</fieldset>
</form>
<!-- ENDIF -->
</form>
<!-- IF .log -->
<h2>{L_ADMIN_LOG}</h2>
<p>{L_ADMIN_LOG_INDEX_EXPLAIN}</p>
<table cellspacing="1">
<thead>
<tr>
<th>{L_USERNAME}</th>
<th>{L_IP}</th>
<th>{L_TIME}</th>
<th>{L_ACTION}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN log -->
<!-- IF log.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td>{log.USERNAME}</td>
<td style="text-align: center;">{log.IP}</td>
<td style="text-align: center;">{log.DATE}</td>
<td>{log.ACTION}</td>
</tr>
<!-- END log -->
</tbody>
</table>
<br />
<div style="text-align: right;"><a href="{U_ADMIN_LOG}">&raquo; {L_VIEW_ADMIN_LOG}</a></div>
<!-- ENDIF -->
<!-- IF S_INACTIVE_USERS -->
<h2>{L_INACTIVE_USERS}</h2>
<p>{L_INACTIVE_USERS_EXPLAIN_INDEX}</p>
<div style="text-align: right;"><a href="{U_INACTIVE_USERS}">&raquo; {L_VIEW_INACTIVE_USERS}</a></div>
<table cellspacing="1">
<thead>
<tr>
<th>{L_USERNAME}</th>
<th>{L_JOINED}</th>
<th>{L_INACTIVE_DATE}</th>
<th>{L_INACTIVE_REASON}</th>
<th>{L_LAST_VISIT}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN inactive -->
<!-- IF inactive.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{inactive.U_USER_ADMIN}">{inactive.USERNAME}</a></td>
<td>{inactive.JOINED}</td>
<td>{inactive.INACTIVE_DATE}</td>
<td>{inactive.REASON}</td>
<td>{inactive.LAST_VISIT}</td>
</tr>
<!-- BEGINELSE -->
<tr>
<td colspan="5" style="text-align: center;">{L_NO_INACTIVE_USERS}</td>
</tr>
<!-- END inactive -->
</tbody>
</table>
<!-- ENDIF -->
<!-- ENDIF -->

View File

@@ -21,23 +21,28 @@
function display_modes(value)
{
// Remove select fields
// Find the old select tag
var item = document.getElementById('module_mode');
var j = 0;
// empty existing items
for (var i = 0; i <= item.options.length; i++)
{
item.options[i] = null;
}
// Create the new select tag
var new_node = document.createElement('select');
new_node.setAttribute('id', 'module_mode');
new_node.setAttribute('name', 'module_mode');
// Substitute it for the old one
item.parentNode.replaceChild(new_node, item);
// Reset the variable
item = document.getElementById('module_mode');
var j = 0;
<!-- BEGIN m_names -->
if (value == '{m_names.NAME}')
{
<!-- BEGIN modes -->
item.options[j] = new Option('{m_names.modes.VALUE}');
item.options[j].value = '{m_names.modes.OPTION}';
item.options[j] = new Option('{m_names.modes.A_VALUE}');
item.options[j].value = '{m_names.modes.A_OPTION}';
j++;
<!-- END modes -->
}
@@ -57,60 +62,60 @@
<p>{L_EDIT_MODULE_EXPLAIN}</p>
<!-- IF S_ERROR -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<form id="moduleedit" method="post" action="{U_EDIT_ACTION}">
<fieldset>
<legend>{L_GENERAL_OPTIONS}</legend>
<dl>
<dt><label for="module_langname">{L_MODULE_LANGNAME}:</label><br />
<span>{L_MODULE_LANGNAME_EXPLAIN}</span></dt>
<dd><input name="module_langname" type="text" id="module_langname" value="{MODULE_LANGNAME}" class="medium" /></dd>
</dl>
<dl>
<dt><label for="module_type">{L_MODULE_TYPE}:</label></dt>
<dd><select name="module_type" id="module_type" onchange="display_options(this.value);"><option value="category"<!-- IF S_IS_CAT --> selected="selected"<!-- ENDIF -->>{L_CATEGORY}</option><option value="module"<!-- IF not S_IS_CAT --> selected="selected"<!-- ENDIF -->>{L_MODULE}</option></select></dd>
</dl>
<dl>
<dt><label for="parent_id">{L_PARENT}:</label></dt>
<dd><select name="module_parent_id" id="parent_id">{S_CAT_OPTIONS}</select></dd>
</dl>
<hr />
<dl>
<dt><label for="module_enabled">{L_MODULE_ENABLED}:</label></dt>
<dd><label><input class="radio" type="radio" name="module_enabled" id="module_enabled" value="1"<!-- IF MODULE_ENABLED --> checked="checked"<!-- ENDIF --> /> {L_YES}</label>
<label><input class="radio" type="radio" name="module_enabled" value="0"<!-- IF not MODULE_ENABLED --> checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
</dl>
<div id="modoptions"<!-- IF S_IS_CAT --> style="display: none;"<!-- ENDIF -->>
<dl>
<dt><label for="module_langname">{L_MODULE_LANGNAME}:</label><br />
<span>{L_MODULE_LANGNAME_EXPLAIN}</span></dt>
<dd><input name="module_langname" type="text" id="module_langname" value="{MODULE_LANGNAME}" class="medium" /></dd>
</dl>
<dl>
<dt><label for="module_type">{L_MODULE_TYPE}:</label></dt>
<dd><select name="module_type" id="module_type" onchange="display_options(this.value);"><option value="category"<!-- IF S_IS_CAT --> selected="selected"<!-- ENDIF -->>{L_CATEGORY}</option><option value="module"<!-- IF not S_IS_CAT --> selected="selected"<!-- ENDIF -->>{L_MODULE}</option></select></dd>
</dl>
<dl>
<dt><label for="parent_id">{L_PARENT}:</label></dt>
<dd><select name="module_parent_id" id="parent_id">{S_CAT_OPTIONS}</select></dd>
</dl>
<hr />
<dl>
<dt><label for="module_enabled">{L_MODULE_ENABLED}:</label></dt>
<dd><label><input type="radio" class="radio" name="module_enabled" id="module_enabled" value="1"<!-- IF MODULE_ENABLED --> checked="checked"<!-- ENDIF --> /> {L_YES}</label>
<label><input type="radio" class="radio" name="module_enabled" value="0"<!-- IF not MODULE_ENABLED --> checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
</dl>
<div id="modoptions"<!-- IF S_IS_CAT --> style="display: none;"<!-- ENDIF -->>
<dl>
<dt><label for="module_display">{L_MODULE_DISPLAYED}:</label><br /><span>{L_MODULE_DISPLAYED_EXPLAIN}</span></dt>
<dd><label><input class="radio" type="radio" name="module_display" id="module_display" value="1"<!-- IF MODULE_DISPLAY --> checked="checked"<!-- ENDIF --> /> {L_YES}</label>
<label><input class="radio" type="radio" name="module_display" value="0"<!-- IF not MODULE_DISPLAY --> checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
<dd><label><input type="radio" class="radio" name="module_display" id="module_display" value="1"<!-- IF MODULE_DISPLAY --> checked="checked"<!-- ENDIF --> /> {L_YES}</label>
<label><input type="radio" class="radio" name="module_display" value="0"<!-- IF not MODULE_DISPLAY --> checked="checked"<!-- ENDIF --> /> {L_NO}</label></dd>
</dl>
<dl>
<dt><label for="module_name">{L_CHOOSE_MODULE}:</label><br />
<dt><label for="module_basename">{L_CHOOSE_MODULE}:</label><br />
<span>{L_CHOOSE_MODULE_EXPLAIN}</span></dt>
<dd><select name="module_name" id="module_name" onchange="display_modes(this.value);">{S_MODULE_NAMES}</select></dd>
<dd><select name="module_basename" id="module_basename" onchange="display_modes(this.value);">{S_MODULE_NAMES}</select></dd>
</dl>
<dl>
<dt><label for="module_mode">{L_CHOOSE_MODE}:</label><br />
<span>{L_CHOOSE_MODE_EXPLAIN}</span></dt>
<dd><select name="module_mode" id="module_mode">{S_MODULE_MODES}</select></dd>
</dl>
</div>
</fieldset>
</div>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input type="hidden" name="action" value="{ACTION}" />
<input type="hidden" name="m" value="{MODULE_ID}" />
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
@@ -122,10 +127,10 @@
<p>{L_ACP_MODULE_MANAGEMENT_EXPLAIN}</p>
<!-- IF S_ERROR -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<table cellspacing="1">
@@ -136,40 +141,43 @@
</tbody>
</table>
<!-- IF .modules -->
<table cellspacing="1">
<col class="row1" /><col class="row1" /><col class="row2" /><col class="row2" />
<tbody>
<!-- BEGIN modules -->
<tr>
<td style="width: 5%;">{modules.MODULE_IMAGE}</td>
<td style="width: 50%;"><a href="{modules.U_MODULE}">{modules.MODULE_TITLE}</a><!-- IF not modules.MODULE_DISPLAYED --> <span class="small">[{L_HIDDEN_MODULE}]</span><!-- ENDIF --></td>
<td style="width: 15%; white-space: nowrap; text-align: center; vertical-align: middle;"><a href="{modules.U_MOVE_UP}">{L_MOVE_UP}</a><br /><a href="{modules.U_MOVE_DOWN}">{L_MOVE_DOWN}</a></td>
<td style="width: 20%; white-space: nowrap; text-align: center; vertical-align: middle;">&nbsp;
<a href="{modules.U_EDIT}">{L_EDIT}</a> | <a href="{modules.U_DELETE}">{L_DELETE}</a> |
<!-- IF modules.MODULE_ENABLED --><a href="{modules.U_DISABLE}">{L_DISABLE}</a><!-- ELSE --><a href="{modules.U_ENABLE}">{L_ENABLE}</a><!-- ENDIF -->
&nbsp;</td>
</tr>
<!-- END modules -->
</tbody>
</table>
<!-- ENDIF -->
<!-- IF .modules -->
<table cellspacing="1">
<col class="row1" /><col class="row1" /><col class="row2" /><col class="row2" />
<tbody>
<!-- BEGIN modules -->
<tr>
<td style="width: 5%;">{modules.MODULE_IMAGE}</td>
<td><a href="{modules.U_MODULE}">{modules.MODULE_TITLE}</a><!-- IF not modules.MODULE_DISPLAYED --> <span class="small">[{L_HIDDEN_MODULE}]</span><!-- ENDIF --></td>
<td style="width: 15%; white-space: nowrap; text-align: center; vertical-align: middle;">&nbsp;<!-- IF modules.MODULE_ENABLED --><a href="{modules.U_DISABLE}">{L_DISABLE}</a><!-- ELSE --><a href="{modules.U_ENABLE}">{L_ENABLE}</a><!-- ENDIF -->&nbsp;</td>
<td style="width:90px; white-space: nowrap; text-align: right; vertical-align: middle;">
<!-- IF modules.S_FIRST_ROW && not modules.S_LAST_ROW -->
{ICON_MOVE_UP_DISABLED}
<a href="{modules.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF not modules.S_FIRST_ROW && not modules.S_LAST_ROW-->
<a href="{modules.U_MOVE_UP}">{ICON_MOVE_UP}</a>
<a href="{modules.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF modules.S_LAST_ROW && not modules.S_FIRST_ROW -->
<a href="{modules.U_MOVE_UP}">{ICON_MOVE_UP}</a>
{ICON_MOVE_DOWN_DISABLED}
<!-- ELSE -->
{ICON_MOVE_UP_DISABLED}
{ICON_MOVE_DOWN_DISABLED}
<!-- ENDIF -->
<a href="{modules.U_EDIT}">{ICON_EDIT}</a>
<a href="{modules.U_DELETE}">{ICON_DELETE}</a>
</td>
</tr>
<!-- END modules -->
</tbody>
</table>
<!-- ENDIF -->
<form id="module" method="post" action="{U_ACTION}">
<fieldset class="quick" style="float: left;">
<input type="hidden" name="action" value="add" />
<input type="hidden" name="module_parent_id" value="{PARENT_ID}" />
<input type="text" name="module_langname" />
<input class="button2" name="addmodule" type="submit" value="{L_CREATE_MODULE}" />
</fieldset>
</form>
<div class="clearfix">&nbsp;</div>
<form id="quick" method="post" action="{U_ACTION}">
<fieldset class="quick">
<fieldset class="quick" style="float: right;">
<input type="hidden" name="action" value="quickadd" />
<select name="quick_install">{S_INSTALL_OPTIONS}</select>
@@ -177,6 +185,20 @@
</fieldset>
</form>
<form id="module" method="post" action="{U_ACTION}">
<fieldset class="quick" style="float: left;">
<input type="hidden" name="action" value="add" />
<input type="hidden" name="module_parent_id" value="{PARENT_ID}" />
<input type="text" name="module_langname" maxlength="255" />
<input class="button2" name="addmodule" type="submit" value="{L_CREATE_MODULE}" />
</fieldset>
</form>
<div class="clearfix">&nbsp;</div>
<form id="mselect" method="post" action="{U_SEL_ACTION}">
<fieldset class="quick">
@@ -188,4 +210,4 @@
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -6,49 +6,22 @@
<script type="text/javascript">
<!--
var active_option = 'options0';
var active_pmask = '0';
var active_fmask = '0';
var active_cat = '0';
// Show/hide option panels
// value = suffix for ID to show
function swap_options(id)
{
if (id == active_option)
{
return;
}
// Hide active options and display container
dE(active_option, -1);
dE(id, 1);
var id = '000';
active_option = id;
}
// Mark all radio buttons in one panel
// id = table ID container, s = status ['y'/'u'/'n']
function mark_options(id, s)
{
var t = document.getElementById(id);
if (!t)
{
return;
}
var rb = t.getElementsByTagName('input');
for (var r = 0; r < rb.length; r++ )
{
if (rb[r].id.substr(rb[r].id.length-1) == s)
{
rb[r].checked = true;
}
}
}
var role_options = new Array();
<!-- IF S_ROLE_JS_ARRAY -->
{S_ROLE_JS_ARRAY}
<!-- ENDIF -->
//-->
</script>
<script type="text/javascript" src="style/permissions.js"></script>
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<h1>{L_TITLE}</h1>
@@ -62,21 +35,18 @@
<fieldset>
<legend>{L_ROLE_DETAILS}</legend>
<dl>
<dt><label for="role_name">{L_ROLE_NAME}:</label></dt>
<dd><input name="role_name" type="text" id="role_name" value="{ROLE_NAME}" /></dd>
</dl>
<dl>
<dt><label for="pre_select">{L_DISPLAY_FOR_GROUP}:</label><br /><span>{L_DISPLAY_FOR_GROUP_EXPLAIN}</span></dt>
<dd><select name="pre_select" id="pre_select" onchange="if(this.value=='custom'){dE('custom_group',1);}else{dE('custom_group',-1);}">{S_PRESELECT_OPTIONS}</select></dd>
<dd id="custom_group"<!-- IF not S_CUSTOM_GROUP_IDS --> style="display:none;"<!-- ENDIF -->>
<select name="role_group_ids[]" id="role_group_id" style="width: 100%;" multiple="multiple" size="10">{S_GROUP_OPTIONS}</select>
</dd>
</dl>
</fieldset>
<dl>
<dt><label for="role_name">{L_ROLE_NAME}:</label></dt>
<dd><input name="role_name" type="text" id="role_name" value="{ROLE_NAME}" maxlength="255" /></dd>
</dl>
<dl>
<dt><label for="role_description">{L_ROLE_DESCRIPTION}:</label><br /><span>{L_ROLE_DESCRIPTION_EXPLAIN}</span></dt>
<dd><textarea id="role_description" name="role_description" rows="3" cols="45">{ROLE_DESCRIPTION}</textarea></dd>
</dl>
<fieldset class="quick">
<p class="quick">
<input type="submit" class="button1" name="submit" value="{L_SUBMIT}" />
</p>
</fieldset>
<!-- IF S_DISPLAY_ROLE_MASK -->
@@ -95,62 +65,64 @@
<h1>{L_ACL_TYPE}</h1>
<fieldset class="quick">
<a href="javascript: mark_options('a_options', 'y');">{L_ALL_YES}</a> &bull; <a href="javascript: mark_options('a_options', 'n');">{L_ALL_NO}</a> &bull; <a href="javascript: mark_options('a_options', 'u');">{L_ALL_UNSET}</a>
<a href="#" onclick="mark_options('advanced00', 'y'); init_colours('00'); return false;">{L_ALL_YES}</a> &bull; <a href="#" onclick="mark_options('advanced00', 'n'); init_colours('00'); return false;">{L_ALL_NEVER}</a> &bull; <a href="#" onclick="mark_options('advanced00', 'u'); init_colours('00'); return false;">{L_ALL_NO}</a>
</fieldset>
<fieldset class="permissions">
<fieldset class="perm nolegend">
<table cellspacing="1" class="pmask">
<thead>
<tr>
<!-- BEGIN auth -->
<th>{auth.CAT_NAME}</th>
<!-- END auth -->
</tr>
</thead>
<tbody>
<tr>
<!-- BEGIN auth -->
<!-- IF auth.S_YES -->
<td class="preset_yes">
<!-- ELSEIF auth.S_NO -->
<td class="preset_no">
<!-- ELSEIF auth.S_UNSET -->
<td class="preset_unset">
<!-- ELSE -->
<td class="preset_custom">
<!-- ENDIF -->
<a href="javascript:swap_options('options{auth.S_ROW_COUNT}');"><span>&nbsp;</span></a></td>
<!-- END auth -->
</tr>
<tr class="row3">
<td colspan="{S_NUM_PERM_COLS}" id="a_options" style="vertical-align: top; text-align: left; width: 100%;">
<div id="advanced00">
<div class="perm_cat">
<ul>
<!-- BEGIN auth -->
<!-- IF auth.S_YES -->
<li class="perm_preset_yes<!-- IF auth.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab00{auth.S_ROW_COUNT}">
<!-- ELSEIF auth.S_NEVER -->
<li class="perm_preset_never<!-- IF auth.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab00{auth.S_ROW_COUNT}">
<!-- ELSEIF auth.S_NO -->
<li class="perm_preset_no<!-- IF auth.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab00{auth.S_ROW_COUNT}">
<!-- ELSE -->
<li class="perm_preset_custom<!-- IF auth.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab00{auth.S_ROW_COUNT}">
<!-- ENDIF -->
<a href="#" onclick="swap_options('0','0','{auth.S_ROW_COUNT}'); return false;"><span class="tabbg"><span class="colour"></span>{auth.CAT_NAME}</span></a></li>
<!-- END auth -->
</ul>
</div>
<!-- BEGIN auth -->
<table cellspacing="1" id="options{auth.S_ROW_COUNT}" class="type3" style="width: 100%; text-align: left;<!-- IF auth.S_FIRST_ROW --><!-- ELSE --> display: none;<!-- ENDIF -->">
<thead>
<tr>
<th scope="col" style="text-align: left; padding-left: 0;"><strong>{L_ACL_SETTING} [{auth.CAT_NAME}]</strong></th>
<th scope="col"><a href="javascript: mark_options('options{auth.S_ROW_COUNT}', 'y');">{L_ACL_YES}</a></th>
<th scope="col"><a href="javascript: mark_options('options{auth.S_ROW_COUNT}', 'u');">{L_ACL_UNSET}</a></th>
<th scope="col"><a href="javascript: mark_options('options{auth.S_ROW_COUNT}', 'n');">{L_ACL_NO}</a></th>
</tr>
</thead>
<tbody>
<!-- BEGIN mask -->
<!-- IF auth.mask.S_ROW_COUNT is even --><tr class="row4"><!-- ELSE --><tr class="row3"><!-- ENDIF -->
<th>{auth.mask.PERMISSION}</th>
<td class="unset"><input id="setting[{auth.mask.FIELD_NAME}]_y" name="setting[{auth.mask.FIELD_NAME}]" type="radio"<!-- IF auth.mask.S_YES --> checked="checked"<!-- ENDIF --> value="1" /></td>
<td class="unset"><input id="setting[{auth.mask.FIELD_NAME}]_u" name="setting[{auth.mask.FIELD_NAME}]" type="radio"<!-- IF auth.mask.S_UNSET --> checked="checked"<!-- ENDIF --> value="-1" /></td>
<td class="unset"><input id="setting[{auth.mask.FIELD_NAME}]_n" name="setting[{auth.mask.FIELD_NAME}]" type="radio"<!-- IF auth.mask.S_NO --> checked="checked"<!-- ENDIF --> value="0" /></td>
</tr>
<!-- END mask -->
</tbody>
</table>
<div class="perm_panel" id="options00{auth.S_ROW_COUNT}"<!-- IF auth.S_FIRST_ROW --><!-- ELSE --> style="display: none;"<!-- ENDIF -->>
<span class="corners-top"><span></span></span>
<div class="tablewrap">
<table id="table00{auth.S_ROW_COUNT}" cellspacing="1">
<colgroup>
<col class="permissions_name" />
<col class="permissions_yes" />
<col class="permissions_no" />
<col class="permissions_never" />
</colgroup>
<thead>
<tr>
<th class="name" scope="col"><strong>{L_ACL_SETTING}</strong></th>
<th class="value" scope="col"><a href="#" onclick="mark_options('options00{auth.S_ROW_COUNT}', 'y'); set_colours('00{auth.S_ROW_COUNT}', false, 'yes'); return false;">{L_ACL_YES}</a></th>
<th class="value" scope="col"><a href="#" onclick="mark_options('options00{auth.S_ROW_COUNT}', 'u'); set_colours('00{auth.S_ROW_COUNT}', false, 'no'); return false;">{L_ACL_NO}</a></th>
<th class="value" scope="col"><a href="#" onclick="mark_options('options00{auth.S_ROW_COUNT}', 'n'); set_colours('00{auth.S_ROW_COUNT}', false, 'never'); return false;">{L_ACL_NEVER}</a></th>
</tr>
</thead>
<tbody>
<!-- BEGIN mask -->
<!-- IF auth.mask.S_ROW_COUNT is even --><tr class="row4"><!-- ELSE --><tr class="row3"><!-- ENDIF -->
<th class="permission_name<!-- IF auth.mask.S_ROW_COUNT is even --> row4<!-- ELSE --> row3<!-- ENDIF -->">{auth.mask.PERMISSION}</th>
<td><label for="{auth.mask.FIELD_NAME}_y"><input onchange="set_colours('00{auth.S_ROW_COUNT}', false)" id="setting[{auth.mask.FIELD_NAME}]_y" name="setting[{auth.mask.FIELD_NAME}]" class="radio" type="radio"<!-- IF auth.mask.S_YES --> checked="checked"<!-- ENDIF --> value="1" /></label></td>
<td><label for="{auth.mask.FIELD_NAME}_u"><input onchange="set_colours('00{auth.S_ROW_COUNT}', false)" id="setting[{auth.mask.FIELD_NAME}]_u" name="setting[{auth.mask.FIELD_NAME}]" class="radio" type="radio"<!-- IF auth.mask.S_NO --> checked="checked"<!-- ENDIF --> value="-1" /></label></td>
<td><label for="{auth.mask.FIELD_NAME}_n"><input onchange="set_colours('00{auth.S_ROW_COUNT}', false)" id="setting[{auth.mask.FIELD_NAME}]_n" name="setting[{auth.mask.FIELD_NAME}]" class="radio" type="radio"<!-- IF auth.mask.S_NEVER --> checked="checked"<!-- ENDIF --> value="0" /></label></td>
</tr>
<!-- END mask -->
</tbody>
</table>
</div>
<span class="corners-bottom"><span></span></span>
</div>
<!-- END auth -->
</td>
</tr>
</tbody>
</table>
</div>
</fieldset>
@@ -172,43 +144,50 @@
<form id="acp_roles" method="post" action="{U_ACTION}">
<table cellspacing="1">
<col class="col1" /><col class="col1" /><col class="col2" /><col class="col2" /><col class="col2" />
<col class="col2" /><col class="col2" /><col class="col1" /><col class="col2" /><col class="col2" />
<thead>
<tr>
<th style="width: 50%">{L_ROLE_NAME}</th>
<th>{L_DISPLAY_FOR_GROUP}</th>
<th colspan="3">{L_OPTIONS}</th>
<th>{L_ROLE_NAME}</th>
<th colspan="2">{L_OPTIONS}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN roles -->
<tr>
<td style="vertical-align: top;"><b>{roles.NAME}</b></td>
<td style="vertical-align: top;">
<!-- IF roles.S_GROUP -->
<!-- BEGIN groups -->
<a href="{roles.groups.U_GROUP}">{roles.groups.GROUP_NAME}</a><br />
<!-- END groups -->
<!-- ELSE -->
{L_EVERY_USER_GROUP}
<!-- ENDIF -->
<td style="vertical-align: top;"><b>{roles.ROLE_NAME}</b>
<!-- IF roles.ROLE_DESCRIPTION --><br /><span>{roles.ROLE_DESCRIPTION}</span><!-- ENDIF -->
</td>
<td style="width: 30%; text-align: center; vertical-align: top; white-space: nowrap;"><!-- IF roles.U_DISPLAY_ITEMS --><a href="{roles.U_DISPLAY_ITEMS}">{L_VIEW_ASSIGNED_ITEMS}</a><!-- ELSE -->{L_VIEW_ASSIGNED_ITEMS}<!-- ENDIF --></td>
<td style="width: 80px; text-align: right; vertical-align: top; white-space: nowrap;">
<!-- IF roles.S_FIRST_ROW && not roles.S_LAST_ROW -->
{ICON_MOVE_UP_DISABLED}
<a href="{roles.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF not roles.S_FIRST_ROW && not roles.S_LAST_ROW-->
<a href="{roles.U_MOVE_UP}">{ICON_MOVE_UP}</a>
<a href="{roles.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF roles.S_LAST_ROW && not roles.S_FIRST_ROW -->
<a href="{roles.U_MOVE_UP}">{ICON_MOVE_UP}</a>
{ICON_MOVE_DOWN_DISABLED}
<!-- ELSE -->
{ICON_MOVE_UP_DISABLED}
{ICON_MOVE_DOWN_DISABLED}
<!-- ENDIF -->
<a href="{roles.U_EDIT}" title="{L_EDIT_ROLE}">{ICON_EDIT}</a>
<a href="{roles.U_REMOVE}" title="{L_REMOVE_ROLE}">{ICON_DELETE}</a>
</td>
<td style="vertical-align: top; white-space: nowrap;"><a href="{roles.U_EDIT}">{L_EDIT_ROLE}</a></td>
<td style="vertical-align: top; white-space: nowrap;"><!-- IF roles.U_DISPLAY_ITEMS --><a href="{roles.U_DISPLAY_ITEMS}">{L_VIEW_ASSIGNED_ITEMS}</a><!-- ELSE -->{L_VIEW_ASSIGNED_ITEMS}<!-- ENDIF --></td>
<td style="vertical-align: top; white-space: nowrap;"><a href="{roles.U_REMOVE}">{L_REMOVE_ROLE}</a></td>
</tr>
<!-- END roles -->
</tbody>
</table>
<fieldset class="quick">
{L_CREATE_ROLE}: <input type="text" name="role_name" value="" /><!-- IF S_ROLE_OPTIONS --> <select name="options_from"><option value="0" selected="selected">{L_CREATE_ROLE_FROM}</option>{S_ROLE_OPTIONS}</select><!-- ENDIF --> <input class="button2" type="submit" name="add" value="{L_SUBMIT}" /><br />
{L_CREATE_ROLE}: <input type="text" name="role_name" value="" maxlength="255" /><!-- IF S_ROLE_OPTIONS --> <select name="options_from"><option value="0" selected="selected">{L_CREATE_ROLE_FROM}</option>{S_ROLE_OPTIONS}</select><!-- ENDIF --> <input class="button2" type="submit" name="add" value="{L_SUBMIT}" /><br />
</fieldset>
</form>
<!-- IF S_DISPLAY_ROLE_MASK -->
<a name="assigned_to"></a>
<h1>{L_ROLE_ASSIGNED_TO}</h1>
@@ -217,8 +196,6 @@
<!-- ENDIF -->
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -6,9 +6,7 @@
<h1>{L_ACP_PERMISSIONS}</h1>
<p>{L_ACP_PERMISSIONS_EXPLAIN}</p>
Here, an introductionary text will be placed, explaining permissions and the several menu items. Also adding quick links to this page.
{L_ACP_PERMISSIONS_EXPLAIN}
<!-- ENDIF -->
@@ -32,7 +30,7 @@
<dl>
<dt><label for="forum">{L_LOOK_UP_FORUM}:</label></dt>
<dd><select id="forum" name="forum_id[]"<!-- IF S_FORUM_MULTIPLE --> multiple="multiple"<!-- ENDIF --> size="10">{S_FORUM_OPTIONS}</select></dd>
<!-- IF S_FORUM_ALL --><dd><input type="checkbox" name="all_forums" value="1" />&nbsp; {L_ALL_FORUMS}</dd><!-- ENDIF -->
<!-- IF S_FORUM_ALL --><dd><input type="checkbox" class="radio" name="all_forums" value="1" />&nbsp; {L_ALL_FORUMS}</dd><!-- ENDIF -->
</dl>
</fieldset>
@@ -63,23 +61,6 @@
</form>
<form id="select_single_forum" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_LOOK_UP_FORUM}</legend>
<dl>
<dt><label for="forum">{L_LOOK_UP_FORUM}:</label></dt>
<dd><select id="forum" name="forum_id[]">{S_FORUM_OPTIONS}</select></dd>
</dl>
</fieldset>
<fieldset class="quick">
{S_HIDDEN_FIELDS}
<input type="submit" name="submit" value="{L_SUBMIT}" class="button1" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- ELSEIF S_SELECT_USER and S_CAN_SELECT_USER -->
@@ -91,8 +72,8 @@
<dl>
<dt><label for="username">{L_FIND_USERNAME}:</label></dt>
<dd><input class="medium" type="text" id="username" name="username[]" /></dd>
<dd>[ <a href="#" onclick="window.open('{U_FIND_USERNAME}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;">{L_FIND_USERNAME}</a> ]</dd>
<dd class="full" style="text-align: left;"><input type="checkbox" id="anonymous" name="user_id[]" value="{ANONYMOUS_USER_ID}" /> &nbsp;{L_SELECT_ANONYMOUS}</dd>
<dd>[ <a href="{U_FIND_USERNAME}" onclick="find_username(); return false;">{L_FIND_USERNAME}</a> ]</dd>
<dd class="full" style="text-align: left;"><input type="checkbox" class="radio" id="anonymous" name="user_id[]" value="{ANONYMOUS_USER_ID}" /> &nbsp;{L_SELECT_ANONYMOUS}</dd>
</dl>
</fieldset>
@@ -136,14 +117,13 @@
<legend>{L_MANAGE_USERS}</legend>
<dl>
<dd class="full"><select style="width: 100%;" name="user_id[]" multiple="multiple" size="5">{S_DEFINED_USER_OPTIONS}</select></dd>
<dd class="full" style="text-align: right;"><input type="checkbox" name="all_users" value="1" />&nbsp; {L_ALL_USERS}</dd>
<!-- IF S_ALLOW_ALL_SELECT --><dd class="full" style="text-align: right;"><input type="checkbox" class="radio" name="all_users" value="1" />&nbsp; {L_ALL_USERS}</dd><!-- ENDIF -->
</dl>
</fieldset>
<fieldset class="quick">
{S_HIDDEN_FIELDS}
<input class="button2" type="submit" name="action[delete]" value="{L_DELETE}" /> &nbsp;
<input class="button1" type="submit" name="submit_edit_options" value="{L_SET_PERMISSIONS}" />
<input type="submit" class="button2" name="action[delete]" value="{L_REMOVE_PERMISSIONS}" style="width: 46% !important;" /> &nbsp; <input class="button1" type="submit" name="submit_edit_options" value="{L_EDIT_PERMISSIONS}" style="width: 46% !important;" />
</fieldset>
</form>
@@ -155,14 +135,13 @@
<p>{L_USERNAMES_EXPLAIN}</p>
<dl>
<dd class="full"><textarea id="username" name="usernames" rows="5" cols="5" style="width: 100%; height: 60px;"></textarea></dd>
<dd class="full" style="text-align: left;"><input type="checkbox" id="anonymous" name="user_id[]" value="{ANONYMOUS_USER_ID}" /> &nbsp;{L_SELECT_ANONYMOUS}</dd>
<dd class="full" style="text-align: left;"><div style="float: right;">[ <a href="{U_FIND_USERNAME}" onclick="find_username(); return false;">{L_FIND_USERNAME}</a> ]</div><input type="checkbox" class="radio" id="anonymous" name="user_id[]" value="{ANONYMOUS_USER_ID}" /> &nbsp;{L_SELECT_ANONYMOUS}</dd>
</dl>
</fieldset>
<fieldset class="quick">
{S_HIDDEN_FIELDS}
<input class="button2" type="submit" name="find_username" value="{L_FIND_USERNAME}" onclick="window.open('{U_FIND_USERNAME}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;" /> &nbsp;
<input class="button1" type="submit" name="submit_add_options" value="{L_SET_PERMISSIONS}" />
<input class="button1" type="submit" name="submit_add_options" value="{L_ADD_PERMISSIONS}" />
</fieldset>
</form>
@@ -183,14 +162,13 @@
<legend>{L_MANAGE_GROUPS}</legend>
<dl>
<dd class="full"><select style="width: 100%;" name="group_id[]" multiple="multiple" size="5">{S_DEFINED_GROUP_OPTIONS}</select></dd>
<dd class="full" style="text-align: right;"><input type="checkbox" name="all_groups" value="1" />&nbsp; {L_ALL_GROUPS}</dd>
<!-- IF S_ALLOW_ALL_SELECT --><dd class="full" style="text-align: right;"><input type="checkbox" class="radio" name="all_groups" value="1" />&nbsp; {L_ALL_GROUPS}</dd><!-- ENDIF -->
</dl>
</fieldset>
<fieldset class="quick">
{S_HIDDEN_FIELDS}
<input class="button2" type="submit" name="action[delete]" value="{L_DELETE}" />&nbsp;
<input class="button1" type="submit" name="submit_edit_options" value="{L_SET_PERMISSIONS}" />
<input class="button2" type="submit" name="action[delete]" value="{L_REMOVE_PERMISSIONS}" style="width: 46% !important;" /> &nbsp; <input class="button1" type="submit" name="submit_edit_options" value="{L_EDIT_PERMISSIONS}" style="width: 46% !important;" />
</fieldset>
</form>
@@ -206,7 +184,7 @@
<fieldset class="quick">
{S_HIDDEN_FIELDS}
<input type="submit" class="button1" name="submit_add_options" value="{L_SET_PERMISSIONS}" />
<input type="submit" class="button1" name="submit_add_options" value="{L_ADD_PERMISSIONS}" />
</fieldset>
</form>
@@ -244,8 +222,8 @@
<dl>
<dt><label for="username">{L_FIND_USERNAME}:</label></dt>
<dd><input type="text" id="username" name="username[]" /></dd>
<dd>[ <a href="#" onclick="window.open('{U_FIND_USERNAME}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;">{L_FIND_USERNAME}</a> ]</dd>
<dd class="full" style="text-align: left;"><input type="checkbox" id="anonymous" name="user_id[]" value="{ANONYMOUS_USER_ID}" /> &nbsp;{L_SELECT_ANONYMOUS}</dd>
<dd>[ <a href="{U_FIND_USERNAME}" onclick="find_username(); return false;">{L_FIND_USERNAME}</a> ]</dd>
<dd class="full" style="text-align: left;"><input type="checkbox" class="radio" id="anonymous" name="user_id[]" value="{ANONYMOUS_USER_ID}" /> &nbsp;{L_SELECT_ANONYMOUS}</dd>
</dl>
</fieldset>
@@ -283,8 +261,8 @@
<fieldset>
<legend>{L_LOOK_UP_GROUP}</legend>
<dl>
<dt><label for="group">{L_LOOK_UP_GROUP}:</label></dt>
<dd><select name="group_id[]" id="group">{S_ADD_GROUP_OPTIONS}</select></dd>
<dt><label for="group_select">{L_LOOK_UP_GROUP}:</label></dt>
<dd><select name="group_id[]" id="group_select">{S_ADD_GROUP_OPTIONS}</select></dd>
<dd>&nbsp;</dd>
</dl>
</fieldset>
@@ -343,6 +321,14 @@
<br /><br />
<!-- include tooltip file -->
<script type="text/javascript" src="style/tooltip.js"></script>
<script type="text/javascript">
<!--
window.onload = function(){enable_tooltips_select('set_permissions', '{LA_ROLE_DESCRIPTION}', 'role')};
//-->
</script>
<form id="set_permissions" method="post" action="{U_ACTION}">
{S_HIDDEN_FIELDS}
@@ -351,14 +337,9 @@
<br /><br />
<fieldset class="quick" style="float: left;">
{L_PERMISSION_APPLIED_TO_ALL}<br />
<a href="javascript:marklist('set_permissions', 'inherit', true);">{L_MARK_ALL}</a> &bull; <a href="javascript:marklist('set_permissions', 'inherit', false);">{L_UNMARK_ALL}</a>
</fieldset>
<fieldset class="quick" style="float: right;">
<input class="button1" type="submit" name="action[apply_all_permissions]" value="{L_APPLY_ALL_PERMISSIONS}" />
<input class="button2" type="reset" name="cancel" value="{L_RESET}" />
<input class="button2" type="button" name="cancel" value="{L_RESET}" onclick="document.forms['set_permissions'].reset(); init_colours(active_pmask + active_fmask);" />
</fieldset>
<br /><br />

View File

@@ -7,6 +7,7 @@
<p>{L_ACP_PHP_INFO_EXPLAIN}</p>
<div style="overflow: auto; width: 99%;">
{PHPINFO}
{PHPINFO}
</div>
<!-- INCLUDE overall_footer.html -->

View File

@@ -11,10 +11,10 @@
<p>{L_EXPLAIN}</p>
<!-- IF ERROR_MSG -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<form id="add_profile_field" method="post" action="{U_ACTION}">
@@ -23,43 +23,86 @@
<fieldset>
<legend>{L_TITLE}</legend>
<dl>
<dt><label>{L_FIELD_TYPE}:</label><br /><span>{L_FIELD_TYPE_EXPLAIN}</span></dt>
<dd><b>{FIELD_TYPE}</b></dd>
</dl>
<dl>
<dt><label for="field_ident">{L_FIELD_IDENT}:</label><br /><span>{L_FIELD_IDENT_EXPLAIN}</span></dt>
<dd><input class="medium" type="text" id="field_ident" name="field_ident" value="{FIELD_IDENT}" /></dd>
</dl>
<dl>
<dt><label>{L_FIELD_TYPE}:</label><br /><span>{L_FIELD_TYPE_EXPLAIN}</span></dt>
<dd><b>{FIELD_TYPE}</b></dd>
</dl>
<!-- IF S_EDIT_MODE -->
<dl>
<dt><label>{L_FIELD_IDENT}:</label><br /><span>{L_FIELD_IDENT_EXPLAIN}</span></dt>
<dd><input type="hidden" name="field_ident" value="{FIELD_IDENT}" /><strong>{FIELD_IDENT}</strong></dd>
</dl>
<!-- ELSE -->
<dl>
<dt><label for="field_ident">{L_FIELD_IDENT}:</label><br /><span>{L_FIELD_IDENT_EXPLAIN}</span></dt>
<dd><input class="medium" type="text" id="field_ident" name="field_ident" value="{FIELD_IDENT}" /></dd>
</dl>
<!-- ENDIF -->
<dl>
<dt><label for="field_no_view">{L_DISPLAY_PROFILE_FIELD}:</label><br /><span>{L_DISPLAY_PROFILE_FIELD_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="field_no_view" name="field_no_view" value="0"<!-- IF not S_FIELD_NO_VIEW --> checked="checked"<!-- ENDIF --> /> {L_YES} <input type="radio" class="radio" name="field_no_view" value="1"<!-- IF S_FIELD_NO_VIEW --> checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_VISIBILITY_OPTION}</legend>
<dl>
<dt><label for="field_option_none">{L_DISPLAY_AT_PROFILE}:</label><br /><span>{L_DISPLAY_AT_PROFILE_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="field_option_none" name="field_option" value="none"<!-- IF not S_SHOW_ON_REG and not S_FIELD_REQUIRED and not S_FIELD_HIDE --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="field_show_on_reg">{L_DISPLAY_AT_REGISTER}:</label><br /><span>{L_DISPLAY_AT_REGISTER_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="field_show_on_reg" name="field_option" value="field_show_on_reg"<!-- IF S_SHOW_ON_REG --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="field_required">{L_REQUIRED_FIELD}:</label><br /><span>{L_REQUIRED_FIELD_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="field_required" name="field_option" value="field_required"<!-- IF S_FIELD_REQUIRED --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="field_hide">{L_HIDE_PROFILE_FIELD}:</label><br /><span>{L_HIDE_PROFILE_FIELD_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" id="field_hide" name="field_option" value="field_hide"<!-- IF S_FIELD_HIDE --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
</fieldset>
<!-- IF S_EDIT_MODE -->
<fieldset class="quick">
<input class="button1" type="submit" name="save" value="{L_SAVE}" />
</fieldset>
<!-- ENDIF -->
<fieldset>
<legend>{L_LANG_SPECIFIC}</legend>
<dl>
<dt><label for="lang_name">{L_USER_FIELD_NAME}:</label></dt>
<dd><input class="medium" type="text" id="lang_name" name="lang_name" value="{LANG_NAME}" /></dd>
</dl>
<dl>
<dt><label for="lang_explain">{L_FIELD_DESCRIPTION}:</label><br /><span>{L_FIELD_DESCRIPTION_EXPLAIN}</span></dt>
<dd><textarea id="lang_explain" name="lang_explain" rows="3" cols="80">{LANG_EXPLAIN}</textarea></dd>
</dl>
<!-- IF S_TEXT or S_STRING -->
<dl>
<dt><label for="lang_name">{L_USER_FIELD_NAME}:</label></dt>
<dd><input class="medium" type="text" id="lang_name" name="lang_name" value="{LANG_NAME}" /></dd>
<dt><label for="lang_default_value">{L_DEFAULT_VALUE}:</label><br /><span>{L_DEFAULT_VALUE_EXPLAIN}</span></dt>
<dd><!-- IF S_STRING --><input class="medium" type="text" id="lang_default_value" name="lang_default_value" value="{LANG_DEFAULT_VALUE}" /><!-- ELSE --><textarea id="lang_default_value" name="lang_default_value" rows="5" cols="80">{LANG_DEFAULT_VALUE}</textarea><!-- ENDIF --></dd>
</dl>
<!-- ENDIF -->
<!-- IF S_BOOL or S_DROPDOWN -->
<dl>
<dt><label for="lang_explain">{L_FIELD_DESCRIPTION}:</label><br /><span>{L_FIELD_DESCRIPTION_EXPLAIN}</span></dt>
<dd><textarea id="lang_explain" name="lang_explain" rows="3" cols="80">{LANG_EXPLAIN}</textarea></dd>
<dt><label for="lang_options">{L_ENTRIES}:</label>
<!-- IF S_EDIT_MODE and S_DROPDOWN -->
<br /><span>{L_EDIT_DROPDOWN_LANG_EXPLAIN}</span>
<!-- ELSE -->
<br /><span>{L_LANG_OPTIONS_EXPLAIN}</span>
<!-- ENDIF -->
</dt>
<!-- IF S_DROPDOWN -->
<dd><textarea id="lang_options" name="lang_options" rows="5" cols="80">{LANG_OPTIONS}</textarea></dd>
<!-- ELSE -->
<dd><input class="medium" id="lang_options" name="lang_options[0]" value="{FIRST_LANG_OPTION}" /> {L_FIRST_OPTION}</dd>
<dd><input class="medium" name="lang_options[1]" value="{SECOND_LANG_OPTION}" /> {L_SECOND_OPTION}</dd>
<!-- ENDIF -->
</dl>
<!-- IF S_TEXT or S_STRING -->
<dl>
<dt><label for="lang_default_value">{L_DEFAULT_VALUE}:</label><br /><span>{L_DEFAULT_VALUE_EXPLAIN}</span></dt>
<dd><!-- IF S_STRING --><input class="medium" type="text" id="lang_default_value" name="lang_default_value" value="{LANG_DEFAULT_VALUE}" /><!-- ELSE --><textarea id="lang_default_value" name="lang_default_value" rows="5" cols="80">{LANG_DEFAULT_VALUE}</textarea><!-- ENDIF --></dd>
</dl>
<!-- ENDIF -->
<!-- IF S_BOOL or S_DROPDOWN -->
<dl>
<dt><label for="lang_options">{L_ENTRIES}:</label><br /><span>{L_LANG_OPTIONS_EXPLAIN}</span></dt>
<!-- IF S_DROPDOWN -->
<dd><textarea id="lang_options" name="lang_options" rows="5" cols="80">{LANG_OPTIONS}</textarea></dd>
<!-- ELSE -->
<dd><input class="medium" id="lang_options" name="lang_options[0]" value="{FIRST_LANG_OPTION}" /> {L_FIRST_OPTION}</dd>
<dd><input class="medium" name="lang_options[1]" value="{SECOND_LANG_OPTION}" /> {L_SECOND_OPTION}</dd>
<!-- ENDIF -->
</dl>
<!-- ENDIF -->
<!-- ENDIF -->
</fieldset>
<fieldset class="quick">
@@ -71,22 +114,6 @@
<fieldset>
<legend>{L_TITLE}</legend>
<dl>
<dt><label for="field_required">{L_REQUIRED_FIELD}:</label><br /><span>{L_REQUIRED_FIELD_EXPLAIN}</span></dt>
<dd><input type="checkbox" id="field_required" name="field_required" value="1"<!-- IF S_FIELD_REQUIRED --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="field_show_on_reg">{L_DISPLAY_AT_REGISTRATION}:</label></dt>
<dd><input type="checkbox" id="field_show_on_reg" name="field_show_on_reg" value="1"<!-- IF S_SHOW_ON_REG --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="field_hide">{L_HIDE_PROFILE_FIELD}:</label><br /><span>{L_HIDE_PROFILE_FIELD_EXPLAIN}</span></dt>
<dd><input type="checkbox" id="field_hide" name="field_hide" value="1"<!-- IF S_FIELD_HIDE --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<dl>
<dt><label for="field_no_view">{L_EXCLUDE_FROM_VIEW}:</label><br /><span>{L_EXCLUDE_FROM_VIEW_EXPLAIN}</span></dt>
<dd><input type="checkbox" id="field_no_view" name="field_no_view" value="1"<!-- IF S_FIELD_NO_VIEW --> checked="checked"<!-- ENDIF --> /></dd>
</dl>
<!-- BEGIN option -->
<dl>
<dt><label>{option.TITLE}:</label><!-- IF option.EXPLAIN --><br /><span>{option.EXPLAIN}</span><!-- ENDIF --></dt>
@@ -101,25 +128,9 @@
<fieldset class="quick" style="float: right">
{S_HIDDEN_FIELDS}
<input class="button1" type="submit" name="update" value="{L_UPDATE_PREVIEW}" />&nbsp;
<input class="button1" type="submit" name="next" value="{L_NEXT}" />
</fieldset>
<br /><br />
<fieldset>
<legend>{L_PREVIEW_PROFILE_FIELD}</legend>
<!-- IF USER_ERROR --><p style="color: red;">{USER_ERROR}</p><!-- ELSE --><p style="color: green;">{L_EVERYTHING_OK}</p><!-- ENDIF -->
<dl>
<dt><label>{PREVIEW_LANG_NAME}:</label><!-- IF PREVIEW_LANG_EXPLAIN --><br /><span>{PREVIEW_LANG_EXPLAIN}</span><!-- ENDIF --></dt>
<dd>{PREVIEW_FIELD}</dd>
</dl>
</fieldset>
<fieldset class="quick">
<input class="button1" type="submit" name="update" value="{L_SUBMIT}" />
</fieldset>
<!-- ELSEIF S_STEP_THREE -->
<!-- BEGIN options -->
@@ -150,14 +161,20 @@
<!-- ELSE -->
<h1>{L_ACP_CUSTOM_PROFILE_FIELDS}</h1>
<!-- IF S_NEED_EDIT -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{L_CUSTOM_FIELDS_NOT_TRANSLATED}</p>
</div>
<!-- ENDIF -->
<table cellspacing="1">
<thead>
<tr>
<th>{L_FIELD_IDENT}</th>
<th>{L_FIELD_TYPE}</th>
<th colspan="3">{L_OPTIONS}</th>
<th>{L_REORDER}</th>
<th colspan="2">{L_OPTIONS}</th>
</tr>
</thead>
<tbody>
@@ -166,10 +183,27 @@
<td>{fields.FIELD_IDENT}</td>
<td>{fields.FIELD_TYPE}</td>
<td><a href="{fields.U_ACTIVATE_DEACTIVATE}">{fields.L_ACTIVATE_DEACTIVATE}</a></td>
<td><a href="{fields.U_EDIT}"><!-- IF fields.S_NEED_EDIT --><span style="color:red">{L_EDIT}</span><!-- ELSE -->{L_EDIT}<!-- ENDIF --></a></td>
<td><a href="{fields.U_DELETE}">{L_DELETE}</a></td>
<td style="text-align: center;"><a href="{fields.U_MOVE_UP}">{L_MOVE_UP}</a> | <a href="{fields.U_MOVE_DOWN}">{L_MOVE_DOWN}</a></td>
<td style="text-align: center;"><a href="{fields.U_ACTIVATE_DEACTIVATE}">{fields.L_ACTIVATE_DEACTIVATE}</a><!-- IF fields.S_NEED_EDIT --> | <a href="{fields.U_TRANSLATE}" style="color: red;">{L_TRANSLATE}</a><!-- ENDIF --></td>
<td style="width: 80px; text-align: right; white-space: nowrap;">
<!-- IF fields.S_FIRST_ROW && not fields.S_LAST_ROW -->
{ICON_MOVE_UP_DISABLED}
<a href="{fields.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF not fields.S_FIRST_ROW && not fields.S_LAST_ROW-->
<a href="{fields.U_MOVE_UP}">{ICON_MOVE_UP}</a>
<a href="{fields.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF fields.S_LAST_ROW && not fields.S_FIRST_ROW -->
<a href="{fields.U_MOVE_UP}">{ICON_MOVE_UP}</a>
{ICON_MOVE_DOWN_DISABLED}
<!-- ENDIF -->
<!-- IF not fields.S_NEED_EDIT -->
<a href="{fields.U_EDIT}">{ICON_EDIT}</a>
<!-- ELSE -->
{ICON_EDIT_DISABLED}
<!-- ENDIF -->
<a href="{fields.U_DELETE}">{ICON_DELETE}</a>
</td>
</tr>
<!-- END fields -->
</tbody>
@@ -179,11 +213,12 @@
<fieldset class="quick">
<input class="small" type="text" name="field_ident" /> <select name="field_type">{S_TYPE_OPTIONS}</select>
<input class="button1" type="submit" name="create" value="{L_CREATE_NEW_FIELD}" />
<input class="button1" type="submit" name="submit" value="{L_CREATE_NEW_FIELD}" />
<input type="hidden" name="create" value="1" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -25,7 +25,7 @@
</tr>
<!-- BEGINELSE -->
<tr>
<td class="row3" style="text-align: center;">{L_NO_PRUNE}</td>
<td colspan="3" class="row3" style="text-align: center;">{L_NO_PRUNE}</td>
</tr>
<!-- END pruned -->
</tbody>
@@ -44,10 +44,10 @@
<dl>
<dd class="full"><select name="f[]" multiple="multiple" size="5">{S_FORUM_OPTIONS}</select></dd>
</dl>
</fieldset>
<fieldset class="quick">
<p class="quick">
<input class="button1" type="submit" value="{L_LOOK_UP_FORUM}" />
</p>
</fieldset>
</form>
@@ -88,16 +88,16 @@
<dt><label for="sticky">{L_PRUNE_STICKY}:</label></dt>
<dd><input type="radio" class="radio" name="prune_sticky" value="1" /> {L_YES} &nbsp; <input type="radio" class="radio" id="sticky" name="prune_sticky" value="0" checked="checked" /> {L_NO}</dd>
</dl>
</fieldset>
<fieldset class="quick">
<p class="quick">
{S_HIDDEN_FIELDS}
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -43,15 +43,15 @@
<dt><label for="deactivate">{L_DEACTIVATE_DELETE}:</label><br /><span>{L_DEACTIVATE_DELETE_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="action" value="delete" /> {L_DELETE_USERS}&nbsp;&nbsp;<input type="radio" class="radio" id="deactivate" name="action" value="deactivate" checked="checked" /> {L_DEACTIVATE}</dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input type="hidden" name="prune" value="1" />
<input class="button1" type="submit" id="update" name="update" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -8,7 +8,6 @@
<script type="text/javascript">
<!--
function update_image(newimage)
{
document.getElementById('image').src = (newimage) ? "{RANKS_PATH}/" + newimage : "./images/spacer.gif";
@@ -27,7 +26,7 @@
<legend>{L_ACP_RANKS}</legend>
<dl>
<dt><label for="title">{L_RANK_TITLE}:</label></dt>
<dd><input name="title" type="text" id="title" value="{RANK_TITLE}" /></dd>
<dd><input name="title" type="text" id="title" value="{RANK_TITLE}" maxlength="255" /></dd>
</dl>
<dl>
<dt><label for="rank_image">{L_RANK_IMAGE}:</label></dt>
@@ -44,13 +43,13 @@
<dd><input name="min_posts" type="text" id="min_posts" maxlength="10" value="{MIN_POSTS}" /></dd>
</dl>
</div>
</fieldset>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input type="hidden" name="action" value="save" />
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
@@ -61,6 +60,10 @@
<p>{L_ACP_RANKS_EXPLAIN}</p>
<form id="acp_ranks" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_ACP_MANAGE_RANKS}</legend>
<table cellspacing="1">
<thead>
<tr>
@@ -76,20 +79,19 @@
<td style="text-align: center;"><!-- IF ranks.S_RANK_IMAGE --><img src="{ranks.RANK_IMAGE}" alt="{ranks.RANK_TITLE}" title="{ranks.RANK_TITLE}" /><!-- ELSE -->&nbsp; - &nbsp;<!-- ENDIF --></td>
<td style="text-align: center;">{ranks.RANK_TITLE}</td>
<td style="text-align: center;"><!-- IF ranks.S_SPECIAL_RANK -->&nbsp; - &nbsp;<!-- ELSE -->{ranks.MIN_POSTS}<!-- ENDIF --></td>
<td style="text-align: center;"><a href="{ranks.U_EDIT}">{L_EDIT}</a> | <a href="{ranks.U_DELETE}">{L_DELETE}</a></td>
<td style="text-align: center;"><a href="{ranks.U_EDIT}">{ICON_EDIT}</a> <a href="{ranks.U_DELETE}">{ICON_DELETE}</a></td>
</tr>
<!-- END ranks -->
</tbody>
</table>
<form id="acp_ranks" method="post" action="{U_ACTION}">
<fieldset class="quick">
<p class="quick">
<input class="button2" name="add" type="submit" value="{L_ADD_RANK}" />
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -17,24 +17,42 @@
</div>
<!-- ENDIF -->
<!-- IF not S_TRANSLATED -->
<h3>{L_AVAILABLE_TITLES}</h3>
<p>{S_AVAILABLE_TITLES}</p>
<!-- ENDIF -->
<form id="acp_reasons" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_TITLE}</legend>
<p><!-- IF S_TRANSLATED -->{L_IS_TRANSLATED}<!-- ELSE -->{L_IS_NOT_TRANSLATED}<!-- ENDIF --></p>
<dl>
<dt><label for="reason_title">{L_REASON_TITLE}:</label></dt>
<dd><input name="reason_title" type="text" id="reason_title" value="{REASON_TITLE}" /></dd>
</dl>
<dl>
<dt><label for="reason_description">{L_REASON_DESCRIPTION}:</label></dt>
<dd><textarea name="reason_description" id="reason_description" rows="8">{REASON_DESCRIPTION}</textarea></dd>
</dl>
</fieldset>
<p><!-- IF S_TRANSLATED -->{L_IS_TRANSLATED_EXPLAIN}<!-- ELSE -->{L_IS_NOT_TRANSLATED_EXPLAIN}<!-- ENDIF --></p>
<dl>
<dt><label for="reason_title">{L_REASON_TITLE}:</label></dt>
<dd><input name="reason_title" type="text" id="reason_title" value="{REASON_TITLE}" maxlength="255" /></dd>
</dl>
<!-- IF S_TRANSLATED -->
<dl>
<dt>{L_REASON_TITLE_TRANSLATED}</dt>
<dd>{TRANSLATED_TITLE}</dd>
</dl>
<!-- ENDIF -->
<dl>
<dt><label for="reason_description">{L_REASON_DESCRIPTION}:</label></dt>
<dd><textarea name="reason_description" id="reason_description" rows="8">{REASON_DESCRIPTION}</textarea></dd>
</dl>
<!-- IF S_TRANSLATED -->
<dl>
<dt>{L_REASON_DESC_TRANSLATED}</dt>
<dd>{TRANSLATED_DESCRIPTION}</dd>
</dl>
<!-- ENDIF -->
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
@@ -45,48 +63,64 @@
<p>{L_ACP_REASONS_EXPLAIN}</p>
<!-- IF reasons -->
<table cellspacing="1">
<col class="row1" /><col class="row1" /><col class="row2" />
<thead>
<tr>
<th>{L_REASON}</th>
<th>{L_USED_IN_REPORTS}</th>
<th>{L_OPTIONS}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN reasons -->
<tr>
<td>
<i style="float: right; font-size: .9em;"><!-- IF reasons.S_TRANSLATED -->{L_IS_TRANSLATED}<!-- ELSE -->{L_IS_NOT_TRANSLATED}<!-- ENDIF --></i>
<strong>{reasons.REASON_TITLE}<!-- IF reasons.S_OTHER_REASON --> *<!-- ENDIF --></strong>
<br /><span>{reasons.REASON_DESCRIPTION}</span>
</td>
<td style="width: 100px;">{reasons.REASON_COUNT}</td>
<td style="width: 15%; text-align: right; white-space: nowrap;">
<!-- IF not reasons.S_FIRST_ROW --><a href="{reasons.U_MOVE_UP}"><img src="images/icon_up.gif" alt="{L_MOVE_UP}" title="{L_MOVE_UP}" width="16" height="16" /></a> <!-- ENDIF -->
<!-- IF not reasons.S_LAST_ROW --><a href="{reasons.U_MOVE_DOWN}"><img src="images/icon_down.gif" alt="{L_MOVE_DOWN}" title="{L_MOVE_DOWN}" width="16" height="16" /></a> <!-- ENDIF -->
<a href="{reasons.U_EDIT}"><img src="images/icon_edit.gif" alt="{L_EDIT}" title="{L_EDIT}" width="16" height="16" /></a>
<!-- IF reasons.U_DELETE --><a href="{reasons.U_DELETE}"><img src="images/icon_delete.gif" alt="{L_DELETE}" title="{L_DELETE}" width="16" height="16" /></a><!-- ENDIF -->
</td>
</tr>
<!-- END reasons -->
</tbody>
</table>
<!-- ENDIF -->
<form id="reasons" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_ACP_REASONS}</legend>
<fieldset class="quick">
<!-- IF .reasons -->
<table cellspacing="1">
<col class="row1" /><col class="row1" /><col class="row2" />
<thead>
<tr>
<th>{L_REASON}</th>
<th>{L_USED_IN_REPORTS}</th>
<th>{L_OPTIONS}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN reasons -->
<tr>
<td>
<i style="float: right; font-size: .9em;"><!-- IF reasons.S_TRANSLATED -->{L_IS_TRANSLATED}<!-- ELSE -->{L_IS_NOT_TRANSLATED}<!-- ENDIF --></i>
<strong>{reasons.REASON_TITLE}<!-- IF reasons.S_OTHER_REASON --> *<!-- ENDIF --></strong>
<br /><span>{reasons.REASON_DESCRIPTION}</span>
</td>
<td style="width: 100px;">{reasons.REASON_COUNT}</td>
<td style="width: 80px; text-align: right; white-space: nowrap;">
<!-- IF reasons.S_FIRST_ROW && not reasons.S_LAST_ROW -->
{ICON_MOVE_UP_DISABLED}
<a href="{reasons.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF not reasons.S_FIRST_ROW && not reasons.S_LAST_ROW-->
<a href="{reasons.U_MOVE_UP}">{ICON_MOVE_UP}</a>
<a href="{reasons.U_MOVE_DOWN}">{ICON_MOVE_DOWN}</a>
<!-- ELSEIF reasons.S_LAST_ROW && not reasons.S_FIRST_ROW -->
<a href="{reasons.U_MOVE_UP}">{ICON_MOVE_UP}</a>
{ICON_MOVE_DOWN_DISABLED}
<!-- ENDIF -->
<a href="{reasons.U_EDIT}">{ICON_EDIT}</a>
<!-- IF reasons.U_DELETE -->
<a href="{reasons.U_DELETE}">{ICON_DELETE}</a>
<!-- ELSE -->
{ICON_DELETE_DISABLED}
<!-- ENDIF -->
</td>
</tr>
<!-- END reasons -->
</tbody>
</table>
<!-- ENDIF -->
<p class="quick">
<input type="hidden" name="action" value="add" />
<input type="text" name="reason_title" />
<input class="button2" name="addreason" type="submit" value="{L_ADD_NEW_REASON}" />
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -3,21 +3,25 @@
<a name="maincontent"></a>
<!-- IF S_SETTINGS -->
<h1>{L_ACP_SEARCH_SETTINGS}</h1>
<h1>{L_ACP_SEARCH_SETTINGS}</h1>
<p>{L_ACP_SEARCH_SETTINGS_EXPLAIN}</p>
<p>{L_ACP_SEARCH_SETTINGS_EXPLAIN}</p>
<form id="acp_search" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_GENERAL_SEARCH_SETTINGS}</legend>
<form id="acp_search" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_GENERAL_SEARCH_SETTINGS}</legend>
<dl>
<dt><label for="load_search">{L_YES_SEARCH}:</label><br /><span>{L_YES_SEARCH_EXPLAIN}</span></dt>
<dd><input type="radio" id="load_search" name="config[load_search]" value="1"<!-- IF S_YES_SEARCH --> checked="checked"<!-- ENDIF --> class="radio" />&nbsp;{L_YES}&nbsp;&nbsp;<input type="radio" name="config[load_search]" value="0"<!-- IF not S_YES_SEARCH --> checked="checked"<!-- ENDIF --> class="radio" />&nbsp;{L_NO}</dd>
<dd><input type="radio" class="radio" id="load_search" name="config[load_search]" value="1"<!-- IF S_YES_SEARCH --> checked="checked"<!-- ENDIF --> />&nbsp;{L_YES}&nbsp;&nbsp;<input type="radio" class="radio" name="config[load_search]" value="0"<!-- IF not S_YES_SEARCH --> checked="checked"<!-- ENDIF --> />&nbsp;{L_NO}</dd>
</dl>
<dl>
<dt><label for="search_interval">{L_SEARCH_INTERVAL}:</label><br /><span>{L_SEARCH_INTERVAL_EXPLAIN}</span></dt>
<dd><input id="search_interval" type="text" size="4" maxlength="4" name="config[search_interval]" value="{SEARCH_INTERVAL}" /></dd>
<dd><input id="search_interval" type="text" size="4" maxlength="4" name="config[search_interval]" value="{SEARCH_INTERVAL}" /> {L_SECONDS}</dd>
</dl>
<dl>
<dt><label for="search_anonymous_interval">{L_SEARCH_GUEST_INTERVAL}:</label><br /><span>{L_SEARCH_GUEST_INTERVAL_EXPLAIN}</span></dt>
<dd><input id="search_anonymous_interval" type="text" size="4" maxlength="4" name="config[search_anonymous_interval]" value="{SEARCH_GUEST_INTERVAL}" /> {L_SECONDS}</dd>
</dl>
<dl>
<dt><label for="limit_search_load">{L_LIMIT_SEARCH_LOAD}:</label><br /><span>{L_LIMIT_SEARCH_LOAD_EXPLAIN}</span></dt>
@@ -29,91 +33,112 @@
</dl>
<dl>
<dt><label for="search_store_results">{L_SEARCH_STORE_RESULTS}:</label><br /><span>{L_SEARCH_STORE_RESULTS_EXPLAIN}</span></dt>
<dd><input id="search_store_results" type="text" size="4" maxlength="6" name="config[search_store_results]" value="{SEARCH_STORE_RESULTS}" /></dd>
<dd><input id="search_store_results" type="text" size="4" maxlength="6" name="config[search_store_results]" value="{SEARCH_STORE_RESULTS}" /> {L_SECONDS}</dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_SEARCH_TYPE}</legend>
</fieldset>
<fieldset>
<legend>{L_SEARCH_TYPE}</legend>
<dl>
<dt><label for="search_type">{L_SEARCH_TYPE}:</label><br /><span>{L_SEARCH_TYPE_EXPLAIN}</span></dt>
<dd><select id="search_type" name="config[search_type]">{S_SEARCH_TYPES}</select></dd>
</dl>
</fieldset>
</fieldset>
<!-- BEGIN backend -->
<fieldset>
<legend>{backend.NAME}</legend>
<!-- BEGIN backend -->
{backend.SETTINGS}
</fieldset>
<!-- END backend -->
<fieldset>
<legend>{backend.NAME}</legend>
{backend.SETTINGS}
</fieldset>
<fieldset class="submit-buttons">
<input class="button1" type="submit" id="submit" name="submit" value="Submit" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="Reset" />
</fieldset>
<!-- END backend -->
</form>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
</form>
<!-- ELSEIF S_INDEX -->
<script language="javascript" type="text/javascript">
<!--
function popup_progress_bar(progress_type)
{
close_waitscreen = 0;
window.open('{U_PROGRESS_BAR}&type=' + progress_type, '_index', 'HEIGHT=200,resizable=yes,scrollbars=no,WIDTH=400');
}
//-->
</script>
<h1>{L_ACP_SEARCH_INDEX}</h1>
<script type="text/javascript">
<!--
<p>{L_ACP_SEARCH_INDEX_EXPLAIN}</p>
/**
* Popup search progress bar
*/
function popup_progress_bar(progress_type)
{
close_waitscreen = 0;
window.open('{UA_PROGRESS_BAR}&type=' + progress_type, '_index', 'HEIGHT=240,resizable=yes,scrollbars=no,WIDTH=400');
}
//-->
</script>
<!-- IF S_CONTINUE_INDEXING -->
<a href="{U_CONTINUE_INDEXING}" onclick="javascript:popup_progress_bar('{S_CONTINUE_INDEXING}');">{L_CONTINUE}</a>
<h1>{L_ACP_SEARCH_INDEX}</h1>
<p>{L_ACP_SEARCH_INDEX_EXPLAIN}</p>
<!-- IF S_CONTINUE_INDEXING -->
<a href="{U_CONTINUE_INDEXING}" onclick="popup_progress_bar('{S_CONTINUE_INDEXING}');">{L_CONTINUE}</a>
<p>{L_CONTINUE_EXPLAIN}</p>
<!-- ELSE -->
<!-- BEGIN backend -->
<!-- IF backend.S_STATS -->
<form id="acp_search_index_{backend.NAME}" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
{backend.S_HIDDEN_FIELDS}
<legend>{L_INDEX_STATS}: {backend.L_NAME} <!-- IF backend.S_ACTIVE -->({L_ACTIVE}) <!-- ENDIF --></legend>
<table cellspacing="1">
<caption>{backend.L_NAME} <!-- IF backend.S_ACTIVE -->({L_ACTIVE}) <!-- ENDIF --></caption>
<col class="col1" /><col class="col2" /><col class="col1" /><col class="col2" />
<thead>
<tr>
<th>{L_STATISTIC}</th>
<th>{L_VALUE}</th>
<th>{L_STATISTIC}</th>
<th>{L_VALUE}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN data -->
<tr>
<td>{backend.data.STATISTIC_1}:</td>
<td>{backend.data.VALUE_1}</td>
<td>{backend.data.STATISTIC_2}<!-- IF backend.data.STATISTIC_2 -->:<!-- ENDIF --></td>
<td>{backend.data.VALUE_2}</td>
</tr>
<!-- END data -->
</tbody>
</table>
<!-- ENDIF -->
<p class="quick">
<!-- IF backend.S_INDEXED -->
<input class="button2" type="submit" name="action[delete]" value="{L_DELETE_INDEX}" onclick="popup_progress_bar('delete');" />
<!-- ELSE -->
<input class="button2" type="submit" name="action[create]" value="{L_CREATE_INDEX}" onclick="popup_progress_bar('create');" />
<!-- ENDIF -->
</p>
</fieldset>
</form>
<!-- END backend -->
<!-- ENDIF -->
<p>{L_CONTINUE_EXPLAIN}</p>
<!-- ELSE -->
<!-- BEGIN backend -->
<!-- IF backend.S_STATS -->
<table cellspacing="1">
<caption>&raquo; {L_INDEX_STATS}: {backend.L_NAME} <!-- IF backend.S_ACTIVE -->({L_ACTIVE}) <!-- ENDIF --></caption>
<col class="col1" /><col class="col2" /><col class="col1" /><col class="col2" />
<thead>
<tr>
<th>{L_STATISTIC}</th>
<th>{L_VALUE}</th>
<th>{L_STATISTIC}</th>
<th>{L_VALUE}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN data -->
<tr>
<td>{backend.data.STATISTIC_1}:</td>
<td>{backend.data.VALUE_1}</td>
<td>{backend.data.STATISTIC_2}<!-- IF backend.data.STATISTIC_2 -->:<!-- ENDIF --></td>
<td>{backend.data.VALUE_2}</td>
</tr>
<!-- END data -->
</tbody>
</table>
<!-- ENDIF -->
<form id="acp_search_index_{backend.NAME}" method="post" action="{U_ACTION}">
{backend.S_HIDDEN_FIELDS}
<fieldset class="quick">
<!-- IF backend.S_INDEXED -->
<input class="button2" type="submit" name="action[delete]" value="{L_DELETE_INDEX}" onclick="javascript:popup_progress_bar('delete')" />
<!-- ELSE -->
<input class="button2" type="submit" name="action[create]" value="{L_CREATE_INDEX}" onclick="javascript:popup_progress_bar('create')" />
<!-- ENDIF -->
</fieldset>
</form>
<!-- END backend -->
<!-- ENDIF -->
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -11,7 +11,7 @@
<p>{L_EXPLAIN}</p>
<form id="acp_styles" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_TITLE}</legend>
<dl>
@@ -22,10 +22,10 @@
<dt><label for="new_id">{L_REPLACE}:</label><br /><span>{L_REPLACE_EXPLAIN}</span></dt>
<dd><select name="new_id">{S_REPLACE_OPTIONS}</select></dd>
</dl>
</fieldset>
<fieldset class="quick">
<p class="quick">
<input class="button1" type="submit" name="update" value="{L_DELETE}" />
</p>
</fieldset>
</form>
@@ -37,77 +37,407 @@
<h1>{L_TITLE}</h1>
<p>{L_EXPLAIN}</p>
<script language="javascript" type="text/javascript" defer="defer">
<!--
function update_image(newimage)
{
document.newimg.src = (newimage) ? "../styles/{NAME}/imageset/" + newimage : "images/no_image.png";
}
<!-- IF SUCCESS -->
<div class="successbox">
<p>{L_IMAGESET_UPDATED}</p>
</div>
<!-- ENDIF -->
<!-- IF ERROR -->
<div class="errorbox">
<p>{L_NO_IMAGE}</p>
</div>
<!-- ENDIF -->
<script type="text/javascript" defer="defer">
<!--
function update_image(newimage)
{
document.getElementById('newimg').src = (newimage) ? "../styles/{NAME}/imageset/" + newimage : "images/no_image.png";
}
//-->
</script>
<form method="post" action="{U_ACTION}"><table width="95%" cellspacing="1" cellpadding="1" border="0" align="center">
<tr>
<td align="right">{L_SELECT_IMAGE}: <select name="imgname" onchange="this.form.submit(); ">
<!-- BEGIN category -->
<form method="post" action="{U_ACTION}">
<fieldset class="quick" style="text-align: left;">
<legend>{L_SELECT_IMAGE}</legend>
{L_SELECT_IMAGE}: <select name="imgname" onchange="this.form.submit();">
<!-- BEGIN category -->
<option class="sep" value="">{category.NAME}</option>
<!-- BEGIN images --><option value="{category.images.VALUE}"<!-- IF category.images.SELECTED--> selected="selected"<!-- ENDIF -->>{category.images.TEXT}</option>
<!-- END images -->
<!-- END category -->
</select>&nbsp; <input class="btnlite" type="submit" value="{L_SELECT}" tabindex="100" /></td>
</tr>
<tr>
<td><table class="bg" width="100%" cellspacing="1" cellpadding="4" border="0" align="center">
<tr>
<th colspan="2">{L_EDIT_IMAGESET}</th>
</tr>
<!-- IF SUCCESS -->
<tr>
<td class="row1" colspan="2" align="center"><span style="color: green">{L_IMAGESET_UPDATED}</span><br /></td>
</tr>
</select>&nbsp; <input class="button1" type="submit" value="{L_SELECT}" tabindex="100" />
</fieldset>
<fieldset>
<legend>{L_EDIT_IMAGESET}</legend>
<dl>
<dt><label>{L_CURRENT_IMAGE}:</label></dt>
<dd><img src="<!-- IF IMAGE_REQUEST -->{IMAGE_REQUEST}<!-- ELSE -->images/no_image.png<!-- ENDIF -->" alt="" /></dd>
</dl>
<dl>
<dt><label>{L_SELECTED_IMAGE}:</label></dt>
<dd><img src="images/no_image.png" id="newimg" alt="" /></dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_IMAGE}</legend>
<dl>
<dt><label for="imgpath">{L_IMAGE}:</label></dt>
<dd><select id="imgpath" name="imgpath" onchange="update_image(this.options[selectedIndex].value);"><option value=""<!-- IF not IMAGE_SELECT--> selected="selected"<!-- ENDIF -->>{L_NO_IMAGE}</option>
<!-- BEGIN imagesetlist -->
<option class="sep" value=""><!-- IF imagesetlist.TYPE -->{L_LOCALISED_IMAGES}<!-- ELSE -->{L_GLOBAL_IMAGES}<!-- ENDIF --></option>
<!-- BEGIN images -->
<option value="{imagesetlist.images.VALUE}"<!-- IF imagesetlist.images.SELECTED--> selected="selected"<!-- ENDIF -->>{imagesetlist.images.TEXT}</option>
<!-- END images -->
<!-- END imagesetlist -->
</select>
</dd>
</dl>
<dl>
<dt><label for="imgsize">{L_INCLUDE_DIMENSIONS}:</label><br /><span>{L_DIMENSIONS_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="imgsize" id="imgsize" value="1"<!-- IF IMAGE_SIZE --> checked="checked"<!-- ENDIF --> /> {L_YES}&nbsp;&nbsp;<input type="radio" class="radio" name="imgsize" value="0"<!-- IF not IMAGE_SIZE --> checked="checked"<!-- ENDIF --> /> {L_NO}</dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" name="update" value="{L_SUBMIT}" />&nbsp;&nbsp;<input class="button2" type="reset" value="{L_RESET}" />
</fieldset>
</form>
<!-- ELSEIF S_EDIT_TEMPLATE or S_EDIT_THEME -->
<script type="text/javascript" defer="defer">
<!--
function append_text_rows(form_name, value)
{
url = document.getElementById(form_name).action;
var_start = url.indexOf('&text_rows=');
if (var_start == -1)
{
document.getElementById(form_name).action = url + "&text_rows=" + value;
}
else
{
url_start = url.substring(0, var_start + 1);
var_end = url.substring(var_start + 1).indexOf('&');
if (var_end == -1)
{
document.getElementById(form_name).action = url_start + "text_rows=" + value;
}
else
{
document.getElementById(form_name).action = url_start + url.substring(var_end + var_start + 2) + "&text_rows=" + value;
}
}
}
//-->
</script>
<!-- IF S_EDIT_TEMPLATE -->
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<h1>{L_EDIT_TEMPLATE}</h1>
<p>{L_EDIT_TEMPLATE_EXPLAIN}</p>
<p>{L_SELECTED_TEMPLATE}: <b>{SELECTED_TEMPLATE}</b></p>
<form id="acp_styles" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_SELECT_TEMPLATE}</legend>
<dl>
<dt><label for="template_file">{L_TEMPLATE_FILE}:</label></dt>
<dd><select id="template_file" name="template_file" onchange="if (this.options[this.selectedIndex].value != '') this.form.submit();">{S_TEMPLATES}</select> <input class="button2" type="submit" value="{L_SELECT}" /></dd>
</dl>
</fieldset>
</form>
<!-- IF TEMPLATE_FILE -->
<script type="text/javascript" defer="defer">
<!--
function change_editor_height(height)
{
editor = document.getElementById('template_data');
editor.rows = Math.max(5, Math.min(height, 999));
append_text_rows('acp_styles', height);
append_text_rows('acp_template', height);
}
function append_text_rows(form_name, value)
{
url = document.getElementById(form_name).action;
var_start = url.indexOf('&text_rows=');
if (var_start == -1)
{
document.getElementById(form_name).action = url + "&text_rows=" + value;
}
else
{
url_start = url.substring(0, var_start + 1);
var_end = url.substring(var_start + 1).indexOf('&');
if (var_end == -1)
{
document.getElementById(form_name).action = url_start + "text_rows=" + value;
}
else
{
document.getElementById(form_name).action = url_start + url.substring(var_end + var_start + 2) + "&text_rows=" + value;
}
}
}
//-->
</script>
<form id="acp_template" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_TEMPLATE_EDITOR}</legend>
<dl>
<dt><label>{L_SELECTED_TEMPLATE_FILE}:</label></dt>
<dd>{TEMPLATE_FILE}</dd>
</dl>
<dl>
<dt><label for="text_rows">{L_TEMPLATE_EDITOR_HEIGHT}:</label></dt>
<dd><input id="text_rows" type="text" maxlength="3" value="{TEXT_ROWS}" /> <input class="button2" type="button" name="update" onclick="change_editor_height(this.form.text_rows.value);" value="{L_UPDATE}" /></dd>
</dl>
<textarea id="template_data" name="template_data" style="font-family:'Courier New', monospace;font-size:9pt;line-height:125%;width:100%;" cols="80" rows="{TEXT_ROWS}">{TEMPLATE_DATA}</textarea>
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
{S_HIDDEN_FIELDS}
<input class="button1" id="save" type="submit" name="save" value="{L_SUBMIT}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- ELSEIF S_EDIT_THEME -->
<script type="text/javascript">
<!--
function change_editor_height(height)
{
editor = document.getElementById('css_data');
editor.rows = Math.max(5, Math.min(height, 999));
append_text_rows('acp_styles', height);
append_text_rows('acp_theme', height);
append_text_rows('acp_custom_class', height);
}
//-->
</script>
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<h1>{L_EDIT_THEME}</h1>
<p>{L_EDIT_THEME_EXPLAIN}</p>
<p>{L_SELECTED_THEME}: <strong>{SELECTED_THEME}</strong></p>
<!-- IF S_SHOWCSS -->
<h3>{L_SHOW_CSS_NOTE}</h3>
<p>{L_SHOW_CSS_EXPLAIN}</p>
<!-- ENDIF -->
<form id="acp_styles" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_SELECT_CLASS}</legend>
<dl>
<dt><label for="css_class">{L_SELECT_CLASS}:</label></dt>
<dd><select id="css_class" name="css_class" onchange="if (this.options[this.selectedIndex].value != '') this.form.submit();">{S_CLASSES}</select></dd>
<dd><input class="button1" type="submit" id="select_class" name="select_class" value="{L_SELECT}" /></dd>
</dl>
<!-- IF S_CLASS -->
<dl>
<dt><label>{L_SELECTED_CLASS}:</label></dt>
<dd>{S_CLASS}</dd>
</dl>
<!-- ENDIF -->
</fieldset>
</form>
<!-- IF S_CLASS -->
<form id="acp_theme" method="post" action="{U_ACTION}">
<!-- IF S_SHOWCSS -->
<fieldset>
<legend>{L_THEME_EDITOR}</legend>
<dl>
<dt><label for="text_rows">{L_THEME_EDITOR_HEIGHT}:</label></dt>
<dd><input id="text_rows" type="text" maxlength="3" value="{TEXT_ROWS}" /> <input class="button1" type="button" name="update" onclick="change_editor_height(this.form.text_rows.value);" value="{L_UPDATE}" /></dd>
</dl>
<textarea id="css_data" name="css_data" style="font-family:'Courier New', monospace;font-size:9pt;line-height:125%;width:100%;" cols="80" rows="{TEXT_ROWS}">{CSS_DATA}</textarea>
</fieldset>
<!-- ELSE -->
<fieldset>
<legend>{L_BACKGROUND}</legend>
<dl>
<dt><label for="background_color">{L_BACKGROUND_COLOUR}:</label><br /><span>{L_CSS_COLOUR_EXPLAIN}</span></dt>
<dd><input id="background_color" name="background_color" type="text" value="{BACKGROUND_COLOR}" size="6" />&nbsp;&nbsp;<span>[ <a href="#" onclick="swatch('background_color'); return false">{L_COLOUR_SWATCH}</a> ]</span></dd>
</dl>
<dl>
<dt><label for="backround_image">{L_BACKGROUND_IMAGE}:</label></dt>
<dd><select id="background_image" name="background_image">{S_BACKGROUND_IMAGE}</select></dd>
</dl>
<dl>
<dt><label for="background_repeat">{L_BACKGROUND_REPEAT}:</label></dt>
<dd><select id="background_repeat" name="background_repeat">{S_BACKGROUND_REPEAT}</select></dd>
</dl>
</fieldset>
<fieldset>
<legend>{L_FOREGROUND}</legend>
<dl>
<dt><label for="color">{L_FONT_COLOUR}:</label><br /><span>{L_CSS_COLOUR_EXPLAIN}</span></dt>
<dd><input id="color" name="color" type="text" value="{COLOR}" size="6" />&nbsp;&nbsp;<span>[ <a href="#" onclick="swatch('color'); return false">{L_COLOUR_SWATCH}</a> ]</span></dd>
</dl>
<dl>
<dt><label for="font_family">{L_FONT_FACE}:</label><br /><span>{L_FONT_FACE_EXPLAIN}</span></dt>
<dd><input id="font_family" name="font_family" type="text" value="{FONT_FAMILY}" size="40" maxlength="255" /></dd>
</dl>
<dl>
<dt><label for="font_size">{L_FONT_SIZE}:</label></dt>
<dd><input id="font_size" name="font_size" type="text" value="{FONT_SIZE}" size="5" maxlength="5" /> <select id="font_size_unit" name="font_size_unit">{S_FONT_SIZE_UNITS}</select></dd>
</dl>
<dl>
<dt><label for="font_weight">{L_BOLD}:</label></dt>
<dd><input id="font_weight" type="radio" class="radio" name="font_weight" value="bold"<!-- IF FONT_WEIGHT eq "bold" --> checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="font_weight" value="none"<!-- IF FONT_WEIGHT eq "none" --> checked="checked"<!-- ENDIF --> /> {L_NO} &nbsp; <input type="radio" class="radio" name="font_weight" value=""<!-- IF not FONT_WEIGHT --> checked="checked"<!-- ENDIF --> /> {L_UNSET}</dd>
</dl>
<dl>
<dt><label for="font_style">{L_ITALIC}:</label></dt>
<dd><input id="font_style" type="radio" class="radio" name="font_style" value="italic"<!-- IF FONT_STYLE eq "italic" --> checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="font_style" value="none"<!-- IF FONT_STYLE eq "none" --> checked="checked"<!-- ENDIF --> /> {L_NO} &nbsp; <input type="radio" class="radio" name="font_style" value=""<!-- IF not FONT_STYLE --> checked="checked"<!-- ENDIF --> /> {L_UNSET}</dd>
</dl>
<dl>
<dt><label for="text_decoration">{L_UNDERLINE}:</label></dt>
<dd><input id="text_decoration" type="radio" class="radio" name="text_decoration" value="underline"<!-- IF TEXT_DECORATION eq "underline" --> checked="checked"<!-- ENDIF --> /> {L_YES} &nbsp; <input type="radio" class="radio" name="text_decoration" value="none"<!-- IF TEXT_DECORATION eq "none" --> checked="checked"<!-- ENDIF --> /> {L_NO} &nbsp; <input type="radio" class="radio" name="text_decoration" value=""<!-- IF not TEXT_DECORATION --> checked="checked"<!-- ENDIF --> /> {L_UNSET}</dd>
</dl>
<dl>
<dt><label for="line_height">{L_LINE_SPACING}</label></dt>
<dd><input id="line_height" name="line_height" type="text" value="{LINE_HEIGHT}" size="3" maxlength="3" /> <select id="line_height_unit" name="line_height_unit">{S_LINE_HEIGHT_UNITS}</select></dd>
</dl>
</fieldset>
<!-- ENDIF -->
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
{S_HIDDEN_FIELDS}
<input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" />&nbsp;
<!-- IF S_SHOWCSS -->
<input class="button2" type="submit" id="hidecss" name="hidecss" value="{L_HIDE_CSS}" />&nbsp;
<!-- ELSE -->
<input class="button2" type="submit" id="showcss" name="showcss" value="{L_SHOW_CSS}" />&nbsp;
<!-- ENDIF -->
<!-- IF ERROR -->
<tr>
<td class="row1" colspan="2" align="center"><span style="color: red">{L_NO_IMAGE}</span><br /></td>
</tr>
<!-- ENDIF -->
<tr>
<td class="row1" colspan="2" align="center"><table width="100%" cellspacing="2" cellpadding="2" border="0">
<tr>
<td width="50%" align="center"><img src="<!-- IF IMAGE_REQUEST neq '' -->{IMAGE_REQUEST}<!-- ELSE -->images/no_image.png<!-- ENDIF -->"/></td>
<td width="50%" align="center"><img src="images/no_image.png" name="newimg" /></td>
</tr>
<tr>
<td class="gensmall" align="center">{L_CURRENT_IMAGE}</td>
<td class="gensmall" align="center">{L_SELECTED_IMAGE}</td>
</tr>
</table></td>
</tr>
<tr>
<th width="40%">{L_IMAGE_PARAMETER}</th>
<th>{L_IMAGE_VALUE}</th>
</tr>
<tr>
<td class="row1" width="40%"><b>{L_IMAGE}: </b></td>
<td class="row2"><select name="imgpath" onchange="update_image(this.options[selectedIndex].value);"><option value=""<!-- IF not IMAGE_SELECT--> selected="selected"<!-- ENDIF -->>{L_NONE}</option>
<!-- BEGIN imagesetlist -->
<option class="sep" value=""><!-- IF imagesetlist.TYPE -->{L_LOCALISED_IMAGES}<!-- ELSE -->{L_GLOBAL_IMAGES}<!-- ENDIF --></option>
<!-- BEGIN images -->
<option value="{imagesetlist.images.VALUE}"<!-- IF imagesetlist.images.SELECTED--> selected="selected"<!-- ENDIF -->>{imagesetlist.images.TEXT}</option>
<!-- END images -->
<!-- END imagesetlist -->
</select></td>
</tr>
<tr>
<td class="row1" width="40%"><b>{L_DIMENSIONS}: </b><br /><span class="gensmall">{L_DIMENSIONS_EXPLAIN}</span></td>
<td class="row2"><input type="radio" name="imgsize" value="1"<!-- IF IMAGE_SIZE --> checked="checked"<!-- ENDIF --> /> {L_YES}&nbsp;&nbsp;<input type="radio" name="imgsize" value="0"<!-- IF not IMAGE_SIZE --> checked="checked"<!-- ENDIF --> /> {L_NO}</td>
</tr>
<tr>
<td class="cat" colspan="2" align="center"><input class="btnmain" type="submit" name="update" value="{L_SUBMIT}" />&nbsp;&nbsp;<input class="btnmain" type="reset" value="{L_RESET}" /></td>
</tr>
</table></td>
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</fieldset>
</form>
<!-- ENDIF -->
<br />
<h1>{L_CUSTOM_CLASS}</h1>
<p>{L_CUSTOM_CLASS_EXPLAIN}</p>
<form id="acp_custom_class" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_CUSTOM_CLASS}</legend>
<dl>
<dt><label for="custom_class">{L_CSS_CLASS_NAME}:</label></dt>
<dd><input id="custom_class" name="custom_class" type="text" value="" maxlength="40" size="40" /></dd>
</dl>
<p class="quick">
<input class="button1" type="submit" id="add_custom" name="add_custom" value="{L_SUBMIT}" />
</p>
</fieldset>
</form>
<!-- ENDIF -->
<!-- ELSEIF S_CACHE -->
<script type="text/javascript">
<!--
function viewsource(url)
{
window.open(url, '_source', 'HEIGHT=550,resizable=yes,scrollbars=yes,WIDTH=750');
return false;
}
//-->
</script>
<a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a>
<h1>{L_TEMPLATE_CACHE}</h1>
<p>{L_TEMPLATE_CACHE_EXPLAIN}</p>
<form name="acp_styles" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_TEMPLATE_CACHE}</legend>
<table cellspacing="1">
<thead>
<tr>
<th>{L_CACHE_FILENAME}</th>
<th>{L_CACHE_FILESIZE}</th>
<th>{L_CACHE_CACHED}</th>
<th>{L_CACHE_MODIFIED}</th>
<th>{L_MARK}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN file -->
<!-- IF file.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{file.U_VIEWSOURCE}" onclick="viewsource('{file.UA_VIEWSOURCE}');return false">{file.FILENAME}</a></td>
<td>{file.FILESIZE}</td>
<td>{file.CACHED}</td>
<td>{file.MODIFIED}</td>
<td><input type="checkbox" class="radio" name="delete[]" value="{file.FILENAME}" /></td>
</tr>
</table></form>
<!-- BEGINELSE -->
<tr class="row1">
<td colspan="5">{L_TEMPLATE_CACHE_EMPTY}</td>
</tr>
<!-- END file -->
</tbody>
</table>
<p class="quick">
<span class="small"><a href="#" onclick="marklist('acp_styles', 'delete', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('acp_styles', 'delete', false); return false;">{L_UNMARK_ALL}</a></span><br />
<input class="button1" type="submit" id="submit" name="submit" value="{L_DELETE_MARKED}" />
</p>
</fieldset>
</form>
<!-- ELSEIF S_EXPORT -->
@@ -118,14 +448,14 @@
<p>{L_EXPLAIN}</p>
<!-- IF S_ERROR_MSG -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<form id="acp_styles" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_TITLE}</legend>
<dl>
@@ -133,18 +463,18 @@
<dd><b>{NAME}</b></dd>
</dl>
<!-- IF S_STYLE -->
<dl>
<dt><label for="inc_template">{L_INCLUDE_TEMPLATE}:</label></dt>
<dd><input type="radio" class="radio" id="inc_template" name="inc_template" value="1" checked="checked" />&nbsp; {L_YES} &nbsp;<input type="radio" class="radio" name="inc_template" value="0" />&nbsp; {L_NO}</dd>
</dl>
<dl>
<dt><label for="inc_theme">{L_INCLUDE_THEME}:</label></dt>
<dd><input type="radio" class="radio" id="inc_theme" name="inc_theme" value="1" checked="checked" />&nbsp; {L_YES} &nbsp;<input type="radio" class="radio" name="inc_theme" value="0" />&nbsp; {L_NO}</dd>
</dl>
<dl>
<dt><label for="inc_imageset">{L_INCLUDE_IMAGESET}:</label></dt>
<dd><input type="radio" class="radio" id="inc_imageset" name="inc_imageset" value="1" checked="checked" />&nbsp; {L_YES} &nbsp;<input type="radio" class="radio" name="inc_imageset" value="0" />&nbsp; {L_NO}</dd>
</dl>
<dl>
<dt><label for="inc_template">{L_INCLUDE_TEMPLATE}:</label></dt>
<dd><input type="radio" class="radio" id="inc_template" name="inc_template" value="1" checked="checked" />&nbsp; {L_YES} &nbsp;<input type="radio" class="radio" name="inc_template" value="0" />&nbsp; {L_NO}</dd>
</dl>
<dl>
<dt><label for="inc_theme">{L_INCLUDE_THEME}:</label></dt>
<dd><input type="radio" class="radio" id="inc_theme" name="inc_theme" value="1" checked="checked" />&nbsp; {L_YES} &nbsp;<input type="radio" class="radio" name="inc_theme" value="0" />&nbsp; {L_NO}</dd>
</dl>
<dl>
<dt><label for="inc_imageset">{L_INCLUDE_IMAGESET}:</label></dt>
<dd><input type="radio" class="radio" id="inc_imageset" name="inc_imageset" value="1" checked="checked" />&nbsp; {L_YES} &nbsp;<input type="radio" class="radio" name="inc_imageset" value="0" />&nbsp; {L_NO}</dd>
</dl>
<!-- ENDIF -->
<dl>
<dt><label for="store">{L_DOWNLOAD_STORE}:</label><br /><span>{L_DOWNLOAD_STORE_EXPLAIN}</span></dt>
@@ -154,10 +484,10 @@
<dt><label for="format">{L_ARCHIVE_FORMAT}:</label></dt>
<dd>{FORMAT_BUTTONS}</dd>
</dl>
</fieldset>
<fieldset class="quick">
<p class="quick">
<input class="button1" type="submit" name="update" value="{L_SUBMIT}" />
</p>
</fieldset>
</form>
@@ -168,15 +498,16 @@
<p>{L_EXPLAIN}</p>
<!-- IF S_STYLE --> <!-- DEFINE $COLSPAN = 4 --> <!-- ELSE --> <!-- DEFINE $COLSPAN = 3 --> <!-- ENDIF -->
<!-- IF S_STYLE --> <!-- DEFINE $COLSPAN = 5 --> <!-- ELSE --> <!-- DEFINE $COLSPAN = 4 --> <!-- ENDIF -->
<table cellspacing="1">
<col class="row1" /><!-- IF S_STYLE --><col class="row1" /><!-- ENDIF --><col class="row2" />
<col class="row1" /><!-- IF S_STYLE --><col class="row1" /><!-- ENDIF --><col class="row2" /><col class="row2" />
<thead>
<tr>
<th>{L_NAME}</th>
<!-- IF S_STYLE --><th>{L_STYLE_USED_BY}</th><!-- ENDIF -->
<th>{L_OPTIONS}</th>
<th>{L_ACTIONS}</th>
</tr>
</thead>
<tbody>
@@ -185,42 +516,49 @@
</tr>
<!-- BEGIN installed -->
<tr>
<td><a href="{installed.U_EDIT}">{installed.NAME}</a><!-- IF installed.S_DEFAULT_STYLE --> *<!-- ENDIF --></td>
<td><strong>{installed.NAME}</strong><!-- IF installed.S_DEFAULT_STYLE --> *<!-- ENDIF --></td>
<!-- IF S_STYLE -->
<td style="text-align: center;">{installed.STYLE_COUNT}</td>
<!-- ENDIF -->
<td style="text-align: center;">
{installed.S_OPTIONS}
</td>
<td style="text-align: center;">
<!-- IF S_STYLE -->
<a href="{installed.U_STYLE_ACT_DEACT}">{installed.L_STYLE_ACT_DEACT}</a> |
<!-- ENDIF -->
{installed.S_OPTIONS} | <a href="{installed.U_PREVIEW}" onclick="this.target='_preview';">{L_PREVIEW}</a>
{installed.S_ACTIONS}
<!-- IF S_STYLE -->
| <a href="{installed.U_PREVIEW}">{L_PREVIEW}</a>
<!-- ENDIF -->
</td>
<!-- END installed -->
<tr>
<td class="row3" colspan="{$COLSPAN}"><b>{L_UNINSTALLED}</b></td>
</tr>
<!-- IF not .uninstalled -->
<tr>
<td class="row1" colspan="{$COLSPAN}" style="text-align: center;">{L_NO_UNINSTALLED}</td>
</tr>
<tr>
<td class="row1" colspan="{$COLSPAN}" style="text-align: center;">{L_NO_UNINSTALLED}</td>
</tr>
<!-- ENDIF -->
<!-- BEGIN uninstalled -->
<tr>
<td<!-- IF S_STYLE --> colspan="2"<!-- ENDIF -->>{uninstalled.NAME}<br /><b class="small">{L_COPYRIGHT}: {uninstalled.COPYRIGHT}</b></td>
<td style="text-align: center;"><a href="{uninstalled.U_INSTALL}">{L_INSTALL}</a></td>
</tr>
<tr>
<td<!-- IF S_STYLE --> colspan="2"<!-- ENDIF -->><b>{uninstalled.NAME}</b><br /><span>{L_COPYRIGHT}: {uninstalled.COPYRIGHT}</span></td>
<td style="text-align: center;" colspan="2"><a href="{uninstalled.U_INSTALL}">{L_INSTALL}</a></td>
</tr>
<!-- END uninstalled -->
</tbody>
</table>
<!-- IF S_STYLE -->
<form id="acp_styles" method="post" action="{U_ACTION}">
<form id="acp_styles" method="post" action="{U_ACTION}">
<fieldset class="quick">
<legend>{L_CREATE}</legend>
{L_CREATE}: <input type="text" name="name" value="" /> {L_FROM} <select name="basis">{S_BASIS_OPTIONS}</select> <input class="button2" type="submit" name="add" value="{L_SUBMIT}" />
</fieldset>
</form>
</form>
<!-- ENDIF -->
<!-- ELSEIF S_DETAILS -->
@@ -232,10 +570,10 @@
<p>{L_EXPLAIN}</p>
<!-- IF S_ERROR_MSG -->
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<div class="errorbox">
<h3>{L_WARNING}</h3>
<p>{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<form id="acp_styles" method="post" action="{U_ACTION}">
@@ -288,7 +626,8 @@
<!-- ENDIF -->
</fieldset>
<fieldset class="quick">
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
<input class="button1" type="submit" name="update" value="{L_SUBMIT}" />
</fieldset>
@@ -296,4 +635,4 @@
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -0,0 +1,40 @@
<!-- INCLUDE overall_header.html -->
<a name="maincontent"></a>
<!-- IF S_VERSION_CHECK -->
<h1>{L_VERSION_CHECK}</h1>
<p>{L_VERSION_CHECK_EXPLAIN}</p>
<!-- IF S_UP_TO_DATE -->
<div class="successbox">
<p>{L_VERSION_UP_TO_DATE_ACP}</p>
</div>
<!-- ELSE -->
<div class="errorbox">
<p>{L_VERSION_NOT_UP_TO_DATE_ACP}</p>
</div>
<!-- ENDIF -->
<fieldset>
<legend></legend>
<dl>
<dt><label>{L_CURRENT_VERSION}</label></dt>
<dd><b>{CURRENT_VERSION}</b></dd>
</dl>
<dl>
<dt><label>{L_LATEST_VERSION}</label></dt>
<dd><b>{LATEST_VERSION}</b></dd>
</dl>
</fieldset>
<!-- IF not S_UP_TO_DATE -->
{UPDATE_INSTRUCTIONS}
<br /><br />
<!-- ENDIF -->
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -15,13 +15,13 @@
<dl>
<dt><label for="username">{L_FIND_USERNAME}:</label></dt>
<dd><input class="medium" type="text" id="username" name="username" /></dd>
<dd>[ <a href="#" onclick="window.open('{U_FIND_USERNAME}', '_phpbbsearch', 'height=500, resizable=yes, scrollbars=yes, width=740'); return false;">{L_FIND_USERNAME}</a> ]</dd>
<dd class="full" style="text-align: left;"><input type="checkbox" id="anonymous" name="u" value="{ANONYMOUS_USER_ID}" /> &nbsp;{L_SELECT_ANONYMOUS}</dd>
<dd>[ <a href="{U_FIND_USERNAME}" onclick="find_username(); return false;">{L_FIND_USERNAME}</a> ]</dd>
<dd class="full" style="text-align: left;"><input type="checkbox" class="radio" id="anonymous" name="u" value="{ANONYMOUS_USER_ID}" /> &nbsp;{L_SELECT_ANONYMOUS}</dd>
</dl>
</fieldset>
<fieldset class="quick">
<p class="quick">
<input type="submit" name="submituser" value="{L_SUBMIT}" class="button1" />
</p>
</fieldset>
</form>
@@ -68,7 +68,7 @@
<form id="mode_select" method="post" action="{U_MODE_SELECT}">
<fieldset class="quick">
{L_SELECT_FORM}: <select name="mode" onchange="if (this.options[this.selectedIndex].value != '') this.form.submit();">{S_FORM_OPTIONS}</select>
{L_SELECT_FORM}: <select name="mode" onchange="if (this.options[this.selectedIndex].value != '') this.form.submit();">{S_FORM_OPTIONS}</select> <input class="button2" type="submit" value="{L_GO}" />
</fieldset>
</form>
@@ -84,7 +84,14 @@
<dl>
<dt><label for="user">{L_USERNAME}:</label><br /><span>{L_NAME_CHARS_EXPLAIN}</span></dt>
<dd><input type="text" id="user" name="user" value="{USER}" /></dd>
<!-- IF U_SWITCH_PERMISSIONS --><dd>[ <a href="{U_SWITCH_PERMISSIONS}">{L_USE_PERMISSIONS}</a> ]</dd><!-- ENDIF -->
</dl>
<!-- IF S_USER_INACTIVE -->
<dl>
<dt><label>{L_USER_IS_INACTIVE}:</label></dt>
<dd><strong>{USER_INACTIVE_REASON}</strong></dd>
</dl>
<!-- ENDIF -->
<dl>
<dt><label>{L_REGISTERED}:</label></dt>
<dd><strong>{USER_REGISTERED}</strong></dd>
@@ -93,13 +100,21 @@
<dl>
<dt><label>{L_REGISTERED_IP}:</label></dt>
<dd><a href="{U_SHOW_IP}">{REGISTERED_IP}</a></dd>
<dd>[ <a href="#" onclick="window.open('{U_WHOIS}', '_whois', 'height=500, resizable=yes, scrollbars=yes, width=700'); return false;">{L_WHOIS}</a> ]</strong></dd>
<dd>[ <a href="#" onclick="window.open('{U_WHOIS}', '_whois', 'height=500, resizable=yes, scrollbars=yes, width=700'); return false;">{L_WHOIS}</a> ]</dd>
</dl>
<!-- ENDIF -->
<dl>
<dt><label>{L_LAST_ACTIVE}:</label></dt>
<dd><strong>{USER_LASTACTIVE}</strong></dd>
</dl>
<dl>
<dt><label>{L_POSTS}:</label></dt>
<dd><strong>{USER_POSTS}</strong></dd>
</dl>
<dl>
<dt><label>{L_WARNINGS}:</label></dt>
<dd><strong>{USER_WARNINGS}</strong></dd>
</dl>
<dl>
<dt><label for="user_founder">{L_FOUNDER}:</label><br /><span>{L_FOUNDER_EXPLAIN}</span></dt>
<dd><input type="radio" class="radio" name="user_founder" value="1"<!-- IF S_USER_FOUNDER --> id="user_founder" checked="checked"<!-- ENDIF --><!-- IF not S_FOUNDER --> disabled="disabled"<!-- ENDIF --> />&nbsp;{L_YES}&nbsp; <input type="radio" class="radio" name="user_founder" value="0"<!-- IF not S_USER_FOUNDER --> id="user_founder" checked="checked"<!-- ENDIF --><!-- IF not S_FOUNDER --> disabled="disabled"<!-- ENDIF --> />&nbsp;{L_NO}&nbsp;</dd>
@@ -125,19 +140,17 @@
<fieldset>
<legend>{L_USER_TOOLS}</legend>
<dl>
<dt><label for="warnings">{L_WARNINGS}:</label><br /><span>{L_WARNINGS_EXPLAIN}</span></dt>
<dd><input type="text" id="warnings" name="warnings" value="{USER_WARNINGS}" size="2" /></dd>
</dl>
<dl>
<dt><label for="quicktools">{L_QUICK_TOOLS}:</label></dt>
<dd><select id="quicktools" name="action">{S_ACTION_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="delete_user">{L_DELETE_USER}:</label><br /><span>{L_DELETE_USER_EXPLAIN}</span></dt>
<dd><input type="checkbox" name="delete" value="1" /></dd>
<dd><select id="delete_user" name="delete_type"><option value="retain">{L_RETAIN_POSTS}</option><option value="remove">{L_DELETE_POSTS}</option></select></dd>
</dl>
<!-- IF not S_OWN_ACCOUNT -->
<dl>
<dt><label for="delete_user">{L_DELETE_USER}:</label><br /><span>{L_DELETE_USER_EXPLAIN}</span></dt>
<dd><input type="checkbox" class="radio" name="delete" value="1" /></dd>
<dd><select id="delete_user" name="delete_type"><option value="retain">{L_RETAIN_POSTS}</option><option value="remove">{L_DELETE_POSTS}</option></select></dd>
</dl>
<!-- ENDIF -->
<!-- ENDIF -->
</fieldset>
@@ -151,20 +164,9 @@
<form id="list" method="post" action="{U_ACTION}">
<fieldset class="quick" style="float: left;">
{L_DISPLAY_LOG}: &nbsp;{S_LIMIT_DAYS}&nbsp;{L_SORT_BY}: {S_SORT_KEY} {S_SORT_DIR}
<input class="button2" type="submit" value="{L_GO}" name="sort" />
</fieldset>
<div class="clearfix"></div>
<!-- IF PAGINATION -->
<div class="pagination">
<!-- IF PAGINATION -->
<a href="javascript:jumpto();" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
<!-- ELSE -->
{S_ON_PAGE}
<!-- ENDIF -->
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
@@ -175,7 +177,7 @@
<th>{L_REPORT_BY}</th>
<th>{L_IP}</th>
<th>{L_TIME}</th>
<th>{L_ACTION}</th>
<th>{L_FEEDBACK}</th>
<th>{L_MARK}</th>
</tr>
</thead>
@@ -190,7 +192,7 @@
{log.ACTION}
<!-- IF log.DATA --><br />&#187; <span class="gensmall">[ {log.DATA} ]</span><!-- ENDIF -->
</td>
<td style="text-align: center;"><input type="checkbox" name="mark[]" value="{log.ID}" /></td>
<td style="text-align: center;"><input type="checkbox" class="radio" name="mark[]" value="{log.ID}" /></td>
</tr>
<!-- END log -->
</tbody>
@@ -200,12 +202,23 @@
<p>{L_NO_ENTRIES}</p>
</div>
<!-- ENDIF -->
<fieldset class="display-options">
{L_DISPLAY_LOG}: &nbsp;{S_LIMIT_DAYS}&nbsp;{L_SORT_BY}: {S_SORT_KEY} {S_SORT_DIR}
<input class="button2" type="submit" value="{L_GO}" name="sort" />
</fieldset>
<hr />
<!-- IF PAGINATION -->
<div class="pagination">
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
<!-- IF S_CLEARLOGS -->
<fieldset class="quick">
<b class="small"><a href="#" onclick="marklist('list', 'mark', true);">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('list', 'mark', false);">{L_UNMARK_ALL}</a></b><br />
<input class="button2" type="submit" name="delmarked" value="{L_DELETE_MARKED}" />&nbsp;
<input class="button2" type="submit" name="delall" value="{L_DELETE_ALL}" />&nbsp;
<input class="button2" type="submit" name="delall" value="{L_DELETE_ALL}" />
<p class="small"><a href="#" onclick="marklist('list', 'mark', true);">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('list', 'mark', false);">{L_UNMARK_ALL}</a></p>
</fieldset>
<!-- ENDIF -->
@@ -339,7 +352,7 @@
</dl>
<dl>
<dt><label for="tz">{L_BOARD_TIMEZONE}:</label></dt>
<dd><select id="tz" name="tz">{S_TZ_OPTIONS}</select></dd>
<dd><select id="tz" name="tz" style="width: 100%;">{S_TZ_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="dst">{L_BOARD_DST}:</label></dt>
@@ -347,7 +360,7 @@
</dl>
<dl>
<dt><label for="dateoptions">{L_BOARD_DATE_FORMAT}:</label><br /><span>{L_BOARD_DATE_FORMAT_EXPLAIN}</span></dt>
<dd><select name="dateoptions" id="dateoptions" onchange="if(this.value=='custom'){dE('custom_date',1);}else{dE('custom_date',-1);} if (this.value == 'custom') { document.getElementById('dateformat').value = '{DEFAULT_DATEFORMAT}'; } else { document.getElementById('dateformat').value = this.value; }">{S_DATEFORMAT_OPTIONS}</select></dd>
<dd><select name="dateoptions" id="dateoptions" onchange="if(this.value=='custom'){dE('custom_date',1);}else{dE('custom_date',-1);} if (this.value == 'custom') { document.getElementById('dateformat').value = '{A_DEFAULT_DATEFORMAT}'; } else { document.getElementById('dateformat').value = this.value; }">{S_DATEFORMAT_OPTIONS}</select></dd>
<dd><div id="custom_date"<!-- IF not S_CUSTOM_DATEFORMAT --> style="display:none;"<!-- ENDIF -->><input type="text" name="dateformat" id="dateformat" value="{DATE_FORMAT}" /></div></dd>
</dl>
</fieldset>
@@ -436,11 +449,11 @@
<fieldset>
<legend>{L_ACP_USER_AVATAR}</legend>
<dl>
<dt><label>{L_CURRENT_IMAGE}:</label><br /><span>{L_AVATAR_EXPLAIN}</span></dt>
<dd>{AVATAR_IMAGE}</dd>
<dd><input type="checkbox" name="delete" />&nbsp;<span>{L_DELETE_AVATAR}</span></dd>
</dl>
<dl>
<dt><label>{L_CURRENT_IMAGE}:</label><br /><span>{L_AVATAR_EXPLAIN}</span></dt>
<dd>{AVATAR_IMAGE}</dd>
<dd><input type="checkbox" class="radio" name="delete" />&nbsp;<span>{L_DELETE_AVATAR}</span></dd>
</dl>
<!-- IF not S_IN_AVATAR_GALLERY -->
<!-- IF S_CAN_UPLOAD -->
<dl>
@@ -452,6 +465,7 @@
<dd><input name="uploadurl" type="text" id="uploadurl" value="" /></dd>
</dl>
<!-- ENDIF -->
<!-- IF S_ALLOW_REMOTE -->
<dl>
<dt><label for="remotelink">{L_LINK_REMOTE_AVATAR}:</label><br /><span>{L_LINK_REMOTE_AVATAR_EXPLAIN}</span></dt>
<dd><input name="remotelink" type="text" id="remotelink" value="" /></dd>
@@ -460,6 +474,7 @@
<dt><label for="width">{L_LINK_REMOTE_SIZE}:</label><br /><span>{L_LINK_REMOTE_SIZE_EXPLAIN}</span></dt>
<dd><input name="width" type="text" id="width" size="3" value="{USER_AVATAR_WIDTH}" /> <span>px X </span> <input type="text" name="height" size="3" value="{USER_AVATAR_HEIGHT}" /> <span>px</span></dd>
</dl>
<!-- ENDIF -->
<!-- IF S_DISPLAY_GALLERY -->
<dl>
<dt><label>{L_AVATAR_GALLERY}:</label></dt>
@@ -471,26 +486,26 @@
<fieldset>
<legend>{L_AVATAR_GALLERY}</legend>
<dl>
<dt><label for="category">{L_AVATAR_CATEGORY}:</label></dt>
<dd><select name="category" id="category">{S_CAT_OPTIONS}</select>&nbsp;<input class="button2" type="submit" value="{L_GO}" name="display_gallery" /></dd>
</dl>
<dl>
<table cellspacing="1">
<!-- BEGIN avatar_row -->
<tr>
<!-- BEGIN avatar_column -->
<td class="row1" style="text-align: center;"><img src="{avatar_row.avatar_column.AVATAR_IMAGE}" alt="{avatar_row.avatar_column.AVATAR_NAME}" title="{avatar_row.avatar_column.AVATAR_NAME}" /></td>
<!-- END avatar_column -->
</tr>
<tr>
<!-- BEGIN avatar_option_column -->
<td class="row2" style="text-align: center;"><input type="radio" class="radio" name="avatar_select" value="{avatar_row.avatar_option_column.S_OPTIONS_AVATAR}" /></td>
<!-- END avatar_option_column -->
</tr>
<!-- END avatar_row -->
</table>
</dl>
<dl>
<dt><label for="category">{L_AVATAR_CATEGORY}:</label></dt>
<dd><select name="category" id="category">{S_CAT_OPTIONS}</select>&nbsp;<input class="button2" type="submit" value="{L_GO}" name="display_gallery" /></dd>
</dl>
<dl>
<table cellspacing="1">
<!-- BEGIN avatar_row -->
<tr>
<!-- BEGIN avatar_column -->
<td class="row1" style="text-align: center;"><img src="{avatar_row.avatar_column.AVATAR_IMAGE}" alt="{avatar_row.avatar_column.AVATAR_NAME}" title="{avatar_row.avatar_column.AVATAR_NAME}" /></td>
<!-- END avatar_column -->
</tr>
<tr>
<!-- BEGIN avatar_option_column -->
<td class="row2" style="text-align: center;"><input type="radio" class="radio" name="avatar_select" value="{avatar_row.avatar_option_column.S_OPTIONS_AVATAR}" /></td>
<!-- END avatar_option_column -->
</tr>
<!-- END avatar_row -->
</table>
</dl>
</fieldset>
<fieldset class="quick" style="margin-top: -15px;">
@@ -512,10 +527,10 @@
<fieldset>
<legend>{L_ACP_USER_RANK}</legend>
<dl>
<dt><label for="user_rank">{L_USER_RANK}:</label></dt>
<dd><select name="user_rank" id="user_rank">{S_RANK_OPTIONS}</select></dd>
</dl>
<dl>
<dt><label for="user_rank">{L_USER_RANK}:</label></dt>
<dd><select name="user_rank" id="user_rank">{S_RANK_OPTIONS}</select></dd>
</dl>
</fieldset>
<fieldset class="quick">
@@ -534,23 +549,30 @@
// Define the bbCode tags
bbcode = new Array();
bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]','[quote]','[/quote]','[code]','[/code]','[list]','[/list]','[list=]','[/list]','[img]','[/img]','[url]','[/url]');
bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]','[quote]','[/quote]','[code]','[/code]','[list]','[/list]','[list=]','[/list]','[img]','[/img]','[url]','[/url]','[flash=]', '[/flash]','[size=]','[/size]'<!-- BEGIN custom_tags -->, {custom_tags.BBCODE_NAME}<!-- END custom_tags -->);
imageTag = false;
// Helpline messages
b_help = "{L_BBCODE_B_HELP}";
i_help = "{L_BBCODE_I_HELP}";
u_help = "{L_BBCODE_U_HELP}";
q_help = "{L_BBCODE_Q_HELP}";
c_help = "{L_BBCODE_C_HELP}";
l_help = "{L_BBCODE_L_HELP}";
o_help = "{L_BBCODE_O_HELP}";
p_help = "{L_BBCODE_P_HELP}";
w_help = "{L_BBCODE_W_HELP}";
a_help = "{L_BBCODE_A_HELP}";
s_help = "{L_BBCODE_S_HELP}";
f_help = "{L_BBCODE_F_HELP}";
e_help = "{L_BBCODE_E_HELP}";
var help_line = {
b: '{LA_BBCODE_B_HELP}',
i: '{LA_BBCODE_I_HELP}',
u: '{LA_BBCODE_U_HELP}',
q: '{LA_BBCODE_Q_HELP}',
c: '{LA_BBCODE_C_HELP}',
l: '{LA_BBCODE_L_HELP}',
o: '{LA_BBCODE_O_HELP}',
p: '{LA_BBCODE_P_HELP}',
w: '{LA_BBCODE_W_HELP}',
s: '{LA_BBCODE_S_HELP}',
f: '{LA_BBCODE_F_HELP}',
e: '{LA_BBCODE_E_HELP}',
d: '{LA_BBCODE_D_HELP}',
t: '{LA_BBCODE_T_HELP}',
tip: '{L_STYLES_TIP}'
<!-- BEGIN custom_tags -->
,cb_{custom_tags.BBCODE_ID}: '{custom_tags.BBCODE_HELPLINE}'
<!-- END custom_tags -->
}
//-->
</script>
@@ -559,48 +581,64 @@
<form id="user_signature" method="post" action="{U_ACTION}">
<!-- IF SIGNATURE_PREVIEW -->
<fieldset>
<legend>{L_ADMIN_SIG_PREVIEW}</legend>
<p>{SIGNATURE_PREVIEW}</p>
</fieldset>
<fieldset>
<legend>{L_ADMIN_SIG_PREVIEW}</legend>
<p>{SIGNATURE_PREVIEW}</p>
</fieldset>
<!-- ENDIF -->
<fieldset>
<legend>{L_SIGNATURE}</legend>
<p>{L_SIGNATURE_EXPLAIN}</p>
<div id="format-buttons">
<input class="button2" type="button" accesskey="b" name="addbbcode0" value=" B " style="font-weight:bold; width: 30px" onclick="bbstyle(0)" onmouseover="helpline('b')" />
<input class="button2" type="button" accesskey="i" name="addbbcode2" value=" i " style="font-style:italic; width: 30px" onclick="bbstyle(2)" onmouseover="helpline('i')" />
<input class="button2" type="button" accesskey="u" name="addbbcode4" value=" u " style="text-decoration: underline; width: 30px" onclick="bbstyle(4)" onmouseover="helpline('u')" />
<input class="button2" type="button" accesskey="q" name="addbbcode6" value="Quote" style="width: 50px" onclick="bbstyle(6)" onmouseover="helpline('q')" />
<input class="button2" type="button" accesskey="c" name="addbbcode8" value="Code" style="width: 40px" onclick="bbstyle(8)" onmouseover="helpline('c')" />
<input class="button2" type="button" accesskey="l" name="addbbcode10" value="List" style="width: 40px" onclick="bbstyle(10)" onmouseover="helpline('l')" />
<input class="button2" type="button" accesskey="o" name="addbbcode12" value="List=" style="width: 40px" onclick="bbstyle(12)" onmouseover="helpline('o')" />
<input class="button2" type="button" accesskey="p" name="addbbcode14" value="Img" style="width: 40px" onclick="bbstyle(14)" onmouseover="helpline('p')" />
<input class="button2" type="button" accesskey="w" name="addbbcode16" value="URL" style="text-decoration: underline; width: 40px" onclick="bbstyle(16)" onmouseover="helpline('w')" />
{L_FONT_SIZE}: <select name="addbbcode20" onchange="bbfontstyle('[size=' + this.form.addbbcode20.options[this.form.addbbcode20.selectedIndex].value + ']', '[/size]');this.form.addbbcode20.selectedIndex = 2;" onmouseover="helpline('f')">
<input type="button" class="button2" accesskey="b" name="addbbcode0" value=" B " style="font-weight:bold; width: 30px;" onclick="bbstyle(0)" onmouseover="helpline('b')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="i" name="addbbcode2" value=" i " style="font-style:italic; width: 30px;" onclick="bbstyle(2)" onmouseover="helpline('i')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="u" name="addbbcode4" value=" u " style="text-decoration: underline; width: 30px;" onclick="bbstyle(4)" onmouseover="helpline('u')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="q" name="addbbcode6" value="Quote" style="width: 50px" onclick="bbstyle(6)" onmouseover="helpline('q')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="c" name="addbbcode8" value="Code" style="width: 40px" onclick="bbstyle(8)" onmouseover="helpline('c')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="l" name="addbbcode10" value="List" style="width: 40px" onclick="bbstyle(10)" onmouseover="helpline('l')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="o" name="addbbcode12" value="List=" style="width: 40px" onclick="bbstyle(12)" onmouseover="helpline('o')" onmouseout="helpline('tip')" />
<input type="button" class="button2" accesskey="t" name="addlitsitem" value="[*]" style="width: 40px" onclick="bbstyle(-1)" onmouseover="helpline('e')" onmouseout="helpline('tip')" />
<!-- IF S_BBCODE_IMG -->
<input type="button" class="button2" accesskey="p" name="addbbcode14" value="Img" style="width: 40px" onclick="bbstyle(14)" onmouseover="helpline('p')" onmouseout="helpline('tip')" />
<!-- ENDIF -->
<!-- IF S_LINKS_ALLOWED -->
<input type="button" class="button2" accesskey="w" name="addbbcode16" value="URL" style="text-decoration: underline; width: 40px" onclick="bbstyle(16)" onmouseover="helpline('w')" onmouseout="helpline('tip')" />
<!-- ENDIF -->
<!-- IF S_BBCODE_FLASH -->
<input type="button" class="button2" accesskey="d" name="addbbcode18" value="Flash" onclick="bbstyle(18)" onmouseover="helpline('d')" onmouseout="helpline('tip')" />
<!-- ENDIF -->
{L_FONT_SIZE}: <select name="addbbcode20" onchange="bbfontstyle('[size=' + this.form.addbbcode20.options[this.form.addbbcode20.selectedIndex].value + ']', '[/size]');this.form.addbbcode20.selectedIndex = 2;" onmouseover="helpline('f')" onmouseout="helpline('tip')">
<option value="7">{L_FONT_TINY}</option>
<option value="9">{L_FONT_SMALL}</option>
<option value="12" selected="selected">{L_FONT_NORMAL}</option>
<option value="18">{L_FONT_LARGE}</option>
<option value="24">{L_FONT_HUGE}</option>
<option value="24">{L_FONT_HUGE}</option>
</select>
<a href="javascript:bbstyle(-1)" onmouseover="helpline('a')">{L_CLOSE_TAGS}</a>
<!-- IF .custom_tags -->
<br /><br />
<!-- BEGIN custom_tags -->
<input type="button" class="button2" name="addbbcode{custom_tags.BBCODE_ID}" value="{custom_tags.BBCODE_TAG}" onclick="bbstyle({custom_tags.BBCODE_ID})"<!-- IF custom_tags.BBCODE_HELPLINE !== '' --> onmouseover="helpline('cb_{custom_tags.BBCODE_ID}')"<!-- ENDIF --> />
<!-- END custom_tags -->
<!-- ENDIF -->
</div>
<p><input type="text" name="helpbox" value="{L_STYLES_TIP}" class="full" style="border: 0; background: none;" /></p>
<dl>
<dt style="width: 110px;"><script type="text/javascript"><!--
colorPalette('v', 17, 5);
//--></script>
</dt>
<dd style="text-align: left; margin-left: 110px;"><textarea name="signature" rows="10" cols="60" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);">{SIGNATURE}</textarea></dd>
<dd style="text-align: left; margin-left: 110px;">
<!-- IF S_BBCODE_ALLOWED --><input type="checkbox" name="disable_bbcode"{S_BBCODE_CHECKED} />&nbsp; {L_DISABLE_BBCODE} &nbsp;<!-- ENDIF -->
<!-- IF S_SMILIES_ALLOWED --><input type="checkbox" name="disable_smilies"{S_SMILIES_CHECKED} />&nbsp; {L_DISABLE_SMILIES} &nbsp;<!-- ENDIF -->
<input type="checkbox" name="disable_magic_url"{S_MAGIC_URL_CHECKED} />&nbsp; {L_DISABLE_MAGIC_URL} &nbsp;
<br /><br /><strong>{L_OPTIONS}: </strong>{BBCODE_STATUS} :: {IMG_STATUS} :: {FLASH_STATUS} :: {SMILIES_STATUS}
</dd>
</dl>
<div style="text-align: left;"><textarea name="signature" rows="10" cols="60" style="width: 80%;" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);">{SIGNATURE}</textarea></div>
<div>
<!-- IF S_BBCODE_ALLOWED -->
<input type="checkbox" class="radio" name="disable_bbcode"{S_BBCODE_CHECKED} />&nbsp; {L_DISABLE_BBCODE} &nbsp;
<!-- ENDIF -->
<!-- IF S_SMILIES_ALLOWED -->
<input type="checkbox" class="radio" name="disable_smilies"{S_SMILIES_CHECKED} />&nbsp; {L_DISABLE_SMILIES} &nbsp;
<!-- ENDIF -->
<!-- IF S_LINKS_ALLOWED -->
<input type="checkbox" class="radio" name="disable_magic_url"{S_MAGIC_URL_CHECKED} />&nbsp; {L_DISABLE_MAGIC_URL} &nbsp;
<!-- ENDIF -->
<br /><br /><strong>{L_OPTIONS}: </strong>{BBCODE_STATUS} :: {IMG_STATUS} :: {FLASH_STATUS} :: {URL_STATUS} :: {SMILIES_STATUS}
</div>
</fieldset>
<fieldset class="quick">
@@ -624,7 +662,7 @@
<!-- ELSE -->
<!-- IF group.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{group.U_EDIT_GROUP}">{group.GROUP_NAME}</a></td>
<td><!-- IF group.S_NO_DEFAULT --><a href="{group.U_DEFAULT}">{L_GROUP_DEFAULT}</a><!-- ELSE -->{L_GROUP_DEFAULT}<!-- ENDIF --></td>
<td><!-- IF group.S_NO_DEFAULT --><a href="{group.U_DEFAULT}">{L_GROUP_DEFAULT}</a><!-- ELSE --><strong>{L_GROUP_DEFAULT}</strong><!-- ENDIF --></td>
<td><!-- IF not group.S_SPECIAL_GROUP --><a href="{group.U_DEMOTE_PROMOTE}">{group.L_DEMOTE_PROMOTE}</a><!-- ENDIF --></td>
<td><a href="{group.U_DELETE}">{L_GROUP_DELETE}</a></td>
<!-- ENDIF -->
@@ -642,20 +680,12 @@
<form id="user_attachments" method="post" action="{U_ACTION}">
<fieldset class="quick" style="float: left;">
{L_SORT_BY}: <select name="sk">{S_SORT_KEY}</select> <select name="sd">{S_SORT_DIR}</select>
<input class="button2" type="submit" value="{L_GO}" name="sort" />
</fieldset>
<div class="pagination" style="float: right;">
<!-- IF PAGINATION -->
<a href="javascript:jumpto();" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
<!-- ELSE -->
{S_ON_PAGE}
<!-- ENDIF -->
<!-- IF PAGINATION -->
<div class="pagination">
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<div class="clearfix"></div>
<!-- ENDIF -->
<!-- IF .attach -->
<table cellspacing="1">
@@ -665,17 +695,17 @@
<th>{L_POST_TIME}</th>
<th>{L_FILESIZE}</th>
<th>{L_DOWNLOADS}</th>
<th>{L_DELETE}</th>
<th>{L_MARK}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN attach -->
<!-- IF attach.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td><a href="{attach.U_DOWNLOAD}">{attach.REAL_FILENAME}</a><br /><span class="small"><!-- IF attach.S_IN_MESSAGE --><b>{L_PM}: </b><!-- ELSE --><b>{L_TOPIC}: </b><!-- ENDIF --><a href="{attach.U_VIEW_TOPIC}">{attach.TOPIC_TITLE}</a></span></td>
<td>{attach.POST_TIME}</td>
<td>{attach.SIZE}</td>
<td>{attach.DOWNLOAD_COUNT}</td>
<td><input type="checkbox" name="mark[]" value="{attach.ATTACH_ID}" /></td>
<td style="text-align: center">{attach.POST_TIME}</td>
<td style="text-align: center">{attach.SIZE}</td>
<td style="text-align: center">{attach.DOWNLOAD_COUNT}</td>
<td style="text-align: center"><input type="checkbox" class="radio" name="mark[]" value="{attach.ATTACH_ID}" /></td>
</tr>
<!-- END attach -->
</tbody>
@@ -685,23 +715,44 @@
<p>{L_NO_ENTRIES}</p>
</div>
<!-- ENDIF -->
<fieldset class="display-options">
{L_SORT_BY}: <select name="sk">{S_SORT_KEY}</select> <select name="sd">{S_SORT_DIR}</select>
<input class="button2" type="submit" value="{L_GO}" name="sort" />
</fieldset>
<hr />
<!-- IF PAGINATION -->
<div class="pagination">
<a href="#" onclick="jumpto(); return false;" title="{L_JUMP_TO_PAGE}">{S_ON_PAGE}</a> &bull; <span>{PAGINATION}</span>
</div>
<!-- ENDIF -->
<fieldset class="quick">
<b class="small"><a href="#" onclick="marklist('user_attachments', 'mark', true);">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('user_attachments', 'mark', false);">{L_UNMARK_ALL}</a></b><br />
<input class="button2" type="submit" name="delmarked" value="{L_DELETE_MARKED}" />
<p class="small"><a href="#" onclick="marklist('user_attachments', 'mark', true);">{L_MARK_ALL}</a> &bull; <a href="#" onclick="marklist('user_attachments', 'mark', false);">{L_UNMARK_ALL}</a></p>
</fieldset>
</form>
<!-- ELSEIF S_PERMISSIONS -->
<fieldset class="quick">
<div style="float: right;">
<a href="{U_USER_PERMISSIONS}">&raquo; {L_SET_USERS_PERMISSIONS}</a><br />
<a href="{U_USER_FORUM_PERMISSIONS}">&raquo; {L_SET_USERS_FORUM_PERMISSIONS}</a>
</fieldset>
</div>
<form id="select_forum" method="post" action="{U_ACTION}">
<fieldset class="quick" style="text-align: left;">
{L_SELECT_FORUM}: <select name="f">{S_FORUM_OPTIONS}</select>
<input class="button2" type="submit" value="{L_GO}" name="select" />
</fieldset>
</form>
<br clear="all" />
<!-- INCLUDE permission_mask.html -->
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

View File

@@ -16,18 +16,18 @@
<legend>{L_EDIT_WORD}</legend>
<dl>
<dt><label for="word">{L_WORD}</label></dt>
<dd><input id="word" type="text" name="word" value="{WORD}" /></dd>
<dd><input id="word" type="text" name="word" value="{WORD}" maxlength="255" /></dd>
</dl>
<dl>
<dt><label for="replacement">{L_REPLACEMENT}</label></dt>
<dd><input id="replacement" type="text" name="replacement" value="{REPLACEMENT}" /></dd>
<dd><input id="replacement" type="text" name="replacement" value="{REPLACEMENT}" maxlength="255" /></dd>
</dl>
{S_HIDDEN_FIELDS}
</fieldset>
<fieldset class="submit-buttons">
<p class="submit-buttons">
<input class="button1" type="submit" id="submit" name="save" value="{L_SUBMIT}" />&nbsp;
<input class="button2" type="reset" id="reset" name="reset" value="{L_RESET}" />
</p>
</fieldset>
</form>
@@ -38,35 +38,37 @@
<p>{L_ACP_WORDS_EXPLAIN}</p>
<form id="acp_words" method="post" action="{U_ACTION}">
<fieldset class="tabulated">
<legend>{L_ACP_WORDS}</legend>
<p class="quick">
{S_HIDDEN_FIELDS}
<input class="button2" name="add" type="submit" value="{L_ADD_WORD}" />
</p>
<table cellspacing="1">
<thead>
<tr>
<th>{L_WORD}</th>
<th>{L_REPLACEMENT}</th>
<th colspan="2">{L_ACTION}</th>
</tr>
<tr>
<th>{L_WORD}</th>
<th>{L_REPLACEMENT}</th>
<th>{L_ACTION}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN words -->
<!-- IF words.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td style="text-align: center;">{words.WORD}</td>
<td style="text-align: center;">{words.REPLACEMENT}</td>
<td>&nbsp;<a href="{words.U_EDIT}">{L_EDIT}</a>&nbsp;</td>
<td>&nbsp;<a href="{words.U_DELETE}">{L_DELETE}</a>&nbsp;</td>
<td>&nbsp;<a href="{words.U_EDIT}">{ICON_EDIT}</a>&nbsp;&nbsp;<a href="{words.U_DELETE}">{ICON_DELETE}</a>&nbsp;</td>
</tr>
<!-- END words -->
</tbody>
</table>
<form id="acp_words" method="post" action="{U_ACTION}">
<fieldset class="quick">
{S_HIDDEN_FIELDS}
<input class="button2" name="add" type="submit" value="{L_ADD_WORD}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE overall_footer.html -->
<!-- INCLUDE overall_footer.html -->

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,78 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}">
<head>
<meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Language" content="{S_USER_LANG}" />
<meta http-equiv="imagetoolbar" content="no" />
<title>{L_COLOUR_SWATCH}</title>
<style type="text/css">
<!--
body {
background-color: #404040;
color: #fff;
}
td {
border: solid 1px #333;
}
.over {
border-color: white;
}
.out {
border-color: #333333;
}
img {
border: 0;
}
//-->
</style>
</head>
<body>
<script type="text/javascript">
<!--
var r = 0, g = 0, b = 0;
var numberList = new Array(6);
numberList[0] = '00';
numberList[1] = '33';
numberList[2] = '66';
numberList[3] = '99';
numberList[4] = 'CC';
numberList[5] = 'FF';
document.writeln('<table cellspacing="0" cellpadding="0" border="0">');
for (r = 0; r < 6; r++)
{
document.writeln('<tr>');
for (g = 0; g < 6; g++)
{
for (b = 0; b < 6; b++)
{
color = String(numberList[r]) + String(numberList[g]) + String(numberList[b]);
document.write('<td style="background-color: #' + color + ';" onmouseover="this.className=\'over\'" onmouseout="this.className=\'out\'">');
document.write('<a href="#" onclick="cell(\'' + color + '\'); return false;"><img src="{T_IMAGES_PATH}spacer.gif" width="15" height="12" alt="#' + color + '" title="#' + color + '" \/><\/a>');
document.writeln('<\/td>');
}
}
document.writeln('<\/tr>');
}
document.writeln('<\/table>');
function cell(color)
{
opener.document.forms["{OPENER}"].{NAME}.value = color;
}
//-->
</script>
</body>
</html>

View File

@@ -17,7 +17,7 @@
<!-- IF bool.FIELD_LENGTH eq 1 -->
<!-- BEGIN options --><input type="radio" class="radio" name="{bool.FIELD_IDENT}" value="{bool.options.OPTION_ID}"{bool.options.CHECKED} /> {bool.options.VALUE}&nbsp; &nbsp;<!-- END options -->
<!-- ELSE -->
<input type="checkbox" name="{bool.FIELD_IDENT}"<!-- IF bool.FIELD_VALUE --> checked="checked"<!-- ENDIF --> />
<input type="checkbox" class="radio" name="{bool.FIELD_IDENT}" value="1"<!-- IF bool.FIELD_VALUE --> checked="checked"<!-- ENDIF --> />
<!-- ENDIF -->
<!-- END bool -->

View File

@@ -1,5 +1,7 @@
// bbCode control by subBlue design [ www.subBlue.com ]
// Includes unixsafe colour palette selector by SHS`
/**
* bbCode control by subBlue design [ www.subBlue.com ]
* Includes unixsafe colour palette selector by SHS`
*/
// Startup variables
var imageTag = false;
@@ -10,130 +12,67 @@ var theSelection = false;
var clientPC = navigator.userAgent.toLowerCase(); // Get client info
var clientVer = parseInt(navigator.appVersion); // Get browser version
var is_ie = ((clientPC.indexOf("msie") != -1) && (clientPC.indexOf("opera") == -1));
var is_nav = ((clientPC.indexOf('mozilla')!=-1) && (clientPC.indexOf('spoofer')==-1)
&& (clientPC.indexOf('compatible') == -1) && (clientPC.indexOf('opera')==-1)
&& (clientPC.indexOf('webtv')==-1) && (clientPC.indexOf('hotjava')==-1));
var is_ie = ((clientPC.indexOf('msie') != -1) && (clientPC.indexOf('opera') == -1));
var is_win = ((clientPC.indexOf('win') != -1) || (clientPC.indexOf('16bit') != -1));
var is_win = ((clientPC.indexOf("win")!=-1) || (clientPC.indexOf("16bit") != -1));
var is_mac = (clientPC.indexOf("mac")!=-1);
var baseHeight;
window.onload = initInsertions;
// Shows the help messages in the helpline window
function helpline(help) {
document.forms[form_name].helpbox.value = eval(help + "_help");
/**
* Shows the help messages in the helpline window
*/
function helpline(help)
{
document.forms[form_name].helpbox.value = help_line[help];
}
// Replacement for arrayname.length property
function getarraysize(thearray) {
for (i = 0; i < thearray.length; i++) {
if ((thearray[i] == "undefined") || (thearray[i] == "") || (thearray[i] == null))
return i;
}
return thearray.length;
}
// Replacement for arrayname.push(value) not implemented in IE until version 5.5
// Appends element to the array
function arraypush(thearray,value) {
thearray[ getarraysize(thearray) ] = value;
}
// Replacement for arrayname.pop() not implemented in IE until version 5.5
// Removes and returns the last element of an array
function arraypop(thearray) {
thearraysize = getarraysize(thearray);
retval = thearray[thearraysize - 1];
delete thearray[thearraysize - 1];
return retval;
}
function smiley(text) {
text = ' ' + text + ' ';
if (document.forms[form_name].elements[text_name].createTextRange && document.forms[form_name].elements[text_name].caretPos) {
var caretPos = document.forms[form_name].elements[text_name].caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
document.forms[form_name].elements[text_name].focus();
} else {
var selStart = document.forms[form_name].elements[text_name].selectionStart;
var selEnd = document.forms[form_name].elements[text_name].selectionEnd;
mozWrap(document.forms[form_name].elements[text_name], text, '')
document.forms[form_name].elements[text_name].focus();
document.forms[form_name].elements[text_name].selectionStart = selStart + text.length;
document.forms[form_name].elements[text_name].selectionEnd = selEnd + text.length;
/**
* Fix a bug involving the TextRange object. From
* http://www.frostjedi.com/terra/scripts/demo/caretBug.html
*/
function initInsertions()
{
var textarea = document.forms[form_name].elements[text_name];
textarea.focus();
if (is_ie && typeof(baseHeight) != 'number')
{
baseHeight = document.selection.createRange().duplicate().boundingHeight;
}
}
function bbfontstyle(bbopen, bbclose) {
if ((clientVer >= 4) && is_ie && is_win) {
theSelection = document.selection.createRange().text;
if (!theSelection) {
insert_text(bbopen + bbclose);
document.forms[form_name].elements[text_name].focus();
return;
}
document.selection.createRange().text = bbopen + theSelection + bbclose;
document.forms[form_name].elements[text_name].focus();
return;
/**
* bbstyle
*/
function bbstyle(bbnumber)
{
if (bbnumber != -1)
{
bbfontstyle(bbtags[bbnumber], bbtags[bbnumber+1]);
} else {
insert_text(bbopen + bbclose);
document.forms[form_name].elements[text_name].focus();
return;
}
storeCaret(document.forms[form_name].elements[text_name]);
}
function insert_text(text) {
if (document.forms[form_name].elements[text_name].createTextRange && document.forms[form_name].elements[text_name].caretPos) {
var caretPos = document.forms[form_name].elements[text_name].caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
} else {
var selStart = document.forms[form_name].elements[text_name].selectionStart;
var selEnd = document.forms[form_name].elements[text_name].selectionEnd;
mozWrap(document.forms[form_name].elements[text_name], text, '')
document.forms[form_name].elements[text_name].selectionStart = selStart + text.length;
document.forms[form_name].elements[text_name].selectionEnd = selEnd + text.length;
insert_text('[*]');
document.forms[form_name].elements[text_name].focus();
}
}
function attach_inline() {
insert_text('[attachment=' + document.forms[form_name].elements['attachments'].value + ']' + document.forms[form_name].elements['attachments'].options[document.forms[form_name].elements['attachments'].selectedIndex].text + '[/attachment]');
}
function bbstyle(bbnumber) {
donotinsert = false;
/**
* Apply bbcodes
*/
function bbfontstyle(bbopen, bbclose)
{
theSelection = false;
bblast = 0;
document.forms[form_name].elements[text_name].focus();
if (bbnumber == -1) { // Close all open tags & default button names
while (bbcode[0]) {
butnumber = arraypop(bbcode) - 1;
document.forms[form_name].elements[text_name].value += bbtags[butnumber + 1];
buttext = eval('document.forms[form_name].addbbcode' + butnumber + '.value');
if (buttext != "[*]")
{
eval('document.forms[form_name].addbbcode' + butnumber + '.value ="' + buttext.substr(0,(buttext.length - 1)) + '"');
}
}
document.forms[form_name].addbbcode10.value = "List";
bbtags[10] = "[list]";
document.forms[form_name].addbbcode12.value = "List=";
bbtags[12] = "[list=]";
imageTag = false; // All tags are closed including image tags :D
document.forms[form_name].elements[text_name].focus();
return;
}
var textarea = document.forms[form_name].elements[text_name];
textarea.focus();
if ((clientVer >= 4) && is_ie && is_win)
{
theSelection = document.selection.createRange().text; // Get text selection
if (theSelection) {
// Get text selection
theSelection = document.selection.createRange().text;
if (theSelection)
{
// Add tags around selection
document.selection.createRange().text = bbtags[bbnumber] + theSelection + bbtags[bbnumber+1];
document.selection.createRange().text = bbopen + theSelection + bbclose;
document.forms[form_name].elements[text_name].focus();
theSelection = '';
return;
@@ -141,166 +80,298 @@ function bbstyle(bbnumber) {
}
else if (document.forms[form_name].elements[text_name].selectionEnd && (document.forms[form_name].elements[text_name].selectionEnd - document.forms[form_name].elements[text_name].selectionStart > 0))
{
mozWrap(document.forms[form_name].elements[text_name], bbtags[bbnumber], bbtags[bbnumber+1]);
mozWrap(document.forms[form_name].elements[text_name], bbopen, bbclose);
document.forms[form_name].elements[text_name].focus();
theSelection = '';
return;
}
// Find last occurance of an open tag the same as the one just clicked
for (i = 0; i < bbcode.length; i++) {
if (bbcode[i] == bbnumber+1) {
bblast = i;
donotinsert = true;
}
}
//The new position for the cursor after adding the bbcode
var new_pos = getCaretPosition(textarea).start + bbopen.length;
if ((bbnumber == 10) && (bbtags[10] != "[*]"))
// Open tag
insert_text(bbopen + bbclose);
// Center the cursor when we don't have a selection
// Gecko and proper browsers
if (!isNaN(textarea.selectionStart))
{
if (donotinsert)
{
document.forms[form_name].addbbcode12.value = "List=";
tmp_help = o_help;
o_help = e_help;
e_help = tmp_help;
bbtags[12] = "[list=]";
}
else
{
document.forms[form_name].addbbcode12.value = "[*]";
tmp_help = o_help;
o_help = e_help;
e_help = tmp_help;
bbtags[12] = "[*]";
}
}
if ((bbnumber == 12) && (bbtags[12] != "[*]"))
textarea.selectionStart = new_pos;
textarea.selectionEnd = new_pos;
}
// IE
else if (document.selection)
{
if (donotinsert)
{
document.forms[form_name].addbbcode10.value = "List";
tmp_help = l_help;
l_help = e_help;
e_help = tmp_help;
bbtags[10] = "[list]";
}
else
{
document.forms[form_name].addbbcode10.value = "[*]";
tmp_help = l_help;
l_help = e_help;
e_help = tmp_help;
bbtags[10] = "[*]";
}
var range = textarea.createTextRange();
range.move("character", new_pos);
range.select();
storeCaret(document.forms[form_name].elements[text_name]);
}
if (donotinsert) { // Close all open tags up to the one just clicked & default button names
while (bbcode[bblast]) {
butnumber = arraypop(bbcode) - 1;
if (bbtags[butnumber] != "[*]")
{
insert_text(bbtags[butnumber + 1]);
}
else
{
insert_text(bbtags[butnumber]);
}
buttext = eval('document.forms[form_name].addbbcode' + butnumber + '.value');
if (bbtags[butnumber] != "[*]")
{
eval('document.forms[form_name].addbbcode' + butnumber + '.value ="' + buttext.substr(0,(buttext.length - 1)) + '"');
}
imageTag = false;
}
document.forms[form_name].elements[text_name].focus();
return;
} else { // Open tags
if (imageTag && (bbnumber != 14)) { // Close image tag before adding another
insert_text(bbtags[15]);
lastValue = arraypop(bbcode) - 1; // Remove the close image tag from the list
document.forms[form_name].addbbcode14.value = "Img"; // Return button back to normal state
imageTag = false;
}
// Open tag
insert_text(bbtags[bbnumber]);
if ((bbnumber == 14) && (imageTag == false)) imageTag = 1; // Check to stop additional tags after an unclosed image tag
if (bbtags[bbnumber] != "[*]")
{
arraypush(bbcode,bbnumber+1);
eval('document.forms[form_name].addbbcode'+bbnumber+'.value += "*"');
}
document.forms[form_name].elements[text_name].focus();
return;
}
storeCaret(document.forms[form_name].elements[text_name]);
document.forms[form_name].elements[text_name].focus();
return;
}
// From http://www.massless.org/mozedit/
/**
* Insert text at position
*/
function insert_text(text, spaces, popup)
{
var textarea;
if (!popup)
{
textarea = document.forms[form_name].elements[text_name];
} else
{
textarea = opener.document.forms[form_name].elements[text_name];
}
if (spaces)
{
text = ' ' + text + ' ';
}
if (!isNaN(textarea.selectionStart))
{
var sel_start = textarea.selectionStart;
var sel_end = textarea.selectionEnd;
mozWrap(textarea, text, '')
textarea.selectionStart = sel_start + text.length;
textarea.selectionEnd = sel_end + text.length;
}
else if (textarea.createTextRange && textarea.caretPos)
{
if (baseHeight != textarea.caretPos.boundingHeight)
{
textarea.focus();
storeCaret(textarea);
}
var caret_pos = textarea.caretPos;
caret_pos.text = caret_pos.text.charAt(caret_pos.text.length - 1) == ' ' ? caret_pos.text + text + ' ' : caret_pos.text + text;
}
else
{
textarea.value = textarea.value + text;
}
document.forms[form_name].elements[text_name].focus();
}
/**
* Add inline attachment at position
*/
function attach_inline(index, filename)
{
insert_text('[attachment=' + index + ']' + filename + '[/attachment]');
document.forms[form_name].elements[text_name].focus();
}
/**
* Add quote text to message
*/
function addquote(post_id, username)
{
var message_name = 'message_' + post_id;
var theSelection = '';
var divarea = false;
if (document.all)
{
divarea = document.all[message_name];
}
else
{
divarea = document.getElementById(message_name);
}
// Get text selection - not only the post content :(
if (window.getSelection)
{
theSelection = window.getSelection().toString();
}
else if (document.getSelection)
{
theSelection = document.getSelection();
}
else if (document.selection)
{
theSelection = document.selection.createRange().text;
}
if (theSelection == '' || typeof theSelection == 'undefined' || theSelection == null)
{
if (divarea.innerHTML)
{
theSelection = divarea.innerHTML.replace(/<br>/ig, '\n');
theSelection = theSelection.replace(/<br\/>/ig, '\n');
theSelection = theSelection.replace(/&lt\;/ig, '<');
theSelection = theSelection.replace(/&gt\;/ig, '>');
theSelection = theSelection.replace(/&amp\;/ig, '&');
}
else if (document.all)
{
theSelection = divarea.innerText;
}
else if (divarea.textContent)
{
theSelection = divarea.textContent;
}
else if (divarea.firstChild.nodeValue)
{
theSelection = divarea.firstChild.nodeValue;
}
}
if (theSelection)
{
insert_text('[quote="' + username + '"]' + theSelection + '[/quote]');
}
return;
}
/**
* From http://www.massless.org/mozedit/
*/
function mozWrap(txtarea, open, close)
{
var selLength = txtarea.textLength;
var selStart = txtarea.selectionStart;
var selEnd = txtarea.selectionEnd;
var scrollTop = txtarea.scrollTop;
if (selEnd == 1 || selEnd == 2)
{
selEnd = selLength;
}
var s1 = (txtarea.value).substring(0,selStart);
var s2 = (txtarea.value).substring(selStart, selEnd)
var s3 = (txtarea.value).substring(selEnd, selLength);
txtarea.value = s1 + open + s2 + close + s3;
txtarea.selectionStart = selEnd + open.length + close.length;
txtarea.selectionEnd = txtarea.selectionStart;
txtarea.focus();
txtarea.scrollTop = scrollTop;
return;
}
// Insert at Claret position. Code from
// http://www.faqts.com/knowledge_base/view.phtml/aid/1052/fid/130
function storeCaret(textEl) {
if (textEl.createTextRange) { textEl.caretPos = document.selection.createRange().duplicate(); }
/**
* Insert at Caret position. Code from
* http://www.faqts.com/knowledge_base/view.phtml/aid/1052/fid/130
*/
function storeCaret(textEl)
{
if (textEl.createTextRange)
{
textEl.caretPos = document.selection.createRange().duplicate();
}
}
/**
* Color pallette
*/
function colorPalette(dir, width, height)
{
var r = 0, g = 0, b = 0;
var numberList = new Array(6);
numberList[0] = "00";
numberList[1] = "40";
numberList[2] = "80";
numberList[3] = "BF";
numberList[4] = "FF";
document.writeln('<table class="type2">');
for(r = 0; r < 5; r++)
numberList[0] = '00';
numberList[1] = '40';
numberList[2] = '80';
numberList[3] = 'BF';
numberList[4] = 'FF';
document.writeln('<table cellspacing="1" cellpadding="0" border="0">');
for (r = 0; r < 5; r++)
{
if (dir == 'h')
{
document.writeln('<tr>');
}
for(g = 0; g < 5; g++)
for (g = 0; g < 5; g++)
{
if (dir == 'v')
{
document.writeln('<tr>');
}
for(b = 0; b < 5; b++)
for (b = 0; b < 5; b++)
{
color = String(numberList[r]) + String(numberList[g]) + String(numberList[b]);
document.write('<td bgcolor="#' + color + '">');
document.write('<a href="javascript:bbfontstyle(\'[color=#' + color + ']\', \'[/color]\');" onmouseover="helpline(\'s\');"><img src="images/spacer.gif" width="' + width + '" height="' + height + '" alt="#' + color + '" title="#' + color + '" /></a>');
document.write('<a href="#" onclick="bbfontstyle(\'[color=#' + color + ']\', \'[/color]\'); return false;" onmouseover="helpline(\'s\');" onmouseout="helpline(\'tip\');"><img src="images/spacer.gif" width="' + width + '" height="' + height + '" alt="#' + color + '" title="#' + color + '" /></a>');
document.writeln('</td>');
}
if (dir == 'v')
{
document.writeln('</tr>');
}
}
if (dir == 'h')
{
document.writeln('</tr>');
}
}
document.writeln('</table>');
}
/**
* Caret Position object
*/
function caretPosition()
{
var start = null;
var end = null;
}
/**
* Get the caret position in an textarea
*/
function getCaretPosition(txtarea)
{
var caretPos = new caretPosition();
// simple Gecko/Opera way
if(txtarea.selectionStart || txtarea.selectionStart == 0)
{
caretPos.start = txtarea.selectionStart;
caretPos.end = txtarea.selectionEnd;
}
// dirty and slow IE way
else if(document.selection)
{
// get current selection
var range = document.selection.createRange();
// a new selection of the whole textarea
var range_all = document.body.createTextRange();
range_all.moveToElementText(txtarea);
// calculate selection start point by moving beginning of range_all to beginning of range
var sel_start;
for (sel_start = 0; range_all.compareEndPoints('StartToStart', range) < 0; sel_start++)
{
range_all.moveStart('character', 1);
}
txtarea.sel_start = sel_start;
// we ignore the end value for IE, this is already dirty enough and we don't need it
caretPos.start = txtarea.sel_start;
caretPos.end = txtarea.sel_start;
}
return caretPos;
}

View File

@@ -0,0 +1,125 @@
<!-- INCLUDE install_header.html -->
<!-- IF S_NOT_INSTALLED -->
<h1>{TITLE}</h1>
<p>{BODY}</p>
<!-- ELSE -->
<form id="install_convert" method="post" action="{U_ACTION}">
<h1>{TITLE}</h1>
<p>{BODY}</p>
<!-- IF S_LIST -->
<table cellspacing="1">
<caption>{L_AVAILABLE_CONVERTORS}</caption>
<col class="col1" /><col class="col2" /><col class="col1" /><col class="col2" />
<thead>
<tr>
<th>{L_SOFTWARE}</th>
<th>{L_VERSION}</th>
<th>{L_AUTHOR}</th>
<th>{L_OPTIONS}</th>
</tr>
</thead>
<tbody>
<!-- IF .convertors -->
<!-- BEGIN convertors -->
<tr>
<td>{convertors.SOFTWARE}</td>
<td>{convertors.VERSION}</td>
<td>{convertors.AUTHOR}</td>
<td><a href="{convertors.U_CONVERT}">{L_CONVERT}</a></td>
</tr>
<!-- END convertors -->
<!-- ELSE -->
<tr>
<td>{L_NO_CONVERTORS}</td>
<td>-</td>
<td>-</td>
<td>-</td>
</tr>
<!-- ENDIF -->
</tbody>
</table>
<!-- ENDIF -->
<!-- IF S_CONTINUE -->
</form>
<fieldset class="submit-buttons">
<form method="post" action="{U_NEW_ACTION}">
<input class="button1" type="submit" name="submit_new" value="{L_NEW}" />
</form>
<br />
<form method="post" action="{U_CONTINUE_ACTION}">
<input class="button1" type="submit" name="submit_cont" value="{L_CONTINUE}" />
</form>
</fieldset>
<form method="post" action="{U_ACTION}">
<!-- ENDIF -->
<!-- IF .checks -->
<fieldset>
<!-- BEGIN checks -->
<!-- IF checks.S_LEGEND -->
<!-- IF not checks.S_FIRST_ROW -->
</fieldset>
<fieldset>
<!-- ENDIF -->
<legend>{checks.LEGEND}</legend>
<!-- IF checks.LEGEND_EXPLAIN --><p>{checks.LEGEND_EXPLAIN}</p><!-- ENDIF -->
<!-- ELSE -->
<dl>
<dt>{checks.TITLE}:</label><!-- IF checks.S_EXPLAIN --><br /><span class="explain">{checks.TITLE_EXPLAIN}</span><!-- ENDIF --></dt>
<dd>{checks.RESULT}</dd>
</dl>
<!-- ENDIF -->
<!-- END checks -->
</fieldset>
<!-- ENDIF -->
<!-- IF .options -->
<fieldset>
<!-- BEGIN options -->
<!-- IF options.S_LEGEND -->
<!-- IF not options.S_FIRST_ROW -->
</fieldset>
<fieldset>
<!-- ENDIF -->
<legend>{options.LEGEND}</legend>
<!-- ELSE -->
<dl>
<dt><label for="{options.KEY}">{options.TITLE}:</label><!-- IF options.S_EXPLAIN --><br /><span class="explain">{options.TITLE_EXPLAIN}</span><!-- ENDIF --></dt>
<dd>{options.CONTENT}</dd>
</dl>
<!-- ENDIF -->
<!-- END options -->
</fieldset>
<!-- ENDIF -->
<!-- IF L_SUBMIT -->
<fieldset class="submit-buttons">
<!-- IF L_MESSAGE --><p>{L_MESSAGE}</p><!-- ENDIF -->
{S_HIDDEN}
<!-- IF L_SUBMIT --><input class="button1<!-- IF S_REFRESH --> disabled<!-- ENDIF -->" type="submit" id="submit" <!-- IF S_REFRESH -->disabled="disabled" <!-- ELSE --> onclick="this.className = 'button1 disabled';" onsubmit="this.disabled = 'disabled';" <!-- ENDIF -->name="submit" value="{L_SUBMIT}" /><!-- ENDIF -->
</fieldset>
<!-- ENDIF -->
</form>
<!-- ENDIF -->
<!-- INCLUDE install_footer.html -->

View File

@@ -0,0 +1,8 @@
<!-- INCLUDE install_header.html -->
<div class="errorbox">
<h3>{MESSAGE_TITLE}</h3>
<p>{MESSAGE_TEXT}</p>
</div>
<!-- INCLUDE install_footer.html -->

View File

@@ -1,4 +1,4 @@
</div>
</div>
<span class="corners-bottom"><span></span></span>

View File

@@ -1,9 +1,10 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}">
<head>
<meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Language" content="{S_USER_LANG}" />
<meta http-equiv="imagetoolbar" content="no" />
<!-- IF META -->{META}<!-- ENDIF -->
<title>{PAGE_TITLE}</title>
@@ -16,6 +17,14 @@
<div id="wrap">
<div id="page-header">
<h1>{L_INSTALL_PANEL}</h1>
<!-- IF S_LANG_SELECT -->
<br />
<form method="post">
<label for="language">{L_SELECT_LANG}:</label>
{S_LANG_SELECT}
<input class="button1" type="submit" id="change_lang" name="change_lang" value="{L_CHANGE}" />
</form>
<!-- ENDIF -->
</div>
<div id="page-body">

View File

@@ -2,49 +2,76 @@
<form id="install_install" method="post" action="{U_ACTION}">
<h2>{TITLE}</h2>
{BODY}
<!-- IF TITLE --><h1>{TITLE}</h1><!-- ENDIF -->
<!-- IF BODY --><p>{BODY}</p><!-- ENDIF -->
<!-- BEGIN checks -->
<!-- IF checks.S_LEGEND -->
<!-- IF not checks.S_FIRST_ROW -->
<!-- IF .checks -->
<fieldset>
<!-- BEGIN checks -->
<!-- IF checks.S_LEGEND -->
<!-- IF not checks.S_FIRST_ROW -->
</fieldset>
<fieldset>
<!-- ENDIF -->
<legend>{checks.LEGEND}</legend>
<!-- IF checks.LEGEND_EXPLAIN --><p>{checks.LEGEND_EXPLAIN}</p><!-- ENDIF -->
<!-- ELSE -->
<dl>
<dt>{checks.TITLE}:<!-- IF checks.S_EXPLAIN --><br /><span class="explain">{checks.TITLE_EXPLAIN}</span><!-- ENDIF --></dt>
<dd>{checks.RESULT}</dd>
</dl>
<!-- ENDIF -->
<fieldset>
<legend>{checks.LEGEND}</legend>
<!-- IF checks.LEGEND_EXPLAIN --><p>{checks.LEGEND_EXPLAIN}</p><!-- ENDIF -->
<!-- ELSE -->
<!-- END checks -->
<dl>
<dt>{checks.TITLE}:</label><!-- IF checks.S_EXPLAIN --><br /><span>{checks.TITLE_EXPLAIN}</span><!-- ENDIF --></dt>
<dd>{checks.RESULT}</dd>
</dl>
<!-- ENDIF -->
<!-- END checks -->
</fieldset>
<!-- ENDIF -->
<!-- IF .options -->
<fieldset>
<!-- BEGIN options -->
<!-- IF options.S_LEGEND -->
<!-- IF not options.S_FIRST_ROW -->
</fieldset>
<fieldset>
<!-- ENDIF -->
<legend>{options.LEGEND}</legend>
<!-- ELSE -->
<dl>
<dt><label for="{options.KEY}">{options.TITLE}:</label><!-- IF options.S_EXPLAIN --><br /><span class="explain">{options.TITLE_EXPLAIN}</span><!-- ENDIF --></dt>
<dd>{options.CONTENT}</dd>
</dl>
<!-- BEGIN options -->
<!-- IF options.S_LEGEND -->
<!-- IF not options.S_FIRST_ROW -->
</fieldset>
<!-- ENDIF -->
<fieldset>
<legend>{options.LEGEND}</legend>
<!-- ELSE -->
<!-- END options -->
<dl>
<dt><label for="{options.KEY}">{options.TITLE}:</label><!-- IF options.S_EXPLAIN --><br /><span>{options.TITLE_EXPLAIN}</span><!-- ENDIF --></dt>
<dd>{options.CONTENT}</dd>
</dl>
</fieldset>
<!-- ENDIF -->
<!-- ENDIF -->
<!-- END options -->
</fieldset>
<!-- IF S_SHOW_DOWNLOAD -->
<h1>{L_DL_CONFIG}</h1>
<p>{L_DL_CONFIG_EXPLAIN}</p>
<fieldset class="submit-buttons">
<legend>{L_DL_CONFIG}</legend>
{S_HIDDEN}
<input class="button1" type="submit" id="dlconfig" name="dlconfig" value="{L_DL_DOWNLOAD}" />&nbsp;<input class="button1" type="submit" id="dldone" name="dldone" value="{L_DL_DONE}" />
</fieldset>
<!-- ENDIF -->
<!-- IF L_SUBMIT -->
<fieldset class="submit-buttons">
<!-- IF L_SUBMIT --><input class="button1" type="submit" id="submit" name="submit" value="{L_SUBMIT}" /><!-- ENDIF -->
</fieldset>
<fieldset class="submit-buttons">
<legend>{L_SUBMIT}</legend>
{S_HIDDEN}
<!-- IF L_SUBMIT --><input class="button1" type="submit" id="submit" onclick="this.className = 'button1 disabled';" onsubmit="this.disabled = 'disabled';" name="submit" value="{L_SUBMIT}" /><!-- ENDIF -->
</fieldset>
<!-- ENDIF -->
</form>
<!-- INCLUDE install_footer.html -->
<!-- INCLUDE install_footer.html -->

View File

@@ -1,5 +1,6 @@
<!-- INCLUDE install_header.html -->
<h2>{TITLE}</h2>
{BODY}
<h1>{TITLE}</h1>
<p>{BODY}</p>
<!-- INCLUDE install_footer.html -->

View File

@@ -0,0 +1,336 @@
<!-- INCLUDE install_header.html -->
<script type="text/javascript">
<!--
function popup(url, width, height)
{
window.open(url.replace(/&amp;/g, '&'), 'diff', 'height=' + height + ',resizable=yes,scrollbars=yes,width=' + width);
return false;
}
//-->
</script>
<!-- IF S_ERROR -->
<h1>{L_NOTICE}</h1>
<p style="color: red;">{ERROR_MSG}</p>
<!-- ENDIF -->
<!-- IF S_INTRO -->
<form id="install_update" method="post" action="{U_ACTION}">
<h1>{L_UPDATE_INSTALLATION}</h1>
<p>{L_UPDATE_INSTALLATION_EXPLAIN}</p>
<fieldset class="submit-buttons">
<input class="button1" type="submit" name="submit" value="{L_NEXT}" />
</fieldset>
</form>
<!-- ELSEIF S_UPLOAD_SUCCESS -->
<form id="install_update" method="post" action="{U_ACTION}">
<h1>{L_UPDATE_SUCCESS}</h1>
<p>{L_UPDATE_SUCCESS_EXPLAIN}</p>
<fieldset class="submit-buttons">
<input class="button1" type="submit" name="submit" value="{L_CHECK_FILES_AGAIN}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- IF S_VERSION_CHECK -->
<h1>{L_VERSION_CHECK}</h1>
<p>{L_VERSION_CHECK_EXPLAIN}</p>
<!-- IF S_UP_TO_DATE -->
<div class="successbox">
<p>{L_VERSION_UP_TO_DATE}</p>
</div>
<!-- ELSE -->
<div class="errorbox">
<p>{L_VERSION_NOT_UP_TO_DATE}</p>
</div>
<!-- ENDIF -->
<fieldset>
<legend></legend>
<dl>
<dt><label>{L_CURRENT_VERSION}</label></dt>
<dd><b>{CURRENT_VERSION}</b></dd>
</dl>
<dl>
<dt><label>{L_LATEST_VERSION}</label></dt>
<dd><b>{LATEST_VERSION}</b></dd>
</dl>
</fieldset>
<!-- IF not S_UP_TO_DATE -->
<form id="install_dbupdate" method="post" action="{U_DB_UPDATE_ACTION}">
<fieldset class="submit-buttons">
<p>{L_UPDATE_DATABASE_EXPLAIN}</p>
<input class="button1" type="submit" name="db_update" value="{L_UPDATE_DATABASE}" />
</fieldset>
</form>
<!-- ELSE -->
<form id="install_update" method="post" action="{U_ACTION}">
<fieldset class="submit-buttons">
<p>{L_CHECK_FILES_UP_TO_DATE}</p>
<input class="button1" type="submit" name="submit" value="{L_CHECK_FILES}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- ELSEIF S_DB_UPDATE -->
<!-- IF not S_DB_UPDATE_FINISHED -->
<h1>{L_PERFORM_DATABASE_UPDATE}</h1>
<p>
{L_PERFORM_DATABASE_UPDATE_EXPLAIN}<br />
<br />
<a href="{U_DB_UPDATE}" target="update"><strong>&raquo; {L_RUN_DATABASE_SCRIPT} &laquo;</strong></a>
</p>
<br /><br />
<form id="install_dbupdate" method="post" action="{U_DB_UPDATE_ACTION}">
<fieldset class="submit-buttons">
<input class="button1" type="submit" name="db_update" value="{L_CHECK_UPDATE_DATABASE}" />
</fieldset>
</form>
<!-- ELSE -->
<h1>{L_UPDATE_DB_SUCCESS}</h1>
<br /><br />
<form id="install_update" method="post" action="{U_ACTION}">
<fieldset class="submit-buttons">
<p>{L_CHECK_FILES_EXPLAIN}</p>
<input class="button1" type="submit" name="submit" value="{L_CHECK_FILES}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- ELSEIF S_FILE_CHECK -->
<!-- IF S_ALL_UP_TO_DATE -->
<div class="successbox">
<h3>{L_UPDATE_SUCCESS}</h3>
<p>{L_ALL_FILES_UP_TO_DATE}</p>
</div>
<!-- ELSE -->
<h1>{L_COLLECTED_INFORMATION}</h1>
<p>{L_COLLECTED_INFORMATION_EXPLAIN}</p>
<!-- IF S_NO_UPDATE_FILES -->
<div class="errorbox">
<h3>{L_NO_UPDATE_FILES}</h3>
<p>{L_NO_UPDATE_FILES_EXPLAIN}</p><br />
<strong>{NO_UPDATE_FILES}</strong>
</div>
<!-- ENDIF -->
<form id="install_update" method="post" action="{U_UPDATE_ACTION}">
<!-- IF .files -->
<!-- BEGIN files -->
<!-- IF files.S_STATUS -->
<!-- IF not files.S_FIRST_ROW -->
</fieldset>
<!-- ENDIF -->
<h2>{files.TITLE}</h2>
<p>{files.EXPLAIN}</p>
<fieldset>
<legend><img src="{T_IMAGE_PATH}file_{files.STATUS}.gif" alt="{files.L_STATUS}" /></legend>
<!-- ELSE -->
<dl>
<!-- IF files.STATUS eq 'up_to_date' -->
<dd class="full" style="text-align: left;"><strong>{files.FILENAME}</strong></dd>
<!-- ELSE -->
<dt style="width: 60%;">
<strong><!-- IF files.DIR_PART -->{files.DIR_PART}<br /><!-- ENDIF -->{files.FILE_PART}</strong>
<!-- IF files.S_CUSTOM -->
<br /><span><em>{L_FILE_USED}: </em>{files.CUSTOM_ORIGINAL}</span>
<!-- ENDIF -->
<!-- IF files.NUM_CONFLICTS -->
<br /><span>{L_NUM_CONFLICTS}: {files.NUM_CONFLICTS}</span>
<!-- ENDIF -->
</dt>
<dd style="margin-left: 60%;"><!-- IF not files.S_BINARY -->[ <a href="{files.U_SHOW_DIFF}" onclick="popup('{files.U_SHOW_DIFF}', 700, 500); return false;">{files.L_SHOW_DIFF}</a> ]<!-- ELSE -->{L_BINARY_FILE}<!-- ENDIF --></dd>
<!-- IF files.S_CUSTOM -->
<dd style="margin-left: 60%;"><input type="checkbox" name="no_update[]" value="{files.FILENAME}" class="radio" />&nbsp; {L_DO_NOT_UPDATE}</dd>
<!-- ENDIF -->
<!-- IF files.STATUS eq 'conflict' -->
</dl>
<dl>
<dt style="width: 60%"><input type="radio" class="radio" name="conflict[{files.FILENAME}]" value="1" checked="checked" />&nbsp; {L_MERGE_NO_MERGE_NEW_OPTION}</dt>
<dd style="margin-left: 60%;">[<a href="{files.U_VIEW_NO_MERGE_NEW}" onclick="popup('{files.U_VIEW_NO_MERGE_NEW}', 700, 500); return false;">{L_SHOW_DIFF_FINAL}</a>]</dd>
</dl>
<dl>
<dt style="width: 60%"><input type="radio" class="radio" name="conflict[{files.FILENAME}]" value="2" />&nbsp; {L_MERGE_NO_MERGE_MOD_OPTION}</dt>
<dd style="margin-left: 60%;">[<a href="{files.U_VIEW_NO_MERGE_MOD}" onclick="popup('{files.U_VIEW_NO_MERGE_MOD}', 700, 500); return false;">{L_SHOW_DIFF_FINAL}</a>]</dd>
</dl>
<!-- IF not files.S_BINARY -->
<dl>
<dt style="width: 60%"><input type="radio" class="radio" name="conflict[{files.FILENAME}]" value="3" />&nbsp; {L_MERGE_NEW_FILE_OPTION}</dt>
<dd style="margin-left: 60%;">[<a href="{files.U_VIEW_NEW_FILE}" onclick="popup('{files.U_VIEW_NEW_FILE}', 700, 500); return false;">{L_SHOW_DIFF_FINAL}</a>]</dd>
</dl>
<dl>
<dt style="width: 60%"><input type="radio" class="radio" name="conflict[{files.FILENAME}]" value="4" />&nbsp; {L_MERGE_MOD_FILE_OPTION}</dt>
<dd style="margin-left: 60%;">[<a href="{files.U_VIEW_MOD_FILE}" onclick="popup('{files.U_VIEW_MOD_FILE}', 700, 500); return false;">{L_SHOW_DIFF_FINAL}</a>]</dd>
</dl>
<!-- ENDIF -->
<!-- IF not files.S_LAST_ROW -->
</fieldset>
<fieldset>
<legend><img src="{T_IMAGE_PATH}file_{files.STATUS}.gif" alt="{files.L_STATUS}" /></legend>
<!-- ENDIF -->
<!-- ENDIF -->
<!-- ENDIF -->
<!-- IF files.STATUS neq 'conflict' --></dl><!-- ENDIF -->
<!-- ENDIF -->
<!-- END files -->
</fieldset>
<!-- ENDIF -->
<br />
<fieldset class="quick">
<input class="button1" type="submit" name="check_again" value="{L_CHECK_FILES_AGAIN}" />
</fieldset>
<br />
<h1>{L_UPDATE_METHOD}</h1>
<p>{L_UPDATE_METHOD_EXPLAIN}</p>
<fieldset class="submit-buttons">
<input class="button1" type="submit" name="ftp_upload" value="{L_FTP_UPDATE_METHOD}" />&nbsp; &nbsp;<input class="button1" type="submit" name="download" value="{L_DOWNLOAD_UPDATE_METHOD}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- ELSEIF S_DOWNLOAD_FILES -->
<h1>{L_SELECT_DOWNLOAD_FORMAT}</h1>
<p>{L_DOWNLOAD_UPDATE_METHOD_EXPLAIN}</p>
<form id="install_update" method="post" action="{U_ACTION}">
<fieldset>
<legend>{L_DOWNLOAD_AS}</legend>
<dl>
<dt><label for="use_method">{L_DOWNLOAD_AS}:</label></dt>
<dd>{RADIO_BUTTONS}</dd>
</dl>
</fieldset>
<fieldset class="submit-buttons">
{S_HIDDEN_FIELDS}
<input type="submit" class="button2" value="{L_CHECK_FILES_AGAIN}" name="check_again" />&nbsp; &nbsp;<input type="submit" class="button1" value="{L_DOWNLOAD}" name="download" />
</fieldset>
</form>
<br /><br />
<p>{L_MAPPING_FILE_STRUCTURE}</p>
<table cellspacing="1">
<col class="row1" /><col class="row2" /><col class="row1" />
<thead>
<tr>
<th style="width: 49%">{L_ARCHIVE_FILE}</th>
<th style="width: 2%">&nbsp;</th>
<th style="width: 49%">{L_DESTINATION}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN location -->
<tr>
<td>{location.SOURCE}</td>
<td><strong>&raquo;</strong></td>
<td>{location.DESTINATION}</td>
</tr>
<!-- END location -->
</tbody>
</table>
<!-- ELSEIF S_FTP_UPLOAD -->
<h1>{L_SELECT_FTP_SETTINGS}</h1>
<form id="install_update" method="post" action="{U_ACTION}">
<!-- IF S_CONNECTION_SUCCESS -->
<div class="successbox">
<p>{L_CONNECTION_SUCCESS}</p>
</div>
<!-- ELSEIF S_CONNECTION_FAILED -->
<div class="errorbox">
<p>{L_CONNECTION_FAILED}<br />{ERROR_MSG}</p>
</div>
<!-- ENDIF -->
<fieldset>
<legend>{L_FTP_SETTINGS}</legend>
<dl>
<dt><label>{L_UPLOAD_METHOD}:</label></dt>
<dd><b>{UPLOAD_METHOD}</b></dd>
</dl>
<!-- BEGIN data -->
<dl>
<dt><label for="{data.DATA}">{data.NAME}:</label><br /><span>{data.EXPLAIN}</span></dt>
<dd><input type="<!-- IF data.DATA == 'password' -->password<!-- ELSE -->text<!-- ENDIF -->" id="{data.DATA}" name="{data.DATA}" value="{data.DEFAULT}" /></dd>
</dl>
<!-- END data -->
</fieldset>
<fieldset class="submit-buttons">
{S_HIDDEN_FIELDS}
<input class="button2" type="submit" name="check_again" value="{L_BACK}" />
<input class="button1" type="submit" name="test_connection" value="{L_TEST_CONNECTION}" />
<input class="button1" type="submit" name="submit" value="{L_UPDATE_FILES}" />
</fieldset>
</form>
<!-- ENDIF -->
<!-- INCLUDE install_footer.html -->

View File

@@ -0,0 +1,244 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}">
<head>
<meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Language" content="{S_USER_LANG}" />
<meta http-equiv="imagetoolbar" content="no" />
<!-- IF META -->{META}<!-- ENDIF -->
<title>{PAGE_TITLE}</title>
<link href="../adm/style/admin.css" rel="stylesheet" type="text/css" media="screen" />
<script type="text/javascript">
<!--
function resize_panel()
{
var block = document.getElementById('codepanel');
var height;
if (window.innerHeight)
{
height = window.innerHeight - 150;
block.style.height = height + 'px';
}
else
{
//whatever IE needs to do this
}
}
-->
</script>
<style type="text/css">
<!--
#main {
font-size: 1.25em;
line-height: 0.7em;
margin: 0;
padding: 0;
width: 99%;
}
<!-- IF DIFF_MODE neq 'side_by_side' and DIFF_MODE neq 'raw' -->
div#codepanel {
overflow: auto;
width: 100%;
height: 350px;
}
<!-- ELSE -->
div#codepanel {
background-color: #eee;
}
<!-- ENDIF -->
<!-- IF not IS_DIFF_NEW_FILE -->
/**
* Unified Diff
*/
.file {
line-height: .7em;
}
.diff {
margin: 0;
}
.added {
background-color: #dfd;
}
.removed {
background-color: #fdd;
}
.info {
color: #888;
}
.context {
background-color: #eee;
}
/**
* Inline Diff
*/
.ins {
background-color: #dfd;
text-decoration: underline;
}
.del {
background-color: #fdd;
text-decoration: line-through;
}
/**
* Column Diff
*/
table.hrdiff {
margin: 0 0 8px 5px;
width: 100%;
overflow: hidden;
border-bottom: 1px solid #999;
table-layout: fixed;
}
table.hrdiff th {
text-align: left;
width: 50%;
color: #333;
font-family: Verdana,Helvetica,sans-serif;
font-size: 11px;
border-bottom: 1px solid #999;
background: transparent;
}
table.hrdiff thead th {
font-weight: bold;
font-size: 110%;
padding: 2px;
}
table.hrdiff tr:first-child th {
border-top: none;
}
table.hrdiff tbody th {
padding: 2em 1px 1px 1px;
font-size: 80%;
border-top: 1px solid #999;
}
table.hrdiff tbody td.old {
border-left: 1px solid #999;
border-right: 1px solid #999;
}
table.hrdiff tbody td.new {
border-right: 1px solid #999;
}
table.hrdiff td pre {
overflow: auto;
display: block;
width: 100%;
overflow: auto;
display: block;
}
table.hrdiff .unmodified {
background: #fff;
}
table.hrdiff .added {
background: #9f9;
}
table.hrdiff .added_empty {
background: #cfc;
}
table.hrdiff .modified {
background: #fd9;
}
table.hrdiff .removed {
background: #f99;
}
table.hrdiff .removed_empty {
background: #fcc;
}
table.hrdiff caption {
caption-side: top;
text-align: left;
margin: 0 0 8px 5px;
font-size: 90%;
font-weight: bold;
padding: 5px;
}
table.hrdiff caption span {
height: 10px;
width: 10px;
line-height: 10px;
letter-spacing: 10px;
border: 1px solid #000;
margin-left: 0.5em;
vertical-align: baseline;
}
<!-- ENDIF -->
//-->
</style>
</head>
<!-- IF DIFF_MODE neq 'side_by_side' and DIFF_MODE neq 'raw' -->
<body onresize="resize_panel();" onload="resize_panel();">
<!-- ELSE -->
<body>
<!-- ENDIF -->
<div id="wrap">
<div id="page-header">
<!-- IF S_DIFF_NEW_FILE -->
<h1>{L_VIEWING_FILE_CONTENTS}</h1>
<!-- ELSE -->
<h1>{L_VIEWING_FILE_DIFF}</h1>
<!-- ENDIF -->
<!-- IF not S_DIFF_NEW_FILE -->
<br />
<form method="post">
<label for="diff_mode">{L_SELECT_DIFF_MODE}:</label>
<select name="diff_mode" id="diff_mode">{S_DIFF_MODE_OPTIONS}</select>
<input class="button1" type="submit" id="submit" name="submit" value="{L_CHANGE}" />
</form>
<!-- ENDIF -->
</div>
<div id="page-body">
<div class="panel" id="codepanel">
<span class="corners-top"><span></span></span>
<div id="content">
<div id="main">
<!-- IF S_DIFF_CONFLICT_FILE -->
<div style="float: right;"><strong>{L_NUM_CONFLICTS}: {NUM_CONFLICTS}</strong></div>
<!-- ENDIF -->
{DIFF_CONTENT}
</div>
</div>
<span class="corners-bottom"><span></span></span>
</div>
</div>
<!-- INCLUDE simple_footer.html -->

View File

@@ -1,6 +1,6 @@
<!-- INCLUDE overall_header.html -->
<div class="successbox">
<div <!-- IF S_USER_NOTICE -->class="successbox"<!-- ELSE -->class="errorbox"<!-- ENDIF -->>
<h3>{MESSAGE_TITLE}</h3>
<p>{MESSAGE_TEXT}</p>
</div>

View File

@@ -1,4 +1,4 @@
</div>
</div>
<span class="corners-bottom"><span></span></span>
@@ -13,14 +13,15 @@
"phpBB" linked to www.phpbb.com. If you refuse to include even this then support on our
forums may be affected.
The phpBB Group : 2004
The phpBB Group : 2006
// -->
<div id="page-footer">
<!-- IF S_COPYRIGHT_HTML -->
Powered by phpBB {VERSION} &copy; 2006 <a href="http://www.phpbb.com/">phpBB Group</a>
<!-- IF TRANSLATION_INFO --><br />{TRANSLATION_INFO}<!-- ENDIF -->
<!-- ENDIF -->
<!-- IF DEBUG_OUTPUT -->
<!-- IF S_COPYRIGHT_HTML --><br /><!-- ENDIF -->
{DEBUG_OUTPUT}

View File

@@ -1,9 +1,10 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}">
<head>
<meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Language" content="{S_USER_LANG}" />
<meta http-equiv="imagetoolbar" content="no" />
<!-- IF META -->{META}<!-- ENDIF -->
<title>{PAGE_TITLE}</title>
@@ -12,24 +13,28 @@
<script type="text/javascript">
<!--
var jump_page = '{L_JUMP_PAGE}:';
var jump_page = '{LA_JUMP_PAGE}:';
var on_page = '{ON_PAGE}';
var per_page = '{PER_PAGE}';
var base_url = '{BASE_URL}';
// Jump to page
/**
* Jump to page
*/
function jumpto()
{
var page = prompt(jump_page, on_page);
if (page !== null && !isNaN(page) && page > 0)
{
document.location.href = base_url.replace('&amp;', '&') + '&start=' + ((page - 1) * per_page);
document.location.href = base_url.replace(/&amp;/g, '&') + '&start=' + ((page - 1) * per_page);
}
}
// Set display of page element
// s[-1,0,1] = hide,toggle display,show
/**
* Set display of page element
* s[-1,0,1] = hide,toggle display,show
*/
function dE(n, s, type)
{
if (!type)
@@ -45,11 +50,18 @@ function dE(n, s, type)
e.style.display = (s == 1) ? type : 'none';
}
// Mark/unmark checkboxes
// id = ID of parent container, name = name prefix, state = state [true/false]
/**
* Mark/unmark checkboxes
* id = ID of parent container, name = name prefix, state = state [true/false]
*/
function marklist(id, name, state)
{
var parent = document.getElementById(id);
if (!parent)
{
eval('parent = document.' + id);
}
if (!parent)
{
return;
@@ -66,19 +78,42 @@ function marklist(id, name, state)
}
}
<!-- IF S_INCLUDE_SWATCH -->
function swatch()
{
window.open('{U_SWATCH}', '_swatch', 'height=115, resizable=yes, scrollbars=no, width=636');
return false;
}
<!-- ENDIF -->
/**
* Open trace popup
*/
function trace(link)
{
window.open(link.replace(/&amp;/g, '&'), '_trace', 'height=515, resizable=yes, scrollbars=yes, width=680');
return false;
}
/**
* Find a member
*/
function find_username()
{
<!-- IF UA_FIND_USERNAME -->
window.open('{UA_FIND_USERNAME}', '_usersearch', 'height=570, resizable=yes, scrollbars=yes, width=760');
<!-- ENDIF -->
return false;
}
/**
* Color swatch
*/
function swatch(field)
{
<!-- IF UA_SWATCH -->
window.open('{UA_SWATCH}' + field, '_swatch', 'height=150, resizable=yes, scrollbars=no, width=636');
<!-- ENDIF -->
return false;
}
//-->
</script>
</head>
<body>
<body class="{S_CONTENT_DIRECTION}">
<div id="wrap">
<div id="page-header">
<h1>{L_ADMIN_PANEL}</h1>

View File

@@ -5,239 +5,126 @@
var active_fmask = '0';
var active_cat = '0';
var id = '000';
var role_options = new Array();
<!-- IF S_ROLE_JS_ARRAY -->
{S_ROLE_JS_ARRAY}
<!-- ENDIF -->
// Show/hide option panels
// value = suffix for ID to show
function swap_options(pmask, fmask, cat)
{
id = pmask + fmask + cat;
active_option = active_pmask + active_fmask + active_cat;
if (id == active_option)
{
return;
}
// Hide active options
dE('options' + active_option, -1);
dE('head' + active_pmask + active_fmask, 1, 'inline');
dE('apply' + active_pmask + active_fmask, -1);
// Display container
dE('options' + id, 1);
dE('head' + pmask + fmask, -1, 'inline');
dE('apply' + pmask + fmask, 1);
active_pmask = pmask;
active_fmask = fmask;
active_cat = cat;
}
// Mark all radio buttons in one panel
// id = table ID container, s = status ['y'/'u'/'n']
function mark_options(id, s)
{
var t = document.getElementById(id);
if (!t)
{
return;
}
var rb = t.getElementsByTagName('input');
for (var r = 0; r < rb.length; r++ )
{
if (rb[r].id.substr(rb[r].id.length-1) == s)
{
rb[r].checked = true;
}
}
}
// Mark one radio button in one panel
// id = table ID container, field_name = the auth option, s = status ['y'/'u'/'n']
function mark_one_option(id, field_name, s)
{
var t = document.getElementById(id);
if (!t)
{
return;
}
var rb = t.getElementsByTagName('input');
for (var r = 0; r < rb.length; r++ )
{
if (rb[r].id.substr(rb[r].id.length-field_name.length-3, field_name.length) == field_name && rb[r].id.substr(rb[r].id.length-1) == s)
{
rb[r].checked = true;
}
}
}
// Reset role dropdown field to Select role... if an option gets changed
function reset_role(id)
{
var t = document.getElementById(id);
if (!t)
{
return;
}
t.options[0].selected = true;
}
// Load role and set options accordingly
function set_role_settings(role_id, target_id)
{
settings = role_options[role_id];
if (!settings)
{
return;
}
// Mark all options to unset first...
mark_options(target_id, 'u');
for (var r in settings)
{
mark_one_option(target_id, r, (settings[r] == 1) ? 'y' : 'n');
}
}
//-->
</script>
<script type="text/javascript" src="style/permissions.js"></script>
<!-- BEGIN p_mask -->
<fieldset class="permissions">
<!-- IF p_mask.USER_GROUPS_DEFAULT or p_mask.USER_GROUPS_CUSTOM -->
<br />
<p>
<!-- IF p_mask.USER_GROUPS_DEFAULT --><b>{p_mask.NAME}</b> {L_USER_IS_MEMBER_OF_DEFAULT}: <b>{p_mask.USER_GROUPS_DEFAULT}</b><br /><!-- ENDIF -->
<!-- IF p_mask.USER_GROUPS_CUSTOM --><b>{p_mask.NAME}</b> {L_USER_IS_MEMBER_OF_CUSTOM}: <b>{p_mask.USER_GROUPS_CUSTOM}</b><!-- ENDIF -->
</p>
<div class="clearfix"></div>
<h3>{p_mask.NAME}<!-- IF p_mask.S_LOCAL --> <span class="small"> [{p_mask.L_ACL_TYPE}]</span><!-- ENDIF --></h3>
<!-- BEGIN f_mask -->
<fieldset class="perm" id="perm{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}">
<legend id="legend{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}">
<!-- IF not p_mask.S_VIEW -->
<input type="checkbox" style="display: none;" class="perm_cb" name="inherit[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" id="checkbox{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" value="1" onclick="toggle_opacity('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')" />
<!-- ELSE -->
<!-- ENDIF -->
{p_mask.f_mask.NAME}
</legend>
<!-- IF not p_mask.S_VIEW -->
<div class="perm_switch">
<a href="#" onclick="swap_options('{p_mask.S_ROW_COUNT}', '{p_mask.f_mask.S_ROW_COUNT}', '0', true); return false;">{L_ADVANCED_PERMISSIONS}</a>
</div>
<dl class="perm_simple">
<dt style="width: 20%"><label for="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}">{L_ROLE}:</label></dt>
<!-- IF p_mask.f_mask.S_ROLE_OPTIONS -->
<dd style="margin-left: 20%"><select id="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" onchange="set_role_settings(this.options[selectedIndex].value, 'advanced{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); init_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')">{p_mask.f_mask.S_ROLE_OPTIONS}</select></dd>
<!-- ELSE -->
<dd>{L_NO_ROLE_AVAILABLE}</dd>
<!-- ENDIF -->
</dl>
<!-- ENDIF -->
<table cellspacing="1" class="pmask">
<thead>
<tr>
<th style="text-align: left; width: 70%">{p_mask.NAME}<!-- IF p_mask.S_LOCAL --><span class="small" style="text-transform: none;"> [{p_mask.L_ACL_TYPE}]</span><!-- ENDIF --></th>
<th>{p_mask.CATEGORIES}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN category -->
<!-- IF p_mask.f_mask.category.S_FIRST_ROW -->
<div class="perm_advanced" id="advanced{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}"<!-- IF not p_mask.S_VIEW --> style="display: none;"<!-- ENDIF -->>
<!-- BEGIN f_mask -->
<!-- IF p_mask.f_mask.S_ROW_COUNT is even --><tr class="row1"><!-- ELSE --><tr class="row2"><!-- ENDIF -->
<td class="name">
<table cellspacing="0" cellpadding="0" class="type2" style="background-color: transparent; border: 0;">
<tbody>
<tr>
<td width="16">
<span id="head{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}"<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW --> style="display: none;"<!-- ENDIF -->>
<!-- IF not p_mask.S_VIEW --><input type="checkbox" name="inherit[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" value="1" /><!-- ELSE -->&nbsp;<!-- ENDIF -->
</span>
</td>
<td>{p_mask.f_mask.PADDING}<a href="javascript:swap_options('{p_mask.S_ROW_COUNT}', '{p_mask.f_mask.S_ROW_COUNT}', '0');">{p_mask.f_mask.NAME}</a></span></td>
<td style="text-align: right;">
<!-- IF p_mask.S_VIEW -->
&nbsp;
<!-- ELSE -->
<!-- IF p_mask.f_mask.S_ROLE_OPTIONS -->
<b>{L_ROLE}:</b>&nbsp; &nbsp;<select id="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" onchange="set_role_settings(this.options[selectedIndex].value, 'a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')">{p_mask.f_mask.S_ROLE_OPTIONS}</select>
<!-- ELSE -->
<b>{L_ROLE}:</b> {L_NO_ROLE_AVAILABLE}
<!-- ENDIF -->
<!-- ENDIF -->
</td>
</tr>
</tbody>
</table>
</td>
<!-- BEGIN category -->
<!-- IF p_mask.f_mask.category.S_YES -->
<td class="preset_yes">
<!-- ELSEIF p_mask.f_mask.category.S_NO -->
<td class="preset_no">
<!-- ELSEIF p_mask.f_mask.category.S_UNSET -->
<td class="preset_unset">
<!-- ELSE -->
<td class="preset_custom">
<!-- ENDIF -->
<a href="javascript:swap_options('{p_mask.S_ROW_COUNT}', '{p_mask.f_mask.S_ROW_COUNT}', '{p_mask.f_mask.category.S_ROW_COUNT}');"><span>&nbsp;</span></a></td>
<!-- END category -->
</tr>
<tr class="row3">
<td style="vertical-align: top;">
<div id="apply{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" style="text-align: left; width: 98%; margin: 5px;<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW --><!-- ELSE --> display: none;<!-- ENDIF -->">
<!-- IF not p_mask.S_VIEW -->
<div style="float: left; width: 60%;">
<p class="small">{L_APPLY_PERMISSIONS_EXPLAIN}</p>
<input class="button1" type="submit" name="psubmit[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" value="{L_APPLY_PERMISSIONS}" />
</div>
<div style="float: right; text-align: right; width: 35%;">
<p class="small">
[<a href="javascript: mark_options('a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}', 'y'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}');">{L_ALL_YES}</a>]<br />
[<a href="javascript: mark_options('a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}', 'n'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}');">{L_ALL_NO}</a>]<br />
[<a href="javascript: mark_options('a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}', 'u'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}');">{L_ALL_UNSET}</a>]
</p>
</div>
<!-- ELSE -->
&nbsp;
<!-- ENDIF -->
<div class="perm_cat">
<ul>
<!-- ENDIF -->
<!-- IF p_mask.f_mask.category.S_YES -->
<li class="perm_preset_yes<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}">
<!-- ELSEIF p_mask.f_mask.category.S_NEVER -->
<li class="perm_preset_never<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}">
<!-- ELSEIF p_mask.f_mask.category.S_NO -->
<li class="perm_preset_no<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}">
<!-- ELSE -->
<li class="perm_preset_custom<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --> activetab<!-- ENDIF -->" id="tab{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}">
<!-- ENDIF -->
<a href="#" onclick="swap_options('{p_mask.S_ROW_COUNT}', '{p_mask.f_mask.S_ROW_COUNT}', '{p_mask.f_mask.category.S_ROW_COUNT}', false<!-- IF p_mask.S_VIEW -->, true<!-- ENDIF -->); return false;"><span class="tabbg"><span class="colour"></span>{category.CAT_NAME}</span></a></li>
<!-- END category -->
</ul>
</div>
</td>
<td colspan="{p_mask.S_NUM_CATS}" id="a_options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" style="vertical-align: top; text-align: left;">
<div style="width: 350px; height: 0; line-height: 0;">&nbsp;</div>
<!-- BEGIN category -->
<table cellspacing="1" id="options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}" class="type3"<!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --><!-- ELSE --> style="display: none;"<!-- ENDIF -->>
<!-- BEGIN category -->
<div class="perm_panel" id="options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}" <!-- IF p_mask.S_FIRST_ROW and p_mask.f_mask.S_FIRST_ROW and p_mask.f_mask.category.S_FIRST_ROW --><!-- ELSE --> style="display: none;"<!-- ENDIF -->>
<span class="corners-top"><span></span></span>
<div class="tablewrap">
<table id="table{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}" cellspacing="1">
<colgroup>
<col class="permissions_name" />
<col class="permissions_yes" />
<col class="permissions_no" />
<!-- IF not p_mask.S_VIEW -->
<col class="permissions_never" />
<!-- ENDIF -->
</colgroup>
<thead>
<tr>
<th scope="col" style="text-align: left; padding-left: 0;"><strong>{L_ACL_SETTING} [{p_mask.f_mask.category.CAT_NAME}]</strong></th>
<th class="name" scope="col"><strong>{L_ACL_SETTING}</strong></th>
<!-- IF p_mask.S_VIEW -->
<th scope="col">{L_ACL_YES}</th>
<th scope="col">{L_ACL_NO}</th>
<th style="width: 40px;" class="value" scope="col">{L_ACL_YES}</th>
<th style="width: 40px;" class="value" scope="col">{L_ACL_NEVER}</th>
<!-- ELSE -->
<th scope="col"><a href="javascript: mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'y'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}');">{L_ACL_YES}</a></th>
<th scope="col"><a href="javascript: mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'u'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}');">{L_ACL_UNSET}</a></th>
<th scope="col"><a href="javascript: mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'n'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}');">{L_ACL_NO}</a></th>
<th class="value" scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'y'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false, 'yes'); return false;">{L_ACL_YES}</a></th>
<th class="value" scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'u'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false, 'no'); return false;">{L_ACL_NO}</a></th>
<th class="value" scope="col"><a href="#" onclick="mark_options('options{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', 'n'); reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false, 'never'); return false;">{L_ACL_NEVER}</a></th>
<!-- ENDIF -->
</tr>
</thead>
<tbody>
<!-- BEGIN mask -->
<!-- IF p_mask.f_mask.category.mask.S_ROW_COUNT is even --><tr class="row4"><!-- ELSE --><tr class="row3"><!-- ENDIF -->
<th>{p_mask.f_mask.category.mask.PERMISSION}</th>
<th class="permission_name<!-- IF p_mask.f_mask.category.mask.S_ROW_COUNT is even --> row4<!-- ELSE --> row3<!-- ENDIF -->"><!-- IF p_mask.f_mask.category.mask.U_TRACE --><a href="#" class="trace" onclick="trace('{p_mask.f_mask.category.mask.U_TRACE}'); return false;" title="{L_TRACE_SETTING}"><img src="images/icon_trace.gif" alt="{L_TRACE_SETTING}" /></a> <!-- ENDIF -->{p_mask.f_mask.category.mask.PERMISSION}</th>
<!-- IF p_mask.S_VIEW -->
<td<!-- IF p_mask.f_mask.category.mask.S_YES --> class="yes"<!-- ELSE --> class="unset"<!-- ENDIF -->>&nbsp;</td>
<td<!-- IF p_mask.f_mask.category.mask.S_NO --> class="no"<!-- ELSE --> class="unset"<!-- ENDIF -->>&nbsp;</td>
<td<!-- IF p_mask.f_mask.category.mask.S_YES --> class="yes"<!-- ENDIF -->>&nbsp;</td>
<td<!-- IF p_mask.f_mask.category.mask.S_NEVER --> class="never"<!-- ENDIF -->></td>
<!-- ELSE -->
<td class="unset"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_y" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" type="radio"<!-- IF p_mask.f_mask.category.mask.S_YES --> checked="checked"<!-- ENDIF --> value="1" /></td>
<td class="unset"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_u" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" type="radio"<!-- IF p_mask.f_mask.category.mask.S_UNSET --> checked="checked"<!-- ENDIF --> value="-1" /></td>
<td class="unset"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}')" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_n" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" type="radio"<!-- IF p_mask.f_mask.category.mask.S_NO --> checked="checked"<!-- ENDIF --> value="0" /></td>
<td><label for="{p_mask.f_mask.category.mask.S_FIELD_NAME}_y"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false)" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_y" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_YES --> checked="checked"<!-- ENDIF --> value="1" /></label></td>
<td><label for="{p_mask.f_mask.category.mask.S_FIELD_NAME}_u"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false)" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_u" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_NO --> checked="checked"<!-- ENDIF --> value="-1" /></label></td>
<td><label for="{p_mask.f_mask.category.mask.S_FIELD_NAME}_n"><input onchange="reset_role('role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); set_colours('{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}{p_mask.f_mask.category.S_ROW_COUNT}', false)" id="{p_mask.f_mask.category.mask.S_FIELD_NAME}_n" name="{p_mask.f_mask.category.mask.S_FIELD_NAME}" class="radio" type="radio"<!-- IF p_mask.f_mask.category.mask.S_NEVER --> checked="checked"<!-- ENDIF --> value="0" /></label></td>
<!-- ENDIF -->
</tr>
<!-- END mask -->
</tbody>
</table>
<!-- END category -->
</td>
</tr>
<!-- END f_mask -->
</tbody>
</table>
</div>
<!-- IF not p_mask.S_VIEW -->
<fieldset class="quick" style="margin-right: 11px;">
<p class="small">{L_APPLY_PERMISSIONS_EXPLAIN}</p>
<input class="button1" type="submit" name="psubmit[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]" value="{L_APPLY_PERMISSIONS}" />
<p class="small"><a href="#" onclick="reset_opacity(0, '{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); return false;">{L_MARK_ALL}</a> &bull; <a href="#" onclick="reset_opacity(1, '{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}'); return false;">{L_UNMARK_ALL}</a></p>
</fieldset>
<!-- ENDIF -->
<span class="corners-bottom"><span></span></span>
</div>
<!-- END category -->
</div>
</fieldset>
<!-- END f_mask -->
<!-- END p_mask -->

View File

@@ -0,0 +1,51 @@
<!-- INCLUDE simple_header.html -->
<div style="background-color: #fff; padding: 10px; margin-top: 10px;" class="permissions">
<!-- IF U_BACK --><a href="{U_BACK}" style="float: right">&laquo; {L_BACK}</a><!-- ENDIF -->
<h3>{L_TRACE_FOR}: {PERMISSION_USERNAME} / <!-- IF FORUM_NAME -->{FORUM_NAME} / <!-- ENDIF -->{PERMISSION} </h3>
<br />
<table cellspacing="1" class="type1">
<thead>
<tr>
<th>{L_TRACE_WHO}</th>
<th style="width: 50px;">{L_ACL_SETTING}</th>
<th style="width: 50px;">{L_TRACE_TOTAL}</th>
<th>{L_INFORMATION}</th>
</tr>
</thead>
<tbody>
<!-- BEGIN trace -->
<!-- IF trace.S_ROW_COUNT is even --><tr class="row4"><!-- ELSE --><tr class="row3"><!-- ENDIF -->
<td style="white-space: nowrap;"><strong>{trace.WHO}</strong></td>
<!-- IF trace.S_SETTING_NEVER -->
<td class="never">{L_ACL_NEVER}</td>
<!-- ELSEIF trace.S_SETTING_YES -->
<td class="yes">{L_ACL_YES}</td>
<!-- ELSE -->
<td class="no">{L_ACL_NO}</td>
<!-- ENDIF -->
<!-- IF trace.S_TOTAL_NEVER -->
<td class="never">{L_ACL_NEVER}</td>
<!-- ELSEIF trace.S_TOTAL_YES -->
<td class="yes">{L_ACL_YES}</td>
<!-- ELSE -->
<td class="no">{L_ACL_NO}</td>
<!-- ENDIF -->
<td>{trace.INFORMATION}</td>
</tr>
<!-- END trace -->
</tbody>
</table>
<br />
<!-- INCLUDE simple_footer.html -->
</div>

View File

@@ -0,0 +1,359 @@
/**
* Hide and show all checkboxes
* status = true (show boxes), false (hide boxes)
*/
function display_checkboxes(status)
{
var form = document.getElementById('set_permissions');
var cb = document.getElementsByTagName('input');
var display;
//show
if (status)
{
display = 'inline';
}
//hide
else
{
display = 'none';
}
for (var i = 0; i < cb.length; i++ )
{
if (cb[i].className == 'perm_cb')
{
cb[i].style.display = display;
}
}
}
/**
* Change opacity of element
* e = element
* value = 0 (hidden) till 10 (fully visible)
*/
function set_opacity(e, value) {
e.style.opacity = value/10;
//IE opacity currently turned off, because of its astronomical stupidity
//e.style.filter = 'alpha(opacity=' + value*10 + ')';
}
/**
* Reset the opacity and checkboxes
* block_id = id of the element that needs to be toggled
*/
function toggle_opacity(block_id) {
var cb = document.getElementById('checkbox' + block_id);
var fs = document.getElementById('perm' + block_id);
if (cb.checked)
{
set_opacity(fs, 5);
}
else
{
set_opacity(fs, 10);
}
}
/**
* Reset the opacity and checkboxes
* value = 0 (checked) and 1 (unchecked)
* except_id = id of the element not to hide
*/
function reset_opacity(status, except_id) {
var perm = document.getElementById('set_permissions');
var fs = perm.getElementsByTagName('fieldset');
var opacity = 5;
if (status)
{
opacity = 10;
}
for (var i = 0; i < fs.length; i++ )
{
if (fs[i].className != 'quick')
{
set_opacity(fs[i], opacity);
}
}
if (typeof(except_id) != 'undefined')
{
set_opacity(document.getElementById('perm' + except_id), 10);
}
//reset checkboxes too
marklist('set_permissions', 'inherit', !status);
}
/**
* Check whether we have a full radiobutton row of true
* index = offset for the row of inputs (0 == first row, 1 == second, 2 == third),
* rb = array of radiobuttons
*/
function get_radio_status(index, rb)
{
for (var i = index; i < rb.length; i = i + 3 )
{
if (rb[i].checked != true)
{
if (i > index)
{
//at least one is true, but not all (custom)
return 2;
}
//first one is not true
return 0;
}
}
// all radiobuttons true
return 1;
}
/**
* Set tab colours
* id = panel the tab needs to be set for,
* init = initialising on open,
* quick = If no calculation needed, this contains the colour
*/
function set_colours(id, init, quick)
{
var table = document.getElementById('table' + id);
var tab = document.getElementById('tab' + id);
if (typeof(quick) != 'undefined')
{
tab.className = 'perm_preset_' + quick + ' activetab';
return;
}
var rb = table.getElementsByTagName('input');
var colour = 'custom';
var status = get_radio_status(0, rb);
if (status == 1)
{
colour = 'yes';
}
else if (status == 0)
{
// We move on to No
status = get_radio_status(1, rb);
if (status == 1)
{
colour = 'no';
}
else if (status == 0)
{
// We move on to Never
status = get_radio_status(2, rb);
if (status == 1)
{
colour = 'never';
}
}
}
if (init)
{
tab.className = 'perm_preset_' + colour;
}
else
{
tab.className = 'perm_preset_' + colour + ' activetab';
}
}
/**
* Initialise advanced tab colours on first load
* block_id = block that is opened
*/
function init_colours(block_id)
{
var block = document.getElementById('advanced' + block_id);
var panels = block.getElementsByTagName('div');
var tab = document.getElementById('tab' + id);
for (var i = 0; i < panels.length; i++)
{
if(panels[i].className == 'perm_panel')
{
set_colours(panels[i].id.replace(/options/, ''), true);
}
}
tab.className = tab.className + ' activetab';
}
/**
* Show/hide option panels
* value = suffix for ID to show
* adv = we are opening advanced permissions
* view = called from view permissions
*/
function swap_options(pmask, fmask, cat, adv, view)
{
id = pmask + fmask + cat;
active_option = active_pmask + active_fmask + active_cat;
var old_tab = document.getElementById('tab' + active_option);
var new_tab = document.getElementById('tab' + id);
var adv_block = document.getElementById('advanced' + pmask + fmask);
if (adv_block.style.display == 'block' && adv == true)
{
dE('advanced' + pmask + fmask, -1);
reset_opacity(1);
display_checkboxes(false);
return;
}
// no need to set anything if we are clicking on the same tab again
if (new_tab == old_tab && !adv)
{
return;
}
// init colours
if (adv && (pmask + fmask) != (active_pmask + active_fmask))
{
init_colours(pmask + fmask);
display_checkboxes(true);
reset_opacity(1);
}
else if (adv)
{
//Checkbox might have been clicked, but we need full visibility
display_checkboxes(true);
reset_opacity(1);
}
// set active tab
old_tab.className = old_tab.className.replace(/\ activetab/g, '');
new_tab.className = new_tab.className + ' activetab';
if (id == active_option && adv != true)
{
return;
}
dE('options' + active_option, -1);
//hiding and showing the checkbox
if (document.getElementById('checkbox' + active_pmask + active_fmask))
{
dE('checkbox' + pmask + fmask, -1);
if ((pmask + fmask) != (active_pmask + active_fmask))
{
document.getElementById('checkbox' + active_pmask + active_fmask).style.display = 'inline';
}
}
if (!view)
{
dE('advanced' + active_pmask + active_fmask, -1);
}
if (!view)
{
dE('advanced' + pmask + fmask, 1);
}
dE('options' + id, 1);
active_pmask = pmask;
active_fmask = fmask;
active_cat = cat;
}
/**
* Mark all radio buttons in one panel
* id = table ID container, s = status ['y'/'u'/'n']
*/
function mark_options(id, s)
{
var t = document.getElementById(id);
if (!t)
{
return;
}
var rb = t.getElementsByTagName('input');
for (var r = 0; r < rb.length; r++)
{
if (rb[r].id.substr(rb[r].id.length-1) == s)
{
rb[r].checked = true;
}
}
}
function mark_one_option(id, field_name, s)
{
var t = document.getElementById(id);
if (!t)
{
return;
}
var rb = t.getElementsByTagName('input');
for (var r = 0; r < rb.length; r++)
{
if (rb[r].id.substr(rb[r].id.length-field_name.length-3, field_name.length) == field_name && rb[r].id.substr(rb[r].id.length-1) == s)
{
rb[r].checked = true;
}
}
}
/**
* Reset role dropdown field to Select role... if an option gets changed
*/
function reset_role(id)
{
var t = document.getElementById(id);
if (!t)
{
return;
}
t.options[0].selected = true;
}
/**
* Load role and set options accordingly
*/
function set_role_settings(role_id, target_id)
{
settings = role_options[role_id];
if (!settings)
{
return;
}
// Mark all options to no (unset) first...
mark_options(target_id, 'u');
for (var r in settings)
{
mark_one_option(target_id, r, (settings[r] == 1) ? 'y' : 'n');
}
}

View File

@@ -1,7 +1,10 @@
<!-- INCLUDE simple_header.html -->
<script language="javascript" type="text/javascript">
<script type="text/javascript">
<!--
/**
* Close previously opened popup
*/
function close_popup()
{
if (opener != null)
@@ -22,14 +25,13 @@
//-->
</script>
<div class="successbox">
<h3>{L_PROGRESS}</h3>
<img src="images/progress_bar.gif" alt="{L_PROGRESS}" />
<p>{L_PROGRESS_EXPLAIN}</p>
</div>
<script language="javascript" type="text/javascript">
<script type="text/javascript">
<!--
close_popup();
//-->

View File

@@ -1,6 +1,6 @@
<!-- INCLUDE simple_header.html -->
<div class="errorbox">
<div class="successbox">
<h3>{MESSAGE_TITLE}</h3>
<p>{MESSAGE_TEXT}</p>
</div>

View File

@@ -1,4 +1,4 @@
<div style="text-align: right;"><a href="#" onclick="javascript: self.close();">{L_CLOSE_WINDOW}</a></div>
<div style="text-align: right;"><a href="#" onclick="self.close(); return false;">{L_CLOSE_WINDOW}</a></div>
<br /><br />
</div>
@@ -10,13 +10,14 @@
"phpBB" linked to www.phpbb.com. If you refuse to include even this then support on our
forums may be affected.
The phpBB Group : 2004
The phpBB Group : 2006
// -->
<div id="page-footer">
<!-- IF S_COPYRIGHT_HTML -->
<br />Powered by phpBB {VERSION} &copy; 2005 <a href="http://www.phpbb.com/">phpBB Group</a>
<br />Powered by phpBB {VERSION} &copy; 2006 <a href="http://www.phpbb.com/">phpBB Group</a>
<!-- IF TRANSLATION_INFO --><br />{TRANSLATION_INFO}<!-- ENDIF -->
<!-- ENDIF -->
<!-- IF DEBUG_OUTPUT -->

View File

@@ -1,9 +1,10 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}">
<html xmlns="http://www.w3.org/1999/xhtml" dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}" xml:lang="{S_USER_LANG}">
<head>
<meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Language" content="{S_USER_LANG}" />
<meta http-equiv="imagetoolbar" content="no" />
<!-- IF META -->{META}<!-- ENDIF -->
<title>{PAGE_TITLE}</title>
@@ -12,24 +13,28 @@
<script type="text/javascript">
<!--
var jump_page = '{L_JUMP_PAGE}:';
var jump_page = '{LA_JUMP_PAGE}:';
var on_page = '{ON_PAGE}';
var per_page = '{PER_PAGE}';
var base_url = '{BASE_URL}';
// Jump to page
/**
* Jump to page
*/
function jumpto()
{
var page = prompt(jump_page, on_page);
if (page !== null && !isNaN(page) && page > 0)
{
document.location.href = base_url.replace('&amp;', '&') + '&start=' + ((page - 1) * per_page);
document.location.href = base_url.replace(/&amp;/g, '&') + '&start=' + ((page - 1) * per_page);
}
}
// Set display of page element
// s[-1,0,1] = hide,toggle display,show
/**
* Set display of page element
* s[-1,0,1] = hide,toggle display,show
*/
function dE(n, s, type)
{
if (!type)
@@ -45,8 +50,10 @@ function dE(n, s, type)
e.style.display = (s == 1) ? type : 'none';
}
// Mark/unmark checkboxes
// id = ID of parent container, name = name prefix, state = state [true/false]
/**
* Mark/unmark checkboxes
* id = ID of parent container, name = name prefix, state = state [true/false]
*/
function marklist(id, name, state)
{
var parent = document.getElementById(id);
@@ -66,18 +73,32 @@ function marklist(id, name, state)
}
}
<!-- IF S_INCLUDE_SWATCH -->
function swatch()
{
window.open('{U_SWATCH}', '_swatch', 'height=115, resizable=yes, scrollbars=no, width=636');
return false;
}
<!-- ENDIF -->
/**
* Find a member
*/
function find_username()
{
<!-- IF UA_FIND_USERNAME -->
window.open('{UA_FIND_USERNAME}', '_usersearch', 'height=570, resizable=yes, scrollbars=yes, width=760');
<!-- ENDIF -->
return false;
}
/**
* Color swatch
*/
function swatch(field)
{
<!-- IF UA_SWATCH -->
window.open('{UA_SWATCH}' + field, '_swatch', 'height=150, resizable=yes, scrollbars=no, width=636');
<!-- ENDIF -->
return false;
}
//-->
</script>
</head>
<body>
<body class="{S_CONTENT_DIRECTION}">
<div id="page-body" style="padding: 0 10px;">

View File

@@ -1,131 +0,0 @@
/*
$Id$
The original "subSilver" theme for phpBB2
Created by subBlue design :: http://www.subBlue.com
Updated for phpBB 2.2 by psoTFX :: phpBB Group
Copyright (c) 2002 phpBB Group
*/
body {
background-color: white;
font-family: Verdana, Arial, Helvetica, sans-serif;
margin: 0;
border: 0;
padding: 0;
}
p {
font-size: 8pt;
}
.maintitle, h1 {
font: bold 18pt 'Trebuchet MS', Verdana, sans-serif;
text-decoration:none;
line-height: 120%;
}
h2 {
font: bold 12pt Arial, Helvetica, sans-serif;
text-decoration:none;
line-height: 120%;
}
.maintitle {
color: #12749B
}
/*
Anchors
*/
a:link, a:active, a:visited { color: #006699; text-decoration: none; }
a:hover { color: #DD6900; text-decoration: underline; }
a.nav { color: #006699; text-decoration: none; }
a.nav:hover { text-decoration: underline; }
a.th:link { color: #FFA34F; text-decoration: none; }
a.th:active { color: #FFA34F; text-decoration: none; }
a.th:visited { color: #FFA34F; text-decoration: none; }
a.th:hover { color: #FFA34F; text-decoration: underline; }
/*
Non-tag specific
*/
.gen, .gensmall {
color: black;
}
.gen {
font-size: 8pt;
}
.gensmall {
font-size: 7pt;
}
.nav {
color: black;
font-size: 7pt;
font-weight: bold;
}
.error { color: #FF0000 }
/*
Tables
*/
table.bg {
background-color: #ACBBC6
}
th, td {
font: normal 8pt Verdana, Arial, Helvetica, sans-serif;
}
th {
height: 25px;
background-color: #006699;
color: #FFA34F;
font-weight: bold;
font-size: 11px;
}
td.cat {
height: 28px;
background-color: #D1D7DC;
}
.row1 {
background-color: #EFEFEF;
}
.row2 {
background-color: #DEE3E7;
}
.row3 {
background-color: #D1D7DC;
}
/*
Misc
*/
hr {
height: 0px;
border: solid #D1D7DC 0px;
border-top-width: 1px;
}
/*
Forms
*/
input {
text-indent: 2px;
}
textarea, select {
border: 1px solid;
}
input, textarea, select {
color: black;
font: normal 8pt Verdana, Arial, Helvetica, sans-serif;
border-color: black;
}

251
phpBB/adm/style/tooltip.js Normal file
View File

@@ -0,0 +1,251 @@
/*
javascript for Bubble Tooltips by Alessandro Fulciniti
- http://pro.html.it - http://web-graphics.com
obtained from: http://web-graphics.com/mtarchive/001717.php
phpBB Development Team:
- modified to adhere to our coding guidelines
- integration into our design
- added ability to perform tooltips on select elements
- further adjustements
*/
var head_text, tooltip_mode;
/**
* Enable tooltip replacements for links
*/
function enable_tooltips_link(id, headline, sub_id)
{
var links, i, hold;
head_text = headline;
if (!document.getElementById || !document.getElementsByTagName)
{
return;
}
hold = document.createElement('span');
hold.id = '_tooltip_container';
hold.setAttribute('id', '_tooltip_container');
hold.style.position = 'absolute';
document.getElementsByTagName('body')[0].appendChild(hold);
if (id == null)
{
links = document.getElementsByTagName('a');
}
else
{
links = document.getElementById(id).getElementsByTagName('a');
}
for (i = 0; i < links.length; i++)
{
if (sub_id)
{
if (links[i].id.substr(0, sub_id.length) == sub_id)
{
prepare(links[i]);
}
}
else
{
prepare(links[i]);
}
}
tooltip_mode = 'link';
}
/**
* Enable tooltip replacements for selects
*/
function enable_tooltips_select(id, headline, sub_id)
{
var links, i, hold;
head_text = headline;
if (!document.getElementById || !document.getElementsByTagName)
{
return;
}
hold = document.createElement('span');
hold.id = '_tooltip_container';
hold.setAttribute('id', '_tooltip_container');
hold.style.position = 'absolute';
document.getElementsByTagName('body')[0].appendChild(hold);
if (id == null)
{
links = document.getElementsByTagName('option');
}
else
{
links = document.getElementById(id).getElementsByTagName('option');
}
for (i = 0; i < links.length; i++)
{
if (sub_id)
{
if (links[i].parentNode.id.substr(0, sub_id.length) == sub_id)
{
prepare(links[i]);
}
}
else
{
prepare(links[i]);
}
}
tooltip_mode = 'select';
}
/**
* Prepare elements to replace
*/
function prepare(element)
{
var tooltip, text, desc, title;
text = element.getAttribute('title');
if (text == null || text.length == 0)
{
return;
}
element.removeAttribute('title');
tooltip = create_element('span', 'tooltip');
title = create_element('span', 'top');
title.appendChild(document.createTextNode(head_text));
tooltip.appendChild(title);
desc = create_element('span', 'bottom');
desc.innerHTML = text;
tooltip.appendChild(desc);
set_opacity(tooltip);
element.tooltip = tooltip;
element.onmouseover = show_tooltip;
element.onmouseout = hide_tooltip;
if (tooltip_mode == 'link')
{
element.onmousemove = locate;
}
}
/**
* Show tooltip
*/
function show_tooltip(e)
{
document.getElementById('_tooltip_container').appendChild(this.tooltip);
locate(this);
}
/**
* Hide tooltip
*/
function hide_tooltip(e)
{
var d = document.getElementById('_tooltip_container');
if (d.childNodes.length > 0)
{
d.removeChild(d.firstChild);
}
}
/**
* Set opacity on tooltip element
*/
function set_opacity(element)
{
element.style.filter = 'alpha(opacity:95)';
element.style.KHTMLOpacity = '0.95';
element.style.MozOpacity = '0.95';
element.style.opacity = '0.95';
}
/**
* Create new element
*/
function create_element(tag, c)
{
var x = document.createElement(tag);
x.className = c;
x.style.display = 'block';
return x;
}
/**
* Correct positioning of tooltip container
*/
function locate(e)
{
var posx = 0;
var posy = 0;
e = e.parentNode;
if (e.offsetParent)
{
for (var posx = 0, posy = 0; e.offsetParent; e = e.offsetParent)
{
posx += e.offsetLeft;
posy += e.offsetTop;
}
}
else
{
posx = e.offsetLeft;
posy = e.offsetTop;
}
if (tooltip_mode == 'link')
{
document.getElementById('_tooltip_container').style.top=(posy+20) + 'px';
document.getElementById('_tooltip_container').style.left=(posx-20) + 'px';
}
else
{
document.getElementById('_tooltip_container').style.top=(posy+30) + 'px';
document.getElementById('_tooltip_container').style.left=(posx-205) + 'px';
}
/*
if (e == null)
{
e = window.event;
}
if (e.pageX || e.pageY)
{
posx = e.pageX;
posy = e.pageY;
}
else if (e.clientX || e.clientY)
{
if (document.documentElement.scrollTop)
{
posx = e.clientX+document.documentElement.scrollLeft;
posy = e.clientY+document.documentElement.scrollTop;
}
else
{
posx = e.clientX+document.body.scrollLeft;
posy = e.clientY+document.body.scrollTop;
}
}
*/
}

View File

@@ -0,0 +1,20 @@
<!-- INCLUDE simple_header.html -->
<div class="panel" style="padding: 10px;">
<h1>{FILENAME}</h1>
<table>
<tbody>
<!-- BEGIN source -->
<tr valign="top">
<td class="sourcenum">{source.LINENUM}&nbsp;&nbsp;</td>
<td class="source">{source.LINE}</td>
</tr>
<!-- END source -->
</tbody>
</table>
</div>
<!-- INCLUDE simple_footer.html -->

View File

@@ -1,73 +1,45 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head>
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="imagetoolbar" content="no" />
<title>phpBB3 Color Swatch</title>
<?php
/**
*
* @package phpBB3
* @version $Id$
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
<style type="text/css">
<!--
body {
background-color: #404040;
color: #fff;
}
/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = './../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
td {
border: solid 1px #333;
}
// Start session management
$user->session_begin(false);
$auth->acl($user->data);
$user->setup();
.over {
border-color: white;
}
// Set custom template for admin area
$template->set_custom_template($phpbb_root_path . 'adm/style', 'admin');
.out {
border-color: #333333;
}
$template->set_filenames(array(
'body' => 'colour_swatch.html')
);
img {
border: 0;
}
$template->assign_vars(array(
'OPENER' => addslashes(request_var('form', '')),
'NAME' => request_var('name', ''),
'T_IMAGES_PATH' => "{$phpbb_root_path}images/",
//-->
</style>
</head>
'S_USER_LANG' => $user->lang['USER_LANG'],
'S_CONTENT_DIRECTION' => $user->lang['DIRECTION'],
'S_CONTENT_ENCODING' => 'UTF-8',
));
<body>
$template->display('body');
<script type="text/javascript">
<!--
var r = 0, g = 0, b = 0;
var numberList = new Array(6);
numberList[0] = "00";
numberList[1] = "33";
numberList[2] = "66";
numberList[3] = "99";
numberList[4] = "CC";
numberList[5] = "FF";
document.writeln('<table cellspacing="0" cellpadding="0" border="0">');
for(r = 0; r < 6; r++)
{
document.writeln('<tr>');
for(g = 0; g < 6; g++)
{
for(b = 0; b < 6; b++)
{
color = String(numberList[r]) + String(numberList[g]) + String(numberList[b]);
document.write('<td bgcolor="#' + color + '" onmouseover="this.className=\'over\'" onmouseout="this.className=\'out\'">');
document.write('<a href="javascript:cell(\'' + color + '\');"><img src="./images/spacer.gif" width="15" height="12" alt="#' + color + '" title="#' + color + '" \/><\/a>');
document.writeln('<\/td>');
}
}
document.writeln('<\/tr>');
}
document.writeln('<\/table>');
garbage_collection();
function cell(color)
{
opener.document.forms['<?php echo htmlspecialchars(addslashes($_GET['form'])); ?>'].<?php echo htmlspecialchars(addslashes($_GET['name'])); ?>.value = color;
}
//-->
</script>
</body>
</html>
?>

View File

@@ -9,10 +9,6 @@
* Minimum Requirement: PHP 4.3.3
*/
// Remove the following line to enable this software, be sure you note what it
// says before continuing
die('This software is unsupported in any and all respects. By removing this notice (found in common.php) you are noting your acceptance of this. Do not ask support questions of any kind for this release at either area51.phpbb.com or www.phpbb.com. Support for this version will appear when the beta cycle begins');
/**
*/
if (!defined('IN_PHPBB'))
@@ -23,61 +19,133 @@ if (!defined('IN_PHPBB'))
$starttime = explode(' ', microtime());
$starttime = $starttime[1] + $starttime[0];
error_reporting(E_ERROR | E_WARNING | E_PARSE); // This will NOT report uninitialized variables
//error_reporting(E_ALL);
set_magic_quotes_runtime(0);
// Report all errors, except notices
error_reporting(E_ALL ^ E_NOTICE);
// Protect against GLOBALS tricks
if (isset($_REQUEST['GLOBALS']) || isset($_FILES['GLOBALS']))
/*
* Remove variables created by register_globals from the global scope
* Thanks to Matt Kavanagh
*/
function deregister_globals()
{
exit;
}
$not_unset = array(
'GLOBALS' => true,
'_GET' => true,
'_POST' => true,
'_COOKIE' => true,
'_REQUEST' => true,
'_SERVER' => true,
'_SESSION' => true,
'_ENV' => true,
'_FILES' => true,
'phpEx' => true,
'phpbb_root_path' => true
);
// Protect against _SESSION tricks
if (isset($_SESSION) && !is_array($_SESSION))
{
exit;
}
// Be paranoid with passed vars
if (@ini_get('register_globals') == '1' || strtolower(@ini_get('register_globals')) == 'on')
{
$not_unset = array('_GET', '_POST', '_COOKIE', '_REQUEST', '_SERVER', '_SESSION', '_ENV', '_FILES', 'phpEx', 'phpbb_root_path');
// Not only will array_merge give a warning if a parameter
// is not an array, it will actually fail. So we check if
// _SESSION has been initialised.
// Not only will array_merge and array_keys give a warning if
// a parameter is not an array, array_merge will actually fail.
// So we check if _SESSION has been initialised.
if (!isset($_SESSION) || !is_array($_SESSION))
{
$_SESSION = array();
}
// Merge all into one extremely huge array; unset
// this later
$input = array_merge($_GET, $_POST, $_COOKIE, $_SERVER, $_SESSION, $_ENV, $_FILES);
// Merge all into one extremely huge array; unset this later
$input = array_merge(
array_keys($_GET),
array_keys($_POST),
array_keys($_COOKIE),
array_keys($_SERVER),
array_keys($_SESSION),
array_keys($_ENV),
array_keys($_FILES)
);
foreach ($input as $varname => $void)
foreach ($input as $varname)
{
if (!in_array($varname, $not_unset))
if (isset($not_unset[$varname]))
{
unset(${$varname});
// Hacking attempt. No point in continuing.
exit;
}
unset($GLOBALS[$varname]);
}
unset($input);
}
// If we are on PHP >= 6.0.0 we do not need some code
if (version_compare(PHP_VERSION, '6.0.0-dev', '>='))
{
/**
* @ignore
*/
define('STRIP', false);
}
else
{
set_magic_quotes_runtime(0);
// Be paranoid with passed vars
if (@ini_get('register_globals') == '1' || strtolower(@ini_get('register_globals')) == 'on')
{
deregister_globals();
}
define('STRIP', (get_magic_quotes_gpc()) ? true : false);
}
if (defined('IN_CRON'))
{
chdir($phpbb_root_path);
$phpbb_root_path = getcwd() . '/';
if (@function_exists('getcwd'))
{
$phpbb_root_path = getcwd() . '/';
}
else
{
// This is a best guess
$phpbb_root_path = pathinfo($_SERVER['SCRIPT_FILENAME'], PATHINFO_DIRNAME) . '/';
}
}
require($phpbb_root_path . 'config.'.$phpEx);
if (!file_exists($phpbb_root_path . 'config.' . $phpEx))
{
die("<p>The config.$phpEx file could not be found.</p><p><a href=\"{$phpbb_root_path}install/index.$phpEx\">Click here to install phpBB</a></p>");
}
require($phpbb_root_path . 'config.' . $phpEx);
if (!defined('PHPBB_INSTALLED'))
{
header('Location: install/index.'.$phpEx);
// Redirect the user to the installer
// We have to generate a full HTTP/1.1 header here since we can't guarantee to have any of the information
// available as used by the redirect function
$server_name = (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : getenv('SERVER_NAME');
$server_port = (!empty($_SERVER['SERVER_PORT'])) ? (int) $_SERVER['SERVER_PORT'] : (int) getenv('SERVER_PORT');
$secure = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') ? 1 : 0;
$script_name = (!empty($_SERVER['PHP_SELF'])) ? $_SERVER['PHP_SELF'] : getenv('PHP_SELF');
if (!$script_name)
{
$script_name = (!empty($_SERVER['REQUEST_URI'])) ? $_SERVER['REQUEST_URI'] : getenv('REQUEST_URI');
}
// Replace any number of consecutive backslashes and/or slashes with a single slash
// (could happen on some proxy setups and/or Windows servers)
$script_path = trim(dirname($script_name)) . '/install/index.' . $phpEx;
$script_path = preg_replace('#[\\\\/]{2,}#', '/', $script_path);
$url = (($secure) ? 'https://' : 'http://') . $server_name;
if ($server_port && (($secure && $server_port <> 443) || (!$secure && $server_port <> 80)))
{
$url .= ':' . $server_port;
}
$url .= $script_path;
header('Location: ' . $url);
exit;
}
@@ -101,17 +169,16 @@ if (!empty($load_extensions))
}
}
define('STRIP', (get_magic_quotes_gpc()) ? true : false);
// Include files
require($phpbb_root_path . 'includes/acm/acm_' . $acm_type . '.' . $phpEx);
require($phpbb_root_path . 'includes/acm/acm_main.' . $phpEx);
require($phpbb_root_path . 'includes/db/' . $dbms . '.' . $phpEx);
require($phpbb_root_path . 'includes/cache.' . $phpEx);
require($phpbb_root_path . 'includes/template.' . $phpEx);
require($phpbb_root_path . 'includes/session.' . $phpEx);
require($phpbb_root_path . 'includes/auth.' . $phpEx);
require($phpbb_root_path . 'includes/functions.' . $phpEx);
require($phpbb_root_path . 'includes/constants.' . $phpEx);
require($phpbb_root_path . 'includes/db/' . $dbms . '.' . $phpEx);
require($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx);
// Set PHP error handler to ours
set_error_handler('msg_handler');
@@ -132,10 +199,4 @@ unset($dbpasswd);
// Grab global variables, re-cache if necessary
$config = $cache->obtain_config();
// Warn about install/ directory
if (file_exists('install'))
{
// trigger_error('REMOVE_INSTALL');
}
?>
?>

View File

@@ -14,23 +14,40 @@ define('IN_PHPBB', true);
define('IN_CRON', true);
$phpbb_root_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'common.' . $phpEx);
// Do not update users last page entry
$user->session_begin(false);
$auth->acl($user->data);
$cron_type = request_var('cron_type', '');
$use_shutdown_function = (@function_exists('register_shutdown_function')) ? true : false;
// Output transparent gif
header('Cache-Control: no-cache');
header('Content-type: image/gif');
header('Content-length: 43');
echo base64_decode('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
flush();
/**
* Run cron-like action
* Real cron-based layer will be introduced in 3.2
*
* @todo check gc-intervals here too (important!)
*/
switch ($cron_type)
{
case 'queue':
include_once($phpbb_root_path . 'includes/functions_messenger.'.$phpEx);
if (time() - $config['queue_interval'] <= $config['last_queue_run'] || !file_exists($phpbb_root_path . 'cache/queue.' . $phpEx))
{
break;
}
include_once($phpbb_root_path . 'includes/functions_messenger.' . $phpEx);
$queue = new queue();
if ($use_shutdown_function)
{
register_shutdown_function(array(&$queue, 'process'));
@@ -39,9 +56,16 @@ switch ($cron_type)
{
$queue->process();
}
break;
case 'tidy_cache':
if (time() - $config['cache_gc'] <= $config['cache_last_gc'] || !method_exists($cache, 'tidy'))
{
break;
}
if ($use_shutdown_function)
{
register_shutdown_function(array(&$cache, 'tidy'));
@@ -50,16 +74,19 @@ switch ($cron_type)
{
$cache->tidy();
}
break;
case 'tidy_search':
// Select the search method
$search_type = $config['search_type'];
$search_type = basename($config['search_type']);
if (!file_exists($phpbb_root_path . 'includes/search/' . $search_type . '.' . $phpEx) || (time() - $config['search_last_gc'] <= $config['search_gc']))
if (time() - $config['search_gc'] <= $config['search_last_gc'] || !file_exists($phpbb_root_path . 'includes/search/' . $search_type . '.' . $phpEx))
{
break;
}
include_once("{$phpbb_root_path}includes/search/$search_type.$phpEx");
// We do some additional checks in the module to ensure it can actually be utilised
@@ -79,10 +106,17 @@ switch ($cron_type)
{
$search->tidy();
}
set_config('search_last_gc', time());
break;
case 'tidy_warnings':
include_once($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
if (time() - $config['warnings_gc'] <= $config['warnings_last_gc'])
{
break;
}
include_once($phpbb_root_path . 'includes/functions_admin.' . $phpEx);
if ($use_shutdown_function)
{
@@ -92,10 +126,17 @@ switch ($cron_type)
{
tidy_warnings();
}
break;
case 'tidy_database':
include_once($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
if (time() - $config['database_gc'] <= $config['database_last_gc'])
{
break;
}
include_once($phpbb_root_path . 'includes/functions_admin.' . $phpEx);
if ($use_shutdown_function)
{
@@ -105,9 +146,16 @@ switch ($cron_type)
{
tidy_database();
}
break;
case 'tidy_sessions':
if (time() - $config['session_gc'] <= $config['session_last_gc'])
{
break;
}
if ($use_shutdown_function)
{
register_shutdown_function(array(&$user, 'session_gc'));
@@ -116,6 +164,7 @@ switch ($cron_type)
{
$user->session_gc();
}
break;
case 'prune_forum':
@@ -137,7 +186,7 @@ switch ($cron_type)
// Do the forum Prune thang
if ($row['prune_next'] < time() && $row['enable_prune'])
{
include_once($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
include_once($phpbb_root_path . 'includes/functions_admin.' . $phpEx);
if ($row['prune_days'])
{
@@ -167,14 +216,16 @@ switch ($cron_type)
break;
}
// Output transparent gif
header('Cache-Control: no-cache');
header('Content-type: image/gif');
header('Content-length: 43');
// Unloading cache and closing db after having done the dirty work.
if ($use_shutdown_function)
{
register_shutdown_function('garbage_collection');
}
else
{
garbage_collection();
}
echo base64_decode('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
flush();
exit;
?>

View File

@@ -33,13 +33,13 @@ require($phpbb_root_path . 'includes/acm/acm_' . $acm_type . '.'.$phpEx);
require($phpbb_root_path . 'includes/db/' . $dbms . '.'.$phpEx);
include($phpbb_root_path . 'includes/functions.'.$phpEx);
define('ACL_NO', 0);
define('ACL_NEVER', 0);
define('ACL_YES', 1);
define('ACL_UNSET', -1);
define('ACL_NO', -1);
define('ACL_GROUPS_TABLE', $table_prefix.'auth_groups');
define('ACL_OPTIONS_TABLE', $table_prefix.'auth_options');
define('ACL_USERS_TABLE', $table_prefix.'auth_users');
define('ACL_GROUPS_TABLE', $table_prefix.'acl_groups');
define('ACL_OPTIONS_TABLE', $table_prefix.'acl_options');
define('ACL_USERS_TABLE', $table_prefix.'acl_users');
define('GROUPS_TABLE', $table_prefix.'groups');
define('USERS_TABLE', $table_prefix.'users');
@@ -56,7 +56,6 @@ $f_permissions = array(
'f_read' => array(1, 0),
'f_post' => array(1, 0),
'f_reply' => array(1, 0),
'f_quote' => array(1, 0),
'f_edit' => array(1, 0),
'f_user_lock' => array(1, 0),
'f_delete' => array(1, 0),
@@ -69,7 +68,6 @@ $f_permissions = array(
'f_attach' => array(1, 0),
'f_download'=> array(1, 0),
'f_icons' => array(1, 0),
'f_html' => array(1, 0),
'f_bbcode' => array(1, 0),
'f_smilies' => array(1, 0),
'f_img' => array(1, 0),
@@ -77,11 +75,10 @@ $f_permissions = array(
'f_sigs' => array(1, 0),
'f_search' => array(1, 0),
'f_email' => array(1, 0),
'f_rate' => array(1, 0),
'f_print' => array(1, 0),
'f_ignoreflood' => array(1, 0),
'f_postcount' => array(1, 0),
'f_moderate'=> array(1, 0),
'f_noapprove'=> array(1, 0),
'f_report' => array(1, 0),
'f_subscribe' => array(1, 0),
);
@@ -104,9 +101,7 @@ $m_permissions = array(
$a_permissions = array(
'a_' => array(0, 1),
'a_server' => array(0, 1),
'a_defaults'=> array(0, 1),
'a_board' => array(0, 1),
'a_cookies' => array(0, 1),
'a_clearlogs' => array(0, 1),
'a_words' => array(0, 1),
'a_icons' => array(0, 1),
@@ -161,11 +156,9 @@ $u_permissions = array(
'u_attach' => array(0, 1),
'u_sig' => array(0, 1),
'u_pm_attach' => array(0, 1),
'u_pm_html' => array(0, 1),
'u_pm_bbcode' => array(0, 1),
'u_pm_smilies' => array(0, 1),
'u_pm_download' => array(0, 1),
'u_pm_report' => array(0, 1),
'u_pm_edit' => array(0, 1),
'u_pm_printpm' => array(0, 1),
'u_pm_emailpm' => array(0, 1),
@@ -219,14 +212,14 @@ foreach ($prefixes as $prefix)
echo "<p><b>Adding $auth_option...</b></p>\n";
mass_auth('group', 0, 'guests', $auth_option, ACL_NO);
mass_auth('group', 0, 'inactive', $auth_option, ACL_NO);
mass_auth('group', 0, 'inactive_coppa', $auth_option, ACL_NO);
mass_auth('group', 0, 'registered_coppa', $auth_option, ACL_NO);
mass_auth('group', 0, 'registered', $auth_option, (($prefix != 'm_' && $prefix != 'a_') ? ACL_YES : ACL_NO));
mass_auth('group', 0, 'super_moderators', $auth_option, (($prefix != 'a_') ? ACL_YES : ACL_NO));
mass_auth('group', 0, 'guests', $auth_option, ACL_NEVER);
mass_auth('group', 0, 'inactive', $auth_option, ACL_NEVER);
mass_auth('group', 0, 'inactive_coppa', $auth_option, ACL_NEVER);
mass_auth('group', 0, 'registered_coppa', $auth_option, ACL_NEVER);
mass_auth('group', 0, 'registered', $auth_option, (($prefix != 'm_' && $prefix != 'a_') ? ACL_YES : ACL_NEVER));
mass_auth('group', 0, 'global_moderators', $auth_option, (($prefix != 'a_') ? ACL_YES : ACL_NEVER));
mass_auth('group', 0, 'administrators', $auth_option, ACL_YES);
mass_auth('group', 0, 'bots', $auth_option, (($prefix != 'm_' && $prefix != 'a_') ? ACL_YES : ACL_NO));
mass_auth('group', 0, 'bots', $auth_option, (($prefix != 'm_' && $prefix != 'a_') ? ACL_YES : ACL_NEVER));
}
}
}
@@ -235,7 +228,6 @@ $sql = 'UPDATE ' . USERS_TABLE . " SET user_permissions = ''";
$db->sql_query($sql);
$cache->destroy('acl_options');
$cache->save();
echo "<p><b>Done</b></p>\n";
@@ -244,7 +236,7 @@ echo "<p><b>Done</b></p>\n";
$forum_id = forum ids (array|int|0) -> 0 == all forums
$ug_id = [int] user_id|group_id : [string] usergroup name
$acl_list = [string] acl entry : [array] acl entries
$setting = ACL_YES|ACL_NO|ACL_UNSET
$setting = ACL_YES|ACL_NEVER|ACL_NO
*/
function mass_auth($ug_type, $forum_id, $ug_id, $acl_list, $setting)
{
@@ -345,7 +337,7 @@ function mass_auth($ug_type, $forum_id, $ug_id, $acl_list, $setting)
switch ($setting)
{
case ACL_UNSET:
case ACL_NO:
if (isset($cur_auth[$forum][$auth_option_id]))
{
$sql_ary['delete'][] = "DELETE FROM $table
@@ -379,7 +371,7 @@ function mass_auth($ug_type, $forum_id, $ug_id, $acl_list, $setting)
switch ($sql_type)
{
case 'insert':
switch (SQL_LAYER)
switch ($db->sql_layer)
{
case 'mysql':
case 'mysql4':

View File

@@ -0,0 +1,174 @@
<?php
/**
* Only adjust bitfields, do not rewrite text...
* All new parsings have the img, flash and quote modes set to true
*
* You should make a backup from your users, posts and privmsgs table in case something goes wrong
* Forum descriptions and rules need to be re-submitted manually.
*/
die("Please read the first lines of this script for instructions on how to enable it");
set_time_limit(0);
define('IN_PHPBB', true);
$phpbb_root_path = './../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/message_parser.' . $phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
$echos = 0;
// Adjust user signatures
$message_parser = new parse_message();
$message_parser->mode = 'sig';
$message_parser->bbcode_init();
$sql = 'SELECT user_id, user_sig, user_sig_bbcode_uid, user_sig_bbcode_bitfield
FROM ' . USERS_TABLE;
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
// Convert bbcodes back to their normal form
if ($row['user_sig_bbcode_uid'] && $row['user_sig'])
{
decode_message($row['user_sig'], $row['user_sig_bbcode_uid']);
$message_parser->message = $row['user_sig'];
$message_parser->prepare_bbcodes();
$message_parser->parse_bbcode();
$bitfield = $message_parser->bbcode_bitfield;
$sql = 'UPDATE ' . USERS_TABLE . " SET user_sig_bbcode_bitfield = '" . $db->sql_escape($bitfield) . "'
WHERE user_id = " . $row['user_id'];
$db->sql_query($sql);
if ($echos > 200)
{
echo '<br />' . "\n";
$echos = 0;
}
echo '.';
$echos++;
flush();
}
else
{
$sql = 'UPDATE ' . USERS_TABLE . " SET user_sig_bbcode_bitfield = ''
WHERE user_id = " . $row['user_id'];
$db->sql_query($sql);
}
}
$db->sql_freeresult($result);
// Now adjust posts
$message_parser = new parse_message();
$message_parser->mode = 'post';
$message_parser->bbcode_init();
// Update posts
$sql = 'SELECT post_id, post_text, bbcode_uid, enable_bbcode, enable_smilies, enable_sig
FROM ' . POSTS_TABLE;
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
// Convert bbcodes back to their normal form
if ($row['enable_bbcode'])
{
decode_message($row['post_text'], $row['bbcode_uid']);
$message_parser->message = $row['post_text'];
$message_parser->prepare_bbcodes();
$message_parser->parse_bbcode();
$bitfield = $message_parser->bbcode_bitfield;
$sql = 'UPDATE ' . POSTS_TABLE . " SET bbcode_bitfield = '" . $db->sql_escape($bitfield) . "'
WHERE post_id = " . $row['post_id'];
$db->sql_query($sql);
if ($echos > 200)
{
echo '<br />' . "\n";
$echos = 0;
}
echo '.';
$echos++;
flush();
}
else
{
$sql = 'UPDATE ' . POSTS_TABLE . " SET bbcode_bitfield = ''
WHERE post_id = " . $row['post_id'];
$db->sql_query($sql);
}
}
$db->sql_freeresult($result);
// Now to the private messages
$message_parser = new parse_message();
$message_parser->mode = 'post';
$message_parser->bbcode_init();
// Update pms
$sql = 'SELECT msg_id, message_text, bbcode_uid, enable_bbcode
FROM ' . PRIVMSGS_TABLE;
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
// Convert bbcodes back to their normal form
if ($row['enable_bbcode'])
{
decode_message($row['message_text'], $row['bbcode_uid']);
$message_parser->message = $row['message_text'];
$message_parser->prepare_bbcodes();
$message_parser->parse_bbcode();
$bitfield = $message_parser->bbcode_bitfield;
$sql = 'UPDATE ' . PRIVMSGS_TABLE . " SET bbcode_bitfield = '" . $db->sql_escape($bitfield) . "'
WHERE msg_id = " . $row['msg_id'];
$db->sql_query($sql);
if ($echos > 200)
{
echo '<br />' . "\n";
$echos = 0;
}
echo '.';
$echos++;
flush();
}
else
{
$sql = 'UPDATE ' . PRIVMSGS_TABLE . " SET bbcode_bitfield = ''
WHERE msg_id = " . $row['msg_id'];
$db->sql_query($sql);
}
}
$db->sql_freeresult($result);
// Done
$db->sql_close();
?>

View File

@@ -0,0 +1,52 @@
<?php
/**
* Adjust username_clean column.
*
* You should make a backup from your users table in case something goes wrong
*/
die("Please read the first lines of this script for instructions on how to enable it");
set_time_limit(0);
define('IN_PHPBB', true);
$phpbb_root_path = './../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.'.$phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
$echos = 0;
$sql = 'SELECT user_id, username
FROM ' . USERS_TABLE;
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
$sql = 'UPDATE ' . USERS_TABLE . "
SET username_clean = '" . $db->sql_escape(utf8_clean_string($row['username'])) . "'
WHERE user_id = " . $row['user_id'];
$db->sql_query($sql);
if ($echos > 200)
{
echo '<br />' . "\n";
$echos = 0;
}
echo '.';
$echos++;
flush();
}
$db->sql_freeresult($result);
echo 'FINISHED';
// Done
$db->sql_close();
?>

View File

@@ -313,7 +313,7 @@ function make_post($new_topic_id, $forum_id, $user_id, $post_username, $text, $m
else
{
// Rollback
if(SQL_LAYER == "mysql")
if($db->sql_layer == "mysql")
{
$sql = "DELETE FROM " . POSTS_TABLE . "
WHERE post_id = $new_post_id";

File diff suppressed because it is too large Load Diff

View File

@@ -12,7 +12,7 @@
// -------------------------------------------------------------
define('IN_PHPBB', true);
$phpbb_root_path = './';
$phpbb_root_path = './../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
@@ -22,13 +22,13 @@ header('Expires: 0');
ignore_user_abort(true);
// number of topics to create
$num_topics = 5000000;
$num_topics = 10000;
// number of topics to be generated per call
$batch_size = 100000;
$batch_size = 2000;
// max number of posts per topic
$posts_per_topic = 500000;
$posts_per_topic = 500;
// general vars
@@ -40,7 +40,7 @@ switch ($mode)
case 'generate':
$user_ids = $forum_ids = $topic_rows = array();
$sql = 'SELECT user_id FROM ' . USERS_TABLE;
$sql = 'SELECT user_id FROM ' . USERS_TABLE . ' WHERE user_type IN (' . USER_NORMAL . ', ' . USER_FOUNDER . ') OR user_id = ' . ANONYMOUS;
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result))
{
@@ -60,7 +60,7 @@ switch ($mode)
{
$db->sql_query('TRUNCATE TABLE ' . POSTS_TABLE);
$db->sql_query('TRUNCATE TABLE ' . TOPICS_TABLE);
$db->sql_query('TRUNCATE TABLE ' . TOPICS_TABLE . '_prefetch');
// $db->sql_query('TRUNCATE TABLE ' . TOPICS_TABLE . '_prefetch');
}
$db->sql_query('LOCK TABLES ' . POSTS_TABLE . ' WRITE, ' . TOPICS_TABLE . ' WRITE');
@@ -86,7 +86,7 @@ switch ($mode)
$rows = array();
$post_time = mt_rand(0, time());
$num_posts = mt_rand(1, $posts_per_topic);
$num_posts = $posts_per_topic; //mt_rand(1, $posts_per_topic);
for ($i = 0; $i < $num_posts; ++$i)
{
$poster_id = $user_ids[array_rand($user_ids)];
@@ -108,18 +108,20 @@ switch ($mode)
if ($topic_id >= $num_topics)
{
echo '<meta http-equiv="refresh" content="0; url=fill.' . $phpEx . '?mode=sync&amp;' . time() . '">And now for something completely different...';
echo '<meta http-equiv="refresh" content="10; url=fill.' . $phpEx . '?mode=sync&amp;' . time() . '">And now for something completely different...';
$db->sql_query('ANALYZE TABLES ' . TOPICS_TABLE . ', ' . POSTS_TABLE);
flush();
}
else
{
echo '<meta http-equiv="refresh" content="0; url=fill.' . $phpEx . '?start=' . $topic_id . '&amp;' . time() . '">To the next page... (' . $topic_id . '/' . $num_topics . ')';
echo '<meta http-equiv="refresh" content="10; url=fill.' . $phpEx . '?start=' . $topic_id . '&amp;' . time() . '">To the next page... (' . $topic_id . '/' . $num_topics . ')';
flush();
}
break;
case 'sync':
error_reporting(E_ALL);
/* error_reporting(E_ALL);
$sync_all = TRUE;
if ($sync_all)
@@ -158,8 +160,11 @@ switch ($mode)
{
trigger_error('Done');
}
*/
}
$db->sql_close();
function rndm_username()
{
static $usernames;

View File

@@ -0,0 +1,147 @@
<?php
/**
*
* @package phpBB3
* @version $Id$
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
if (php_sapi_name() != 'cli')
{
die("This program must be run from the command line.\n");
}
set_time_limit(0);
define('IN_PHPBB', true);
$phpbb_root_path = '../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
echo "Checking for required files\n";
download('http://unicode.org/Public/UNIDATA/CaseFolding.txt');
echo "\n";
/**
* Load the CaseFolding table
*/
echo "Loading CaseFolding\n";
$unidata = file_get_contents('CaseFolding.txt');
function utf8_chr($cp)
{
if ($cp > 0xFFFF)
{
return chr(0xF0 | ($cp >> 18)) . chr(0x80 | (($cp >> 12) & 0x3F)) . chr(0x80 | (($cp >> 6) & 0x3F)) . chr(0x80 | ($cp & 0x3F));
}
else if ($cp > 0x7FF)
{
return chr(0xE0 | ($cp >> 12)) . chr(0x80 | (($cp >> 6) & 0x3F)) . chr(0x80 | ($cp & 0x3F));
}
else if ($cp > 0x7F)
{
return chr(0xC0 | ($cp >> 6)) . chr(0x80 | ($cp & 0x3F));
}
else
{
return chr($cp);
}
}
preg_match_all('/^([0-9A-F]+); ([CFS]); ([0-9A-F]+(?: [0-9A-F]+)*);/im', $unidata, $array, PREG_SET_ORDER);
$uniarray = array();
foreach ($array as $value)
{
$uniarray[$value[2]][utf8_chr(hexdec((string)$value[1]))] = implode(array_map('utf8_chr', array_map('hexdec', explode(' ', $value[3]))));
}
foreach ($uniarray as $idx => $contents)
{
echo "Writing to case_fold_$idx.$phpEx\n";
$fp = fopen($phpbb_root_path . 'includes/utf/data/case_fold_' . strtolower($idx) . '.' . $phpEx, 'wb');
fwrite($fp, '<?php return ' . my_var_export($contents) . ';');
fclose($fp);
}
/**
* Return a parsable string representation of a variable
*
* This is function is limited to array/strings/integers
*
* @param mixed $var Variable
* @return string PHP code representing the variable
*/
function my_var_export($var)
{
if (is_array($var))
{
$lines = array();
foreach ($var as $k => $v)
{
$lines[] = my_var_export($k) . '=>' . my_var_export($v);
}
return 'array(' . implode(',', $lines) . ')';
}
else if (is_string($var))
{
return "'" . str_replace(array('\\', "'"), array('\\\\', "\\'"), $var) . "'";
}
else
{
return $var;
}
}
/**
* Download a file to the develop/ dir
*
* @param string $url URL of the file to download
* @return void
*/
function download($url)
{
global $phpbb_root_path;
if (file_exists($phpbb_root_path . 'develop/' . basename($url)))
{
return;
}
echo 'Downloading from ', $url, ' ';
if (!$fpr = fopen($url, 'rb'))
{
die("Can't download from $url\nPlease download it yourself and put it in the develop/ dir, kthxbai");
}
if (!$fpw = fopen($phpbb_root_path . 'develop/' . basename($url), 'wb'))
{
die("Can't open develop/" . basename($url) . " for output... please check your permissions or something");
}
$i = 0;
$chunk = 32768;
$done = '';
while (!feof($fpr))
{
$i += fwrite($fpw, fread($fpr, $chunk));
echo str_repeat("\x08", strlen($done));
$done = ($i >> 10) . ' KiB';
echo $done;
}
fclose($fpr);
fclose($fpw);
echo "\n";
}
?>

View File

@@ -0,0 +1,559 @@
<?php
/**
*
* @package phpBB3
* @version $Id$
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
if (php_sapi_name() != 'cli')
{
die("This program must be run from the command line.\n");
}
set_time_limit(0);
define('IN_PHPBB', true);
$phpbb_root_path = '../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
echo "Checking for required files\n";
download('http://www.unicode.org/Public/UNIDATA/CompositionExclusions.txt');
download('http://www.unicode.org/Public/UNIDATA/DerivedNormalizationProps.txt');
download('http://www.unicode.org/Public/UNIDATA/UnicodeData.txt');
echo "\n";
require_once($phpbb_root_path . 'includes/utf/utf_normalizer.' . $phpEx);
$file_contents = array();
/**
* Generate some Hangul/Jamo stuff
*/
echo "\nGenerating Hangul and Jamo tables\n";
for ($i = 0; $i < UNICODE_HANGUL_LCOUNT; ++$i)
{
$utf_char = cp_to_utf(UNICODE_HANGUL_LBASE + $i);
$file_contents['utf_normalizer_common']['utf_jamo_index'][$utf_char] = $i * UNICODE_HANGUL_VCOUNT * UNICODE_HANGUL_TCOUNT + UNICODE_HANGUL_SBASE;
$file_contents['utf_normalizer_common']['utf_jamo_type'][$utf_char] = UNICODE_JAMO_L;
}
for ($i = 0; $i < UNICODE_HANGUL_VCOUNT; ++$i)
{
$utf_char = cp_to_utf(UNICODE_HANGUL_VBASE + $i);
$file_contents['utf_normalizer_common']['utf_jamo_index'][$utf_char] = $i * UNICODE_HANGUL_TCOUNT;
$file_contents['utf_normalizer_common']['utf_jamo_type'][$utf_char] = UNICODE_JAMO_V;
}
for ($i = 0; $i < UNICODE_HANGUL_TCOUNT; ++$i)
{
$utf_char = cp_to_utf(UNICODE_HANGUL_TBASE + $i);
$file_contents['utf_normalizer_common']['utf_jamo_index'][$utf_char] = $i;
$file_contents['utf_normalizer_common']['utf_jamo_type'][$utf_char] = UNICODE_JAMO_T;
}
/**
* Load the CompositionExclusions table
*/
echo "Loading CompositionExclusion\n";
$fp = fopen('CompositionExclusions.txt', 'rt');
$exclude = array();
while (!feof($fp))
{
$line = fgets($fp, 1024);
if (!strpos(' 0123456789ABCDEFabcdef', $line[0]))
{
continue;
}
$cp = strtok($line, ' ');
if ($pos = strpos($cp, '..'))
{
$start = hexdec(substr($cp, 0, $pos));
$end = hexdec(substr($cp, $pos + 2));
for ($i = $start; $i < $end; ++$i)
{
$exclude[$i] = 1;
}
}
else
{
$exclude[hexdec($cp)] = 1;
}
}
fclose($fp);
/**
* Load QuickCheck tables
*/
echo "Generating QuickCheck tables\n";
$fp = fopen('DerivedNormalizationProps.txt', 'rt');
while (!feof($fp))
{
$line = fgets($fp, 1024);
if (!strpos(' 0123456789ABCDEFabcdef', $line[0]))
{
continue;
}
$p = array_map('trim', explode(';', strtok($line, '#')));
/**
* Capture only NFC_QC, NFKC_QC
*/
if (!preg_match('#^NFK?C_QC$#', $p[1]))
{
continue;
}
if ($pos = strpos($p[0], '..'))
{
$start = hexdec(substr($p[0], 0, $pos));
$end = hexdec(substr($p[0], $pos + 2));
}
else
{
$start = $end = hexdec($p[0]);
}
if ($start >= UTF8_HANGUL_FIRST && $end <= UTF8_HANGUL_LAST)
{
/**
* We do not store Hangul syllables in the array
*/
continue;
}
if ($p[2] == 'M')
{
$val = UNICODE_QC_MAYBE;
}
else
{
$val = UNICODE_QC_NO;
}
if ($p[1] == 'NFKC_QC')
{
$file = 'utf_nfkc_qc';
}
else
{
$file = 'utf_nfc_qc';
}
for ($i = $start; $i <= $end; ++$i)
{
/**
* The vars have the same name as the file: $utf_nfc_qc is in utf_nfc_qc.php
*/
$file_contents[$file][$file][cp_to_utf($i)] = $val;
}
}
fclose($fp);
/**
* Do mappings
*/
echo "Loading Unicode decomposition mappings\n";
$fp = fopen($phpbb_root_path . 'develop/UnicodeData.txt', 'rt');
$map = array();
while (!feof($fp))
{
$p = explode(';', fgets($fp, 1024));
$cp = hexdec($p[0]);
if (!empty($p[3]))
{
/**
* Store combining class > 0
*/
$file_contents['utf_normalizer_common']['utf_combining_class'][cp_to_utf($cp)] = (int) $p[3];
}
if (!isset($p[5]) || !preg_match_all('#[0-9A-F]+#', strip_tags($p[5]), $m))
{
continue;
}
if (strpos($p[5], '>'))
{
$map['NFKD'][$cp] = implode(' ', array_map('hexdec', $m[0]));
}
else
{
$map['NFD'][$cp] = $map['NFKD'][$cp] = implode(' ', array_map('hexdec', $m[0]));
}
}
fclose($fp);
/**
* Build the canonical composition table
*/
echo "Generating the Canonical Composition table\n";
foreach ($map['NFD'] as $cp => $decomp_seq)
{
if (!strpos($decomp_seq, ' ') || isset($exclude[$cp]))
{
/**
* Singletons are excluded from canonical composition
*/
continue;
}
$utf_seq = implode('', array_map('cp_to_utf', explode(' ', $decomp_seq)));
if (!isset($file_contents['utf_canonical_comp']['utf_canonical_comp'][$utf_seq]))
{
$file_contents['utf_canonical_comp']['utf_canonical_comp'][$utf_seq] = cp_to_utf($cp);
}
}
/**
* Decompose the NF[K]D mappings recursively and prepare the file contents
*/
echo "Generating the Canonical and Compatibility Decomposition tables\n\n";
foreach ($map as $type => $decomp_map)
{
foreach ($decomp_map as $cp => $decomp_seq)
{
$decomp_map[$cp] = decompose($decomp_map, $decomp_seq);
}
unset($decomp_seq);
if ($type == 'NFKD')
{
$file = 'utf_compatibility_decomp';
$var = 'utf_compatibility_decomp';
}
else
{
$file = 'utf_canonical_decomp';
$var = 'utf_canonical_decomp';
}
/**
* Generate the corresponding file
*/
foreach ($decomp_map as $cp => $decomp_seq)
{
$file_contents[$file][$var][cp_to_utf($cp)] = implode('', array_map('cp_to_utf', explode(' ', $decomp_seq)));
}
}
/**
* Generate and/or alter the files
*/
foreach ($file_contents as $file => $contents)
{
/**
* Generate a new file
*/
echo "Writing to $file.$phpEx\n";
if (!$fp = fopen($phpbb_root_path . 'includes/utf/data/' . $file . '.' . $phpEx, 'wb'))
{
trigger_error('Cannot open ' . $file . ' for write');
}
fwrite($fp, '<?php');
foreach ($contents as $var => $val)
{
fwrite($fp, "\n\$GLOBALS[" . my_var_export($var) . ']=' . my_var_export($val) . ";");
}
fclose($fp);
}
echo "\n*** UTF-8 normalization tables done\n\n";
/**
* Now we'll generate the files needed by the search indexer
*/
echo "Generating search indexer tables\n";
$fp = fopen($phpbb_root_path . 'develop/UnicodeData.txt', 'rt');
$map = array();
while ($line = fgets($fp, 1024))
{
/**
* The current line is split, $m[0] hold the codepoint in hexadecimal and
* all other fields numbered as in http://www.unicode.org/Public/UNIDATA/UCD.html#UnicodeData.txt
*/
$m = explode(';', $line);
/**
* @var integer $cp Current char codepoint
* @var string $utf_char UTF-8 representation of current char
*/
$cp = hexdec($m[0]);
$utf_char = cp_to_utf($cp);
/**
* $m[2] holds the "General Category" of the character
* @link http://www.unicode.org/Public/UNIDATA/UCD.html#General_Category_Values
*/
switch ($m[2][0])
{
case 'L':
/**
* We allow all letters and map them to their lowercased counterpart on the fly
*/
$map_to_hex = (isset($m[13][0])) ? $m[13] : $m[0];
if (preg_match('#^LATIN.*(?:LETTER|LIGATURE) ([A-Z]{2}(?![A-Z]))$#', $m[1], $capture))
{
/**
* Special hack for some latin ligatures. Using the name of a character
* is bad practice, but for now it works well enough.
*
* @todo Note that ligatures with combining marks such as U+01E2 are
* not supported at this time
*/
$map[$cp] = strtolower($capture[1]);
}
else if (isset($m[13][0]))
{
/**
* If the letter has a lowercased form, use it
*/
$map[$cp] = hex_to_utf($m[13]);
}
else
{
/**
* In all other cases, map the letter to itself
*/
$map[$cp] = $utf_char;
}
break;
case 'M':
/**
* We allow all marks, they are mapped to themselves
*/
$map[$cp] = $utf_char;
break;
case 'N':
/**
* We allow all numbers, but we map them to their numeric value whenever
* possible. The numeric value (field #8) is in ASCII already
*
* @todo Note that fractions such as U+00BD will be converted to something
* like "1/2", with a slash. However, "1/2" entered in ASCII is converted
* to "1 2". This will have to be fixed.
*/
$map[$cp] = (isset($m[8][0])) ? $m[8] : $utf_char;
break;
default:
/**
* Everything else is ignored, skip to the next line
*/
continue 2;
}
}
fclose($fp);
/**
* Add some cheating
*/
$cheats = array(
'00DF' => 'ss', # German sharp S
'00D6' => 'oe', # Capital O with diaeresis
'00F6' => 'oe', # Small O with diaeresis
);
/**
* Add our "cheat replacements" to the map
*/
foreach ($cheats as $hex => $map_to)
{
$map[hexdec($hex)] = $map_to;
}
/**
* Split the map into smaller blocks
*/
$file_contents = array();
foreach ($map as $cp => $map_to)
{
$file_contents[$cp >> 11][cp_to_utf($cp)] = $map_to;
}
unset($map);
foreach ($file_contents as $idx => $contents)
{
echo "Writing to search_indexer_$idx.$phpEx\n";
$fp = fopen($phpbb_root_path . 'includes/utf/data/search_indexer_' . $idx . '.' . $phpEx, 'wb');
fwrite($fp, '<?php return ' . my_var_export($contents) . ';');
fclose($fp);
}
echo "\n*** Search indexer tables done\n\n";
die("\nAll done!\n");
////////////////////////////////////////////////////////////////////////////////
// Internal functions //
////////////////////////////////////////////////////////////////////////////////
/**
* Decompose a sequence recusively
*
* @param array $decomp_map Decomposition mapping, passed by reference
* @param string $decomp_seq Decomposition sequence as decimal codepoints separated with a space
* @return string Decomposition sequence, fully decomposed
*/
function decompose(&$decomp_map, $decomp_seq)
{
$ret = array();
foreach (explode(' ', $decomp_seq) as $cp)
{
if (isset($decomp_map[$cp]))
{
$ret[] = decompose($decomp_map, $decomp_map[$cp]);
}
else
{
$ret[] = $cp;
}
}
return implode(' ', $ret);
}
/**
* Return a parsable string representation of a variable
*
* This is function is limited to array/strings/integers
*
* @param mixed $var Variable
* @return string PHP code representing the variable
*/
function my_var_export($var)
{
if (is_array($var))
{
$lines = array();
foreach ($var as $k => $v)
{
$lines[] = my_var_export($k) . '=>' . my_var_export($v);
}
return 'array(' . implode(',', $lines) . ')';
}
else if (is_string($var))
{
return "'" . str_replace(array('\\', "'"), array('\\\\', "\\'"), $var) . "'";
}
else
{
return $var;
}
}
/**
* Download a file to the develop/ dir
*
* @param string $url URL of the file to download
* @return void
*/
function download($url)
{
global $phpbb_root_path;
if (file_exists($phpbb_root_path . 'develop/' . basename($url)))
{
return;
}
echo 'Downloading from ', $url, ' ';
if (!$fpr = fopen($url, 'rb'))
{
die("Can't download from $url\nPlease download it yourself and put it in the develop/ dir, kthxbai");
}
if (!$fpw = fopen($phpbb_root_path . 'develop/' . basename($url), 'wb'))
{
die("Can't open develop/" . basename($url) . " for output... please check your permissions or something");
}
$i = 0;
$chunk = 32768;
$done = '';
while (!feof($fpr))
{
$i += fwrite($fpw, fread($fpr, $chunk));
echo str_repeat("\x08", strlen($done));
$done = ($i >> 10) . ' KiB';
echo $done;
}
fclose($fpr);
fclose($fpw);
echo "\n";
}
/**
* Convert a codepoint in hexadecimal to a UTF-8 char
*
* @param string $hex Codepoint, in hexadecimal
* @return string UTF-8 char
*/
function hex_to_utf($hex)
{
return cp_to_utf(hexdec($hex));
}
/**
* Return a UTF string formed from a sequence of codepoints in hexadecimal
*
* @param string $seq Sequence of codepoints, separated with a space
* @return string UTF-8 string
*/
function hexseq_to_utf($seq)
{
return implode('', array_map('hex_to_utf', explode(' ', $seq)));
}
/**
* Convert a codepoint to a UTF-8 char
*
* @param integer $cp Unicode codepoint
* @return string UTF-8 string
*/
function cp_to_utf($cp)
{
if ($cp > 0xFFFF)
{
return chr(0xF0 | ($cp >> 18)) . chr(0x80 | (($cp >> 12) & 0x3F)) . chr(0x80 | (($cp >> 6) & 0x3F)) . chr(0x80 | ($cp & 0x3F));
}
else if ($cp > 0x7FF)
{
return chr(0xE0 | ($cp >> 12)) . chr(0x80 | (($cp >> 6) & 0x3F)) . chr(0x80 | ($cp & 0x3F));
}
else if ($cp > 0x7F)
{
return chr(0xC0 | ($cp >> 6)) . chr(0x80 | ($cp & 0x3F));
}
else
{
return chr($cp);
}
}

View File

@@ -0,0 +1,131 @@
<html>
<head>
<title>Duplicate Language Keys</title>
</head>
<body>
<?php
// -------------------------------------------------------------
//
// $Id$
//
// @copyright (c) 2005 phpBB Group
// @license http://opensource.org/licenses/gpl-license.php GNU Public License
//
// -------------------------------------------------------------
// Thanks to arod-1
define('IN_PHPBB', 1);
$phpEx = substr(strrchr(__FILE__, '.'), 1);
$phpbb_root_path='./../';
include($phpbb_root_path . 'common.'.$phpEx);
$mode = request_var('mode', '');
$modules = find_modules($phpbb_root_path . 'language/en');
$kkeys = $keys = array();
$langdir = dirname(__FILE__);
if (isset($lang))
{
unset($lang);
}
foreach($modules as $module)
{
require_once("$langdir$module");
if (isset($lang))
{
$kkeys[$module] = $lang;
$keys[] = $module;
unset($lang);
}
}
$equal = $case = $diff = 0;
$output = array();
while ($module = array_shift($keys))
{
$keys_1 = array_keys($kkeys[$module]);
foreach ($keys as $other_module)
{
$keys_2 = array_keys($kkeys[$other_module]);
foreach(array_intersect($keys_1, $keys_2) as $dup)
{
if ($kkeys[$module][$dup] == $kkeys[$other_module][$dup])
{
$compare = "Equal";
$equal++;
}
else if (strcasecmp($kkeys[$module][$dup], $kkeys[$other_module][$dup]) == 0)
{
$compare = "Differ in case";
$case++;
}
else
{
$compare = "'{$kkeys[$module][$dup]}' - '{$kkeys[$other_module][$dup]}'";
$diff++;
}
$color = '';
if ((basename($module) == "common.$phpEx") || (basename($other_module) == "common.$phpEx"))
{
$color = ' style="color:#B00000;"';
}
switch ($mode)
{
case 'module':
$output[$module][] = "<tr$color><td>" . ((isset($output[$module])) ? '&nbsp;' : "<b>$module</b>" ) . "</td><td>$dup</td><td>$other_module</td><td>$compare</td></tr>";
break;
default:
$output[$dup][] = "<tr$color><td><b>$dup</b></td><td>$module</td><td>$other_module</td><td>$compare</td></tr>";
break;
}
}
}
}//var_dump($output);
echo "<p><a href=\"lang_duplicates.php\">By Key</a> <a href=\"lang_duplicates.php?mode=module\">By Module</a></p><p>Equal: <b>$equal</b>, Differ in case only: $case, differ in content: $diff</p>";
switch ($mode)
{
case 'module':
echo "<table cellpadding=\"4\"><tr><th>Key</th><th>First File</th><th>Second File</th><th>Difference</th></tr>";
foreach ($output as $module => $html)
{
echo implode('', $html);
}
break;
default:
ksort($output);
echo "<table cellpadding=\"4\"><tr><th>File</th><th>Key</th><th>Conflicting File</th><th>Difference</th></tr>";
foreach ($output as $dup)
{
echo implode('', $dup);
}
break;
}
echo "</table>";
function find_modules($dirname)
{
$list = glob("$dirname/*.php");
foreach(glob("$dirname/*", GLOB_ONLYDIR) as $name)
{
$list = array_merge($list, find_modules($name));
}
return $list;
}
?>
</body>
</html>

View File

@@ -48,7 +48,7 @@ $sql = "CREATE TABLE {$table_prefix}attachments
AND a.post_id = p.post_id";
$db->sql_query($sql);
switch (SQL_LAYER)
switch ($db->sql_layer)
{
case 'mysql':
case 'mysql4':

View File

@@ -54,7 +54,7 @@ $sql = "CREATE TABLE {$table_prefix}posts
WHERE pt.post_id = p.post_id";
$db->sql_query($sql);
switch (SQL_LAYER)
switch ($db->sql_layer)
{
case 'mysql':
case 'mysql4':
@@ -150,7 +150,7 @@ while ($row = $db->sql_fetchrow($result))
}
$db->sql_freeresult($result);
switch (SQL_LAYER)
switch ($db->sql_layer)
{
case 'oracle':
$sql = "SELECT f.*, p.post_time, p.post_username, u.username, u.user_id

74
phpBB/develop/regex.php Normal file
View File

@@ -0,0 +1,74 @@
<?php
// IP regular expressions
$dec_octet = '(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])';
$h16 = '[\dA-F]{1,4}';
$ipv4 = "(?:$dec_octet\.){3}$dec_octet";
$ls32 = "(?:$h16:$h16|$ipv4)";
$ipv6_construct = array(
array(false, '', '{6}', $ls32),
array(false, '::', '{5}', $ls32),
array('', ':', '{4}', $ls32),
array('{1,2}', ':', '{3}', $ls32),
array('{1,3}', ':', '{2}', $ls32),
array('{1,4}', ':', '', $ls32),
array('{1,5}', ':', false, $ls32),
array('{1,6}', ':', false, $h16),
array('{1,7}', ':', false, '')
);
$ipv6 = '(?:';
foreach ($ipv6_construct as $ip_type)
{
$ipv6 .= '(?:';
if ($ip_type[0] !== false)
{
$ipv6 .= "(?:$h16:)" . $ip_type[0];
}
$ipv6 .= $ip_type[1];
if ($ip_type[2] !== false)
{
$ipv6 .= "(?:$h16:)" . $ip_type[2];
}
$ipv6 .= $ip_type[3] . ')|';
}
$ipv6 = substr($ipv6, 0, -1) . ')';
echo 'IPv4: ' . $ipv4 . "<br />\nIPv6: " . $ipv6 . "<br />\n";
// URL regular expressions
$pct_encoded = "%[\dA-F]{2}";
$unreserved = 'a-z0-9\-._~';
$sub_delims = '!$&\'()*+,;=';
$pchar = "(?:[$unreserved$sub_delims:@|]+|$pct_encoded)"; // rfc: no "|"
$scheme = '[a-z][a-z\d+\-.]*';
$reg_name = "(?:[$unreserved$sub_delims|@]+|$pct_encoded)+"; // rfc: * instead of + and no "|" and no "@" (included instead of userinfo
//$userinfo = "(?:(?:[$unreserved$sub_delims:]+|$pct_encoded))*";
$ipv4_simple = '[0-9.]+';
$ipv6_simple = '\[[a-z0-9.]+:[a-z0-9.]+:[a-z0-9.:]+\]';
$host = "(?:$reg_name|$ipv4_simple|$ipv6_simple)";
$port = '\d*';
//$authority = "(?:$userinfo@)?$host(?::$port)?";
$authority = "$host(?::$port)?";
$segment = "$pchar*";
$path_abempty = "(?:/$segment)*";
$hier_part = "/{2}$authority$path_abempty";
$query = "(?:[$unreserved$sub_delims:@/?|]+|$pct_encoded)*"; // pchar | "/" | "?", rfc: no "|"
$fragment = $query;
$url = "$scheme:$hier_part(?:\?$query)?(?:\#$fragment)?";
echo 'URL: ' . $url . "<br />\n";
// no scheme, shortened authority, but host has to start with www.
$www_url = "www\.$reg_name(?::$port)?$path_abempty(?:\?$query)?(?:\#$fragment)?";
echo 'www.URL: ' . $www_url . "<br />\n";
// no schema and no authority
$relative_url = "$segment$path_abempty(?:\?$query)?(?:\#$fragment)?";
echo 'relative URL: ' . $relative_url . "<br />\n";
?>

View File

@@ -82,7 +82,7 @@ for(;$postcounter <= $max_post_id; $postcounter += $batchsize)
$rowset = $db->sql_fetchrowset($result);
$db->sql_freeresult($result);
$post_rows = count($rowset);
$post_rows = sizeof($rowset);
if( $post_rows )
{

View File

@@ -0,0 +1,380 @@
<?php
/**
*
* @package phpBB3
* @version $Id$
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
if (php_sapi_name() != 'cli')
{
die("This program must be run from the command line.\n");
}
set_time_limit(0);
error_reporting(E_ALL);
define('IN_PHPBB', true);
$phpbb_root_path = '../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
/**
* Let's download some files we need
*/
download('http://www.unicode.org/Public/UNIDATA/NormalizationTest.txt');
download('http://www.unicode.org/Public/UNIDATA/UnicodeData.txt');
/**
* Those are the tests we run
*/
$test_suite = array(
/**
* NFC
* c2 == NFC(c1) == NFC(c2) == NFC(c3)
* c4 == NFC(c4) == NFC(c5)
*/
'NFC' => array(
'c2' => array('c1', 'c2', 'c3'),
'c4' => array('c4', 'c5')
),
/**
* NFD
* c3 == NFD(c1) == NFD(c2) == NFD(c3)
* c5 == NFD(c4) == NFD(c5)
*/
'NFD' => array(
'c3' => array('c1', 'c2', 'c3'),
'c5' => array('c4', 'c5')
),
/**
* NFKC
* c4 == NFKC(c1) == NFKC(c2) == NFKC(c3) == NFKC(c4) == NFKC(c5)
*/
'NFKC' => array(
'c4' => array('c1', 'c2', 'c3', 'c4', 'c5')
),
/**
* NFKD
* c5 == NFKD(c1) == NFKD(c2) == NFKD(c3) == NFKD(c4) == NFKD(c5)
*/
'NFKD' => array(
'c5' => array('c1', 'c2', 'c3', 'c4', 'c5')
)
);
require_once($phpbb_root_path . 'includes/utf/utf_normalizer.' . $phpEx);
$i = $n = 0;
$failed = false;
$tested_chars = array();
$fp = fopen($phpbb_root_path . 'develop/NormalizationTest.txt', 'rb');
while (!feof($fp))
{
$line = fgets($fp);
++$n;
if ($line[0] == '@')
{
if ($i)
{
echo "done\n";
}
$i = 0;
echo "\n", substr($line, 1), "\n\n";
continue;
}
if (!strpos(' 0123456789ABCDEF', $line[0]))
{
continue;
}
if (++$i % 100 == 0)
{
echo $i, ' ';
}
list($c1, $c2, $c3, $c4, $c5) = explode(';', $line);
if (!strpos($c1, ' '))
{
/**
* We are currently testing a single character, we add it to the list of
* characters we have processed so that we can exclude it when testing
* for invariants
*/
$tested_chars[$c1] = 1;
}
foreach ($test_suite as $form => $serie)
{
foreach ($serie as $expected => $tests)
{
$hex_expected = ${$expected};
$utf_expected = hexseq_to_utf($hex_expected);
foreach ($tests as $test)
{
$utf_result = call_user_func(array('utf_normalizer', $form), $utf_expected);
if (strcmp($utf_expected, $utf_result))
{
$failed = true;
$hex_result = utf_to_hexseq($utf_result);
echo "\nFAILED $expected == $form($test) ($hex_expected != $hex_result)";
}
}
}
if ($failed)
{
die("\n\nFailed at line $n\n");
}
}
}
fclose($fp);
/**
* Test for invariants
*/
echo "\n\nTesting for invariants...\n\n";
$fp = fopen($phpbb_root_path . 'develop/UnicodeData.txt', 'rt');
$n = 0;
while (!feof($fp))
{
if (++$n % 100 == 0)
{
echo $n, ' ';
}
$line = fgets($fp, 1024);
if (!$pos = strpos($line, ';'))
{
continue;
}
$hex_tested = $hex_expected = substr($line, 0, $pos);
if (isset($tested_chars[$hex_tested]))
{
continue;
}
$utf_expected = hex_to_utf($hex_expected);
if ($utf_expected >= UTF8_SURROGATE_FIRST
&& $utf_expected <= UTF8_SURROGATE_LAST)
{
/**
* Surrogates are illegal on their own, we expect the normalizer
* to return a replacement char
*/
$utf_expected = UTF8_REPLACEMENT;
$hex_expected = utf_to_hexseq($utf_expected);
}
foreach (array('nfc', 'nfkc', 'nfd', 'nfkd') as $form)
{
$utf_result = utf_normalizer::$form($utf_expected);
$hex_result = utf_to_hexseq($utf_result);
// echo "$form($utf_expected) == $utf_result\n";
if (strcmp($utf_expected, $utf_result))
{
$failed = 1;
echo "\nFAILED $hex_expected == $form($hex_tested) ($hex_expected != $hex_result)";
}
}
if ($failed)
{
die("\n\nFailed at line $n\n");
}
}
fclose($fp);
die("\n\nALL TESTS PASSED SUCCESSFULLY\n");
/**
* Download a file to the develop/ dir
*
* @param string $url URL of the file to download
* @return void
*/
function download($url)
{
global $phpbb_root_path;
if (file_exists($phpbb_root_path . 'develop/' . basename($url)))
{
return;
}
echo 'Downloading from ', $url, ' ';
if (!$fpr = fopen($url, 'rb'))
{
die("Can't download from $url\nPlease download it yourself and put it in the develop/ dir, kthxbai");
}
if (!$fpw = fopen($phpbb_root_path . 'develop/' . basename($url), 'wb'))
{
die("Can't open develop/" . basename($url) . " for output... please check your permissions or something");
}
$i = 0;
$chunk = 32768;
$done = '';
while (!feof($fpr))
{
$i += fwrite($fpw, fread($fpr, $chunk));
echo str_repeat("\x08", strlen($done));
$done = ($i >> 10) . ' KiB';
echo $done;
}
fclose($fpr);
fclose($fpw);
echo "\n";
}
/**
* Convert a UTF string to a sequence of codepoints in hexadecimal
*
* @param string $utf UTF string
* @return integer Unicode codepoints in hex
*/
function utf_to_hexseq($str)
{
$pos = 0;
$len = strlen($str);
$ret = array();
while ($pos < $len)
{
$c = $str[$pos];
switch ($c & "\xF0")
{
case "\xC0":
case "\xD0":
$utf_char = substr($str, $pos, 2);
$pos += 2;
break;
case "\xE0":
$utf_char = substr($str, $pos, 3);
$pos += 3;
break;
case "\xF0":
$utf_char = substr($str, $pos, 4);
$pos += 4;
break;
default:
$utf_char = $c;
++$pos;
}
$hex = dechex(utf_to_cp($utf_char));
if (!isset($hex[3]))
{
$hex = substr('000' . $hex, -4);
}
$ret[] = $hex;
}
return strtr(implode(' ', $ret), 'abcdef', 'ABCDEF');
}
/**
* Convert a UTF-8 char to its codepoint
*
* @param string $utf_char UTF-8 char
* @return integer Unicode codepoint
*/
function utf_to_cp($utf_char)
{
switch (strlen($utf_char))
{
case 1:
return ord($utf_char);
case 2:
return ((ord($utf_char[0]) & 0x1F) << 6) | (ord($utf_char[1]) & 0x3F);
case 3:
return ((ord($utf_char[0]) & 0x0F) << 12) | ((ord($utf_char[1]) & 0x3F) << 6) | (ord($utf_char[2]) & 0x3F);
case 4:
return ((ord($utf_char[0]) & 0x07) << 18) | ((ord($utf_char[1]) & 0x3F) << 12) | ((ord($utf_char[2]) & 0x3F) << 6) | (ord($utf_char[3]) & 0x3F);
default:
die('UTF-8 chars can only be 1-4 bytes long');
}
}
/**
* Return a UTF string formed from a sequence of codepoints in hexadecimal
*
* @param string $seq Sequence of codepoints, separated with a space
* @return string UTF-8 string
*/
function hexseq_to_utf($seq)
{
return implode('', array_map('hex_to_utf', explode(' ', $seq)));
}
/**
* Convert a codepoint in hexadecimal to a UTF-8 char
*
* @param string $hex Codepoint, in hexadecimal
* @return string UTF-8 char
*/
function hex_to_utf($hex)
{
return cp_to_utf(hexdec($hex));
}
/**
* Convert a codepoint to a UTF-8 char
*
* @param integer $cp Unicode codepoint
* @return string UTF-8 string
*/
function cp_to_utf($cp)
{
if ($cp > 0xFFFF)
{
return chr(0xF0 | ($cp >> 18)) . chr(0x80 | (($cp >> 12) & 0x3F)) . chr(0x80 | (($cp >> 6) & 0x3F)) . chr(0x80 | ($cp & 0x3F));
}
else if ($cp > 0x7FF)
{
return chr(0xE0 | ($cp >> 12)) . chr(0x80 | (($cp >> 6) & 0x3F)) . chr(0x80 | ($cp & 0x3F));
}
else if ($cp > 0x7F)
{
return chr(0xC0 | ($cp >> 6)) . chr(0x80 | ($cp & 0x3F));
}
else
{
return chr($cp);
}
}

View File

@@ -1,22 +1,43 @@
/* ********************************************************************** *\
/* *\
/* phpBB3 <20> Copyright 2003 phpBB Group *\
/* phpBB3 <20> Copyright 2006 phpBB Group *\
/* *\
/* [ http://www.phpbb.com/ ] *\
/* *\
/* ********************************************************************** *\
Please see: http://www.phpbb.com/about.php for a list of all the people involved in phpBB.
Original subSilver by subBlue Design, Tom Beddard, <20> 2001 phpBB Group
Please see: http://www.phpbb.com/about/ for a list of all the people currently
involved in phpBB.
phpBB Project Manager : theFinn (James Atkinson)
phpBB Lead Developers : Acyd Burn (Meik Sievertsen)
psoTFX (Paul S. Owen) [2001 - 09/2005]
phpBB Developers : DavidMJ (David M.)
GrahamJE (Graham Eames)
naderman (Nils Adermann)
subBlue (Tom Beddard)
BartVB (Bart van Bragt) - [11/2000 - 03/2006]
Ashe (Ludovic Arnaud) - [10/2002 - 11/2003, 06/2006 - 10/2006]
Original subSilver by subBlue Design, Tom Beddard, (c) 2001 phpBB Group
phpBB3 contains code from the following applications:
LGPL licenced:
Smarty <EFBFBD> 2001, 2002 by ispi of Lincoln, Inc, http://smarty.php.net/
Smarty (c) 2001, 2002 by ispi of Lincoln, Inc, http://smarty.php.net/
GPL licenced:
phpMyAdmin <EFBFBD> 2001,2003 phpMyAdmin Devel team, http://www.phpmyadmin.net/
Jabber class <EFBFBD> 2003 Carlo Zottmann, http://phpjabber.g-blog.net
phpMyAdmin (c) 2001,2003 phpMyAdmin Devel team, http://www.phpmyadmin.net/
Jabber Class (c) 2004 Nathan Fritz, http://cjphp.netflint.net
Chora (c) 2000-2006, The Horde Project. http://horde.org/chora/
Horde Project (c) 2000-2006, The Horde Project. http://horde.org/
PHP License, version 3.0:
Pear <EFBFBD> 2001-2004 PHP Group, http://pear.php.net
Pear (c) 2001-2004 PHP Group, http://pear.php.net
Text_Diff-0.2.1 http://pear.php.net/package/Text_Diff

215
phpBB/docs/CHANGELOG.html Normal file
View File

@@ -0,0 +1,215 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!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" xml:lang="en" lang="en">
<head>
<title>phpBB 3.0.x Changelog</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="resource-type" content="document" />
<meta name="description" lang="en" content="phpBB 3.0.x Changelog" />
<meta name="keywords" lang="en" content="" />
<meta name="author" content="phpBB Group" />
<meta name="copyright" content="phpBB Group" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<style type="text/css">
<!--
/* The original "subSilver" theme for phpBB2 Created by subBlue design :: http://www.subBlue.com */
body {
background-color: white;
font-family: Verdana, Arial, Helvetica, sans-serif;
margin: 0;
border: 0;
padding: 0;
}
img {
border: 0;
}
p {
font-size: 8pt;
}
hr {
height: 0;
border: solid #D1D7DC 0;
border-top-width: 1px;
}
#title, h1 {
font: bold 18pt 'Trebuchet MS', Verdana, sans-serif;
text-decoration: none;
line-height: 120%;
}
h2 {
font: bold 12pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
h3 {
font: bold 10pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
.paragraph {
margin-left: 20px;
}
/* Structure */
#logo {
background: #fff url(header_bg.jpg) repeat-x top right;
height: 60px;
}
#title {
color: #12749b;
float: right;
margin: 10px 10px 0;
}
#main {
margin-left: 25px;
margin-right: 25px;
}
.good {
color: green;
}
.bad {
color: red;
}
#footer {
margin-left: 75px;
font-size: 70%;
color: #006600;
}
code {
color: #006600;
font-weight: normal;
font-family: 'Courier New', monospace;
border-color: #D1D7DC;
border-width: 1px;
border-style: solid;
background-color: #FAFAFA;
}
.indent p {
padding-left: 20px;
font-size: 90%;
}
/* Anchors */
a {
font-size: 70%;
}
a:link, a:active, a:visited {
color: #006699;
text-decoration: none;
}
a:hover {
color: #DD6900;
text-decoration: underline;
}
a.nav {
color: #006699;
text-decoration: none;
}
a.nav:hover {
text-decoration: underline;
}
p a {
font-size: 100%;
}
.menu {
font-size: 80%;
}
.menu li a {
font-size: 100%;
}
.comment {
color: green;
}
//-->
</style>
</head>
<body>
<div id="logo">
<div id="title">phpBB 3.0.x Changelog</div>
<img src="header_left.jpg" alt="phpBB Logo" />
</div>
<a name="top"></a><div id="main">
<!-- BEGIN DOCUMENT -->
<p>This is a non-exhaustive (but still near complete) changelog for phpBB 3.0.x including release candidate versions. Our thanks to all those people who've contributed bug reports and code fixes.</p>
<h1>Changelog</h1>
<ol class="menu">
<li><a href="#changelog">Changelog</a>
<ol type="i">
<li><a href="#v30rc1">Changes since RC-1</a></li>
</ol>
</li>
<li><a href="#disclaimer">Copyright and disclaimer</a></li>
</ol>
<hr />
<a name="changelog"></a><h1>1. Changelog</h1>
<a name="v30rc1"></a><b>1.i. Changes since 3.0.RC1</b>
<br /><br />
<div class="paragraph">
<ul class="menu">
<li>&nbsp;</li>
</ul>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="disclaimer"></a><h1>2. Copyright and disclaimer</h1>
<div class="paragraph">
<p>This application is opensource software released under the <a href="http://www.gnu.org/licenses/gpl.html">GPL</a>. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) 2007 <a href="http://www.phpbb.com/">phpBB Group</a>, All Rights Reserved.</p>
</div>
<a href="#top">Top</a>
<!-- END DOCUMENT -->
</div>
<br /><br />
<div id="footer">Note that a full list of fixed bugs can be found at the bug tracker (<a href="README.html#bugs">see section on bug reporting</a>)<br /><br /></div>
</body>
</html>

380
phpBB/docs/FAQ.html Normal file
View File

@@ -0,0 +1,380 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!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" xml:lang="en" lang="en">
<head>
<title>phpBB 3.0.x FAQ</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="resource-type" content="document" />
<meta name="description" lang="en" content="phpBB 3.0.x frequently asked questions" />
<meta name="keywords" lang="en" content="" />
<meta name="author" content="phpBB Group" />
<meta name="copyright" content="phpBB Group" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<style type="text/css">
<!--
/* The original "subSilver" theme for phpBB2 Created by subBlue design :: http://www.subBlue.com */
body {
background-color: white;
font-family: Verdana, Arial, Helvetica, sans-serif;
margin: 0;
border: 0;
padding: 0;
}
img {
border: 0;
}
p {
font-size: 8pt;
}
hr {
height: 0;
border: solid #D1D7DC 0;
border-top-width: 1px;
}
#title, h1 {
font: bold 18pt 'Trebuchet MS', Verdana, sans-serif;
text-decoration: none;
line-height: 120%;
}
h2 {
font: bold 12pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
h3 {
font: bold 10pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
.paragraph {
margin-left: 20px;
}
/* Structure */
#logo {
background: #fff url(header_bg.jpg) repeat-x top right;
height: 60px;
}
#title {
color: #12749b;
float: right;
margin: 10px 10px 0;
}
#main {
margin-left: 25px;
margin-right: 25px;
}
.good {
color: green;
}
.bad {
color: red;
}
#footer {
margin-left: 75px;
font-size: 70%;
color: #006600;
}
code {
color: #006600;
font-weight: normal;
font-family: 'Courier New', monospace;
border-color: #D1D7DC;
border-width: 1px;
border-style: solid;
background-color: #FAFAFA;
}
.indent p {
padding-left: 20px;
font-size: 90%;
}
/* Anchors */
a {
font-size: 70%;
}
a:link, a:active, a:visited {
color: #006699;
text-decoration: none;
}
a:hover {
color: #DD6900;
text-decoration: underline;
}
a.nav {
color: #006699;
text-decoration: none;
}
a.nav:hover {
text-decoration: underline;
}
p a {
font-size: 100%;
}
.menu {
font-size: 80%;
}
.menu li a {
font-size: 100%;
}
.comment {
color: green;
}
//-->
</style>
</head>
<body>
<div id="logo">
<div id="title">phpBB 3.0.x FAQ</div>
<img src="header_left.jpg" alt="phpBB Logo" />
</div>
<a name="top"></a><div id="main">
<!-- BEGIN DOCUMENT -->
<p>This is a very basic Frequently Asked Questions (FAQ) page which attempts to answer some of the more commonly asked questions. It is by no means exhaustive and should be used in combination with the 'built-in' User FAQ within phpBB3, the community forums and our IRC channel (see <a href="README.html">README</a> for details).</p>
<h1>FAQ</h1>
<!-- add entry about common UTF8 problems (for example wrong uploading, editing) -->
<ul class="menu">
<li><a href="#install">I cannot install this it is too difficult! Will you do it?</a></li>
<li><a href="#legal">I am having problems with the admin at a certain board, help!</a></li>
<li><a href="#legal">A board has ripped off my graphics/software/etc., stop them!</a></li>
<li><a href="#legal">A board is dealing in warez/porn/etc., you need to prevent them doing this!</a></li>
<li><a href="#legal">I want to sue you because i think you host an illegal board!</a></li>
<li><a href="#viewonline">According to viewonline a user is doing/reading something they should not be able to!</a></li>
<li><a href="#mail">I keep getting Mail sending errors when I (or my users) post/send PM's/etc.!</a></li>
<li><a href="#mail_language">My users are complaining that emails are not in their selected language!</a></li>
<li><a href="#aol_browser">My AOL based users keep getting logged out!</a></li>
<li><a href="#avatars">No matter what I set the uploadable avatars to I cannot upload one from my computer!</a></li>
<li><a href="#gallery_avatars">I just cannot get gallery avatars to appear!</a></li>
<li><a href="#permissions">How do I use/set permissions?</a></li>
<li><a href="#login_issues">I (or my users) cannot stay logged in to the forum!</a></li>
<li><a href="#logout_issues">My users are complaining about being logged out too quickly!</a></li>
<li><a href="#not_answered">My question isn't answered here!</a></li>
<li><a href="#disclaimer">Copyright and disclaimer</a></li>
</ul>
<hr />
<a name="install"></a><h3>I cannot install this it is too difficult! Will you do it?</h3>
<div class="paragraph">
<p>Simple answer, no we will not. We are not being difficult when we say this we are actually trying to help you. phpBB has a reputation for being easy to install, that reputation is we believe well deserved. It is a simple process of unarchiving a single file, uploading the resulting directory/files to their intended location and entering some data in a web based form. The sequence of events, what to type where, etc. is covered in detail in the accompanying <a href="INSTALL.html">INSTALL.html</a> documentation. If you cannot install phpBB3 the chances are you will be unable to administer or update it.</p>
<p>There are people, companies (unrelated to your hosting provider), etc. that will install your forum, either for free or for a payment. We do not recommend you make use of these offers. Unless the service is provided by your hosting company you will have to divulge passwords and other sensitive details. If you did not know how to use an ATM would you give a passer-by your bank card and PIN and ask them to show you what to do? No, probably not! The same applies to your hosting account details!</p>
<p>We think a better solution is for you to carefully read the enclosed documentation, read through our knowledge base at <a href="http://www.phpbb.com/">www.phpbb.com</a> and if necessary ask for help on any thing you get stuck on. However, the decision is yours but please note we may not offer support if we believe you have had the board installed by a third party. In such cases you should direct your questions to that company or person/s.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="legal"></a>
<h3>I am having problems with the admin at a certain board, help!</h3>
<h3>A board has ripped off my graphics/software/etc., stop them!</h3>
<h3>A board is dealing in warez/porn/etc., you need to prevent them doing this!</h3>
<h3>I want to sue you because i think you host an illegal board!</h3>
<div class="paragraph">
<p>We provide the software, we have absolutely nothing to do with any board that runs it (beyond phpbb.com of course!) and we also do not host any site. The GPL grants the user an unlimited right of use subject to their adherence of that licence. Therefore we cannot prevent, dictate, control or otherwise limit the use of phpBB software. So please do not contact us for such matters.</p>
<p>If you have a problem with a given board please take it up with them, not us. We are not and cannot be held legally responsible for any third party use of this software (much like Microsoft et al cannot be held responsible for the use of Windows in illegal activities, etc.). Additionally we do <strong>not</strong> track the use of phpBB software in any way. So please do not ask us for details on a &quot;given&quot; board we will not be able to help you. If any law firms or lawyers out there send us writs, cease and desist orders, etc. for third party website use of this software we reserve the right to charge for time wasted dealing with such issues...</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="viewonline"></a><h3>According to viewonline a user is doing/reading something they should not be able to!</h3>
<div class="paragraph">
<p>No, they probably are not. phpBB uses sessions to keep track of users as they move between pages. The session information tells us who this user is. Therefore in order to determine what a user can do on a page we first need the session details. Once this data is available we can check whether the user is permitted to do whatever it is they are trying to do. This can result in it appearing as if a user is reading a topic in a forum they should not be able to access. Or perhaps viewing private messages when they are only guests, etc. In practice the user is not doing these things, they are viewing a &quot;You are not permitted to do this&quot; type message. The session data has simply been updated before we were able to determine what the user could or could not do.</p>
<p>Of course this only applies where permissions have been set correctly!</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="mail"></a><h3>I keep getting Mail sending errors when I (or my users) post/send PM's/etc.!</h3>
<div class="paragraph">
<p>This error will occur if phpBB cannot send mail. phpBB can send email two ways; using the PHP <code>mail()</code> function or directly via SMTP. Some hosting providers limit the <code>mail()</code> function to prevent its use in spamming, others may rename it or limit its functionality. If the <code>mail()</code> function got renamed, you are able to enter the correct name within the administration control panel. In either case you may need to make use of SMTP. This requires that you have access to such a facility, e.g. your hosting provider may provide one (perhaps requiring specific written authorisation), etc. Please see <a href="http://www.phpbb.com/">www.phpbb.com</a> for additional help on this matter.</p>
<p>If you do require SMTP services please do not ask (on our forums or elsewhere) for someone to provide you with one. Open relays are now things of the past thanks to the unthinking spammers out there. Therefore you are unlikely to find someone willing to offer you (free) services.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="mail_language"></a><h3>My users are complaining that emails are not in their selected language!</h3>
<div class="paragraph">
<p>You must have deleted a language pack or the language pack is incomplete. phpBB will try to send emails in the users selected language. If it cannot find a suitable email template it will switch to the boards default language.</p>
<!-- additional entry about encoded emails -->
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="aol_browser"></a><h3>My AOL based users keep getting logged out!</h3>
<div class="paragraph">
<p>phpBB uses sessions to keep track of users as they browse the board. These sessions use a combination of a unique session id, the users IP and if specified the users browser and/or the users x-forwarded-for header to identify each user. We make use of all of this as an extra safe-guard to help prevent sessions being hijacked (by discovering the unique session id).</p>
<p>Unfortunately this only works when the users IP is constant as they browse the board. For most users this will be the case. However certain providers route their users via a cluster of proxys. In some cases, particularly the AOL browser, this results in different IPs being forwarded as the user moves between pages. We take account of this by not checking the entire IP by default but only the first "three quads" (<samp>A.B.C</samp>). Again in most cases this will be fine. However again AOL uses IPs which can vary so much that checking only the first two quads results in a fairly static IP being available for session validation.</p>
<p>If you are experiencing problems related to this you can set the Session IP validation parameter found in <code>Admin-&gt;General-&gt;Server Configuration-&gt;Security Settings</code> to <samp>A.B</samp>. Please note that reducing the IP validation length does potentially increase the risk of sessions being hijacked (this is something for you to consider, phpBB Group takes no responsibility should anything happen!). We suggest to at least additionally enable the browser validation.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="avatars"></a><h3>No matter what I set the uploadable avatars to I cannot upload one from my computer!</h3>
<div class="paragraph">
<p>There are two possibilities here, the first is you have not created the directory you specified as the storage location for avatars, ie. as specified in the <code>Admin -&gt; General -&gt; Board Configuration -&gt; Avatar settings</code> section. If the directory does not exist uploadeable avatars are automatically disabled. You should create the required directory (ensuring it has global write access or other appropriate permissions to allow the webserver to write files to it).</p>
<p>The second possibility is that your provider has disabled file_upload support. You should contact your provider and ask them if this is the case. There is not a lot you can do, there are still three other avatar settings left to choose from including uploading via an URL which will work fine.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="gallery_avatars"></a><h3>I just cannot get gallery avatars to appear!</h3>
<div class="paragraph">
<p>phpBB categorises gallery avatars and it does this by reading through folders contained in the location you specified as being the gallery path. For example, if you set the gallery path to <samp>images/avatars/gallery</samp> phpBB will expect to find a series of folders within that path, eg. <samp>images/avatars/gallery/moviestars</samp>, <samp>images/avatars/gallery/cartoons</samp>, <samp>images/avatars/gallery/misc</samp>, etc. Placing images directly in <samp>images/avatars/gallery/</samp> will result in nothing being listed in your gallery.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="permissions"></a><h3>How do I use/set permissions?</h3>
<div class="paragraph">
<p>Please read our documentation about <a href="#">permissions</a>.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="login_issues"></a><h3>I (or my users) cannot stay logged in to the forum!</h3>
<div class="paragraph">
<p>If you (or your users) are, after attempting a login, being returned to the index (or other page) without appearing to be logged in the most likely problem is incorrect cookie settings. phpBB uses cookies to store a session id and a small amount of user data. For this data to be stored correctly the cookie domain, name, path and secure settings must be correct. You can check this in <code>Admin-&gt;General-&gt;Server Configuration-&gt;Cookie Settings</code>. Typically the cookie domain can be left blank and the cookie path set to <samp>/</samp> (a single forward slash). Do <strong>not</strong> set the cookie as being secure unless your board is running over a secure sockets layer connection, ie. https://</p>
<p>If you still have problems try setting the cookie domain to your full domain name, eg. <samp>www.mysystem.tld</samp>, <samp>www.something.mydomain.tld</samp>. You <strong>must</strong> ensure the domain name contains at least two dots or browsers will be unlikely to recognise the cookie, eg. <samp>.mydomain.com</samp>, <samp>mydomain.com</samp>. Do <strong>not</strong> add http:// or anything else to the domain name!</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="logout_issues"></a><h3>My users are complaining about being logged out too quickly!</h3>
<div class="paragraph">
<p>You can increase the default length of sessions (ie. how long before a users session is considered 'dead') in <code>Admin-&gt;General-&gt;Server Configuration-&gt;Load Settings</code>. Set it to whatever value your users feel comfortable with, remember that security issues may affect your decision (ie. having too long a session may allow non-users to abuse your board should a user forget to logout or otherwise leave a current session on a public workstation).</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="not_answered"></a><h3>My question isn't answered here!</h3>
<div class="paragraph">
<p>Please read our <a href="#">extensive user documentation</a> first, it may just explain what you want to know.</p>
<p>Feel free to search our community forum for the information you require. <strong>PLEASE DO NOT</strong> post your question without having first used search, chances are someone has already asked and answered your question. You can find our board here:</p>
<p><a href="http://www.phpbb.com">www.phpbb.com</a></p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="disclaimer"></a><h3>Copyright and disclaimer</h3>
<div class="paragraph">
<p>This application is opensource software released under the <a href="http://www.gnu.org/licenses/gpl.html">GPL</a>. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) 2007 <a href="http://www.phpbb.com/">phpBB Group</a>, All Rights Reserved.</p>
</div>
<a href="#top">Top</a>
<!-- END DOCUMENT -->
</div>
<div id="footer">&nbsp; <br /><br /></div>
</body>
</html>

519
phpBB/docs/INSTALL.html Normal file
View File

@@ -0,0 +1,519 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!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" xml:lang="en" lang="en">
<head>
<title>phpBB 3.0.x Install</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="resource-type" content="document" />
<meta name="description" lang="en" content="phpBB 3.0.x Installation, updating and conversion informations" />
<meta name="keywords" lang="en" content="" />
<meta name="author" content="phpBB Group" />
<meta name="copyright" content="phpBB Group" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<style type="text/css">
<!--
/* The original "subSilver" theme for phpBB2 Created by subBlue design :: http://www.subBlue.com */
body {
background-color: white;
font-family: Verdana, Arial, Helvetica, sans-serif;
margin: 0;
border: 0;
padding: 0;
}
img {
border: 0;
}
p {
font-size: 8pt;
}
hr {
height: 0;
border: solid #D1D7DC 0;
border-top-width: 1px;
}
#title, h1 {
font: bold 18pt 'Trebuchet MS', Verdana, sans-serif;
text-decoration: none;
line-height: 120%;
}
h2 {
font: bold 12pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
h3 {
font: bold 10pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
.paragraph {
margin-left: 20px;
}
/* Structure */
#logo {
background: #fff url(header_bg.jpg) repeat-x top right;
height: 60px;
}
#title {
color: #12749b;
float: right;
margin: 10px 10px 0;
}
#main {
margin-left: 25px;
margin-right: 25px;
}
.good {
color: green;
}
.bad {
color: red;
}
#footer {
margin-left: 75px;
font-size: 70%;
color: #006600;
}
code {
color: #006600;
font-weight: normal;
font-family: 'Courier New', monospace;
border-color: #D1D7DC;
border-width: 1px;
border-style: solid;
background-color: #FAFAFA;
}
.indent p {
padding-left: 20px;
font-size: 90%;
}
/* Anchors */
a {
font-size: 70%;
}
a:link, a:active, a:visited {
color: #006699;
text-decoration: none;
}
a:hover {
color: #DD6900;
text-decoration: underline;
}
a.nav {
color: #006699;
text-decoration: none;
}
a.nav:hover {
text-decoration: underline;
}
p a {
font-size: 100%;
}
.menu {
font-size: 80%;
}
.menu li a {
font-size: 100%;
}
.comment {
color: green;
}
//-->
</style>
</head>
<body>
<div id="logo">
<div id="title">phpBB 3.0.x Install</div>
<img src="header_left.jpg" alt="phpBB Logo" />
</div>
<a name="top"></a><div id="main">
<!-- BEGIN DOCUMENT -->
<p><strong>Please read this document completely before proceeding with installation, updating or converting.</strong></p>
<p>Please note these instructions are not fully comprehensive, a more thorough userguide will be available on the phpBB website in the near future. However, this document will walk you through the basics on installing, updating and converting the forum software.</p>
<p>A basic overview of running phpBB3 can be found in the accompanying <a href="README.html">README</a> documentation. Please ensure you read that document in addition to this! For more detailed information on using phpBB3 you should read <a href="http://www.phpbb.com/support/documentation/">the documentation</a> available online.</p>
<h1>Install</h1>
<ol class="menu">
<li><a href="#quickinstall">Quick install</a></li>
<li><a href="#require">Requirements</a></li>
<li><a href="#install">New installation</a></li>
<li><a href="#update">Updating from stable releases of phpBB 3.0.x</a>
<ol type="i">
<li><a href="#update_full">Full package</a></li>
<li><a href="#update_files">Changed files only</a></li>
<li><a href="#update_patch">Patch file</a></li>
<li><a href="#update_auto">Automatic update package</a></li>
<li><a href="#update_all">All package types</a></li>
</ol>
</li>
<li><a href="#convert">Conversion from phpBB 2.0.x to phpBB 3.0.x</a>
<ol type="i">
<li><a href="#prereq">Requirements before converting</a></li>
<li><a href="#conversion">Converting</a></li>
<li><a href="#postreq">Things to do after conversion</a></li>
</ol>
</li>
<li><a href="#postinstall">Important (security related) post-Install tasks for all installation methods</a>
<ol type="i">
<li><a href="#avatars">Uploadable avatars</a></li>
</ol>
</li>
<li><a href="#disclaimer">Disclaimer</a></li>
</ol>
<hr />
<a name="quickinstall"></a><h1>1. Quick install</h1>
<div class="paragraph">
<p>If you have basic knowledge of using FTP and are sure your hosting service or server will run phpBB3 you can use these steps to quickly get started. For a more detailed explanation you should skip this and go to <a href="#require">section 2</a> below.</p>
<ol class="menu">
<li>Decompress the phpBB3 archive to a local directory on your system.</li>
<li>Upload all the files contained in this archive (retaining the directory structure) to a web accessible directory on your server or hosting account.</li>
<li>Change the permissions on config.php to be writeable by all (666 or -rw-rw-rw- within your FTP Client)</li>
<li>Change the permissions on the following directories to be writeable by all (777 or -rwxrwxrwx within your FTP Client):<br />
<code>store/</code>, <code>cache/</code>, <code>files/</code> and <code>images/avatars/upload/</code>.</li>
<li>Using your web browser visit the location you placed phpBB3 with the addition of install/index.php or pointing directly to install/, e.g. http://www.mydomain.com/phpBB2/install/, http://www.mydomain.com/forum/install/ etc.</li>
<li>Click the <em>INSTALL</em> tab, follow the steps and fill out all the requested information.</li>
<li>Change the permissions on config.php to be writeable only by yourself (644 or -rw-r--r-- within your FTP Client)</li>
<li>phpBB3 should now be available, please <strong>MAKE SURE</strong> you read at least <a href="#postinstall">Section 6</a> below for important, security related post-installation instructions.</li>
</ol>
<p>If you experienced problems or do not know how to proceed with any of the steps above please read the rest of this document.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="require"></a><h1>2. Requirements</h1>
<div class="paragraph">
<p>phpBB3 has a few requirements which must be met before you are able to install and use it.</p>
<ul class="menu">
<li>A webserver or web hosting account running on any major Operating System with support for PHP</li>
<li>A SQL database system, <strong>one of</strong>:
<ul>
<li>MySQL 3.23 or above (MySQLi supported)</li>
<li>PostgreSQL 7.3+</li>
<li>SQLite 2.8.2+</li>
<li>Firebird 2.0</li>
<li>MS SQL Server 2000 or above (directly or via ODBC)</li>
<li>Oracle</li>
</ul>
</li>
<li><strong>PHP 4.3.3</strong> or above with support for the database you intend to use.</li>
<li>These optional presence of the following modules within PHP will provide access to additional features, but they are not required.
<ul>
<li>zlib Compression support</li>
<li>Remote FTP support</li>
<li>XML support</li>
<li>Imagemagick support</li>
<li>GD Support</li>
</ul>
</li>
</ul>
<p>If your server or hosting account does not meet the requirements above we are afraid phpBB3 is not for you.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="install"></a><h1>3. New installation</h1>
<div class="paragraph">
<p>Installation of phpBB3 will vary according to your server and database. If you have <em>shell access</em> to your account (via telnet or ssh for example) you may want to upload the entire phpBB3 archive (in binary mode!) to a directory on your host and unarchive it there.</p>
<p>If you do not have shell access or do not wish to use it you will need to decompress the phpBB3 archive to a local directory on your system using your favourite compression program, e.g. winzip, rar, zip, etc. From there you must FTP <strong>ALL</strong> the files it contains (being sure to retain the directory structure and filenames) to your host. Please ensure that the cases of filenames are retained, do <strong>NOT</strong> force filenames to all lower or upper case doing so will cause errors later.</p>
<p>All .php, .inc, .sql, .cfg, .html and .txt files should be uploaded in <strong>ASCII</strong> mode, while all graphics should be uploaded in <strong>BINARY</strong> mode. If you are unfamiliar with what this means please refer to your FTP client documentation. In most cases this is all handled transparantly by your ftp client but if you encounter problems later you should be sure the files where uploaded correctly as described here.</p>
<p>phpBB3 comes supplied with english as its standard language. However a number of separate packs for different languages are available. If you are not a native english speaker you may wish to install one or more of these packages before continuing. The installation process below will allow you to select a default language from those available (you can of course change this default at a later stage). For more details of language packs, where to obtain them and how to install them please see the <a href="README.html#i18n">README</a>.</p>
<p>Once all the files have been uploaded to your site you should point your browser at this location with the addition of <code>install/</code>. For example if your domain name is <em>www.mydomain.tld</em> and you placed phpBB3 in a directory /phpBB3 off your web root you would enter <em>http://www.mydomain.tld/phpBB3/install/</em> or (alternatively) <em>http://www.mydomain.tld/phpBB3/install/index.php</em> into your browser. When you have done this you should see the phpBB3 Installation screen appear.</p>
<h3>Introduction:</h3>
<p>The installation screen gives you a short introduction into phpBB. It allows you to read the license phpBB3 is released under (General Public License) and provides information about how you can receive support. To start the installation, use the <em>Install</em> button.</p>
<h3>Requirements</h3>
<p>The first page you will see after starting the installation is the Requirements list. phpBB3 checks automatically whether everything that it needs to run properly is installed on your server. You need to have at least the minimum PHP version installed, and at least one database available to continue the installation. Also important, is that all shown folders are available and do have the correct permissions. Please see the description of each section to find out whether they are optional or required for phpBB3 to run. If everything is in order, you can continue the installation with <em>Start Install</em>.</p>
<h3>Database settings</h3>
<p>You now have to decide which database to use. See the <a href="#require">Requirements section</a> for information on which databases are supported. If you do not know your database settings, please contact your host and ask for them. You will not be able to continue without them. You need:</p>
<ul class="menu">
<li>The Database Type - the database you will be using.</li>
<li>The Database server hostname or DSN - the address of the database server.</li>
<li>The Database server port - the port of the database server (most of the time this is not needed).</li>
<li>The Database name - the name of the database on the server.</li>
<li>The Database username and Database password - the login data to access the database.</li>
</ul>
<div class="indent">
<p><strong>Note:</strong> if you are installing using SQLite, you should enter the full path to your database file in the DSN field and leave the username and password fields blank. For security reasons, you should make sure that the database file is not stored in a location accessible from the web.</p>
</div>
<p>You don't need to change the Prefix for tables in database setting, unless you plan on using multipe phpBB installations on one database. In this case you can use a different prefix for each installation to make it work.</p>
<p>After you entered your details, you can continue with the Proceed to next step button. Now phpBB3 will check whether the data you entered will lead to a successful database connection and whether tables with the same prefix already exist.</p>
<p>A <em>Could not connect to the database</em> error means that you didn't enter the database data correctly and it is not possible for phpBB to connect. Make sure that everything you entered is in order and try again. Again, if you are unsure about your database settings, please contact your host.</p>
<p>If you installed another version of phpBB before on the same database with the same prefix, phpBB will inform you and you just need to enter a different database prefix.</p>
<p>If you see the Successful Connection message, you can continue to the next step.</p>
<h3>Administrator details</h3>
<p>Now you have to create your administration user. This user will have full administration access and he will be the first user on your forum. All fields on this page are required. You can also set the default language of your forum on this page. In a vanilla phpBB3 installation we only include English [GB]. You can download further languages from <a href="http://www.phpbb.com/">www.phpbb.com</a>, and add them before installing or later.</p>
<h3>Configuration file</h3>
<p>In this step, phpBB will try to write the configuration file automatically. The forum needs the configuration to run properly. It contains all database settings, so without it, phpBB will not be able to access the database.</p>
<p>Usually writing the configuration file automatically works fine. But in some cases it can fail due to wrong file permissions, for instance. In this case, you need to upload the file manually. phpBB asks you to download the config.php file and tells you what to do with it. Please read the instructions carefully. After you have uploaded the file, use <em>Done</em> to get to the last step. If <em>Done</em> returns you to the same page as before, and does not return a success message, you did not upload the file correctly.</p>
<h3>Advanced settings</h3>
<p>The Advanced settings allow you to set some parameters of the board configuration. They are optional, and you can always change them later. So if you are not sure what these settings mean, proceed to the final step and finish the installation.</p>
<p>If the installation was successful, you can now use the Login button to visit the Administration Control Panel. Congratulations, you have installed phpBB3 successfully. But there is still work ahead!</p>
<p>If you are unable to get phpBB3 installed even after reading this guide, please look at the support section to find out where you can ask for further assistance.</p>
<p>At this point if you are converting from phpBB 2.0.x, you should refer to the <a href="#convert">conversion steps</a> for further information. If not, you should remove the install directory from your server as you will only be able to access the Administration Control Panel whilst it is present.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="update"></a><h1>4. Updating from stable releases of phpBB 3.0.x</h1>
<p>If you are currently using a stable release of phpBB3 updating to this version is straightforward. You would have downloaded one of four packages and your choice determines what you need to do. <strong>Please Note</strong>: That before updating we heavily recommend you do a <em>full backup of your database and existing phpBB3 files</em>! If you are unsure how to achieve this please ask your hosting provider for advice.</p>
<p><strong>Please make sure you update your phpBB3 source files too, even if you run the <code>database_update.php</code> file.</strong></p>
<a name="update_full"></a><b>4.i. Full package</b>
<br /><br />
<div class="paragraph">
<p>The full package is normally meant for new installations, but if you want to replace all source files this package comes in handy.</p>
<p>First you should make a copy of your existing <em>config.php</em> file, keep it in a safe place! Next delete all the existing phpBB3 files, you may want to leave your <code>files/</code> and <code>images/</code> directory in place. You can leave alternative styles in-place too. With this complete you can upload the new phpBB3 files (see <a href="#install">New installation</a> for details if necessary). Once complete copy back your saved <em>config.php</em>, replacing the new one. Another method is to just <strong>replace</strong> the existing files with the files from the full package - though make sure you do <strong>not</strong> overwrite your config.php file.</p>
<p>You should now run <code>install/database_update.php</code> which, depending on your previous version, will make a number of database changes. You may receive <em>FAILURES</em> during this procedure, they should not be a cause for concern unless you see an actual <em>ERROR</em>, in which case the script will stop (in this case you should seek help via our forums or bug tracker).</p>
<p>Once the install/database_update.php has completed you may proceed to the Administration Control Panel and check remove the install directory as advised.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="update_files"></a><b>4.ii. Changed files only</b>
<br /><br />
<div class="paragraph">
<p>This package contains a number of archives, each contains the files changed from a given release to the latest version. You should select the appropriate archive for your current version, e.g. if you currently have <samp>3.0.0</samp> you should select the phpBB-3.0.0_to_3.0.1.zip/tar.gz file.</p>
<p>The directory structure has been preserved enabling you (if you wish) to simply upload the contents of the archive to the appropriate location on your server, i.e. simply overwrite the existing files with the new versions. Do not forget that if you have installed any Mods these files will overwrite the originals possibly destroying them in the process. You will need to re-add Mods to any affected file before uploading.</p>
<p>As for the other update procedures you should run <b>install/database_update.php</b> after you have finished updating the files. This will update your database schema and increment the version number.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="update_patch"></a><b>4.iii. Patch file</b>
<br /><br />
<div class="paragraph">
<p>The patch file is probably the best solution for those with many Mods or other changes who do not want to re-add them back to all the changed files. To use this you will need command line access to a standard UNIX type <strong>patch</strong> application. If you do not have access to such an application but still want to use this update approach we recommend the <a href="update_auto">Automatic update package</a> explained below.</p>
<p>A number of patch files are provided to allow you to update from previous stable releases. Select the correct patch, e.g. if your current version is 3.0.0 you need the phpBB-3.0.0_to_3.0.1.patch file. Place the correct patch in the parent directory containing the phpBB3 core files (i.e. index.php, viewforum.php, etc.). With this done you should run the following command: <strong>patch -cl -d [PHPBB DIRECTORY] -p1 &lt; [PATCH NAME]</strong> (where PHPBB DIRECTORY is the directory name your phpBB Installation resides in, for example phpBB3, and where PATCH NAME is the relevant filename of the selected patch file). This should complete quickly, hopefully without any HUNK FAILED comments.</p>
<p>If you do get failures you should look at using the <a href="#update_files">Changed files only</a> package to replace the files which failed to patch, please note that you will need to manually re-add any Mods to these particular files. Alternatively if you know how you can examine the .rej files to determine what failed where and make manual adjustments to the relevant source.</p>
<p>You should of course delete the patch file (or files) after use. As for the other update procedures you should run <code>install/database_update.php</code> after you have finished updating the files. This will update your database schema and data (if appropriate) and increment the version number.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="update_auto"></a><b>4.iv. Automatic update package</b>
<br /><br />
<div class="paragraph">
<p>The automatic update package is holding - contrary to the others - only the update informations for updating the last released version to the latest available version. These package is meant for use with the automatic update tool.</p>
<p>To perform the update, either follow the instructions from the <code>Administration Control Panel -&gt; System</code> Tab - this should point out that you are running an outdated version and will guide you through the update - or following the instructions listed below.</p>
<ul class="menu">
<li>Go to the <a href="http://www.phpbb.com/downloads/">downloads page</a> and download the latest update package listed there.</li>
<li>Upload the archives contents to your phpBB installation - only the install folder is required. Upload the whole install folder, retaining the file structure.</li>
<li>After the install folder is present, phpBB3 will go offline automatically.</li>
<li>Point your browser to the install directory, for example <samp>http://www.example.com/phpBB3/install/</samp></li>
<li>Choose the "Update" Tab and follow the instructions</li>
</ul>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="update_all"></a><b>4.v. All package types</b>
<br /><br />
<div class="paragraph">
<p>If you have non-English language packs installed you may want to see if a new version has been made available. A number of missing strings may have been added which, though not essential, may be beneficial to users. Please note that at this time not all language packs have been updated so you should be prepared to periodically check for updates.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="convert"></a><h1>5. Conversion from phpBB 2.0.x to phpBB 3.0.x</h1>
<p>This paragraph explains the steps necessary to convert your existing phpBB2 installation to phpBB3.</p>
<a name="prereq"></a><b>5.i. Requirements before converting</b>
<br /><br />
<div class="paragraph">
<p>Before converting we heavily recommend you do a <em>full backup of your database and files</em>! If you are unsure how to achieve this please ask your hosting provider for advice. In order to convert, you need to have a new phpBB3 installation within the same database (but with a different prefix) as your old 2.0.x installation. You basically need to follow the basic instructions given for <a href="#install">New installations</a>. Please <strong>do not</strong> overwrite any old files - install phpBB3 at a different location.</p>
<p>Once you made a backup of everything and also have a brand new phpBB3 installation, you can now begin the conversion.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="conversion"></a><b>5.ii. Converting</b>
<br /><br />
<div class="paragraph">
<p>To begin the conversion visit the install folder of your phpBB3 installation (the same as you have done for installing). Now you will see a new tab <em>Convert</em>. Click this tab.</p>
<p>As with install the conversion is automated. Your previous 2.0.x database tables will not be touched as well as the original 2.0.x files remaining untouched. The conversion is actually only filling your phpBB3 database tables and copying additional data over to your phpBB3 installation. This has the benefit that if something goes wrong you are able to either re-run the conversion or continue a conversion, while your old board is still accessible. We really recommend you disable your old installation while converting, else you may have inconsistent data after the conversion.</p>
<p>Please note that this conversion process may take quite some time and depending on your hosting provider this may result in it failing (due to web server or other timeout issues). If this is the case you should ask your provider if they are willing to allow the convert script to temporarily exceed their limits (be nice and they will probably be quite helpful).</p>
<p>Once completed your board should be immediately available. If you encountered errors you should report the problems to our bug tracker or seek help via our forums (see <a href="README.html">README</a> for details).</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="postreq"></a><b>5.iii. Things to do after conversion</b>
<br /><br />
<div class="paragraph">
<p>After successful conversion there may be a few items you need to do - apart from checking if the installation is accessible and everything displayed correctly.</p>
<p>The first thing you may want to do is going to the administration control panel and checking every configuration item within the general tab. Thereafter you may want to adjust the forum descriptions/names if you entered HTML there. You also may want to access the other administrative sections, e.g. adjusting permissions, smilies, icons, ranks, etc.</p>
<p>Within the conversion the search index has not been created or transferred. This means after conversion you are not able to find any matches if you want to search for something. We recommend you rebuild your search index within <code>Admin -&gt; Maintenance -&gt; Database -&gt; Search Index</code>.</p>
<p>Once you are pleased with your new installation you may want to give it the name of your old installation, changing the directory name. With phpBB3 this is possible without any problems - but you may still want to check your cookie settings within the administration panel, if the cookie path need to be adjusted prior to renaming.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="postinstall"></a><h1>6. Important (security related) post-Install tasks for all installation methods</h1>
<div class="paragraph">
<p>Once you have succssfully installed phpBB3 you <strong>MUST</strong> ensure you remove the entire install/ directory. Leaving the install directory in place is a <em>very serious potential security issue</em> which may lead to deletion or alteration of files, etc. Please note that until this directory is not removed phpBB3 will not operate and a warning message will be displayed. Beyond this <strong>essential</strong> deletion you may also wish to delete the docs/ directories if you wish.</p>
<p>With these directories deleted you should proceed to the administration panel. Depending on how the installation completed you may have been directed there automatically. If not, login as the administrator you specified during install/conversion and click the <strong>Administration Panel</strong> link at the bottom of any page. Ensure that details specified in <code>Admin -&gt; General</code> are correct!</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="avatars"></a><b>6.i. Uploadable avatars</b>
<br /><br />
<div class="paragraph">
<p>phpBB3 supports several methods for allowing users to select their own <em>avatar</em> (an avatar is a small image generally unique to a user and displayed just below their username in posts).</p>
<p>Two of these options allow users to upload an avatar from their machine or a remote location (via a URL). If you wish to enable this function you should first ensure the correct paths for uploadeable avatars is set in <code>Admin -&gt; General -&gt; Board Configuration -&gt; Avatar settings</code>. By default this is <em>images/avatars/uploads</em> but you can set it to whatever you like, just ensure the configuration setting is updated. You must also ensure this directory can be written to by the webserver. Usually this means you have to alter its permissions to allow anyone to read and write to. Exactly how you should do this depends on your ftp client or server operating system.</p>
<p>On UNIX systems for example you set the directory to a+rwx (or ugo+rwx or even 777). This can be done from a command line on your server using chmod or via your FTP client (using the Change Permissions, chmod or other Permissions dialoge box, see your FTP clients documentation for help). Most FTP clients list permissions in the form of User (Read, Write, Execute), Group (Read, Write, Execute) and Other (Read, Write, Execute). You need to tick all of these boxes to set correct permissions.</p>
<p>On Windows system you need to ensure the directory is not write-protected and that it has global write permissions (see your servers documentation or contact your hosting provider if you are unsure on how to achieve this).</p>
<p>Please be aware that setting a directories permissions to global write access is a potential security issue. While it is unlikely that anything nasty will occur (such as all the avatars being deleted) there are always people out there to cause trouble. Therefore you should monitor this directory and if possible make regular backups.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="disclaimer"></a><h1>7. Copyright and disclaimer</h1>
<div class="paragraph">
<p>This application is opensource software released under the <a href="http://www.gnu.org/licenses/gpl.html">GPL</a>. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) 2007 <a href="http://www.phpbb.com/">phpBB Group</a>, All Rights Reserved.</p>
</div>
<a href="#top">Top</a>
<!-- END DOCUMENT -->
</div>
<div id="footer">&nbsp;<br /><br /></div>
</body>
</html>

432
phpBB/docs/README.html Normal file
View File

@@ -0,0 +1,432 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!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" xml:lang="en" lang="en">
<head>
<title>phpBB 3.0.x Readme</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="resource-type" content="document" />
<meta name="description" lang="en" content="phpBB 3.0.x Readme" />
<meta name="keywords" lang="en" content="" />
<meta name="author" content="phpBB Group" />
<meta name="copyright" content="phpBB Group" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<style type="text/css">
<!--
/* The original "subSilver" theme for phpBB2 Created by subBlue design :: http://www.subBlue.com */
body {
background-color: white;
font-family: Verdana, Arial, Helvetica, sans-serif;
margin: 0;
border: 0;
padding: 0;
}
img {
border: 0;
}
p {
font-size: 8pt;
}
hr {
height: 0;
border: solid #D1D7DC 0;
border-top-width: 1px;
}
#title, h1 {
font: bold 18pt 'Trebuchet MS', Verdana, sans-serif;
text-decoration: none;
line-height: 120%;
}
h2 {
font: bold 12pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
h3 {
font: bold 10pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
.paragraph {
margin-left: 20px;
}
/* Structure */
#logo {
background: #fff url(header_bg.jpg) repeat-x top right;
height: 60px;
}
#title {
color: #12749b;
float: right;
margin: 10px 10px 0;
}
#main {
margin-left: 25px;
margin-right: 25px;
}
.good {
color: green;
}
.bad {
color: red;
}
#footer {
margin-left: 75px;
font-size: 70%;
color: #006600;
}
code {
color: #006600;
font-weight: normal;
font-family: 'Courier New', monospace;
border-color: #D1D7DC;
border-width: 1px;
border-style: solid;
background-color: #FAFAFA;
}
.indent p {
padding-left: 20px;
font-size: 90%;
}
/* Anchors */
a {
font-size: 70%;
}
a:link, a:active, a:visited {
color: #006699;
text-decoration: none;
}
a:hover {
color: #DD6900;
text-decoration: underline;
}
a.nav {
color: #006699;
text-decoration: none;
}
a.nav:hover {
text-decoration: underline;
}
p a {
font-size: 100%;
}
.menu {
font-size: 80%;
}
.menu li a {
font-size: 100%;
}
.comment {
color: green;
}
//-->
</style>
</head>
<body>
<div id="logo">
<div id="title">phpBB 3.0.x Readme</div>
<img src="header_left.jpg" alt="phpBB Logo" />
</div>
<a name="top"></a><div id="main">
<!-- BEGIN DOCUMENT -->
<p>Thank you for downloading phpBB3. This README will guide through the basics of installation and operation of phpBB3. Please ensure you read this and the accompanying documentation fully <strong>before</strong> proceeding with the installation.</p>
<h1>Readme</h1>
<ol class="menu">
<li><a href="#install">Installing phpBB3</a></li>
<li><a href="#run">Running phpBB3</a>
<ol type="i">
<li><a href="#i18n">Internationalisation (i18n)</a></li>
<li><a href="#styles">Styles</a></li>
<li><a href="#mods">Mods</a></li>
</ol>
</li>
<li><a href="#help">Getting help with phpBB3</a>
<ol type="i">
<li><a href="#userguide">Userguide</a></li>
<li><a href="#website">Community Forums</a></li>
<li><a href="#irc">Internet Relay Chat</a></li>
</ol>
</li>
<li><a href="#status">Status of this version</a></li>
<li><a href="#bugs">Reporting Bugs</a>
<ol type="i">
<li><a href="#securitybugs">Security related bugs</a></li>
</ol>
</li>
<li><a href="#curbugs">Overview of current bug list</a></li>
<li><a href="#php">PHP compatibility issues</a></li>
<li><a href="#disclaimer">Disclaimer</a></li>
</ol>
<hr />
<a name="install"></a><h1>1. Installing phpBB3</h1>
<div class="paragraph">
<p>Installation and update/conversion instructions can be found in the <a href="INSTALL.html">INSTALL</a> document contained in this distribution. If you are intending to convert from a previous phpBB 2.0.x installation we highly recommend you backup any existing data before proceeding!</p>
<p>Users of phpBB3 Beta versions cannot directly update or convert.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="run"></a><h1>2. Running phpBB3</h1>
<p>Once installed phpBB is easily managed by both admin and moderator control panels. If you need help or advice with phpBB please see <a href="#help">Section 3</a> below.</p>
<a name="i18n"></a><b>2.i. Internationalisation (i18n)</b>
<br /><br />
<div class="paragraph">
<p>A number of language packs and style localisations are available. You can find them on our official download page:</p>
<p><a href="http://www.phpbb.com/downloads/">http://www.phpbb.com/downloads/</a></p>
<p>This is the <em>official</em> location for all supported language sets. If you download a package from a 3rd party site you do so with the understanding that we cannot offer support. So please, do not ask for help in these cases!</p>
<p>Installation of these packages is straightforward, simply download the required language pack and unarchive it into the <samp>languages/</samp> folder. Please ensure you retain the directory structure when doing this! Once uploaded go to the <code>Admin-&gt;System-&gt;Language Packs</code> and install the now appeared new language pack. To install the style image packs you should unarchive the file/s into the styles/subSilver/imageset directory, again you must retain the directory structure. Once installed the languages will become immediately available.</p>
<p>If your language is not available please visit our forums where you will find a topic listing translations currently available or in preparation. This topic also gives you information should you wish to volunteer to translate a language not currently listed</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="styles"></a><b>2.ii. Styles</b>
<br /><br />
<div class="paragraph">
<p>Although phpBB Group are rather proud of the included styles we realise that it may not be to everyones tastes. Therefore phpBB3 allows styles to be switched with relative ease. Firstly you need to locate and download a style you like. We maintain such a site at</p>
<p><a href="http://www.phpbb.com/styles/">http://www.phpbb.com/styles/</a></p>
<p><strong>Please note</strong> that 3rd party styles downloaded for versions of phpBB2 will <strong>not</strong> work in phpBB3.</p>
<p>Once you have downloaded a style the usual next step is to unarchive (or upload the unarchived contents of) the package into your <samp>styles/</samp> directory. You then need to visit <code>Administration -&gt; Styles</code>, you should see the new style available, click install and it will become available for all your users.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="mods"></a><b>2.iii. Mods</b>
<br /><br />
<div class="paragraph">
<p>Although not officially supported by phpBB Group, phpBB has a thriving modification scene. These third party modifications to the standard phpBB extend its capabilities still further and can be found at:</p>
<p><a href="http://www.phpbb.com/mods">http://www.phpbb.com/mods</a></p>
<p><strong>Please remember</strong> that any bugs or other issues that occur after you have added any modification should <strong>NOT</strong> be reported to the bug tracker (see below). First remove the modification and see if the problem is resolved.</p>
<p>Also remember that any modifications which modify the database in any way may render upgrading your forum to future versions more difficult unless we state otherwise. With all this said many users have and continue to utilise many of the mods already available with great success.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="help"></a><h1>3. Getting help with phpBB3</h1>
<p>phpBB3 can seem a little daunting to new users in places, particularly with regard the permission system. The first thing you should do is check the <a href="FAQ.html">FAQ</a> which covers a few basic getting started questions. If you need additional help there are several places you should look.</p>
<a name="userguide"></a><b>3.i. phpBB3 Userguide</b>
<br /><br />
<div class="paragraph">
<p>A comprehensive userguide is now available online and can be accessed from the following location:</p>
<p><a href="http://www.phpbb.com/support/documentation/">http://www.phpbb.com/support/documentation/</a></p>
<p>This covers everything from installation through setting permissions and managing users.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="website"></a><b>3.ii. Community Forums</b>
<br /><br />
<div class="paragraph">
<p>phpBB Group maintains a thriving community where a number of people have generously decided to donate their time to help support users. This site can be found at:</p>
<p><a href="http://www.phpbb.com/">http://www.phpbb.com/</a></p>
<p>If you do seek help via our forums please be sure to do a Search before posting. This may well save both you and us time and allow the developer, moderator and support groups to spend more time responding to people with unknown issues and problems. Please also remember that phpBB is an entirely volunteer effort, no one receives any compensation for the time they give, this includes moderators as well as developers. So please be respectful and mindful when awaiting responses.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="irc"></a><b>3.iii Internet Relay Chat</b>
<br /><br />
<div class="paragraph">
<p>Another place you may find help is our IRC channel. This operates on the Freenode IRC network, <em>irc.freenode.net</em> and the channel is <em>#phpbb</em> and can be accessed by any good IRC client such as mIRC, XChat, etc. Again, please do not abuse this service and be respectful of other users.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="status"></a><h1>4. Status of this version</h1>
<div class="paragraph">
<p>This is the third stable release of phpBB. The 3.0.x line is essentially feature frozen, point releases will see only bugs and such like fixed, though feature alterations and minor feature additions may be done. Our next major release will be phpBB 3.2 and the planning phase has begun (the unstable development version is 3.1). Please do not post questions asking when 3.2 will be available, no release date has been set.</p>
<p>For those interested in the development of phpBB should keep an eye on the community forums to see how things are progressing:</p>
<p><a href="http://area51.phpbb.com/">http://area51.phpbb.com/phpBB/</a></p>
<p>Please note that this forum should <strong>NOT</strong> be used to obtain support for or ask questions about phpBB 2.0.x or phpBB 3.0.x, the main community forums are the place for this. Any such posts will be locked and go unanswered.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="bugs"></a><h1>5. Reporting Bugs</h1>
<div class="paragraph">
<p>The phpBB Group uses a bug tracking system to store, list and manage all reported bugs, it can be found at the location listed below. Please <strong>DO NOT</strong> post bug reports to our forums, they will be locked. In addition please <strong>DO NOT</strong> use the bug tracker for support requests. Posting such a request will only see you directed to the support forums (while taking time away from working on real bugs).</p>
<p><a href="http://www.phpbb.com/bugs/">http://www.phpbb.com/bugs/</a></p>
<p>While we very much appreciate receiving bug reports (the more reports the more stable phpBB will be) we ask you carry out a few steps before adding new entries:</p>
<ul class="menu">
<li>Firstly determine if your bug is reproduceable, how to determine this depends on the bug in question. Only if the bug is reproduceable it is likely to be a problem with phpBB3 (or in some way connected). If something cannot be reproduced it may turn out to have been your hosting provider working on something, a user doing something silly, etc. Bug reports for non-reproduceable events can slow down our attempts to fix real, reproduceable issues<br /><br /></li>
<li>Next please read or search through the existing bug reports to see if <em>your</em> bug (or one very similar to it) is already listed. If it is please add to that existing bug rather than creating a new duplicate entry (all this does is slow us down).<br /><br /></li>
<li>Check the forums (use search!) to see if people have discussed anything that sounds similar to what you are seeing. However, as noted above please <strong>DO NOT</strong> post your particular bug to the forum unless it's non-reproduceable or you are sure it's related to something you have done rather phpBB3<br /><br /></li>
<li>If no existing bug exists then please feel free to add it</li>
</ul>
<p>If you do post a new bug (i.e. one that isn't already listed in the bug tracker) firstly make sure you have logged in (your username and password are the same as for the community forums) then please include the following details:</p>
<ul class="menu">
<li>Your server type/version, eg. Apache 1.3.28, IIS 4, Sambar, etc.</li>
<li>PHP version and mode of operation, eg. PHP 5.1.1 as a module, PHP 4.4.4 running as CGI, etc.</li>
<li>DB type/version, eg. MySQL 4.0.1, PostgreSQL 7.3.2, MSSQL Server 2000 SP1, etc.</li>
</ul>
<p>The relevant database type/version is listed within the administration control panel</p>
<p>Please also be as detailed as you can in your report, if possible list the steps required to duplicate the problem. If you have a fix which you are <strong>VERY SURE</strong> works (and is consistent with our <a href="coding-guidelines.html">coding guidelines</a>) and does not introduce further problems or incompatibilities please let us know. However only include it in the bug report if you really must, if we need it we'll ask you for it.</p>
<p>Once a bug has been submitted you will be emailed any follow up comments added to it. <strong>Please</strong> if you are requested to supply additional information, do so! It is frustrating for us to receive bug reports, ask for additional information but get nothing. In these cases we have a policy of closing the bug, which may leave a very real problem in place. Obviously we would rather not have this situation arise.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="securitybugs"></a><b>5.i. Security related bugs</b>
<br /><br />
<div class="paragraph">
<p>If you find a potential security related vulnerability in phpBB please <strong>DO NOT</strong> post it to the bug tracker, public forums, etc.! Doing so may allow unscrupulous users to take advantage of it before we have time to put a fix in place. All security related bugs should be sent to our security tracker:</p>
<p><a href="http://www.phpbb.com/security/">http://www.phpbb.com/security/</a></p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="curbugs"></a><h1>6. Overview of current bug list</h1>
<div class="paragraph">
<p>This list is not complete but does represent those bugs which may effect users on a wider scale. Other bugs listed in the tracker have typically been shown to be limited to certain setups or methods of installation/upgrade.</p>
<ul class="menu">
<li>By default cannot post very large messages with MSSQL (this can be configured within MSSQL)</li>
<li>Conversions may fail to complete on large boards under some hosts</li>
</ul>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="php"></a><h1>7. PHP compatibility issues</h1>
<div class="paragraph">
<p>phpBB is no longer supported on PHP3 due to several compatibility issues and we recommend that you upgrade to the latest stable release of PHP5 to run phpBB. The minimum version required is PHP 4.3.3.</p>
<p>Please remember that running any application on a developmental version of PHP can lead to strange/unexpected results which may appear to be bugs in the application (which may not be true). Therefore we recommend you upgrade to the newest stable version of PHP before running phpBB3. If you are running a developmental version of PHP please check any bugs you find on a system running a stable release before submitting.</p>
<p>This board has been developed and tested under Linux and Windows (amongst others) running Apache using MySQL 3.23, 4.x, 5.x, MSSQL Server 2000, PostgreSQL 7.x, Oracle 8, SQLite and Firebird. Versions of PHP used range from 4.3.3 to 6.0.0-dev without problem. </p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="phpsec"></a><b>7.i. Notice on PHP security issues</b>
<br /><br />
<div class="paragraph">
<p>Currently there are no known issues regarding PHP security.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="disclaimer"></a><h1>8. Copyright and disclaimer</h1>
<div class="paragraph">
<p>This application is opensource software released under the <a href="http://www.gnu.org/licenses/gpl.html">GPL</a>. Please see source code and the docs directory for more details. This package and its contents are Copyright (c) 2007 <a href="http://www.phpbb.com/">phpBB Group</a>, All Rights Reserved.</p>
</div>
<a href="#top">Top</a>
<!-- END DOCUMENT -->
</div>
<div id="footer">&nbsp;<br /><br /></div>
</body>
</html>

View File

@@ -1,88 +1,372 @@
<html>
<?xml version="1.0" encoding="iso-8859-1"?>
<!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" xml:lang="en" lang="en">
<head>
<link rel="stylesheet" href="../templates/subSilver/subSilver.css" type="text/css" />
<title>Auth API</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="resource-type" content="document" />
<meta name="description" lang="en" content="Olympus coding guidelines document" />
<meta name="keywords" lang="en" content="" />
<meta name="author" content="phpBB Group" />
<meta name="copyright" content="phpBB Group" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<link rel="shortcut icon" href="" />
<style type="text/css">
<!--
p,ul,td {font-size:10pt;}
h2 {font-size:15pt;font-weight:bold;color:red}
h3 {font-size:12pt;color:blue}
/*
The original "subSilver" theme for phpBB2
Created by subBlue design :: http://www.subBlue.com
*/
body {
background-color: white;
font-family: Verdana, Arial, Helvetica, sans-serif;
margin: 0px;
border: 0px;
padding: 0px;
}
img {
border: 0;
}
p {
font-size: 8pt;
}
hr {
height: 0px;
border: solid #D1D7DC 0px;
border-top-width: 1px;
}
#title, h1 {
font: bold 18pt 'Trebuchet MS', Verdana, sans-serif;
text-decoration: none;
line-height: 120%;
}
h2 {
font: bold 12pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
h3 {
font: bold 10pt Arial, Helvetica, sans-serif;
text-decoration: none;
line-height: 120%;
}
.paragraph {
margin-left: 20px;
}
/*
Structure
*/
#logo {
background: #fff url(header_bg.jpg) repeat-x top right;
height: 60px;
}
#title {
color: #12749b;
float: right;
margin: 10px 10px 0;
}
#main {
margin-left: 25px;
margin-right: 25px;
}
.good {
color: green;
}
.bad {
color: red;
}
#footer {
margin-left: 75px;
font-size: 70%;
color: #006600;
}
code {
color: #006600;
font-weight: normal;
font-family: 'Courier New', monospace;
border-color: #D1D7DC;
border-width: 1px;
border-style: solid;
background-color: #FAFAFA;
}
.indent p {
padding-left: 20px;
font-size: 90%;
}
/*
Anchors
*/
a {
font-size: 70%;
}
a:link, a:active, a:visited {
color: #006699;
text-decoration: none;
}
a:hover {
color: #DD6900;
text-decoration: underline;
}
a.nav {
color: #006699;
text-decoration: none;
}
a.nav:hover {
text-decoration: underline;
}
p a {
font-size: 100%;
}
.menu {
font-size: 80%;
}
.menu li a {
font-size: 100%;
}
//-->
</style>
<!--[if IE]>
<style type="text/css">
body {
scrollbar-face-color: #DEE3E7;
scrollbar-highlight-color: white;
scrollbar-shadow-color: #DEE3E7;
scrollbar-3dlight-color: #D1D7DC;
scrollbar-arrow-color: #006699;
scrollbar-track-color: #EFEFEF;
scrollbar-darkshadow-color: #98AAB1;
}
</style>
<![endif]-->
</head>
<body bgcolor="#E5E5E5" text="#000000" link="#006699" vlink="#006699">
<table width="100%" border="0" cellspacing="0" cellpadding="10" align="center">
<tr>
<td class="bodyline"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<body>
<h1>Using the <i><u>auth</u></i> class</h1>
<div id="logo">
<div id="title">Auth API</div>
<a href="index.php"><img src="header_left.jpg" alt="phpBB Logo" /></a>
</div>
<h2>What is it?</h2>
<a name="top"></a><div id="main">
<p>The <i><u>auth</u></i> class contains methods related to authorisation users to access various board functions, e.g. posting, viewing, replying, logging in (and out), etc. If you need to check whether a user can carry out a task or handle user login/logouts this class is required.</p>
<p>This is an explanation of how to use the phpBB auth/acl API. This document is (c) 2006 phpBB Group, copying or redistribution is not allowed without permission.</p>
<h2>Initialisation</h2>
<h1>Auth API</h1>
<p>To use any methods contained with the <i><u>auth</u></i> class it first needs to be instantiated. This is best achieved early in the execution of the script in the following manner:
<ol class="menu">
<li><a href="#intro">Introduction</a></li>
<li><a href="#methods">Methods</a>
<ol type="i">
<li><a href="#acl">acl</a></li>
<li><a href="#acl_get">acl_get</a></li>
<li><a href="#acl_gets">acl_gets</a></li>
<li><a href="#acl_getf">acl_getf</a></li>
<li><a href="#acl_getf_global">acl_getf_global</a></li>
<li><a href="#acl_cache">acl_cache</a></li>
</ol>
</li>
<li><a href="#admin_related">Admin related functions</a></li>
</ol>
<pre>$auth = new auth();</pre>
<hr />
<p>Once an instance of the object has been created you are free to call the various methods it contains. Please note that should you wish to use the <i><u>auth_admin</u></i> methods you will need to instantiate this seperately but in the same way.</p>
<a name="intro"></a><h1>1. Introduction</h1>
<h3><i>acl</i></h3>
<div class="paragraph">
<p>The <i>acl</i> method is the initialisation routine for all the acl functions. If you intend calling any acl method you must first call this. The method takes as its one and only required parameter a hash of userdata. This hash must contain at least the following information; user_id, user_permissions and user_founder. It is called in the following way:
<h3>What is it?</h3>
<pre>$auth->acl(<i>userdata</i>);</pre>
<p>The <code>auth</code> class contains methods related to authorisation users to access various board functions, e.g. posting, viewing, replying, logging in (and out), etc. If you need to check whether a user can carry out a task or handle user login/logouts this class is required.</p>
<p>Where userdata is the hash containing the aforementioned data.</p>
<h3>Initialisation</h3>
<h3><i>acl_get</i></h3>
<p>To use any methods contained with the <code>auth</code> class it first needs to be instantiated. This is best achieved early in the execution of the script in the following manner:</p>
<p>This method is the primary way of determining what a user can and cannot do for a given option in, optionally, a given forum. The method should be called in the following way:</p>
<blockquote><pre>
$auth = new auth();
</pre></blockquote>
<pre>$result = $auth->acl_get(<i>option</i>[, <i>forum</i>]);</pre>
<p>Once an instance of the class has been created you are free to call the various methods it contains. Please note that should you wish to use the <code>auth_admin</code> methods you will need to instantiate this separately but in the same way.</p>
<p>Where option is a string representing the required option, e.g. 'f_list', 'm_edit', 'a_adduser', etc. The optional forum term is the integer forum_id.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<pThe method returns a positive integer when the user is allowed to carry out the option and a zero if denied.</p>
<hr />
<h3><i>acl_gets</i></h3>
<a name="methods"></a><h1>2. Methods</h1>
<p>This method is funtionally similar to <i>acl_get</i> in that it returns information on whether a user can or cannot carry out a given task. The difference here is the ability to test several different options in one go. This may be useful for testing whether a user is a moderator or an admin in one call. Rather than having to call and check <i>acl_get</i> twice.</p>
<p>Following are the methods you are able to use.</p>
<p>The method should be called thus:</p>
<a name="acl"></a><b>2.i. acl</b>
<br /><br />
<div class="paragraph">
<p>The <code>acl</code> method is the initialisation routine for all the acl functions. If you intend calling any acl method you must first call this. The method takes as its one and only required parameter an associative array containing user information as stored in the database. This array must contain at least the following information; user_id, user_permissions and user_type. It is called in the following way:</p>
<pre>$result = $auth->acl_gets(<i>option1</i>[, <i>option2</i>, ..., <i>optionN</i>, <i>forum</i>]);</pre>
<blockquote><pre>
$auth->acl(<code>userdata</code>);
</pre></blockquote>
<p>As with the <i>acl_get</i> method the options are strings representing the required permissions to check. The forum again is an integer representing a given forum_id.</p>
<p>Where userdata is the array containing the aforementioned data.</p>
<h3><i>acl_cache</i></h3>
<p>This should be considered a private method and not be called externally. It handles the generation of the user_permissions data from the basic user and group authorisation data. When necessary this method is called automatically by <i>acl</i>.</p>
<h3><i>login</i></h3>
<p></p>
<h2>Admin related functions</h2>
<p>A number of additional methods are available related to <i><u>auth</u></i>. These handle more basic functions such as adding user and group permissions, new options and clearing the user cache. These methods are contained within a seperate class, <i><u>auth_admin</u></i>. This can be found in the functions_admin source.</p>
<p>To use any methods this class contains it first needs to be instantiated seperately from <i><u>auth</u></i>. This is achieved in the same way as <i><u>auth</u></i>:</p>
<pre>$authadmin = new auth_admin();</pre>
<p>This instance gives you access to both the methods of this specific class and that of <i><u>auth</u></i>.</p>
</div>
<a href="#top">Top</a>
<br /><br />
</td>
</tr>
</table></td>
</tr>
</table>
<a name="acl_get"></a><b>2.ii. acl_get</b>
<br /><br />
<div class="paragraph">
<p>This method is the primary way of determining what a user can and cannot do for a given option globally or in a given forum. The method should be called in the following way:</p>
<blockquote><pre>
$result = $auth->acl_get(<code>option</code>[, <code>forum</code>]);
</pre></blockquote>
<p>Where option is a string representing the required option, e.g. 'f_list', 'm_edit', 'a_adduser', etc. By adding a ! in front of the option, e.g. '!f_list' the result of this method will be negated. The optional forum term is the integer forum_id.</p>
<p>The method returns a positive integer when the user is allowed to carry out the option and a zero if denied or the other way around if the option is prefixed with an exclamation mark.</p>
<p>If you specify a forum and there is also a global setting for the specified option then this method will return a positive integer if one of them evaluates to a positive integer. An example would be the m_approve option which can be set per forum but also globally. If a user has the global option he will automatically have m_approve in every forum.</p>
<p>There are some special options or <em>flags</em> which are used as prefixes for other options, e.g. 'f_' or 'm_'. These flags will automatically be set to a positive integer if the user has one or more permissions with the given prefix. A local setting will result in the flag being set only locally (so it will require a forum id to retrieve). If a user has one or more global permissions with the prefix acl_get will return a positive integer regardless of the forum id.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="acl_gets"></a><b>2.iii. acl_gets</b>
<br /><br />
<div class="paragraph">
<p>This method is funtionally similar to <code>acl_get</code> in that it returns information on whether a user can or cannot carry out a given task. The difference here is the ability to test several different options in one go. This may be useful for testing whether a user is a moderator or an admin in one call. Rather than having to call and check <code>acl_get</code> twice.</p>
<p>The method should be called thus:</p>
<blockquote><pre>
$result = $auth->acl_gets(<code>option1</code>[, <code>option2</code>, ..., <code>optionN</code>, <code>forum</code>]);
</pre></blockquote>
<p>As with the <code>acl_get</code> method the options are strings representing the required permissions to check. The forum again is an integer representing a given forum_id.</p>
<p>The method will return a positive integer if <code>acl_get</code> for one of the options evaluates to a positive integer (combines permissions with OR).</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="acl_getf"></a><b>2.iv. acl_getf</b>
<br /><br />
<div class="paragraph">
<p>This method is used to find out in which forums a user is allowed to carry out an operation or to find out in which forums he is not allowed to carry out an operation. The method should be called in the following way:</p>
<blockquote><pre>
$result = $auth->acl_getf(<code>option</code>[, <code>clean</code>]);
</pre></blockquote>
<p>Just like in the <code>acl_get</code> method the option is a string specifying the permission which has to be checked (negation using ! is allowed). The second parameter is a boolean. If it is set to false this method returns all forums with either zero or a positive integer. If it is set to true only those forums with a positive integer as the result will be returned.</p>
<p>The method returns an associative array of the form:</p>
<blockquote><pre>
array(<em>forum_id1</em> => array(<em>option</em> => <em>integer</em>), <em>forum_id2</em> => ...)
</pre></blockquote>
<p>Where option is the option passed to the method and integer is either zero or a positive integer and the same <code>acl_get(option, forum_id)</code> would return.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="acl_getf_global"></a><b>2.v. acl_getf_global</b>
<br /><br />
<div class="paragraph">
<p>This method is used to find out whether a user has a permission in at least one forum or globally. This method is similar to checking whether <code>acl_getf(option, true)</code> returned one or more forums but it's faster. It should be called in the following way:</p>
<blockquote><pre>
$result = acl_getf_global(<code>option</code>)
</pre></blockquote>
<p>As with the previous methods option is a string specifying the permission which has to be checked.</p>
<p>This method returns either zero or a positive integer.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<a name="acl_cache"></a><b>2.vi. acl_cache</b>
<br /><br />
<div class="paragraph">
<p>This should be considered a private method and not be called externally. It handles the generation of the user_permissions data from the basic user and group authorisation data. When necessary this method is called automatically by <code>acl</code>.</p>
</div>
<a href="#top">Top</a>
<br /><br />
<hr />
<a name="admin_related"></a><h1>3. Admin related functions</h1>
<div class="paragraph">
<p>A number of additional methods are available related to <code>auth</code>. These handle more basic functions such as adding user and group permissions, new options and clearing the user cache. These methods are contained within a separate class, <code>auth_admin</code>. This can be found in <code>includes/acp/auth.php</code>.</p>
<p>To use any methods this class contains it first needs to be instantiated separately from <code>auth</code>. This is achieved in the same way as <code>auth</code>:</p>
<blockquote><pre>
$auth_admin = new auth_admin();
</pre></blockquote>
<p>This instance gives you access to both the methods of this specific class and that of <code>auth</code>.</p>
</div>
<a href="#top">Top</a>
</div>
<div id="footer"> $Id$
<br /><br />
</div>
</body>
</html>
</html>

File diff suppressed because it is too large Load Diff

View File

@@ -9,19 +9,18 @@
*/
/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'common.' . $phpEx);
$download_id = request_var('id', 0);
// Thumbnails are not handled by this file by default - but for modders this should be interesting. ;)
$thumbnail = request_var('t', false);
// Start session management
$user->session_begin();
// Start session management, do not update session page.
$user->session_begin(false);
$auth->acl($user->data);
$user->setup('viewtopic');
@@ -35,16 +34,17 @@ if (!$config['allow_attachments'] && !$config['allow_pm_attach'])
trigger_error('ATTACHMENT_FUNCTIONALITY_DISABLED');
}
$sql = 'SELECT attach_id, in_message, post_msg_id, extension
$sql = 'SELECT attach_id, in_message, post_msg_id, extension, is_orphan, poster_id
FROM ' . ATTACHMENTS_TABLE . "
WHERE attach_id = $download_id";
$result = $db->sql_query_limit($sql, 1);
$attachment = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if (!($attachment = $db->sql_fetchrow($result)))
if (!$attachment)
{
trigger_error('ERROR_NO_ATTACHMENT');
}
$db->sql_freeresult($result);
if ((!$attachment['in_message'] && !$config['allow_attachments']) || ($attachment['in_message'] && !$config['allow_pm_attach']))
{
@@ -52,44 +52,74 @@ if ((!$attachment['in_message'] && !$config['allow_attachments']) || ($attachmen
}
$row = array();
if (!$attachment['in_message'])
{
//
$sql = 'SELECT p.forum_id, f.forum_password, f.parent_id
FROM ' . POSTS_TABLE . ' p, ' . FORUMS_TABLE . ' f
WHERE p.post_id = ' . $attachment['post_msg_id'] . '
AND p.forum_id = f.forum_id';
$result = $db->sql_query_limit($sql, 1);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if ($auth->acl_gets('f_download', 'u_download', $row['forum_id']))
if ($attachment['is_orphan'])
{
// We allow admins having attachment permissions to see orphan attachments...
$own_attachment = ($auth->acl_get('a_attach') || $attachment['poster_id'] == $user->data['user_id']) ? true : false;
if (!$own_attachment || ($attachment['in_message'] && !$auth->acl_get('u_pm_download')) || (!$attachment['in_message'] && !$auth->acl_get('u_download')))
{
if ($row['forum_password'])
trigger_error('ERROR_NO_ATTACHMENT');
}
// Obtain all extensions...
$extensions = $cache->obtain_attach_extensions(true);
}
else
{
if (!$attachment['in_message'])
{
//
$sql = 'SELECT p.forum_id, f.forum_password, f.parent_id
FROM ' . POSTS_TABLE . ' p, ' . FORUMS_TABLE . ' f
WHERE p.post_id = ' . $attachment['post_msg_id'] . '
AND p.forum_id = f.forum_id';
$result = $db->sql_query_limit($sql, 1);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
// Global announcement?
if (!$row)
{
// Do something else ... ?
login_forum_box($row);
$forum_id = request_var('f', 0);
$sql = 'SELECT forum_id, forum_password, parent_id
FROM ' . FORUMS_TABLE . '
WHERE forum_id = ' . $forum_id;
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
}
if ($auth->acl_get('u_download') && $auth->acl_get('f_download', $row['forum_id']))
{
if ($row['forum_password'])
{
// Do something else ... ?
login_forum_box($row);
}
}
else
{
trigger_error('SORRY_AUTH_VIEW_ATTACH');
}
}
else
{
trigger_error('SORRY_AUTH_VIEW_ATTACH');
$row['forum_id'] = false;
if (!$auth->acl_get('u_pm_download'))
{
trigger_error('SORRY_AUTH_VIEW_ATTACH');
}
}
}
else
{
$row['forum_id'] = 0;
if (!$auth->acl_get('u_pm_download') || !$config['auth_download_pm'])
{
trigger_error('SORRY_AUTH_VIEW_ATTACH');
}
}
// disallowed ?
$extensions = array();
if (!extension_allowed($row['forum_id'], $attachment['extension'], $extensions))
{
trigger_error(sprintf($user->lang['EXTENSION_DISABLED_AFTER_POSTING'], $attachment['extension']));
// disallowed?
$extensions = array();
if (!extension_allowed($row['forum_id'], $attachment['extension'], $extensions))
{
trigger_error(sprintf($user->lang['EXTENSION_DISABLED_AFTER_POSTING'], $attachment['extension']));
}
}
if (!download_allowed())
@@ -100,24 +130,26 @@ if (!download_allowed())
$download_mode = (int) $extensions[$attachment['extension']]['download_mode'];
// Fetching filename here to prevent sniffing of filename
$sql = 'SELECT attach_id, in_message, post_msg_id, extension, physical_filename, real_filename, mimetype
$sql = 'SELECT attach_id, is_orphan, in_message, post_msg_id, extension, physical_filename, real_filename, mimetype
FROM ' . ATTACHMENTS_TABLE . "
WHERE attach_id = $download_id";
$result = $db->sql_query_limit($sql, 1);
$attachment = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if (!($attachment = $db->sql_fetchrow($result)))
if (!$attachment)
{
trigger_error('ERROR_NO_ATTACHMENT');
}
$db->sql_freeresult($result);
$attachment['physical_filename'] = basename($attachment['physical_filename']);
$display_cat = $extensions[$attachment['extension']]['display_cat'];
if ($thumbnail)
{
$attachment['physical_filename'] = 'thumb_' . $attachment['physical_filename'];
}
else
else if (($display_cat == ATTACHMENT_CATEGORY_NONE || $display_cat == ATTACHMENT_CATEGORY_IMAGE) && !$attachment['is_orphan'])
{
// Update download count
$sql = 'UPDATE ' . ATTACHMENTS_TABLE . '
@@ -129,12 +161,14 @@ else
// Determine the 'presenting'-method
if ($download_mode == PHYSICAL_LINK)
{
// This presenting method should no longer be used
if (!@is_dir($phpbb_root_path . $config['upload_path']))
{
trigger_error($user->lang['PHYSICAL_DOWNLOAD_NOT_POSSIBLE']);
}
redirect($config['upload_path'] . '/' . $attachment['physical_filename']);
redirect($phpbb_root_path . $config['upload_path'] . '/' . $attachment['physical_filename']);
exit;
}
else
{
@@ -157,82 +191,97 @@ function send_file_to_browser($attachment, $upload_dir, $category)
trigger_error($user->lang['ERROR_NO_ATTACHMENT'] . '<br /><br />' . sprintf($user->lang['FILE_NOT_FOUND_404'], $filename));
}
// Determine the Browser the User is using, because of some nasty incompatibilities.
// borrowed from phpMyAdmin. :)
$user_agent = (!empty($_SERVER['HTTP_USER_AGENT'])) ? $_SERVER['HTTP_USER_AGENT'] : '';
if (ereg('Opera(/| )([0-9].[0-9]{1,2})', $user_agent, $log_version))
{
$browser_version = $log_version[2];
$browser_agent = 'opera';
}
else if (ereg('MSIE ([0-9].[0-9]{1,2})', $user_agent, $log_version))
{
$browser_version = $log_version[1];
$browser_agent = 'ie';
}
else if (ereg('OmniWeb/([0-9].[0-9]{1,2})', $user_agent, $log_version))
{
$browser_version = $log_version[1];
$browser_agent = 'omniweb';
}
else if (ereg('(Konqueror/)(.*)(;)', $user_agent, $log_version))
{
$browser_version = $log_version[2];
$browser_agent = 'konqueror';
}
else if (ereg('Mozilla/([0-9].[0-9]{1,2})', $user_agent, $log_version) && ereg('Safari/([0-9]*)', $user_agent, $log_version2))
{
$browser_version = $log_version[1] . '.' . $log_version2[1];
$browser_agent = 'safari';
}
else if (ereg('Mozilla/([0-9].[0-9]{1,2})', $user_agent, $log_version))
{
$browser_version = $log_version[1];
$browser_agent = 'mozilla';
}
else
{
$browser_version = 0;
$browser_agent = 'other';
}
// Correct the mime type - we force application/octetstream for all files, except images
// Please do not change this, it is a security precaution
if ($category == ATTACHMENT_CATEGORY_NONE && strpos($attachment['mimetype'], 'image') === false)
if (strpos($attachment['mimetype'], 'image') !== 0)
{
$attachment['mimetype'] = ($browser_agent == 'ie' || $browser_agent == 'opera') ? 'application/octetstream' : 'application/octet-stream';
$attachment['mimetype'] = (strpos(strtolower($user->browser), 'msie') !== false || strpos(strtolower($user->browser), 'opera') !== false) ? 'application/octetstream' : 'application/octet-stream';
}
if (@ob_get_length())
{
@ob_end_clean();
}
// Now the tricky part... let's dance
header('Pragma: public');
// Send out the Headers
header('Content-Type: ' . $attachment['mimetype'] . '; name="' . $attachment['real_filename'] . '"');
header('Content-Disposition: inline; filename="' . $attachment['real_filename'] . '"');
// Now send the File Contents to the Browser
$size = @filesize($filename);
// To correctly display further errors we need to make sure we are using the correct headers for both (unsetting content-length may not work)
// Check if headers already sent or not able to get the file contents.
if (headers_sent() || !@file_exists($filename) || !@is_readable($filename))
{
// PHP track_errors setting On?
if (!empty($php_errormsg))
{
trigger_error($user->lang['UNABLE_TO_DELIVER_FILE'] . '<br />' . sprintf($user->lang['TRACKED_PHP_ERROR'], $php_errormsg));
}
trigger_error('UNABLE_TO_DELIVER_FILE');
}
// Now the tricky part... let's dance
header('Pragma: public');
/**
* Commented out X-Sendfile support. To not expose the physical filename within the header if xsendfile is absent we need to look into methods of checking it's status.
*
* Try X-Sendfile since it is much more server friendly - only works if the path is *not* outside of the root path...
* lighttpd has core support for it. An apache2 module is available at http://celebnamer.celebworld.ws/stuff/mod_xsendfile/
*
* Not really ideal, but should work fine...
* <code>
* if (strpos($upload_dir, '/') !== 0 && strpos($upload_dir, '../') === false)
* {
* header('X-Sendfile: ' . $filename);
* }
* </code>
*/
// Send out the Headers. Do not set Content-Disposition to inline please, it is a security measure for users using the Internet Explorer.
header('Content-Type: ' . $attachment['mimetype']);
header('Content-Disposition: ' . ((strpos($attachment['mimetype'], 'image') === 0) ? 'inline' : 'attachment') . '; ' . header_filename($attachment['real_filename']));
if ($size)
{
header("Content-length: $size");
header("Content-Length: $size");
}
$result = @readfile($filename);
if (!$result)
// Try to deliver in chunks
@set_time_limit(0);
$fp = @fopen($filename, 'rb');
if ($fp !== false)
{
trigger_error('Unable to deliver file.<br />Error was: ' . $php_errormsg, E_USER_WARNING);
while (!feof($fp))
{
echo fread($fp, 8192);
}
fclose($fp);
}
flush();
exit;
}
/*
* Get a browser friendly UTF-8 encoded filename
*/
function header_filename($file)
{
// There be dragons here...
// IE follows no RFC, follow the RFC for extended filename for the rest
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)
{
return "filename=" . rawurlencode($file);
}
else
{
return "filename*=UTF-8''" . rawurlencode($file);
}
}
/**
* Check if downloading item is allowed
*/
@@ -245,7 +294,7 @@ function download_allowed()
return true;
}
$url = (getenv('HTTP_REFERER')) ? trim(getenv('HTTP_REFERER')) : trim($_SERVER['HTTP_REFERER']);
$url = (!empty($_SERVER['HTTP_REFERER'])) ? trim($_SERVER['HTTP_REFERER']) : trim(getenv('HTTP_REFERER'));
if (!$url)
{
@@ -253,25 +302,40 @@ function download_allowed()
}
// Split URL into domain and script part
$url = explode('?', str_replace(array('http://', 'https://'), array('', ''), $url));
$hostname = trim($url[0]);
$url = @parse_url($url);
if ($url === false)
{
return ($config['secure_allow_empty_referer']) ? true : false;
}
$hostname = $url['host'];
unset($url);
$allowed = ($config['secure_allow_deny']) ? false : true;
$iplist = array();
$ip_ary = gethostbynamel($hostname);
foreach ($ip_ary as $ip)
if (($ip_ary = @gethostbynamel($hostname)) !== false)
{
if ($ip)
foreach ($ip_ary as $ip)
{
$iplist[] = $ip;
if ($ip)
{
$iplist[] = $ip;
}
}
}
// Check for own server...
if (preg_match('#^.*?' . $config['server_name'] . '.*?$#i', $hostname))
$server_name = (!empty($_SERVER['SERVER_NAME'])) ? $_SERVER['SERVER_NAME'] : getenv('SERVER_NAME');
// Forcing server vars is the only way to specify/override the protocol
if ($config['force_server_vars'] || !$server_name)
{
$server_name = $config['server_name'];
}
if (preg_match('#^.*?' . preg_quote($server_name, '#') . '.*?$#i', $hostname))
{
$allowed = true;
}
@@ -292,7 +356,7 @@ function download_allowed()
{
foreach ($iplist as $ip)
{
if (preg_match('#^' . str_replace('*', '.*?', $site_ip) . '$#i', $ip))
if (preg_match('#^' . str_replace('*', '.*?', preg_quote($site_ip, '#')) . '$#i', $ip))
{
if ($row['ip_exclude'])
{
@@ -309,7 +373,7 @@ function download_allowed()
if ($site_hostname)
{
if (preg_match('#^' . str_replace('*', '.*?', $site_hostname) . '$#i', $hostname))
if (preg_match('#^' . str_replace('*', '.*?', preg_quote($site_hostname, '#')) . '$#i', $hostname))
{
if ($row['ip_exclude'])
{
@@ -323,7 +387,6 @@ function download_allowed()
}
}
}
$db->sql_freeresult($result);
}

View File

@@ -9,11 +9,12 @@
*/
/**
* @ignore
*/
define('IN_PHPBB', true);
$phpbb_root_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'common.' . $phpEx);
// Start session management
$user->session_begin();
@@ -28,85 +29,45 @@ switch ($mode)
case 'bbcode':
$l_title = $user->lang['BBCODE_GUIDE'];
$user->add_lang('bbcode', false, true);
break;
break;
default:
$l_title = $user->lang['FAQ'];
$l_title = $user->lang['FAQ_EXPLAIN'];
$user->add_lang('faq', false, true);
break;
break;
}
// Pull the array data from the lang pack
$j = 0;
$counter = 0;
$counter_2 = 0;
$help_block = array();
$help_block_titles = array();
$help_blocks = array();
foreach ($user->help as $help_ary)
{
if ($help_ary[0] != '--')
if ($help_ary[0] == '--')
{
$help_block[$j][$counter]['id'] = $counter_2;
$help_block[$j][$counter]['question'] = $help_ary[0];
$help_block[$j][$counter]['answer'] = $help_ary[1];
$template->assign_block_vars('faq_block', array(
'BLOCK_TITLE' => $help_ary[1])
);
$counter++;
$counter_2++;
continue;
}
else
{
$j = ($counter != 0) ? $j + 1 : 0;
$help_block_titles[$j] = $help_ary[1];
$counter = 0;
}
$template->assign_block_vars('faq_block.faq_row', array(
'FAQ_QUESTION' => $help_ary[0],
'FAQ_ANSWER' => $help_ary[1])
);
}
//
// Lets build a page ...
$template->assign_vars(array(
'L_FAQ_TITLE' => $l_title,
'L_BACK_TO_TOP' => $user->lang['BACK_TO_TOP'])
);
for ($i = 0, $size = sizeof($help_block); $i < $size; $i++)
{
if (sizeof($help_block[$i]))
{
$template->assign_block_vars('faq_block', array(
'BLOCK_TITLE' => $help_block_titles[$i])
);
$template->assign_block_vars('faq_block_link', array(
'BLOCK_TITLE' => $help_block_titles[$i])
);
for ($j = 0, $_size = sizeof($help_block[$i]); $j < $_size; $j++)
{
$template->assign_block_vars('faq_block.faq_row', array(
'FAQ_QUESTION' => $help_block[$i][$j]['question'],
'FAQ_ANSWER' => $help_block[$i][$j]['answer'],
'U_FAQ_ID' => 'f'.$help_block[$i][$j]['id'])
);
$template->assign_block_vars('faq_block_link.faq_row_link', array(
'FAQ_LINK' => $help_block[$i][$j]['question'],
'U_FAQ_LINK' => '#f' . $help_block[$i][$j]['id'])
);
}
}
}
page_header($l_title);
$template->set_filenames(array(
'body' => 'faq_body.html')
);
make_jumpbox('viewforum.'.$phpEx);
make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
page_footer();

View File

@@ -0,0 +1,10 @@
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More