Thread: [Phpfreechat-svn] SF.net SVN: phpfreechat: [784] trunk (Page 2)
Status: Beta
Brought to you by:
kerphi
From: <ke...@us...> - 2006-09-22 12:40:56
|
Revision: 784 http://svn.sourceforge.net/phpfreechat/?rev=784&view=rev Author: kerphi Date: 2006-09-22 05:40:08 -0700 (Fri, 22 Sep 2006) Log Message: ----------- [en] Add a 'Send' button right to the messages input box (2h). [fr] Ajout d'un bouton 'Envoyer' ?\195?\160 droite de la boite de saisie des messages (2h). Modified Paths: -------------- trunk/i18n/ar_LB/main.php trunk/i18n/ba_BA/main.php trunk/i18n/bg_BG/main.php trunk/i18n/de_DE-formal/main.php trunk/i18n/de_DE-informal/main.php trunk/i18n/el_GR/main.php trunk/i18n/en_US/main.php trunk/i18n/es_ES/main.php trunk/i18n/fr_FR/main.php trunk/i18n/hu_HU/main.php trunk/i18n/id_ID/main.php trunk/i18n/it_IT/main.php trunk/i18n/ja_JP/main.php trunk/i18n/nb_NO/main.php trunk/i18n/nl_NL/main.php trunk/i18n/pl_PL/main.php trunk/i18n/pt_BR/main.php trunk/i18n/pt_PT/main.php trunk/i18n/ru_RU/main.php trunk/i18n/sr_CS/main.php trunk/i18n/sv_SE/main.php trunk/i18n/tr_TR/main.php trunk/i18n/ua_UA/main.php trunk/i18n/zh_CN/main.php trunk/i18n/zh_TW/main.php trunk/src/client/chat.js.tpl.php trunk/src/client/pfcclient.js trunk/src/client/pfcgui.js trunk/src/pfci18n.class.php trunk/themes/default/style.css Modified: trunk/i18n/ar_LB/main.php =================================================================== --- trunk/i18n/ar_LB/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/ar_LB/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -240,4 +240,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/ba_BA/main.php =================================================================== --- trunk/i18n/ba_BA/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/ba_BA/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -243,4 +243,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/bg_BG/main.php =================================================================== --- trunk/i18n/bg_BG/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/bg_BG/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -238,4 +238,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/de_DE-formal/main.php =================================================================== --- trunk/i18n/de_DE-formal/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/de_DE-formal/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -243,4 +243,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/de_DE-informal/main.php =================================================================== --- trunk/i18n/de_DE-informal/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/de_DE-informal/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -243,4 +243,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/el_GR/main.php =================================================================== --- trunk/i18n/el_GR/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/el_GR/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -239,4 +239,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/en_US/main.php =================================================================== --- trunk/i18n/en_US/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/en_US/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -240,4 +240,70 @@ // line 56 in noflood.class.php $GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = "Please don't post so many message, flood is not tolerated"; -?> +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = "Error: '%s' is a private parameter, you are not allowed to change it"; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = "'%s' parameter must be an array"; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = "'%s' parameter must be a boolean"; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = "'%s' parameter must be a charatere string"; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = "'%s' must be writable"; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = "'%s' directory doesn't exist"; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = "Please correct these errors"; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = "Error: the cached config file doesn't exists"; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = "Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = "Here is the command list:"; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = "Succesfully identified"; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = "Identification failure"; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = "Your must be connected to send a message"; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = "Click here to send your message"; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = "Enter the text to format"; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = "Configuration has been rehashed"; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = "A problem occurs during rehash"; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = "Choosen nickname is allready used"; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = "phpfreechat current version is %s"; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = "Maximum number of joined channels has been reached"; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = "Maximum number of private chat has been reached"; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = "Send"; + +?> \ No newline at end of file Modified: trunk/i18n/es_ES/main.php =================================================================== --- trunk/i18n/es_ES/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/es_ES/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -239,4 +239,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/fr_FR/main.php =================================================================== --- trunk/i18n/fr_FR/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/fr_FR/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -240,4 +240,70 @@ // line 56 in noflood.class.php $GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = "Svp, ne postez pas autant de messages à la suite, le flood n'est pas toléré"; -?> +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = "Erreur: le paramètre '%s' est privé, vous ne pouvez pas l'assigner"; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = "Le paramètre '%s' doit être un tableau (array)"; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = "Le paramètre '%s' doit être un boolean (true ou false)"; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = "Le paramètre '%s' doit être une chaîne de caractères"; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = "'%s' doit être accessible en écriture"; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = "Le répertoire '%s' n'existe pas"; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = "Merci de corriger ces erreurs"; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = "Erreur : le fichier de cache contenant la configuration n'existe pas"; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = "Erreur : le chat ne peut pas être chargé! soit votre navigateur ne supporte pas le javascript, soit vous n'avez pas donné les bons droits aux répertoires. N'hésitez pas à demander de l'aide sur le forum"; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = "Voici la liste des commandes :"; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = "Identification réussie"; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = "Identification incorrecte"; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = "Vous devez être connecté pour envoyer un message"; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = "Clickez ici pour envoyer votre message"; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = "Entrez le texte à formater"; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = "La configuration a été rechargée (rehashed)"; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = "Un problème est survenu pendant le rehash"; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = "Le pseudonyme est déjà utilisé"; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = "La version courante de phpfreechat est %s"; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = "Le nombre maximum de salons autorisés a été atteint"; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = "Le nombre maximum de chat privés a été atteint"; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = "Envoyer"; + +?> \ No newline at end of file Modified: trunk/i18n/hu_HU/main.php =================================================================== --- trunk/i18n/hu_HU/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/hu_HU/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -175,4 +175,137 @@ // line 386 in phpfreechatconfig.class.php $GLOBALS["i18n"]["'%s' parameter is not valid. Available values are : '%s'"] = "'%s' nem érvényes paraméter. Lehetséges értékei: '%s'"; -?> + +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 277 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["My room"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 26 in unban.class.php +$GLOBALS["i18n"]["Missing parameter"] = ""; + +// line 45 in ban.class.php +$GLOBALS["i18n"]["banished from %s by %s"] = ""; + +// line 23 in banlist.class.php +$GLOBALS["i18n"]["The banished user's id list is:"] = ""; + +// line 32 in banlist.class.php +$GLOBALS["i18n"]["Empty"] = ""; + +// line 34 in banlist.class.php +$GLOBALS["i18n"]["'/unban {id}' will unban the user identified by {id}"] = ""; + +// line 35 in banlist.class.php +$GLOBALS["i18n"]["'/unban all' will unban all the users on this channel"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 53 in join.class.php +$GLOBALS["i18n"]["%s joins %s"] = ""; + +// line 81 in noflood.class.php +$GLOBALS["i18n"]["kicked from %s by %s"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 50 in send.class.php +$GLOBALS["i18n"]["Can't send the message, %s is offline"] = ""; + +// line 34 in unban.class.php +$GLOBALS["i18n"]["Nobody has been unbanished"] = ""; + +// line 49 in unban.class.php +$GLOBALS["i18n"]["%s has been unbanished"] = ""; + +// line 56 in unban.class.php +$GLOBALS["i18n"]["%s users have been unbanished"] = ""; + +// line 53 in auth.class.php +$GLOBALS["i18n"]["You are not allowed to run '%s' command"] = ""; + +// line 73 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because you are banished"] = ""; + +// line 83 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because the channels list is restricted"] = ""; + +// line 57 in checknickchange.class.php +$GLOBALS["i18n"]["You are not allowed to change your nickname"] = ""; + +// line 57 in checktimeout.class.php +$GLOBALS["i18n"]["%s quit (timeout)"] = ""; + +// line 75 in noflood.class.php +$GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 55 in chat.js.tpl.php +$GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; + +// line 69 in chat.js.tpl.php +$GLOBALS["i18n"]["Private message"] = ""; + +// line 70 in chat.js.tpl.php +$GLOBALS["i18n"]["Close this tab"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/id_ID/main.php =================================================================== --- trunk/i18n/id_ID/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/id_ID/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -243,4 +243,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/it_IT/main.php =================================================================== --- trunk/i18n/it_IT/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/it_IT/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -239,4 +239,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/ja_JP/main.php =================================================================== --- trunk/i18n/ja_JP/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/ja_JP/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -240,4 +240,71 @@ // line 56 in noflood.class.php $GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = "大量で黙認できません大量のメッセージを投稿しないでください。"; -?> + +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/nb_NO/main.php =================================================================== --- trunk/i18n/nb_NO/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/nb_NO/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -240,4 +240,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/nl_NL/main.php =================================================================== --- trunk/i18n/nl_NL/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/nl_NL/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -241,4 +241,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/pl_PL/main.php =================================================================== --- trunk/i18n/pl_PL/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/pl_PL/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -240,4 +240,71 @@ // line 56 in noflood.class.php $GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = "Proszę nie wysyłąć tak wielu komunikatów, nie jest to dopuszczalne"; -?> + +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/pt_BR/main.php =================================================================== --- trunk/i18n/pt_BR/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/pt_BR/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -243,4 +243,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/pt_PT/main.php =================================================================== --- trunk/i18n/pt_PT/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/pt_PT/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -241,4 +241,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = "Tens a certeza que queres deixar esta sala?"; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/ru_RU/main.php =================================================================== --- trunk/i18n/ru_RU/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/ru_RU/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -243,4 +243,71 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = "Вы на самом деле хотите покинуть эту комнату?"; -?> + +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/sr_CS/main.php =================================================================== --- trunk/i18n/sr_CS/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/sr_CS/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -243,4 +243,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/sv_SE/main.php =================================================================== --- trunk/i18n/sv_SE/main.php 2006-09-22 09:31:12 UTC (rev 783) +++ trunk/i18n/sv_SE/main.php 2006-09-22 12:40:08 UTC (rev 784) @@ -243,4 +243,70 @@ // line 199 in pfcgui.js.tpl.php $GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 395 in pfcglobalconfig.class.... [truncated message content] |
From: <ke...@us...> - 2006-09-23 10:22:59
|
Revision: 790 http://svn.sourceforge.net/phpfreechat/?rev=790&view=rev Author: kerphi Date: 2006-09-23 03:22:37 -0700 (Sat, 23 Sep 2006) Log Message: ----------- [en] BBCode colors are now more flexible : I just added a transparent image with variable background colors. [45min] [fr] Les couleurs BBCode sont maintenant plus flexibles : J'ai ajout?\195?\169 une image transparente avec un fond de couleur variable. [45min] Modified Paths: -------------- trunk/src/client/chat.js.tpl.php trunk/src/client/pfcclient.js trunk/src/client/pfcgui.js Added Paths: ----------- trunk/themes/default/images/color_transparent.gif Removed Paths: ------------- trunk/themes/default/images/color_000000.gif trunk/themes/default/images/color_000055.gif trunk/themes/default/images/color_0000FF.gif trunk/themes/default/images/color_008000.gif trunk/themes/default/images/color_008080.gif trunk/themes/default/images/color_00FF00.gif trunk/themes/default/images/color_00FFFF.gif trunk/themes/default/images/color_7F7F7F.gif trunk/themes/default/images/color_800000.gif trunk/themes/default/images/color_800080.gif trunk/themes/default/images/color_D2D2D2.gif trunk/themes/default/images/color_FF0000.gif trunk/themes/default/images/color_FF00FF.gif trunk/themes/default/images/color_FF5500.gif trunk/themes/default/images/color_FFFF00.gif trunk/themes/default/images/color_FFFFFF.gif Modified: trunk/src/client/chat.js.tpl.php =================================================================== --- trunk/src/client/chat.js.tpl.php 2006-09-23 09:37:09 UTC (rev 789) +++ trunk/src/client/chat.js.tpl.php 2006-09-23 10:22:37 UTC (rev 790) @@ -118,12 +118,9 @@ 'images/bt_del.gif', 'images/bt_mail.gif', 'images/bt_color.gif', + 'images/color_transparent.gif', ); -// convert bbcode color value list to a bbcode color url list -function get_bbcode_color_url($v) { return 'images/color_'.substr($v,1).'.gif'; } -$bbcode_clist = array_map("get_bbcode_color_url", $bbcode_colorlist); -$fileurl_to_load = array_merge($fileurl_to_load, $bbcode_clist); foreach($fileurl_to_load as $f) { echo "pfc.res.setFileUrl('".$f."',pfc_proxy_url+'".$c->getFileUrlByProxy($f,false)."');\n"; Modified: trunk/src/client/pfcclient.js =================================================================== --- trunk/src/client/pfcclient.js 2006-09-23 09:37:09 UTC (rev 789) +++ trunk/src/client/pfcclient.js 2006-09-23 10:22:37 UTC (rev 790) @@ -1257,13 +1257,16 @@ /* clear any existing borders on the color buttons */ var colorbtn = this.getElementsByClassName($('pfc_colorlist'), 'pfc_color', ''); for(var i = 0; colorbtn.length > i; i++) + { colorbtn[i].style.border = 'none'; + colorbtn[i].style.padding = '0'; + } /* assign the new border style to the selected button */ this.current_text_color = color; setCookie('pfc_current_text_color', this.current_text_color); var idname = 'pfc_color_' + color; - $(idname).style.border = '1px solid #666'; + $(idname).style.border = '1px solid #555'; $(idname).style.padding = '1px'; // assigne the new color to the input text box Modified: trunk/src/client/pfcgui.js =================================================================== --- trunk/src/client/pfcgui.js 2006-09-23 09:37:09 UTC (rev 789) +++ trunk/src/client/pfcgui.js 2006-09-23 10:22:37 UTC (rev 790) @@ -596,15 +596,16 @@ for (var i=0 ; i<clist_v.length ; i++) { var bbc = clist_v[i]; - var img = document.createElement('img'); - img.bbc = bbc; - img.setAttribute('class', 'pfc_color'); - img.setAttribute('className', 'pfc_color'); // for IE6 - img.setAttribute('id', 'pfc_color_'+bbc); - img.setAttribute('src', pfc.res.getFileUrl('images/color_'+bbc+'.gif')); - img.setAttribute('alt', bbc); - img.onclick = function(){ pfc.switch_text_color(this.bbc); } - clist.appendChild(img); + var elt = document.createElement('img'); + elt.bbc = bbc; + elt.setAttribute('class', 'pfc_color'); + elt.setAttribute('className', 'pfc_color'); // for IE6 + elt.setAttribute('id', 'pfc_color_'+bbc); + elt.style.backgroundColor = '#'+bbc; + elt.setAttribute('src', pfc.res.getFileUrl('images/color_transparent.gif')); + elt.setAttribute('alt', bbc); + elt.onclick = function(){ pfc.switch_text_color(this.bbc); } + clist.appendChild(elt); } // error box : <p id="pfc_errors"> Deleted: trunk/themes/default/images/color_000000.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_000055.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_0000FF.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_008000.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_008080.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_00FF00.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_00FFFF.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_7F7F7F.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_800000.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_800080.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_D2D2D2.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_FF0000.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_FF00FF.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_FF5500.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_FFFF00.gif =================================================================== (Binary files differ) Deleted: trunk/themes/default/images/color_FFFFFF.gif =================================================================== (Binary files differ) Added: trunk/themes/default/images/color_transparent.gif =================================================================== (Binary files differ) Property changes on: trunk/themes/default/images/color_transparent.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-09-23 10:38:16
|
Revision: 791 http://svn.sourceforge.net/phpfreechat/?rev=791&view=rev Author: kerphi Date: 2006-09-23 03:38:08 -0700 (Sat, 23 Sep 2006) Log Message: ----------- some little fixes Modified Paths: -------------- trunk/demo/demo28_blune_theme.php trunk/demo/demo28_mini_blune_theme.php trunk/src/phpfreechat.class.php Modified: trunk/demo/demo28_blune_theme.php =================================================================== --- trunk/demo/demo28_blune_theme.php 2006-09-23 10:22:37 UTC (rev 790) +++ trunk/demo/demo28_blune_theme.php 2006-09-23 10:38:08 UTC (rev 791) @@ -2,7 +2,6 @@ require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; $params = array("title" => "Blune PHPFreeChat", "max_msg" => 21, - "prefix" => "blune_", "clock" => false, "serverid" => md5(__FILE__), "theme" => "blune", Modified: trunk/demo/demo28_mini_blune_theme.php =================================================================== --- trunk/demo/demo28_mini_blune_theme.php 2006-09-23 10:22:37 UTC (rev 790) +++ trunk/demo/demo28_mini_blune_theme.php 2006-09-23 10:38:08 UTC (rev 791) @@ -2,7 +2,6 @@ require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; $params = array("title" => "Blune PHPFreeChat", "max_msg" => 21, - "prefix" => "blune_", "clock" => false, "showwhosonline" => false, "showsmileys" => false, Modified: trunk/src/phpfreechat.class.php =================================================================== --- trunk/src/phpfreechat.class.php 2006-09-23 10:22:37 UTC (rev 790) +++ trunk/src/phpfreechat.class.php 2006-09-23 10:38:08 UTC (rev 791) @@ -455,7 +455,7 @@ // do not update when the user just quit if ($rawcmd != "update" && $rawcmd != "quit" && - $u->nick != "") + (!isset($u->nick) || $u->nick != "")) { // force an update just after a command is sent // thus the message user just poster is really fastly displayed This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-09-24 20:57:20
|
Revision: 794 http://svn.sourceforge.net/phpfreechat/?rev=794&view=rev Author: kerphi Date: 2006-09-24 13:56:41 -0700 (Sun, 24 Sep 2006) Log Message: ----------- Add the new webinstaller version and try to adapte the packager script Modified Paths: -------------- trunk/misc/createwebinstaller.php trunk/version Added Paths: ----------- trunk/contrib/phpinstaller/ trunk/contrib/phpinstaller/CHANGELOG trunk/contrib/phpinstaller/README trunk/contrib/phpinstaller/TODO trunk/contrib/phpinstaller/createinstaller/ trunk/contrib/phpinstaller/createinstaller/data/ trunk/contrib/phpinstaller/createinstaller/data/favicon.ico trunk/contrib/phpinstaller/createinstaller/data/installer.css trunk/contrib/phpinstaller/createinstaller/data/installer.jpg trunk/contrib/phpinstaller/createinstaller/data/license.html trunk/contrib/phpinstaller/createinstaller/data/license.inc trunk/contrib/phpinstaller/createinstaller/data/precheck.inc trunk/contrib/phpinstaller/createinstaller/data/start.inc trunk/contrib/phpinstaller/createinstaller/data/unknown.gif trunk/contrib/phpinstaller/createinstaller/page.appname.php trunk/contrib/phpinstaller/createinstaller/page.build.php trunk/contrib/phpinstaller/createinstaller/page.files1.php trunk/contrib/phpinstaller/createinstaller/page.files2.php trunk/contrib/phpinstaller/createinstaller/page.pages.php trunk/contrib/phpinstaller/createinstaller/page.start.php trunk/contrib/phpinstaller/createinstaller.php trunk/contrib/phpinstaller/docs/ trunk/contrib/phpinstaller/docs/classtrees_webinstall.html trunk/contrib/phpinstaller/docs/elementindex.html trunk/contrib/phpinstaller/docs/elementindex_webinstall.html trunk/contrib/phpinstaller/docs/errors.html trunk/contrib/phpinstaller/docs/index.html trunk/contrib/phpinstaller/docs/li_webinstall.html trunk/contrib/phpinstaller/docs/media/ trunk/contrib/phpinstaller/docs/media/background.png trunk/contrib/phpinstaller/docs/media/empty.png trunk/contrib/phpinstaller/docs/media/logo.png trunk/contrib/phpinstaller/docs/media/style.css trunk/contrib/phpinstaller/docs/todolist.html trunk/contrib/phpinstaller/docs/webinstall/ trunk/contrib/phpinstaller/docs/webinstall/_engine_inc_php.html trunk/contrib/phpinstaller/docs/webinstall/phpInstaller.html trunk/contrib/phpinstaller/engene_data/ trunk/contrib/phpinstaller/engene_data/archive_tar.php trunk/contrib/phpinstaller/engene_data/extract.bz.inc trunk/contrib/phpinstaller/engene_data/extract.tar.inc trunk/contrib/phpinstaller/engene_data/extract.tgz.inc trunk/contrib/phpinstaller/engene_data/extract.zip.inc trunk/contrib/phpinstaller/engene_data/installer_data.inc trunk/contrib/phpinstaller/engene_data/step_aboutto.inc trunk/contrib/phpinstaller/engene_data/step_finished.inc trunk/contrib/phpinstaller/engene_data/step_installer.inc trunk/contrib/phpinstaller/engene_data/step_path.inc trunk/contrib/phpinstaller/engene_data/write.file.inc trunk/contrib/phpinstaller/engene_data/write.ftp.inc trunk/contrib/phpinstaller/engene_data/write.sftp.inc trunk/contrib/phpinstaller/engine.inc.php trunk/contrib/phpinstaller/examples/ trunk/contrib/phpinstaller/examples/customoutput.php trunk/contrib/phpinstaller/examples/package.php trunk/contrib/phpinstaller/genphpfromfile.php Added: trunk/contrib/phpinstaller/CHANGELOG =================================================================== --- trunk/contrib/phpinstaller/CHANGELOG (rev 0) +++ trunk/contrib/phpinstaller/CHANGELOG 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,18 @@ +ISO 8601 Formatted +Newest at top + +Key + + Addition + - Removed + # Changed + ++ 2006-09-22 Added support for generating .tar.gz files +# 2006-04-18 Fixed the 'ignore' bug on generator interface ++ 2006-04-18 Per-page button settings ++ 2006-04-18 Auto-scrolling on message pane ++ 2006-03-10 function updatepb_unknown ++ 2006-03-08 Download Functionality ++ 2005-08-23 Function message ++ 2005-08-23 Function addMetaFile +# 2005-08-23 Fixed bug (sf.net 1258143) "Fatal error: Call to undefined function: updatep" ++ 2005-08-16 Installer page: 'Finished' \ No newline at end of file Added: trunk/contrib/phpinstaller/README =================================================================== --- trunk/contrib/phpinstaller/README (rev 0) +++ trunk/contrib/phpinstaller/README 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,21 @@ +This package will help you create your own web installer. +The PHP script installer can unpack a web-based installer +and the files to install and install it with one file. To +make a web installer you will need to open createinstaller.php +in your browser. Click next, than enter the path of the script. +Click next, next, next, than see it compile. Go open the file +install.php it created in your browser than follow than test it +in a new path-- see if it works. Distribute it, or customise it +to change the look. Than become a developer for the PHP script +installer project and help me develop a script that also +(here's my todo list) configures your newly installed script, +popluate a database, download updates from the web, or install +from a file. + + +File list Description +/createinstaller Automated installer creator interface + precheck.inc First page in installer, default pre-install check + 2.txt Next user-page in compiled installer, License page +/engene_data Installer Creator Resources, templates +/createinstaller Directory: Installer engene data \ No newline at end of file Added: trunk/contrib/phpinstaller/TODO =================================================================== --- trunk/contrib/phpinstaller/TODO (rev 0) +++ trunk/contrib/phpinstaller/TODO 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,5 @@ +* Install from a file +* Download from an FTP source +* Run SQL code into a database +* Post-Install Configuration capabilites +* install to FTP path Added: trunk/contrib/phpinstaller/createinstaller/data/favicon.ico =================================================================== (Binary files differ) Property changes on: trunk/contrib/phpinstaller/createinstaller/data/favicon.ico ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/contrib/phpinstaller/createinstaller/data/installer.css =================================================================== --- trunk/contrib/phpinstaller/createinstaller/data/installer.css (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/data/installer.css 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,313 @@ +body { + margin: 0px; + padding: 0px; + color : #333; + background-color : #FFF; + font-size : 11px; + font-family : Arial, Helvetica, sans-serif; +} + +#wrapper { + border: 0px; + margin: 0px; + margin-left: auto; + margin-right: auto; + padding: 0px; +} + +#header { + background-color: #FFF; + background-position: right top; + border-bottom: 4px solid #80B5D7; +} + +#headertext { + position: relative; + width: 100%; + background: url("?file=hb") #30569D no-repeat; + background-position: top right; + margin: 0px; + padding: 0px; + height: 35px; + color: white; + font-size: 30px; + font-family: FrancineHmk; +} + +.version { + font-size: 10px; + color: lightgray; +} + +#stepbar { + background-color: #F1F3F5; + width: 170px; + font-size: 11px; + float: left; + text-align: left; +} + +#step { + background: url("?file=logoimage") no-repeat; + font-size: 30px; + font-weight: bold; + text-align: left; + color: #666666; + padding: 10px 0px 20px 80px; + white-space: nowrap; + position: relative; + float: left; +} + +.step-on { + color: #BBDDFF; + background: #30559C; + font-weight: bold; + font-size: 13px; + padding: 10px; + border: 1px solid #cccccc; + margin-bottom: 2px; +} + +.step-off { + font-size: 13px; + color: #999999; + font-weight: bold; + padding: 10px; + border: 1px solid #cccccc; + margin-bottom: 2px; +} + +#right { + float: right; + width: 560px; + border-left: 1px solid #cccccc; + padding-left: 10px; + +} + +#break { + height: 20px; +} + +.licensetext { + text-align: left; +} + +.license { + padding: 0px; + width: 535px; + height: 325px; +} + +.description { + padding: 0px; + width: 535px; + height: 325px; +} + +.license-form { + float: left; +} + + +.install { + margin-left: auto; + margin-right: auto; + margin-top: 3em; + margin-bottom: 3em; + padding: 10px; + border: 1px solid #cccccc; + width: 750px; + background: #F1F3F5; +}/* +.install { + margin-left: auto; + margin-right: auto; + margin-top: 3em; + margin-bottom: 3em; + padding: 10px; + border: 1px solid #cccccc; + background: #F1F3F5; + overflow:auto; + position:absolute; + left:20px; + right:20px; + bottom:20px; + top:45px; +} +*/ + +.install h1 { + font-size: 18px; + font-weight: bold; + color: #30557C; + padding: 4px 0px 4px 0px; + text-align: center; + border-bottom: 1px solid #cccccc; + margin-bottom: 10px; + +} + +.install-form { + position: relative; + text-align: left; + margin-top:1em; +} + +.install-form table, .install-form input { + width: 100%; +} + +.install-text { + position: relative; + text-align: left; +} + +.form-block { + border: 1px solid #cccccc; + background: #E9ECEF; + padding-top: 5px; + padding-left: 5px; + padding-bottom: 5px; + padding-right: 5px; +} + +.left { + position: relative; + text-align: left; + float: left; + width: 50%; +} + +.right { + position: relative; + text-align: left; + float: right; + width: 70%; +} + +.far-right { + position: relative; + text-align: right; + float: right; +} + +.far-left { + position: relative; + text-align: left; + float: left; +} + +.clr { + clear:both; + } + +.ctr { + text-align: center; + vertical-align: middle; +} + +.content { + text-align: left; +} + +.button { + border : solid 1px #999; + background: #C9CcCF; + color : #666666; + font-weight : bold; + font-size : 11px; + padding: 4px; + cursor: pointer; +} + +table.content { + width: 80%; +} + +table.content td { + color : #333333; + font-size: 11px; + width: 50%; +} + + +table.content2 td { + color : #333333; + font-size: 11px; +} + +.toggle { + font-weight: bold; +} + +a { + color : #FF9900; + text-decoration : none; +} +a:hover { + color : #999999; + text-decoration : underline; +} +a:active { + color : #FF6600; + text-decoration : underline; +} + +.inputbox { + color: blue; + font-family: Arial, Helvetica, sans-serif; + z-index: -3; + font-size: 11px; +} + +.small { + color : #333; + font-size : 10px; +} + +.error { + color : #cc0000; + font-size : 12px; + font-weight : bold; + padding-top: 10px; + padding-bottom: 10px; +} + + +select.options, input.options { + font-size: 8pt; + border: 1px solid #999; +} + +form { + margin: 0px 0px 0px 0px; +} + + +.dottedline { + border-bottom: 1px solid #333; +} + +.installheader { + color : #FFF; + font-size : 24px; +} + +textarea { + color : #0000dd; + font-family : Arial; + font-size : 11px; + border: 1px; +} + +#license-tabed a{ + border: 1px solid #cccccc; + border-bottom: none; + background: #E9ECEF; + padding: 3px 3px 1px 3px; +} +#license-tabed{ + text-align: left; +} Added: trunk/contrib/phpinstaller/createinstaller/data/installer.jpg =================================================================== (Binary files differ) Property changes on: trunk/contrib/phpinstaller/createinstaller/data/installer.jpg ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/contrib/phpinstaller/createinstaller/data/license.html =================================================================== --- trunk/contrib/phpinstaller/createinstaller/data/license.html (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/data/license.html 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,364 @@ +<?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"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> +<title>Untitled Document</title> +<style type="text/css"> +<!-- +body { + font-family: arial, helvetica, sans serif; + font-size: 11px; + background: #E9ECEF; +} + +p { + font-family: arial, helvetica, sans serif; + font-size: 11px; + text-align:justify; +} + +h2 { + font-family: arial, helvetica, sans serif; + font-size: 13px; + font-weight: bold; +} + +h3 { + font-family: arial, helvetica, sans serif; + font-size: 12px; + font-weight: bold; +} + +h4 { + font-family: arial, helvetica, sans serif; + font-size: 11px; + font-weight: bold; +} + +li { + font-family: arial, helvetica, sans serif; + font-size: 11px; + text-align:justify; +} + +pre { + font-size: 11px; + text-align:justify; +} +--> +</style> +</head> +<body> +<h2>Table of Contents</h2> +<ul> + <li><a href="#SEC1" name="TOC1" id="TOC1">GNU GENERAL PUBLIC LICENSE</a> + <ul> + <li><a href="#SEC2" name="TOC2" id="TOC2">Preamble</a> </li> + <li><a href="#SEC3" name="TOC3" id="TOC3">TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</a> </li> + <li><a href="#SEC4" name="TOC4" id="TOC4">How to Apply These Terms to Your New Programs</a> </li> + </ul> + </li> +</ul> +<p></p> +<hr /> +<h2><a href="#TOC1" name="SEC1" id="SEC1">GNU GENERAL PUBLIC LICENSE</a></h2> +<p> Version 2, June 1991 </p> +<pre> +Copyright (C) 1989, 1991 Free Software Foundation, Inc. +59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. +</pre> +<h2><a href="#TOC2" name="SEC2" id="SEC2">Preamble</a></h2> +<p> The licenses for most software are designed to take away your freedom to share and change +it. By contrast, the GNU General Public License is intended to guarantee +your freedom to share and change free software--to make sure the software is free for all its +users. This General Public License applies to most of the Free Software Foundation's software +and to any other program whose authors commit to using it. (Some other Free Software +Foundation software is covered by the GNU Library General Public License instead.) You can +apply it to your programs, too. </p> +<p> When we speak of free software, we are referring to freedom, not price. Our General +Public Licenses are designed to make sure that you have the freedom to distribute copies +of free software (and charge for this service if you wish), that you receive source code +or can get it if you want it, that you can change the software or use pieces of it in new +free programs; and that you know you can do these things. </p> +<p> To protect your rights, we need to make restrictions that forbid anyone to deny you +these rights or to ask you to surrender the rights. These restrictions translate to certain +responsibilities for you if you distribute copies of the software, or if you modify it. </p> +<p> For example, if you distribute copies of such a program, whether gratis or for a fee, +you must give the recipients all the rights that you have. You must make sure that they, +too, receive or can get the source code. And you must show them these terms so they know +their rights. </p> +<p> We protect your rights with two steps: (1) copyright the software, and (2) offer you +this license which gives you legal permission to copy, distribute and/or modify the +software.</p> +<p> Also, for each author's protection and ours, we want to make certain that everyone +understands that there is no warranty for this free software. If the software is modified +by someone else and passed on, we want its recipients to know that what they have is not +the original, so that any problems introduced by others will not reflect on the original +authors' reputations. </p> +<p> Finally, any free program is threatened constantly by software patents. We wish to +avoid the danger that redistributors of a free program will individually obtain patent +licenses, in effect making the program proprietary. To prevent this, we have made it clear +that any patent must be licensed for everyone's free use or not licensed at all. </p> +<p> The precise terms and conditions for copying, distribution and modification follow. </p> +<h2><a href="#TOC3" name="SEC3" id="SEC3">TERMS AND CONDITIONS FOR COPYING, +DISTRIBUTION AND MODIFICATION</a></h2> +<p> <strong>0.</strong> This License applies to any program or other work which contains a +notice placed by the copyright holder saying it may be distributed under the terms of this +General Public License. The "Program", below, refers to any such program or work, and a +"work based on the Program" means either the Program or any derivative work under copyright +law: that is to say, a work containing the Program or a portion of it, either +verbatim or with modifications and/or translated into another language. (Hereinafter, +translation is included without limitation in the term "modification".) Each licensee is +addressed as "you".</p> +<p> Activities other than copying, distribution and modification are not covered by this +License; they are outside its scope. The act of running the Program is not restricted, and +the output from the Program is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). Whether that is true depends +on what the Program does.</p> +<p> <strong>1.</strong> You may copy and distribute verbatim copies of the Program's source +code as you receive it, in any medium, provided that you conspicuously and appropriately +publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any warranty; and give any +other recipients of the Program a copy of this License along with the Program.</p> +<p> You may charge a fee for the physical act of transferring a copy, and you may at your +option offer warranty protection in exchange for a fee.</p> +<p> <strong>2.</strong> You may modify your copy or copies of the Program or any portion of +it, thus forming a work based on the Program, and copy and distribute such modifications or +work under the terms of Section 1 above, provided that you also meet all of these +conditions:</p> +<p></p> +<ul> + <li><strong>a)</strong> You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + <p> + </p> + </li> + <li><strong>b)</strong> You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any part thereof, to be + licensed as a whole at no charge to all third parties under the terms of this License. + <p> + </p> + </li> + <li><strong>c)</strong> If the modified program normally reads commands interactively + when run, you must cause it, when started running for such interactive use in the most + ordinary way, to print or display an announcement including an appropriate copyright + notice and a notice that there is no warranty (or else, saying that you provide a warranty) + and that users may redistribute the program under these conditions, and telling the user + how to view a copy of this License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on the Program is not + required to print an announcement.) +</li> +</ul> +<p> +These requirements apply to the modified work as a whole. If identifiable sections of that +work are not derived from the Program, and can be reasonably considered independent and +separate works in themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you distribute the same +sections as part of a whole which is a work based on the Program, the distribution of the +whole +must be on the terms of this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it.</p> +<p> Thus, it is not the intent of this section to claim rights or contest your rights to +work written entirely by you; rather, the intent is to exercise the right to control the +distribution of derivative or collective works based on the Program. +</p> +<p> In addition, mere aggregation of another work not based on the Program with the +Program (or with a work based on the Program) on a volume of a storage or distribution +medium does not bring the other work under the scope of this License. +</p> +<p> <strong>3.</strong> You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of Sections 1 and 2 +above provided that you also do one of the following: + <!-- we use this doubled UL to get the sub-sections indented, --> + <!-- while making the bullets as unobvious as possible. --> +</p> +<ul> + <li><strong>a)</strong> Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections 1 and 2 above on a + medium customarily used for software interchange; or, + <p> + </p> + </li> + <li><strong>b)</strong> Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your cost of physically + performing source distribution, a complete machine-readable copy of the corresponding + source code, to be distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + <p> + </p> + </li> + <li><strong>c)</strong> Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is allowed only for + noncommercial distribution and only if you received the program in object code or + executable form with such an offer, in accord with Subsection b above.) +</li> +</ul> +<p>The source code for a work means the preferred form of the work for making modifications +to it. For an executable work, complete source code means all the source code for all +modules it contains, plus any associated interface definition files, plus the scripts used +to control compilation and installation of the executable. However, as a special exception, +the source code distributed need not include anything that is normally distributed (in +either source or binary form) with the major components (compiler, kernel, and so on) of +the operating system on which the executable runs, unless that component itself accompanies +the executable.</p> +<p> If distribution of executable or object code is made by offering access to copy from a +designated place, then offering equivalent access to copy the source code from the same +place counts as distribution of the source code, even though third parties are not compelled +to copy the source along with the object code. +</p> +<p> <strong>4.</strong> You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt otherwise to copy, modify, +sublicense or distribute the Program is void, and will automatically terminate your rights +under this License. However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such parties remain in full +compliance. +</p> +<p> <strong>5.</strong> You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or distribute the Program +or its derivative works. These actions are prohibited by law if you do not accept this +License. Therefore, by modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and all its terms and +conditions for copying, distributing or modifying the Program or works based on it. +</p> +<p> <strong>6.</strong> Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the original licensor to copy, +distribute or modify the Program subject to these terms and conditions. You may not impose +any further restrictions on the recipients' exercise of the rights granted herein. You are +not responsible for enforcing compliance by third parties to this License. +</p> +<p> <strong>7.</strong> If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), conditions are imposed +on you (whether by court order, agreement or otherwise) that contradict the conditions of +this License, they do not excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this License and any +other pertinent obligations, then as a consequence you may not distribute the Program at +all. For example, if a patent license would not permit royalty-free redistribution of the +Program by all those who receive copies directly or indirectly through you, then the only +way you could satisfy both it and this License would be to refrain entirely from distribution +of the Program. +</p> +<p> If any portion of this section is held invalid or unenforceable under any particular +circumstance, the balance of the section is intended to apply and the section as a whole +is intended to apply in other circumstances. +</p> +<p> It is not the purpose of this section to induce you to infringe any patents or other +property right claims or to contest validity of any such claims; this section has the sole +purpose of protecting the integrity of the free software distribution system, which is +implemented by public license practices. Many people have made generous contributions to +the wide range of software distributed through that system in reliance on consistent +application of that system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot impose that choice. +</p> +<p> This section is intended to make thoroughly clear what is believed to be a consequence +of the rest of this License. +</p> +<p> <strong>8.</strong> If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the original copyright +holder who places the Program under this License may add an explicit geographical +distribution limitation excluding those countries, so that distribution is permitted +only in or among countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. +</p> +<p> <strong>9.</strong> The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will be similar in spirit +to the present version, but may differ in detail to address new problems or concerns. +</p> +<p> Each version is given a distinguishing version number. If the Program specifies a +version number of this License which applies to it and "any later version", you have the +option of following the terms and conditions either of that version or of any later version +published by the Free Software Foundation. If the Program does not specify a version number +of this License, you may choose any version ever published by the Free Software Foundation. +</p> +<p> <strong>10.</strong> If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author to ask for +permission. For software which is copyrighted by the Free Software Foundation, write +to the Free Software Foundation; we sometimes make exceptions for this. Our decision +will be guided by the two goals of preserving the free status of all derivatives of +our free software and of promoting the sharing and reuse of software generally. +</p> +<p><strong>NO WARRANTY</strong><a id="w"> </a></p> +<p> <strong>11.</strong> BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE +STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" +WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE +RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE +DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. +</p> +<p> <strong>12.</strong> IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, +SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE +THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE +OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH +ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. +</p> +<p> +</p> +<h2>END OF TERMS AND CONDITIONS</h2> +<h2><a href="#TOC4" name="SEC4" id="SEC4">How to Apply These Terms to Your New +Programs</a></h2> +<p> If you develop a new program, and you want it to be of the greatest possible use to +the public, the best way to achieve this is to make it free software which everyone can +redistribute and change under these terms. </p> +<p> To do so, attach the following notices to the program. It is safest to attach them +to the start of each source file to most effectively convey the exclusion of warranty; +and each file should have at least the "copyright" line and a pointer to where the full +notice is found. </p> +<pre> +<var>one line to give the program's name and an idea of what it does.</var> +Copyright (C) <var>yyyy</var> <var>name of author</var> + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. +</pre> +<p> Also add information on how to contact you by electronic and paper mail. </p> +<p> If the program is interactive, make it output a short notice like this when it starts +in an interactive mode: </p> +<pre> +Gnomovision version 69, Copyright (C) <var>year</var> <var>name of author</var> +Gnomovision comes with ABSOLUTELY NO WARRANTY; for details +type `show w'. This is free software, and you are welcome +to redistribute it under certain conditions; type `show c' +for details. +</pre> +<p> The hypothetical commands <samp>`show w'</samp> and <samp>`show c'</samp> should show +the appropriate parts of the General Public License. Of course, the commands you use may +be called something other than <samp>`show w'</samp> and <samp>`show c'</samp>; they could +even be mouse-clicks or menu items--whatever suits your program. </p> +<p> You should also get your employer (if you work as a programmer) or your school, if any, +to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the +names: </p> +<pre> +Yoyodyne, Inc., hereby disclaims all copyright +interest in the program `Gnomovision' +(which makes passes at compilers) written +by James Hacker. + +<var>signature of Ty Coon</var>, 1 April 1989 +Ty Coon, President of Vice +</pre> +<p> This General Public License does not permit incorporating your program into proprietary +programs. If your program is a subroutine library, you may consider it more useful to permit +linking proprietary applications with the library. If this is what you want to do, use the +<a href="/licenses/l">GNU Lesser General Public License</a> instead of this License. +</p> +</body> +</html> \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller/data/license.inc =================================================================== --- trunk/contrib/phpinstaller/createinstaller/data/license.inc (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/data/license.inc 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,27 @@ +<?php +echo <<<HTML +<h2> GNU/GPL License: </h2> +<div class="licensetext"> +<a href="about:blank">PROGRAM</a> +is Free Software released under the GNU/GPL License. +<div class="error"> *** To continue installing PROGRAM you must check the box under the license *** </div> +</div> +<div class="clr"> </div> +<div class="license-form" id="license-tabed"> +For +<a href="?file=license#w" onclick="document.getElementById('license-frame').src=this.href;return false;">End-users</a> +<a href="?file=license#SEC2" onclick="document.getElementById('license-frame').src=this.href;return false;">Developers</a> +<a href="?file=license#SEC3" onclick="document.getElementById('license-frame').src=this.href;return false;">Distributers</a> +<div class="form-block" style="padding: 0px;"> +<iframe id="license-frame" src="$HTTP_FILE?file=license" class="license" frameborder="0" scrolling="auto"></iframe> +</div> +</div> +<div class="clr"></div> +<div class="ctr"><span class="ctr"> +<input name="agreecheck" id="agreecheck" class="inputbox" onclick="agreesubmit(this)" type="checkbox" value="true" /> +<label for="agreecheck">I Accept the GPL License</label> +</span></div> +<div class="clr"></div> +</div> +HTML; +?> \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller/data/precheck.inc =================================================================== --- trunk/contrib/phpinstaller/createinstaller/data/precheck.inc (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/data/precheck.inc 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,65 @@ +<?php +/** Print text displaying status + * + * @param int $type + 1: Abailable/Unavailable + * + 2: Pass/Fail + * @param bool|int $value + */ +function status($value=null,$type) +{ + switch($type) + { + case null: $value=$type;break; + case 'yes': return '<span style="color:red;">No</span>'; + case 'available':return '<span style="color:green;">Available</span>'; + case 'writeable': return '<span style="color:green;">Writeable</span>'; + case 'on': return '<span style="color:green;">ON</span>'; + case 'support': + case 'true': return '<span style="color:green;">True</span>'; + default: return 'ERR'; + } + switch($value) + { + case 'yes': return '<span style="color:green;">Yes</span>'; + case 'no': return '<span style="color:red;">No</span>'; + case 'available':return '<span style="color:green;">Available</span>'; + case 'missing': return '<span style="color:red;">Missing</span>'; + case 'writeable': return '<span style="color:green;">Writeable</span>'; + case 'unwriteable': return '<span style="color:red;">Un-writeable</span>'; + case 'on': return '<span style="color:green;">ON</span>'; + case 'off': return '<span style="color:red;">OFF</span>'; + case 'support': + case 'supported': return '<span style="color:green;">Supported</span>'; + case 'x': return '<span style="color:red;">X</span>'; + default: + case 'true': return '<span style="color:green;">True</span>'; + case 'false': return '<span style="color:red;">False</span>'; + } +} +$a = array( + status(function_exists('file_get_contents'),'available'), + status(function_exists('unserialize'),'available'), + status(function_exists('gzuncompress'),'available') +); + +echo <<<HTML +<div class="install-text"> +These settings are recommended for PHP in order to ensure full +compatibility with PROGRAM. +<br /> +However, it may still operate if your settings do not quite match the recommended +(In this case, the program will only offer, and thus say, 'Limited Functionality'). +<div class="clr"></div> +</div> +<div class="install-form"> +<div class="form-block"> +<table class="content"> +<tr><td class="item">file_get_contents</td><td align="left"><b>{$a[0]}</b></td></tr> +<tr><td class="item">unserialize</td><td align="left"><b>{$a[1]}</b></td></tr> +<tr><td class="item">GZ Compression</td><td align="left"><b>{$a[2]}</b></td></tr> +</table> +</div> +<div class="clr"></div> +</div> +HTML; +?> \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller/data/start.inc =================================================================== --- trunk/contrib/phpinstaller/createinstaller/data/start.inc (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/data/start.inc 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1 @@ +Welcome to APPNAME \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller/data/unknown.gif =================================================================== (Binary files differ) Property changes on: trunk/contrib/phpinstaller/createinstaller/data/unknown.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/contrib/phpinstaller/createinstaller/page.appname.php =================================================================== --- trunk/contrib/phpinstaller/createinstaller/page.appname.php (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/page.appname.php 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,8 @@ +<?php +$uses[] = 'appname'; +?> +<div><h2>Applactation Name</h2></div> +<div>What is the name of your applactation?</div> +<div class="margin"> + <input type="text" style="width:30em;" name="appname" id="appname" value="<?php echo gpv('appname'); ?>" /> +</div> \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller/page.build.php =================================================================== --- trunk/contrib/phpinstaller/createinstaller/page.build.php (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/page.build.php 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,73 @@ +<?php +$phpi = new phpInstaller(); +$dataDir = realpath(dirname(__FILE__).'/../engene_data'); +$phpi->dataDir($dataDir); +$phpi->appName = gpv('appname'); +$phpi->appVersion = gpv('appver'); +$phpi->compress = true; +$phpi->ignore[] = '/installer.php'; +$phpi->ignore[] = '/phpinstaller/'; +$phpi->ignore[] = 'tests'; +$phpi->ignore[] = 'hi2'; +foreach(explode("\n",gpv('ignore')) as $v){ + if($v=trim($v)) $phpi->ignore[] = $v; +} + +$phpi->messageCallback = 'message'; +function message($message,$state=null){ + if($state==2) echo '<div style="color:grey;">'; + else echo '<div>'; + + if($state) echo htmlspecialchars(str_pad($message,74,'.')).'....'; + else echo htmlspecialchars($message); + + switch ($state) { + case 1:echo '[<span style="color:red;">failed</span>]';break; + case 2:echo '[<span style="font-weight:bold;">ignore</span>]';break; + case 3:echo '[<span style="color:green;"> file </span>]';break; + case 4:echo '[<span style="color:green;"> dir </span>]';break; + case 5:echo '[<span style="color:green;"> done </span>]';break; + } + echo '</div>'; +} + +echo '<div style="height:30em;overflow:auto;border:inset 1px grey;"><pre>'; +//template files + if(!$phpi->addMetaFile('ss','createinstaller/data/installer.css','text/css',$replace)){ + die('Could not add main.css to installer.<br />'); + } + +foreach (gpv('packages') as $v){ + var_export($v); + if(isset($v['url']) && isset($v['path'])){ + //$phpi->generatedata($v['path']); + $phpi->addPathDownload($v['url'],$v['to']); + }else if(isset($v['url'])){ + $phpi->addPathDownload($v['url'],$v['to'],$v['type']); + }else if(isset($v['path'])){ + $phpi->addPath($v['path'],$v['to']); + } +} +//$phpi->addPath(gpv('rootpath')); +$phpi->addPage('Pre-installation Check',file_get_contents('createinstaller/data/precheck.inc')); + +//license page +if(gpv('step_license')){ + if($phpi->addMetaFile('license','createinstaller/data/license.html','text/html')){ + $phpi->addPage('License',file_get_contents('createinstaller/data/license.inc'),array(),array('disabled'=>true)); + }else{ + $phpi->message('The license could not be added. Check the file '.$lPath.'.'); + } +} +if(!$phpi->addMetaFile('unknown','createinstaller/data/unknown.gif','image/gif')){ + $phpi->message('The license could not be added. Check the file '.$lPath.'.'); +} +if(!$phpi->addMetaFile('hb','createinstaller/data/installer.jpg','image/jpeg')){ + $phpi->message('The license could not be added. Check the file '.$lPath.'.'); +} + +$phpi->addInstallerPages(); +$phpi->generate(RESULTFILE); +echo '<a href="?download">download</a>'; +echo '</pre></div>'; +?> \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller/page.files1.php =================================================================== --- trunk/contrib/phpinstaller/createinstaller/page.files1.php (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/page.files1.php 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,81 @@ +<?php +$uses[] = 'rootpath'; +$uses[] = 'packages'; +$packages = gpv('packages'); +function genSelect($type=null){ + $compresstypes=''; + foreach(phpInstaller::$compresstypes as $v){ + if($v==$type) $compresstypes.="<option selected=\"selected\">$v</option>"; + else $compresstypes.="<option>$v</option>"; + } + return $compresstypes; +} +?> +<h2>Files to Extract</h2> +<p> +Here you can add files that will be installed. +Optional if you do not need files installed, or files are already distributed. +</p> +<div> +<select name="package_type" id="package_type"> +<option>Regluar</option> +<option>Download</option> +<option>Archive (Distributed With Installer)</option> +</select> +<input type="submit" name="package_add" id="package_add" value="Add..."></div> +<?php +if(isset($_POST['package_type']) && isset($_POST['package_add'])){ + switch ($_POST['package_type']){ + case 'Regluar': + $packages[] = array('to'=>'/','path'=>dirname(__FILE__)); + break; + case 'Download': + $packages[] = array('to'=>'/','url'=>'http://domain/file.zip ; http://domain/backup.zip','type'=>'zip'); + break; + case 'Archive (Distributed With Installer)': + $packages[] = array('to'=>'/','path'=>'archive.zip','type'=>'zip'); + break; + } +} + +$_packages = array(); +foreach($packages as $x=>$v){ + if(!isset($_POST['package_clear'][$x])) $_packages[] = $v; +} +$packages = $_packages; + +?> +<h2>Current Paths</h2> +<?php +if($packages){ +?> +<table style="width:100%;"> +<colgroup> +<col width="20%" /> +<col width="30%" /> +<col width="35%" /> +<col width="10%" /> +<col width="5%" /> +</colgroup> +<thead><th>Path To</th><th>Path From</th><th>URL (seperate with a " ; ", a space, semicolon, and another space)</th><th>Type</th><th>Remove</th></thead> +<?php + foreach($packages as $n=>$v){ + echo '<tr>'; + echo '<td>'; + echo '<input type="text" style="width:100%;" name="packages['.$n.'][to]" id="packages['.$n.'][to]" value="'.$v['to'].'" >'; + echo '</td><td>'; + echo isset($v['path'])?'<input style="width:100%;" type="text" name="packages['.$n.'][path]" id="packages['.$n.'][path]" value="'.$v['path'].'" >':'N/A'; + echo '</td><td>'; + echo isset($v['url'])?'<input style="width:100%;" type="text" name="packages['.$n.'][url]" id="packages['.$n.'][url]" value="'.$v['url'].'" >':'N/A'; + echo '</td><td>'; + echo isset($v['type'])?'<select style="width:100%;" name="packages['.$n.'][type]" id="packages['.$n.'][type]">'.genSelect($v['type']).'</select>':'N/A'; + echo '</td><td>'; + echo '<input type="submit" name="package_clear['.$n.']" id="package_clear['.$n.']" value="Remove" >'; + echo '</td>'; + echo "</tr>\n"; + } + echo '</table>'; +}else{ + echo 'You have no listings defined.'; +} +?> \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller/page.files2.php =================================================================== --- trunk/contrib/phpinstaller/createinstaller/page.files2.php (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/page.files2.php 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,10 @@ +<?php +$uses[] = 'ignore'; +?> +<h2>Files to Ignore</h2> +<p> +Any files containing one of the following strings will be ignored: +</p> +<div> +<textarea name="ignore" id="ignore" style="width:100%;height:10em;"><?php echo gpv('ignore'); ?></textarea> +</div> \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller/page.pages.php =================================================================== --- trunk/contrib/phpinstaller/createinstaller/page.pages.php (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/page.pages.php 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,11 @@ +<?php +$uses[] = 'step_license'; +?> +<div style="text-align:left;"><h1>Setup pages</h1></div> +<div><h2>Add/Remove pages</h2></div> +<div> +<label for="step_license">Include License page?</label> +<input type="checkbox" name="step_license" id="step_license" value="true"<?php + if(gpv('step_license')){echo ' checked="checked"';} ?> /><br /> +Please edit the <code>createinstaller/data/license.html</code> file to include your licence. +</div> Added: trunk/contrib/phpinstaller/createinstaller/page.start.php =================================================================== --- trunk/contrib/phpinstaller/createinstaller/page.start.php (rev 0) +++ trunk/contrib/phpinstaller/createinstaller/page.start.php 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1 @@ +<div style="text-align:left;"><h1>Welcome to the Installer creater.</h1></div> \ No newline at end of file Added: trunk/contrib/phpinstaller/createinstaller.php =================================================================== --- trunk/contrib/phpinstaller/createinstaller.php (rev 0) +++ trunk/contrib/phpinstaller/createinstaller.php 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,152 @@ +<?php +if (version_compare(phpversion(), '5.0.0', '<')){ + die("PHP5 is required for this verson of the installer devkit"); +} + +define('HTTP_FILE',strtolower(strtok($_SERVER['SERVER_PROTOCOL'], '/')).'://'.$_SERVER['HTTP_HOST']. $_SERVER['PHP_SELF']); +define('VERSION','1.0-rc1'); +define('RESULTFILE','installer.php'); +include('engine.inc.php'); + +//Download the installer +if (isset($_REQUEST['download'])) { + header("HTTP/1.1 200 OK"); + header("Status: 200 OK"); + header('Content-Type: application/force-download'); + header('Content-Disposition: attachment; filename="'.RESULTFILE.'"'); + header('Content-Length: '.filesize(RESULTFILE)); + readfile(RESULTFILE); + exit(0); +} + + +function gpv($name,$default=null,$get=true){//getPostValue + if(isset($_REQUEST[$name])){ + if($get){ + if(is_array($_REQUEST[$name])){ + return antislash($_REQUEST[$name]); + }else if( ($n=unserialize(urldecode($_REQUEST[$name]))) !==false || $_REQUEST[$name]===urlencode(serialize(false))){ + return $n; + }else{ + return antislash(antislash($_REQUEST[$name])); + } + }else{ + if(is_array($_REQUEST[$name])){ + return urlencode(serialize(antislash($_REQUEST[$name]))); + }else if( ($n=unserialize(urldecode($_REQUEST[$name]))) !==false || $_REQUEST[$name]===urlencode(serialize(false))){ + return urlencode(serialize($n)); + }else{ + return urlencode(serialize($_REQUEST[$name])); + } + } + }else{ + return $get?urlencode(serialize($default)):$default; + } +} + +function antislash($var){ + if(is_string($var)) return stripslashes($var); + if(is_array($var)){ + foreach($var as $n=>$v){ + $var[$n] = antislash($v); + } + } + return $var; +} + +$pages = array( + array('title'=>'Welcome', 'file'=>'start'), + array('title'=>'Applictation Name','file'=>'pages'), + array('title'=>'Applictation Name','file'=>'appname'), + array('title'=>'Files Setup', 'file'=>'files1'), + array('title'=>'Ignore', 'file'=>'files2'), + array('title'=>'Installer Definition' , 'file'=>'build') +); + +echo "<?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"> +<head> +<title>Installer Creater</title> +<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> +<link rel="shortcut icon" href="favicon.ico" /> +<style> + +body { + margin: 0px; + background-color: white; + color : black; + padding:1em; +} + +h1,h2,h3,h4,h5{ + font-weight:bold; + margin:1px; + padding:1px; +} +h1{font-size:150%;} +h2{font-size:125%;} +h3{font-size:115%;} +h4{font-size:105%;} +div.margin{margin-left:1em;} +</style> +</head> +<body> +<form name="form" id="form" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> + <?php + $defaults = array( + 'page'=>(isset($_REQUEST['page'])?$_REQUEST['page']:0), + 'packages'=>array(), + 'step_license'=>'', + 'rootpath'=>dirname(__FILE__), + 'exec'=>'', + 'appname'=>'', + 'appver'=>'', + 'ignore'=>'' + ); + foreach($defaults as $dname=>$dvalue){ + $hidden[] = $dname; + if(!isset($_REQUEST[$dname])){ + $_REQUEST[$dname] = gpv($dname,$dvalue,true); + } + } + $uses = array('page'); + $totalpages = 5; + $page = gpv('page'); + + if(isset($_REQUEST['page_next'])) $page++; + else if(isset($_REQUEST['page_back'])) $page--; + + $button_prev = $page!=0; + $button_next = $page!=$totalpages; + if($file=$pages[$page]['file']){ + include("createinstaller/page.$file.php"); + }else{ + echo "Not a valid page (number $page)"; + } + ?> + <div style="text-align:right;margin-top:0.5em;padding:0.5em;border-top:solid 1px black;"> + <?php if($button_next){ ?> + <input type="submit" name="page_next" id="page_next" value="Next" style="float:right;" /> + <?php } ?> + <?php if($button_prev){ ?> + <input type="submit" name="page_back" id="page_back" value="Back" style="float:left;" /> + <?php } ?> + <input type="hidden" name="page" id="page" value="<?php echo $page; ?>" /> + </div><br /> + <?php + //echo '<table>'; + foreach($hidden as $value){ + if(!in_array($value,$uses)){ + echo '<input type="hidden" name="'.$value.'" id="'.$value.'" value="'.gpv($value,null,false).'" />'; + //echo "<tr><td>$value</td><td>"; + //var_dump(gpv($value)); + //echo "</td></tr>\n"; + } + } + //echo '</table>'; + ?> +</form> +</body> +</html> \ No newline at end of file Added: trunk/contrib/phpinstaller/docs/classtrees_webinstall.html =================================================================== --- trunk/contrib/phpinstaller/docs/classtrees_webinstall.html (rev 0) +++ trunk/contrib/phpinstaller/docs/classtrees_webinstall.html 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,61 @@ +<?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"> +<head> + <title>Class Trees for Package webinstall</title> + <link rel="stylesheet" type="text/css" href="media/style.css"> + <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header-top-left"><img src="media/logo.png" border="0" alt="phpDocumentor " /></td> + <td class="header-top-right">webinstall<br /><div class="header-top-right-subpackage"></div></td> + </tr> + <tr><td colspan="2" class="header-line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td colspan="2" class="header-menu"> + [ <a href="classtrees_webinstall.html" class="menu">class tree: webinstall</a> ] + [ <a href="elementindex_webinstall.html" class="menu">index: webinstall</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td colspan="2" class="header-line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="195" class="menu"> + <div class="package-title">webinstall</div> + <div class="package"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + </div> + <b>Packages:</b><br /> + <div class="package"> + <a href="li_webinstall.html">webinstall</a><br /> + </div> + <br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<h1>Class Trees for Package webinstall</h1> +<hr class="separator" /> +<div class="classtree">Root class phpInstaller</div> +<ul> +<li><a href="webinstall/phpInstaller.html">phpInstaller</a></li></ul> + + <div class="credit"> + <hr class="separator" /> + Documentation generated on Tue, 05 Sep 2006 22:32:40 -0600 by <a href="http://www.phpdoc.org">phpDocumentor 1.3.0RC4</a> + </div> + </td></tr></table> + </td> + </tr> +</table> + +</body> +</html> \ No newline at end of file Added: trunk/contrib/phpinstaller/docs/elementindex.html =================================================================== --- trunk/contrib/phpinstaller/docs/elementindex.html (rev 0) +++ trunk/contrib/phpinstaller/docs/elementindex.html 2006-09-24 20:56:41 UTC (rev 794) @@ -0,0 +1,281 @@ +<?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"> +<head> + <title>Element Index</title> + <link rel="stylesheet" type="text/css" href="media/style.css"> + <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1'/> +</head> +<body> + +<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%"> + <tr> + <td class="header-top-left"><img src="media/logo.png" border="0" alt="phpDocumentor " /></td> + <td class="header-top-right">webinstall<br /><div class="header-top-right-subpackage"></div></td> + </tr> + <tr><td colspan="2" class="header-line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> + <tr> + <td colspan="2" class="header-menu"> + [ <a href="classtrees_webinstall.html" class="menu">class tree: webinstall</a> ] + [ <a href="elementindex_webinstall.html" class="menu">index: webinstall</a> ] + [ <a href="elementindex.html" class="menu">all elements</a> ] + </td> + </tr> + <tr><td colspan="2" class="header-line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr> +</table> + +<table width="100%" border="0" cellpadding="0" cellspacing="0"> + <tr valign="top"> + <td width="195" class="menu"> + <div class="package-title">webinstall</div> + <div class="package"> + <div id="todolist"> + <p><a href="todolist.html">Todo List</a></p> + </div> + </div> + <b>Packages:</b><br /> + <div class="package"> + <a href="li_webinstall.html">webinstall</a><br /> + </div> + <br /> + </td> + <td> + <table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top"> + +<a name="top"></a> +<h1>Index of All Elements</h1> +<h3>Package Indexes</h3> +<ul> + <li><a href="elementindex_webinstall.html">webinstall</a></li> +</ul> +<br /> + [ <a href="elementindex.html#a">a</a> ] + [ <a href="elementindex.html#c">c</a> ] + [ <a href="elementindex.html#d">d</a> ] + [ <a href="elementindex.html#e">e</a> ] + [ <a href="elementindex.html#f">f</a> ] + [ <a href="elementindex.html#g">g</a> ] + [ <a href="elementindex.html#i">i</a> ] + [ <a href="elementindex.html#m">m</a> ] + [ <a href="elementindex.html#p">p</a> ] + [ <a href="elementindex.html#s">s</a> ] + [ <a href="elementindex.html#v">v</a> ] + [ <a href="elementindex.html#_">_</a> ] +<br /><br /> + <a name="a"></a> + <div class="index-letter-section"> + <div style="float: left" class="index-letter-title">a</div> + <div style="float: right"><a href="#top">[Top]</a></div> + <div style="clear: both"></div> + </div> + <div> + <h2>a</h2> + <dl> + <dt><b>$appDescription</b></dt> + <dd>in file engine.inc.php, variable <a href="webinstall/phpInstaller.html#var$appDescription">phpInstaller::$appDescription</a><br> Optional Applactation Description</dd> + <dt><b>$appId</b></dt> + <dd>in file engine.inc.php, variable <a href="webinstall/phpInstaller.html#var$appId">phpInstaller::$appId</a><br> Short applactation name, with no spaces</dd> + <dt><b>$appName</b></dt> + <dd>in file engine.inc.php, variable <a href="webinstall/phpInstaller.html#var$appName">phpInstaller::$appName</a><br> Applactation Name</dd> + <dt><b>$appVersion</b></dt> + <dd>in file engine.inc.php, variable <a href="webinstall/phpInstaller.html#var$appVersion">phpInstaller::$appVersion</a><br> Optional Applactation Version</dd> + <dt><b>addCompressionMethod</b></dt> + <dd>in file engine.inc.php, method <a href="webinstall/phpInstaller.html#methodaddCompressionMethod">phpInstaller::addCompressionMethod()</a><br> Add a decompression method to use</dd> + <dt><b>addInstallerPages</b></dt> + <dd>in file engine.inc.php, method <a href="webinstall/phpInstaller.html#methodaddInstallerPages">phpInstaller::addInstallerPages()</a><br> Add the file-copying steps to the installer</dd> + <dt><b>addMetaFile</b></dt> + <dd>in file engine.inc.php, method <a href="webinstall/phpInstaller.html#methodaddMetaFile">phpInstaller::addMetaFile()</a><br> Add a file to the installer.</dd> + <dt><b>addPage</b></dt> + <dd>in file engine.inc.php, method <a href="webinstall/phpInstaller.html#methodaddPage">phpInstaller::addPage()</a><br> add a page to the installer</dd> + <dt><b>addPath</b></dt> + <dd>in file engine.inc.php, method <a href="webinstall/phpInstaller.html#methodaddPath">phpInstaller::addPath()</a><br> Add a directory of files to the installer</dd> + <dt><b>addPathDownload</b></dt> + <dd>in file engine.inc.php, method <a href="webinstall/phpInstaller.html#methodaddPathDownload">phpInstaller::addPathDownload()</a><br> Add a path that the user downloads</dd> + <dt><b>addWriteMethod</b></dt> + <dd>in file engine.inc.php, method <a href="webinstall/phpInstaller.html#methodaddWriteMethod">phpInstaller::addWriteMethod()</a><br> Add a method of creating files for example, over FTP, ect.</dd> + </dl> + </div> + <a name="c"></a> + <div class="index-letter-section"> + <div style="float: left" class="index-letter-title">c</div> + <div style="float: right"><a href="#top">[Top]</a></div> + <div style="clear: both"></div> + </div> + <div> + <h2>c</h2> + <dl> + <dt><b>$compress</b></dt> + <dd>in file engine.inc.php, variable <a href="webinstall/phpInstaller.html#var$compress">phpInstaller::$compress</a><br> Compress the installer</dd> + <dt><b>$compresstypes</b></dt> + <dd>in file ... [truncated message content] |
From: <ke...@us...> - 2006-10-04 01:42:46
|
Revision: 804 http://svn.sourceforge.net/phpfreechat/?rev=804&view=rev Author: kerphi Date: 2006-09-30 15:19:38 -0700 (Sat, 30 Sep 2006) Log Message: ----------- add the msn theme demo Modified Paths: -------------- trunk/demo/index.php trunk/index.php Added Paths: ----------- trunk/demo/demo49_msn_smiley_theme.php Removed Paths: ------------- trunk/demo/demo11_famfamfam_smiley_theme.php Deleted: trunk/demo/demo11_famfamfam_smiley_theme.php =================================================================== --- trunk/demo/demo11_famfamfam_smiley_theme.php 2006-09-30 22:07:15 UTC (rev 803) +++ trunk/demo/demo11_famfamfam_smiley_theme.php 2006-09-30 22:19:38 UTC (rev 804) @@ -1,38 +0,0 @@ -<?php - -require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; - -$params["serverid"] = md5(__FILE__); // calculate a unique id for this chat -$params["title"] = "A chat with a customized smiley theme (famfamfam theme)"; -$params["nick"] = "guest"; // setup the intitial nickname -$params["theme"] = "famfamfam"; -$chat = new phpFreeChat( $params ); - -?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html> - <head> - <meta http-equiv="content-type" content="text/html; charset=utf-8" /> - <title>phpFreeChat demo</title> - - <?php $chat->printJavascript(); ?> - <?php $chat->printStyle(); ?> - - </head> - - <body> - <?php $chat->printChat(); ?> - -<?php - // print the current file - echo "<h2>The source code</h2>"; - $filename = __FILE__; - echo "<p><code>".$filename."</code></p>"; - echo "<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">"; - $content = file_get_contents($filename); - echo htmlentities($content); - echo "</pre>"; -?> - - </body> -</html> \ No newline at end of file Added: trunk/demo/demo49_msn_smiley_theme.php =================================================================== --- trunk/demo/demo49_msn_smiley_theme.php (rev 0) +++ trunk/demo/demo49_msn_smiley_theme.php 2006-09-30 22:19:38 UTC (rev 804) @@ -0,0 +1,38 @@ +<?php + +require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; + +$params["serverid"] = md5(__FILE__); // calculate a unique id for this chat +$params["title"] = "A chat with a customized smiley theme (famfamfam theme)"; +$params["nick"] = "guest".rand(1,1000); // setup the intitial nickname +$params["theme"] = "msn"; +$chat = new phpFreeChat( $params ); + +?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html> + <head> + <meta http-equiv="content-type" content="text/html; charset=utf-8" /> + <title>phpFreeChat demo</title> + + <?php $chat->printJavascript(); ?> + <?php $chat->printStyle(); ?> + + </head> + + <body> + <?php $chat->printChat(); ?> + +<?php + // print the current file + echo "<h2>The source code</h2>"; + $filename = __FILE__; + echo "<p><code>".$filename."</code></p>"; + echo "<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">"; + $content = file_get_contents($filename); + echo htmlentities($content); + echo "</pre>"; +?> + + </body> +</html> \ No newline at end of file Modified: trunk/demo/index.php =================================================================== --- trunk/demo/index.php 2006-09-30 22:07:15 UTC (rev 803) +++ trunk/demo/index.php 2006-09-30 22:19:38 UTC (rev 804) @@ -80,13 +80,13 @@ <h2 id="demo-themes">Themes</h2> <ul> - <li><a href="demo11_famfamfam_smiley_theme.php">demo11 - A chat with a customized smiley theme (famfamfam theme)</a></li> <li><a href="demo12_phoenity_smiley_theme.php">demo12 - A chat with a customized smiley theme (phoenity theme)</a></li> <li><a href="demo17_cerutti_smiley_theme.php">demo17 - A chat with a customized smiley theme (cerutti theme)</a></li> <li><a href="demo18_phpbb2_smiley_theme.php">demo18 - A chat with a customized smiley theme (phpbb2 theme)</a></li> <li><a href="demo28_blune_theme.php">demo28 - use a customized theme (blune theme)</a></li> <li><a href="demo28_mini_blune_theme.php">demo28 - use a customized theme (blune theme) - mini</a></li> <li><a href="demo44_green_theme.php">demo44 - use a customized theme (green)</a></li> + <li><a href="demo49_msn_smiley_theme.php">demo49 - A chat with a customized smiley theme (msn theme)</a></li> </ul> <h2 id="demo-translations">Translations</h2> Modified: trunk/index.php =================================================================== --- trunk/index.php 2006-09-30 22:07:15 UTC (rev 803) +++ trunk/index.php 2006-09-30 22:19:38 UTC (rev 804) @@ -3,7 +3,7 @@ require_once dirname(__FILE__)."/src/phpfreechat.class.php"; $params = array(); $params["title"] = "Quick chat"; -$params["nick"] = "guest".rand(1,10); // setup the intitial nickname +$params["nick"] = "guest".rand(1,1000); // setup the intitial nickname $params["isadmin"] = true; // just for debug ;) $params["serverid"] = md5(__FILE__); // calculate a unique id for this chat $chat = new phpFreeChat( $params ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-10-04 01:48:38
|
Revision: 803 http://svn.sourceforge.net/phpfreechat/?rev=803&view=rev Author: kerphi Date: 2006-09-30 15:07:15 -0700 (Sat, 30 Sep 2006) Log Message: ----------- [en] User's metadata implementation : it make possible to build customized user profiles by sending your own metadata for each connected users and to display it as you want in the user's box. This release add two commands : "/whois nickname" used to query the user's metadata list and "/who channel" used internal to get the channel user list. For example: now the server admins can have customized user icon (thanks to Johnny Philavanh for his sponsoring : $400 USD). [14h] [fr] Impl?\195?\169mentation des m?\195?\169ta donn?\195?\169es utilisateur : cela rend possible les profils utilisateurs personnalis?\195?\169s, on peut associer une information ?\195?\160 un utilisateur, r?\195?\169cup?\195?\169rer cette information cot?\195?\169 client et afficher une interface en cons?\195?\169quence. Deux nouvelles commandes ont ?\195?\169t?\195?\169 ajout?\195?\169 : "/whois pseudonyme" permet de r?\195?\169cup?\195?\169rer la liste des m?\195?\169ta donn?\195?\169es de l'utilisateur identifi?\195?\169 par son pseudonyme, et "/who channel" qui permet de r?\195?\169cup?\195?\169rer la liste des utilisateurs d'un channel. Par exemple : il est maintenant possible d'afficher une image diff?\195?\169rente pour les administrateurs du chat (merci ?\195?\160 Johnny Philavanh pour sa donation de $400 USD). [14h] Modified Paths: -------------- trunk/src/client/chat.js.tpl.php trunk/src/client/pfcclient.js trunk/src/commands/connect.class.php trunk/src/commands/deop.class.php trunk/src/commands/identify.class.php trunk/src/commands/join.class.php trunk/src/commands/nick.class.php trunk/src/commands/op.class.php trunk/src/commands/privmsg.class.php trunk/src/commands/update.class.php trunk/src/pfccommand.class.php trunk/src/pfccontainer.class.php trunk/src/pfcglobalconfig.class.php trunk/src/phpfreechat.class.php trunk/themes/default/images/ch-active.gif trunk/themes/default/images/ch.gif trunk/themes/default/images/clock-on.gif trunk/themes/default/images/pv-active.gif trunk/themes/default/images/pv.gif trunk/themes/default/images/user.gif trunk/themes/default/style.css Added Paths: ----------- trunk/lib/json/ trunk/lib/json/JSON.php trunk/lib/json/LICENSE trunk/src/commands/who.class.php trunk/src/commands/who2.class.php trunk/src/commands/whois.class.php trunk/src/commands/whois2.class.php trunk/themes/default/images/close-whoisbox.gif trunk/themes/default/images/openpv.gif trunk/themes/default/images/user-admin.gif Removed Paths: ------------- trunk/src/commands/getonlinenick.class.php trunk/testcase/cmd_error.php trunk/testcase/cmd_nick.php trunk/testcase/cmd_send.php Added: trunk/lib/json/JSON.php =================================================================== --- trunk/lib/json/JSON.php (rev 0) +++ trunk/lib/json/JSON.php 2006-09-30 22:07:15 UTC (rev 803) @@ -0,0 +1,806 @@ +<?php +/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */ + +/** + * Converts to and from JSON format. + * + * JSON (JavaScript Object Notation) is a lightweight data-interchange + * format. It is easy for humans to read and write. It is easy for machines + * to parse and generate. It is based on a subset of the JavaScript + * Programming Language, Standard ECMA-262 3rd Edition - December 1999. + * This feature can also be found in Python. JSON is a text format that is + * completely language independent but uses conventions that are familiar + * to programmers of the C-family of languages, including C, C++, C#, Java, + * JavaScript, Perl, TCL, and many others. These properties make JSON an + * ideal data-interchange language. + * + * This package provides a simple encoder and decoder for JSON notation. It + * is intended for use with client-side Javascript applications that make + * use of HTTPRequest to perform server communication functions - data can + * be encoded into JSON notation for use in a client-side javascript, or + * decoded from incoming Javascript requests. JSON format is native to + * Javascript, and can be directly eval()'ed with no further parsing + * overhead + * + * All strings should be in ASCII or UTF-8 format! + * + * LICENSE: Redistribution and use in source and binary forms, with or + * without modification, are permitted provided that the following + * conditions are met: Redistributions of source code must retain the + * above copyright notice, this list of conditions and the following + * disclaimer. Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following disclaimer + * in the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN + * NO EVENT SHALL CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE + * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH + * DAMAGE. + * + * @category + * @package Services_JSON + * @author Michal Migurski <mik...@te...> + * @author Matt Knapp <mdknapp[at]gmail[dot]com> + * @author Brett Stimmerman <brettstimmerman[at]gmail[dot]com> + * @copyright 2005 Michal Migurski + * @version CVS: $Id: JSON.php,v 1.31 2006/06/28 05:54:17 migurski Exp $ + * @license http://www.opensource.org/licenses/bsd-license.php + * @link http://pear.php.net/pepr/pepr-proposal-show.php?id=198 + */ + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_SLICE', 1); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_STR', 2); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_ARR', 3); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_OBJ', 4); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_CMT', 5); + +/** + * Behavior switch for Services_JSON::decode() + */ +define('SERVICES_JSON_LOOSE_TYPE', 16); + +/** + * Behavior switch for Services_JSON::decode() + */ +define('SERVICES_JSON_SUPPRESS_ERRORS', 32); + +/** + * Converts to and from JSON format. + * + * Brief example of use: + * + * <code> + * // create a new instance of Services_JSON + * $json = new Services_JSON(); + * + * // convert a complexe value to JSON notation, and send it to the browser + * $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4))); + * $output = $json->encode($value); + * + * print($output); + * // prints: ["foo","bar",[1,2,"baz"],[3,[4]]] + * + * // accept incoming POST data, assumed to be in JSON notation + * $input = file_get_contents('php://input', 1000000); + * $value = $json->decode($input); + * </code> + */ +class Services_JSON +{ + /** + * constructs a new JSON instance + * + * @param int $use object behavior flags; combine with boolean-OR + * + * possible values: + * - SERVICES_JSON_LOOSE_TYPE: loose typing. + * "{...}" syntax creates associative arrays + * instead of objects in decode(). + * - SERVICES_JSON_SUPPRESS_ERRORS: error suppression. + * Values which can't be encoded (e.g. resources) + * appear as NULL instead of throwing errors. + * By default, a deeply-nested resource will + * bubble up with an error, so all return values + * from encode() should be checked with isError() + */ + function Services_JSON($use = 0) + { + $this->use = $use; + } + + /** + * convert a string from one UTF-16 char to one UTF-8 char + * + * Normally should be handled by mb_convert_encoding, but + * provides a slower PHP-only method for installations + * that lack the multibye string extension. + * + * @param string $utf16 UTF-16 character + * @return string UTF-8 character + * @access private + */ + function utf162utf8($utf16) + { + // oh please oh please oh please oh please oh please + if(function_exists('mb_convert_encoding')) { + return mb_convert_encoding($utf16, 'UTF-8', 'UTF-16'); + } + + $bytes = (ord($utf16{0}) << 8) | ord($utf16{1}); + + switch(true) { + case ((0x7F & $bytes) == $bytes): + // this case should never be reached, because we are in ASCII range + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0x7F & $bytes); + + case (0x07FF & $bytes) == $bytes: + // return a 2-byte UTF-8 character + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0xC0 | (($bytes >> 6) & 0x1F)) + . chr(0x80 | ($bytes & 0x3F)); + + case (0xFFFF & $bytes) == $bytes: + // return a 3-byte UTF-8 character + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0xE0 | (($bytes >> 12) & 0x0F)) + . chr(0x80 | (($bytes >> 6) & 0x3F)) + . chr(0x80 | ($bytes & 0x3F)); + } + + // ignoring UTF-32 for now, sorry + return ''; + } + + /** + * convert a string from one UTF-8 char to one UTF-16 char + * + * Normally should be handled by mb_convert_encoding, but + * provides a slower PHP-only method for installations + * that lack the multibye string extension. + * + * @param string $utf8 UTF-8 character + * @return string UTF-16 character + * @access private + */ + function utf82utf16($utf8) + { + // oh please oh please oh please oh please oh please + if(function_exists('mb_convert_encoding')) { + return mb_convert_encoding($utf8, 'UTF-16', 'UTF-8'); + } + + switch(strlen($utf8)) { + case 1: + // this case should never be reached, because we are in ASCII range + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return $utf8; + + case 2: + // return a UTF-16 character from a 2-byte UTF-8 char + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0x07 & (ord($utf8{0}) >> 2)) + . chr((0xC0 & (ord($utf8{0}) << 6)) + | (0x3F & ord($utf8{1}))); + + case 3: + // return a UTF-16 character from a 3-byte UTF-8 char + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr((0xF0 & (ord($utf8{0}) << 4)) + | (0x0F & (ord($utf8{1}) >> 2))) + . chr((0xC0 & (ord($utf8{1}) << 6)) + | (0x7F & ord($utf8{2}))); + } + + // ignoring UTF-32 for now, sorry + return ''; + } + + /** + * encodes an arbitrary variable into JSON format + * + * @param mixed $var any number, boolean, string, array, or object to be encoded. + * see argument 1 to Services_JSON() above for array-parsing behavior. + * if var is a strng, note that encode() always expects it + * to be in ASCII or UTF-8 format! + * + * @return mixed JSON string representation of input var or an error if a problem occurs + * @access public + */ + function encode($var) + { + switch (gettype($var)) { + case 'boolean': + return $var ? 'true' : 'false'; + + case 'NULL': + return 'null'; + + case 'integer': + return (int) $var; + + case 'double': + case 'float': + return (float) $var; + + case 'string': + // STRINGS ARE EXPECTED TO BE IN ASCII OR UTF-8 FORMAT + $ascii = ''; + $strlen_var = strlen($var); + + /* + * Iterate over every character in the string, + * escaping with a slash or encoding to UTF-8 where necessary + */ + for ($c = 0; $c < $strlen_var; ++$c) { + + $ord_var_c = ord($var{$c}); + + switch (true) { + case $ord_var_c == 0x08: + $ascii .= '\b'; + break; + case $ord_var_c == 0x09: + $ascii .= '\t'; + break; + case $ord_var_c == 0x0A: + $ascii .= '\n'; + break; + case $ord_var_c == 0x0C: + $ascii .= '\f'; + break; + case $ord_var_c == 0x0D: + $ascii .= '\r'; + break; + + case $ord_var_c == 0x22: + case $ord_var_c == 0x2F: + case $ord_var_c == 0x5C: + // double quote, slash, slosh + $ascii .= '\\'.$var{$c}; + break; + + case (($ord_var_c >= 0x20) && ($ord_var_c <= 0x7F)): + // characters U-00000000 - U-0000007F (same as ASCII) + $ascii .= $var{$c}; + break; + + case (($ord_var_c & 0xE0) == 0xC0): + // characters U-00000080 - U-000007FF, mask 110XXXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, ord($var{$c + 1})); + $c += 1; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xF0) == 0xE0): + // characters U-00000800 - U-0000FFFF, mask 1110XXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2})); + $c += 2; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xF8) == 0xF0): + // characters U-00010000 - U-001FFFFF, mask 11110XXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3})); + $c += 3; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xFC) == 0xF8): + // characters U-00200000 - U-03FFFFFF, mask 111110XX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3}), + ord($var{$c + 4})); + $c += 4; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xFE) == 0xFC): + // characters U-04000000 - U-7FFFFFFF, mask 1111110X + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3}), + ord($var{$c + 4}), + ord($var{$c + 5})); + $c += 5; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + } + } + + return '"'.$ascii.'"'; + + case 'array': + /* + * As per JSON spec if any array key is not an integer + * we must treat the the whole array as an object. We + * also try to catch a sparsely populated associative + * array with numeric keys here because some JS engines + * will create an array with empty indexes up to + * max_index which can cause memory issues and because + * the keys, which may be relevant, will be remapped + * otherwise. + * + * As per the ECMA and JSON specification an object may + * have any string as a property. Unfortunately due to + * a hole in the ECMA specification if the key is a + * ECMA reserved word or starts with a digit the + * parameter is only accessible using ECMAScript's + * bracket notation. + */ + + // treat as a JSON object + if (is_array($var) && count($var) && (array_keys($var) !== range(0, sizeof($var) - 1))) { + $properties = array_map(array($this, 'name_value'), + array_keys($var), + array_values($var)); + + foreach($properties as $property) { + if(Services_JSON::isError($property)) { + return $property; + } + } + + return '{' . join(',', $properties) . '}'; + } + + // treat it like a regular array + $elements = array_map(array($this, 'encode'), $var); + + foreach($elements as $element) { + if(Services_JSON::isError($element)) { + return $element; + } + } + + return '[' . join(',', $elements) . ']'; + + case 'object': + $vars = get_object_vars($var); + + $properties = array_map(array($this, 'name_value'), + array_keys($vars), + array_values($vars)); + + foreach($properties as $property) { + if(Services_JSON::isError($property)) { + return $property; + } + } + + return '{' . join(',', $properties) . '}'; + + default: + return ($this->use & SERVICES_JSON_SUPPRESS_ERRORS) + ? 'null' + : new Services_JSON_Error(gettype($var)." can not be encoded as JSON string"); + } + } + + /** + * array-walking function for use in generating JSON-formatted name-value pairs + * + * @param string $name name of key to use + * @param mixed $value reference to an array element to be encoded + * + * @return string JSON-formatted name-value pair, like '"name":value' + * @access private + */ + function name_value($name, $value) + { + $encoded_value = $this->encode($value); + + if(Services_JSON::isError($encoded_value)) { + return $encoded_value; + } + + return $this->encode(strval($name)) . ':' . $encoded_value; + } + + /** + * reduce a string by removing leading and trailing comments and whitespace + * + * @param $str string string value to strip of comments and whitespace + * + * @return string string value stripped of comments and whitespace + * @access private + */ + function reduce_string($str) + { + $str = preg_replace(array( + + // eliminate single line comments in '// ...' form + '#^\s*//(.+)$#m', + + // eliminate multi-line comments in '/* ... */' form, at start of string + '#^\s*/\*(.+)\*/#Us', + + // eliminate multi-line comments in '/* ... */' form, at end of string + '#/\*(.+)\*/\s*$#Us' + + ), '', $str); + + // eliminate extraneous space + return trim($str); + } + + /** + * decodes a JSON string into appropriate variable + * + * @param string $str JSON-formatted string + * + * @return mixed number, boolean, string, array, or object + * corresponding to given JSON input string. + * See argument 1 to Services_JSON() above for object-output behavior. + * Note that decode() always returns strings + * in ASCII or UTF-8 format! + * @access public + */ + function decode($str) + { + $str = $this->reduce_string($str); + + switch (strtolower($str)) { + case 'true': + return true; + + case 'false': + return false; + + case 'null': + return null; + + default: + $m = array(); + + if (is_numeric($str)) { + // Lookie-loo, it's a number + + // This would work on its own, but I'm trying to be + // good about returning integers where appropriate: + // return (float)$str; + + // Return float or int, as appropriate + return ((float)$str == (integer)$str) + ? (integer)$str + : (float)$str; + + } elseif (preg_match('/^("|\').*(\1)$/s', $str, $m) && $m[1] == $m[2]) { + // STRINGS RETURNED IN UTF-8 FORMAT + $delim = substr($str, 0, 1); + $chrs = substr($str, 1, -1); + $utf8 = ''; + $strlen_chrs = strlen($chrs); + + for ($c = 0; $c < $strlen_chrs; ++$c) { + + $substr_chrs_c_2 = substr($chrs, $c, 2); + $ord_chrs_c = ord($chrs{$c}); + + switch (true) { + case $substr_chrs_c_2 == '\b': + $utf8 .= chr(0x08); + ++$c; + break; + case $substr_chrs_c_2 == '\t': + $utf8 .= chr(0x09); + ++$c; + break; + case $substr_chrs_c_2 == '\n': + $utf8 .= chr(0x0A); + ++$c; + break; + case $substr_chrs_c_2 == '\f': + $utf8 .= chr(0x0C); + ++$c; + break; + case $substr_chrs_c_2 == '\r': + $utf8 .= chr(0x0D); + ++$c; + break; + + case $substr_chrs_c_2 == '\\"': + case $substr_chrs_c_2 == '\\\'': + case $substr_chrs_c_2 == '\\\\': + case $substr_chrs_c_2 == '\\/': + if (($delim == '"' && $substr_chrs_c_2 != '\\\'') || + ($delim == "'" && $substr_chrs_c_2 != '\\"')) { + $utf8 .= $chrs{++$c}; + } + break; + + case preg_match('/\\\u[0-9A-F]{4}/i', substr($chrs, $c, 6)): + // single, escaped unicode character + $utf16 = chr(hexdec(substr($chrs, ($c + 2), 2))) + . chr(hexdec(substr($chrs, ($c + 4), 2))); + $utf8 .= $this->utf162utf8($utf16); + $c += 5; + break; + + case ($ord_chrs_c >= 0x20) && ($ord_chrs_c <= 0x7F): + $utf8 .= $chrs{$c}; + break; + + case ($ord_chrs_c & 0xE0) == 0xC0: + // characters U-00000080 - U-000007FF, mask 110XXXXX + //see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 2); + ++$c; + break; + + case ($ord_chrs_c & 0xF0) == 0xE0: + // characters U-00000800 - U-0000FFFF, mask 1110XXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 3); + $c += 2; + break; + + case ($ord_chrs_c & 0xF8) == 0xF0: + // characters U-00010000 - U-001FFFFF, mask 11110XXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 4); + $c += 3; + break; + + case ($ord_chrs_c & 0xFC) == 0xF8: + // characters U-00200000 - U-03FFFFFF, mask 111110XX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 5); + $c += 4; + break; + + case ($ord_chrs_c & 0xFE) == 0xFC: + // characters U-04000000 - U-7FFFFFFF, mask 1111110X + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 6); + $c += 5; + break; + + } + + } + + return $utf8; + + } elseif (preg_match('/^\[.*\]$/s', $str) || preg_match('/^\{.*\}$/s', $str)) { + // array, or object notation + + if ($str{0} == '[') { + $stk = array(SERVICES_JSON_IN_ARR); + $arr = array(); + } else { + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $stk = array(SERVICES_JSON_IN_OBJ); + $obj = array(); + } else { + $stk = array(SERVICES_JSON_IN_OBJ); + $obj = new stdClass(); + } + } + + array_push($stk, array('what' => SERVICES_JSON_SLICE, + 'where' => 0, + 'delim' => false)); + + $chrs = substr($str, 1, -1); + $chrs = $this->reduce_string($chrs); + + if ($chrs == '') { + if (reset($stk) == SERVICES_JSON_IN_ARR) { + return $arr; + + } else { + return $obj; + + } + } + + //print("\nparsing {$chrs}\n"); + + $strlen_chrs = strlen($chrs); + + for ($c = 0; $c <= $strlen_chrs; ++$c) { + + $top = end($stk); + $substr_chrs_c_2 = substr($chrs, $c, 2); + + if (($c == $strlen_chrs) || (($chrs{$c} == ',') && ($top['what'] == SERVICES_JSON_SLICE))) { + // found a comma that is not inside a string, array, etc., + // OR we've reached the end of the character list + $slice = substr($chrs, $top['where'], ($c - $top['where'])); + array_push($stk, array('what' => SERVICES_JSON_SLICE, 'where' => ($c + 1), 'delim' => false)); + //print("Found split at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + if (reset($stk) == SERVICES_JSON_IN_ARR) { + // we are in an array, so just push an element onto the stack + array_push($arr, $this->decode($slice)); + + } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) { + // we are in an object, so figure + // out the property name and set an + // element in an associative array, + // for now + $parts = array(); + + if (preg_match('/^\s*(["\'].*[^\\\]["\'])\s*:\s*(\S.*),?$/Uis', $slice, $parts)) { + // "name":value pair + $key = $this->decode($parts[1]); + $val = $this->decode($parts[2]); + + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $obj[$key] = $val; + } else { + $obj->$key = $val; + } + } elseif (preg_match('/^\s*(\w+)\s*:\s*(\S.*),?$/Uis', $slice, $parts)) { + // name:value pair, where name is unquoted + $key = $parts[1]; + $val = $this->decode($parts[2]); + + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $obj[$key] = $val; + } else { + $obj->$key = $val; + } + } + + } + + } elseif ((($chrs{$c} == '"') || ($chrs{$c} == "'")) && ($top['what'] != SERVICES_JSON_IN_STR)) { + // found a quote, and we are not inside a string + array_push($stk, array('what' => SERVICES_JSON_IN_STR, 'where' => $c, 'delim' => $chrs{$c})); + //print("Found start of string at {$c}\n"); + + } elseif (($chrs{$c} == $top['delim']) && + ($top['what'] == SERVICES_JSON_IN_STR) && + ((strlen(substr($chrs, 0, $c)) - strlen(rtrim(substr($chrs, 0, $c), '\\'))) % 2 != 1)) { + // found a quote, we're in a string, and it's not escaped + // we know that it's not escaped becase there is _not_ an + // odd number of backslashes at the end of the string so far + array_pop($stk); + //print("Found end of string at {$c}: ".substr($chrs, $top['where'], (1 + 1 + $c - $top['where']))."\n"); + + } elseif (($chrs{$c} == '[') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a left-bracket, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_ARR, 'where' => $c, 'delim' => false)); + //print("Found start of array at {$c}\n"); + + } elseif (($chrs{$c} == ']') && ($top['what'] == SERVICES_JSON_IN_ARR)) { + // found a right-bracket, and we're in an array + array_pop($stk); + //print("Found end of array at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } elseif (($chrs{$c} == '{') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a left-brace, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_OBJ, 'where' => $c, 'delim' => false)); + //print("Found start of object at {$c}\n"); + + } elseif (($chrs{$c} == '}') && ($top['what'] == SERVICES_JSON_IN_OBJ)) { + // found a right-brace, and we're in an object + array_pop($stk); + //print("Found end of object at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } elseif (($substr_chrs_c_2 == '/*') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a comment start, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_CMT, 'where' => $c, 'delim' => false)); + $c++; + //print("Found start of comment at {$c}\n"); + + } elseif (($substr_chrs_c_2 == '*/') && ($top['what'] == SERVICES_JSON_IN_CMT)) { + // found a comment end, and we're in one now + array_pop($stk); + $c++; + + for ($i = $top['where']; $i <= $c; ++$i) + $chrs = substr_replace($chrs, ' ', $i, 1); + + //print("Found end of comment at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } + + } + + if (reset($stk) == SERVICES_JSON_IN_ARR) { + return $arr; + + } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) { + return $obj; + + } + + } + } + } + + /** + * @todo Ultimately, this should just call PEAR::isError() + */ + function isError($data, $code = null) + { + if (class_exists('pear')) { + return PEAR::isError($data, $code); + } elseif (is_object($data) && (get_class($data) == 'services_json_error' || + is_subclass_of($data, 'services_json_error'))) { + return true; + } + + return false; + } +} + +if (class_exists('PEAR_Error')) { + + class Services_JSON_Error extends PEAR_Error + { + function Services_JSON_Error($message = 'unknown error', $code = null, + $mode = null, $options = null, $userinfo = null) + { + parent::PEAR_Error($message, $code, $mode, $options, $userinfo); + } + } + +} else { + + /** + * @todo Ultimately, this class shall be descended from PEAR_Error + */ + class Services_JSON_Error + { + function Services_JSON_Error($message = 'unknown error', $code = null, + $mode = null, $options = null, $userinfo = null) + { + + } + } + +} + +?> Added: trunk/lib/json/LICENSE =================================================================== --- trunk/lib/json/LICENSE (rev 0) +++ trunk/lib/json/LICENSE 2006-09-30 22:07:15 UTC (rev 803) @@ -0,0 +1,21 @@ +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + +Redistributions of source code must retain the above copyright notice, +this list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN +NO EVENT SHALL CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF +USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Modified: trunk/src/client/chat.js.tpl.php =================================================================== --- trunk/src/client/chat.js.tpl.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/client/chat.js.tpl.php 2006-09-30 22:07:15 UTC (rev 803) @@ -2,6 +2,7 @@ <?php $nick = $u->nick != "" ? addslashes($u->nick) : addslashes($c->nick); ?> var pfc_nickname = '<?php echo ($GLOBALS["output_encoding"]=="UTF-8" ? $nick : iconv("UTF-8", $GLOBALS["output_encoding"],$nick)); ?>'; +var pfc_nickid = '<?php echo $u->nickid; ?>'; var pfc_version = '<?php echo $version; ?>'; var pfc_clientid = '<?php echo md5(uniqid(rand(), true)); ?>'; var pfc_title = '<?php echo addslashes($title); ?>'; @@ -93,6 +94,7 @@ "Click here to send your message", // _pfc "Send", // _pfc "You are not allowed to speak to yourself", // _pfc + "Close", // _pfc ); foreach($labels_to_load as $l) { @@ -126,6 +128,9 @@ 'images/bt_mail.gif', 'images/bt_color.gif', 'images/color_transparent.gif', + 'images/close-whoisbox.gif', + 'images/openpv.gif', + 'images/user-admin.gif', ); foreach($fileurl_to_load as $f) Modified: trunk/src/client/pfcclient.js =================================================================== --- trunk/src/client/pfcclient.js 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/client/pfcclient.js 2006-09-30 22:07:15 UTC (rev 803) @@ -19,7 +19,11 @@ // load the resources manager (labels and urls) this.res = new pfcResource(); - this.nickname = pfc_nickname; + this.nickname = pfc_nickname; + this.nickid = pfc_nickid; + this.usermeta = $H(); + this.chanmeta = $H(); + this.nickwhoisbox = $H(); // this array contains all the sent command // used the up and down key to navigate in the history @@ -286,6 +290,8 @@ { this.el_handle.innerHTML = param; this.nickname = param; + this.usermeta[this.nickid]['nick'] = param; + this.updateNickBox(this.nickid); // clear the possible error box generated by the bellow displayMsg(...) function this.clearError(Array(this.el_words)); @@ -379,11 +385,100 @@ { this.displayMsg( cmd, param ); } + else if (cmd == "whois" || cmd == "whois2") + { + var nickid = param['nickid']; + if (resp == "ok") + { + this.usermeta[nickid] = $H(param); + this.updateNickBox(nickid); + this.updateNickWhoisBox(nickid); + } + if (cmd == "whois") + { + // display the whois info + var um = this.getAllUserMeta(nickid); + var um_keys = um.keys(); + var msg = ''; + for (var i=0; i<um_keys.length; i++) + { + var k = um_keys[i]; + var v = um[k]; + if (v && k != 'nickid' + && k != 'floodtime' + && k != 'flood_nbmsg' + && k != 'flood_nbchar' + ) + msg = msg + '<strong>' + k + '</strong>: ' + v + '<br/>'; + } + this.displayMsg( cmd, msg ); + } + } + else if (cmd == "who" || cmd == "who2") + { + var chan = param['chan']; + var chanid = param['chanid']; + var meta = $H(param['meta']); + + if (resp == "ok") + { + this.chanmeta[chanid] = meta; + + // send /whois commands for unknown users + for (var i=0; i<meta['users']['nickid'].length; i++) + { + var nickid = meta['users']['nickid'][i]; + var nick = meta['users']['nick'][i]; + var um = this.getAllUserMeta(nickid); + if (!um) this.sendRequest('/whois2', nick); + } + + // update the nick list display on the current channel + this.updateNickListBox(chanid); + } + + if (cmd == "who") + { + // display the whois info + var cm = this.getAllChanMeta(chanid); + var cm_keys = cm.keys(); + var msg = ''; + for (var i=0; i<cm_keys.length; i++) + { + var k = cm_keys[i]; + var v = cm[k]; + if (k != 'users') + { + msg = msg + '<strong>' + k + '</strong>: ' + v + '<br/>'; + } + } + this.displayMsg( cmd, msg ); + } + } else alert(cmd + "-"+resp+"-"+param); }, + getAllUserMeta: function(nickid) + { + return this.usermeta[nickid]; + }, + getUserMeta: function(nickid, key) + { + return this.usermeta[nickid][key]; + }, + + getAllChanMeta: function(chanid) + { + return this.chanmeta[chanid]; + }, + + getChanMeta: function(chanid, key) + { + return this.chanmeta[chanid][key]; + }, + doSendMessage: function() { var w = this.el_words; @@ -757,64 +852,33 @@ this.el_words.focus(); }, + updateNickBox: function(nickid) + { + // @todo optimize this function because it is called lot of times so it could cause CPU consuming on client side + var chanids = this.chanmeta.keys(); + for(var i = 0; chanids.length > i; i++) + { + this.updateNickListBox(chanids[i]); + } + }, + /** * fill the nickname list with connected nicknames */ - updateNickList: function(tabid,lst) + updateNickListBox: function(chanid) { - // alert('updateNickList: tabid='+tabid+"-lst="+lst.inspect()); - //var tabid = hex_md5(_to_utf8("ch_"+recipient)); - - this.nicklist[tabid] = lst; - var nicks = lst; - var nickdiv = this.gui.getOnlineContentFromTabId(tabid).firstChild; + var nickidlst = this.chanmeta[chanid]['users']['nickid']; + var nickdiv = this.gui.getOnlineContentFromTabId(chanid).firstChild; var ul = document.createElement('ul'); - for (var i=0; i<nicks.length; i++) + ul.setAttribute('class', 'pfc_nicklist'); + ul.setAttribute('className', 'pfc_nicklist'); // IE6 + for (var i=0; i<nickidlst.length; i++) { - var li = document.createElement('li'); - if (nicks[i] != this.nickname) - { - // this is someone -> create a privmsg link - var img = document.createElement('img'); - img.setAttribute('src', this.res.getFileUrl('images/user.gif')); - img.alt = this.res.getLabel('Private message'); - img.title = img.alt; - img.style.marginRight = '5px'; - var a = document.createElement('a'); - a.setAttribute('href', ''); - a.pfc_nick = nicks[i]; - a.onclick = function(){pfc.sendRequest('/privmsg', this.pfc_nick); return false;} - a.appendChild(img); - li.appendChild(a); - } - else - { - // this is myself -> do not create a privmsg link - var img = document.createElement('img'); - img.setAttribute('src', this.res.getFileUrl('images/user-me.gif')); - img.alt = ''; - img.title = img.alt; - img.style.marginRight = '5px'; - li.appendChild(img); - } - + var nickid = nickidlst[i]; - // nobr is not xhtml valid but it's a workeround - // for IE which doesn't support 'white-space: pre' css rule - var nobr = document.createElement('nobr'); - var span = document.createElement('span'); - span.pfc_nick = nicks[i]; - span.onclick = function(){pfc.insert_text(this.pfc_nick+", ","",false); return false;} - span.appendChild(document.createTextNode(nicks[i])); - span.setAttribute('class', 'pfc_nickmarker pfc_nick_'+ hex_md5(_to_utf8(nicks[i]))); - span.setAttribute('className', 'pfc_nickmarker pfc_nick_'+ hex_md5(_to_utf8(nicks[i]))); // for IE6 - - // Element.addClassName(span, 'pfc_nickmarker'); - // Element.addClassName(span, 'pfc_nick_'+ hex_md5(_to_utf8(nicks[i]))); - nobr.appendChild(span); - li.appendChild(nobr); - li.style.borderBottom = '1px solid #AAA'; - + var li = this.buildNickItem(nickid); + li.setAttribute('class', 'pfc_nickitem_'+nickid); + li.setAttribute('className', 'pfc_nickitem_'+nickid); // IE6 ul.appendChild(li); } var fc = nickdiv.firstChild; @@ -824,7 +888,151 @@ nickdiv.appendChild(ul,fc); this.colorizeNicks(nickdiv); }, + + getNickWhoisBox: function(nickid) + { + if (!this.nickwhoisbox[nickid]) + this.updateNickWhoisBox(nickid); + return this.nickwhoisbox[nickid]; + }, + + updateNickWhoisBox: function(nickid) + { + var div = document.createElement('div'); + div.setAttribute('class', 'pfc_nickwhois'); + div.setAttribute('className', 'pfc_nickwhois'); // for IE6 + + var ul = document.createElement('ul'); + div.appendChild(ul); + + // add the close button + var li = document.createElement('li'); + li.setAttribute('class', 'pfc_nickwhois_close'); + li.setAttribute('className', 'pfc_nickwhois_close'); // for IE6 + ul.appendChild(li); + var a = document.createElement('a'); + a.setAttribute('href', ''); + a.pfc_parent = div; + a.onclick = function(evt){ + this.pfc_parent.style.display = 'none'; + return false; + } + var img = document.createElement('img'); + img.setAttribute('src', this.res.getFileUrl('images/close-whoisbox.gif')); + img.alt = document.createTextNode(this.res.getLabel('Close')); + a.appendChild(img); + li.appendChild(a); + + // add the privmsg link (do not add it if this button is yourself) + if (pfc.getUserMeta(nickid,'nick') != this.nickname) + { + var li = document.createElement('li'); + li.setAttribute('class', 'pfc_nickwhois_pv'); + li.setAttribute('className', 'pfc_nickwhois_pv'); // for IE6 + ul.appendChild(li); + var a = document.createElement('a'); + a.setAttribute('href', ''); + a.pfc_nickid = nickid; + a.pfc_parent = div; + a.onclick = function(evt){ + var nick = pfc.getUserMeta(this.pfc_nickid,'nick'); + pfc.sendRequest('/privmsg', nick); + this.pfc_parent.style.display = 'none'; + return false; + } + var img = document.createElement('img'); + img.setAttribute('src', this.res.getFileUrl('images/openpv.gif')); + img.alt = document.createTextNode(this.res.getLabel('Private message')); + a.appendChild(img); + a.appendChild(document.createTextNode(this.res.getLabel('Private message'))); + li.appendChild(a); + } + + + // add the whois information table + var table = document.createElement('table'); +// table.setAttribute('cellspacing',0); +// table.setAttribute('cellpadding',0); +// table.setAttribute('border',0); + var tbody = document.createElement('tbody'); + table.appendChild(tbody); + var um = this.getAllUserMeta(nickid); + var um_keys = um.keys(); + var msg = ''; + for (var i=0; i<um_keys.length; i++) + { + var k = um_keys[i]; + var v = um[k]; + if (v && k != 'nickid' + && k != 'floodtime' + && k != 'flood_nbmsg' + && k != 'flood_nbchar' + ) + { + var tr = document.createElement('tr'); + var td1 = document.createElement('td'); + td1.setAttribute('class', 'pfc_nickwhois_c1'); + td1.setAttribute('className', 'pfc_nickwhois_c1'); // for IE6 + var td2 = document.createElement('td'); + td2.setAttribute('class', 'pfc_nickwhois_c2'); + td2.setAttribute('className', 'pfc_nickwhois_c2'); // for IE6 + td1.appendChild(document.createTextNode(k)); + td2.appendChild(document.createTextNode(v)); + tr.appendChild(td1); + tr.appendChild(td2); + tbody.appendChild(tr); + } + } + div.appendChild(table); + + this.nickwhoisbox[nickid] = div; + }, + + buildNickItem: function(nickid) + { + var nick = this.getUserMeta(nickid, 'nick'); + var isadmin = this.getUserMeta(nickid, 'isadmin'); + var li = document.createElement('li'); + + var img = document.createElement('img'); + if (isadmin) + img.setAttribute('src', this.res.getFileUrl('images/user-admin.gif')); + else + img.setAttribute('src', this.res.getFileUrl('images/user.gif')); + img.style.marginRight = '5px'; + img.setAttribute('class', 'pfc_nickbutton'); + img.setAttribute('className', 'pfc_nickbutton'); // for IE6 + img.pfc_nick = nick; + img.pfc_nickid = nickid; + img.onclick = function(evt){ + var d = pfc.getNickWhoisBox(this.pfc_nickid); + document.body.appendChild(d); + d.style.display = 'block'; + d.style.zIndex = '400'; + d.style.position = 'absolute'; + d.style.left = (evt.pageX-5)+'px'; + d.style.top = (evt.pageY-5)+'px'; + return false; + } + li.appendChild(img); + + // nobr is not xhtml valid but it's a workeround + // for IE which doesn't support 'white-space: pre' css rule + var nobr = document.createElement('nobr'); + var span = document.createElement('span'); + span.setAttribute('class', 'pfc_nickmarker pfc_nick_'+nickid); + span.setAttribute('className', 'pfc_nickmarker pfc_nick_'+nickid); // for IE6 + span.pfc_nick = nick; + span.pfc_nickid = nickid; + span.onclick = function(){pfc.insert_text(this.pfc_nick+", ","",false); return false;} + span.appendChild(document.createTextNode(nick)); + nobr.appendChild(span); + li.appendChild(nobr); + li.style.borderBottom = '1px solid #AAA'; + return li; + }, + /** * clear the nickname list */ @@ -1136,7 +1344,6 @@ var loginlogout_icon = $('pfc_loginlogout'); if (this.isconnected) { - // this.updateNickList(this.nicklist); loginlogout_icon.src = this.res.getFileUrl('images/logout.gif'); loginlogout_icon.alt = this.res.getLabel('Disconnect'); loginlogout_icon.title = loginlogout_icon.alt; Modified: trunk/src/commands/connect.class.php =================================================================== --- trunk/src/commands/connect.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/connect.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -54,15 +54,22 @@ // setup some user meta $nickid = $u->nickid; // store the user ip - $ct->setUserMeta($nickid, 'ip', $_SERVER["REMOTE_ADDR"]); + $ip = $_SERVER["REMOTE_ADDR"]; + if ($ip == "::1") $ip = "127.0.0.1"; // fix for konqueror & localhost + $ct->setUserMeta($nickid, 'ip', $ip); // store the admin flag $ct->setUserMeta($nickid, 'isadmin', $isadmin); - + // store the customized nick metadata + foreach($c->nickmeta as $k => $v) + $ct->setUserMeta($nickid, $k, $v); + // register the user (and his metadata) in the allready joined channel foreach( $u->channels as $id => $chan ) $ct->createNick($chan["recipient"], $u->nick, $u->nickid); foreach( $u->privmsg as $id => $pv ) $ct->createNick($pv["recipient"], $u->nick, $u->nickid); + + $this->forceWhoisReload($u->nick); // connect to the server $xml_reponse->addScript("pfc.handleResponse('connect', 'ok', '');"); Modified: trunk/src/commands/deop.class.php =================================================================== --- trunk/src/commands/deop.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/deop.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -27,6 +27,8 @@ $container =& $c->getContainerInstance(); $nicktodeopid = $container->getNickId($nicktodeop); $container->setUserMeta($nicktodeopid, 'isadmin', false); + + $this->forceWhoisReload($nicktodeop); } } Deleted: trunk/src/commands/getonlinenick.class.php =================================================================== --- trunk/src/commands/getonlinenick.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/getonlinenick.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -1,54 +0,0 @@ -<?php - -require_once(dirname(__FILE__)."/../pfccommand.class.php"); - -class pfcCommand_getonlinenick extends pfcCommand -{ - function run(&$xml_reponse, $p) - { - $clientid = $p["clientid"]; - $param = $p["param"]; - $sender = $p["sender"]; - $recipient = $p["recipient"]; - $recipientid = $p["recipientid"]; - - $c =& $this->c; - $container =& $c->getContainerInstance(); - - // get the cached nickname list - $nicklist_sid = "pfc_nicklist_".$c->getId()."_".$clientid."_".$recipientid; - $oldnicklist = isset($_SESSION[$nicklist_sid]) ? $_SESSION[$nicklist_sid] : array(); - - // get the real nickname list - $users = $container->getOnlineNick($recipient); - $nicklist = array(); - if (isset($users["nick"])) - foreach($users["nick"] as $n) - $nicklist[] = $n; - sort($nicklist); - - if ($oldnicklist != $nicklist) // check if the nickname list must be updated on the client side - { - $_SESSION[$nicklist_sid] = $nicklist; - - if ($c->debug) - { - $nicklist2 = implode(",",$nicklist); - pxlog("/getonlinenick (nicklist updated - nicklist=".$nicklist2.")", "chat", $c->getId()); - } - - // build and send the nickname list - $js = ""; - foreach ($nicklist as $nick) - { - $nickname = addslashes($nick); // must escape ' charactere for javascript string - $js .= "'".$nickname."',"; - } - $js = substr($js, 0, strlen($js)-1); // remove last ',' - $xml_reponse->addScript("pfc.updateNickList('".$recipientid."',Array(".$js."));"); - } - - } -} - -?> \ No newline at end of file Modified: trunk/src/commands/identify.class.php =================================================================== --- trunk/src/commands/identify.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/identify.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -57,9 +57,10 @@ if ($isadmin) { // ok the current user is an admin, just save the isadmin flag in the metadata - $container =& $c->getContainerInstance(); - $container->setUserMeta($u->nickid, 'isadmin', $isadmin); - + $ct =& $c->getContainerInstance(); + $ct->setUserMeta($u->nickid, 'isadmin', $isadmin); + $this->forceWhoisReload($u->nick); + $msg .= _pfc("Succesfully identified"); $xml_reponse->addScript("pfc.handleResponse('".$this->name."', 'ok', '".$msg."');"); } Modified: trunk/src/commands/join.class.php =================================================================== --- trunk/src/commands/join.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/join.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -44,10 +44,6 @@ $u->channels[$chanid]["name"] = $channame; $u->saveInCache(); - // clear the cached nicknames list for the given channel - $nicklist_sid = "pfc_nicklist_".$c->getId()."_".$clientid."_".$chanid; - $_SESSION[$nicklist_sid] = NULL; - // show a join message $cmdp = $p; $cmdp["param"] = _pfc("%s joins %s",$u->nick, $channame); Modified: trunk/src/commands/nick.class.php =================================================================== --- trunk/src/commands/nick.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/nick.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -48,6 +48,7 @@ $container->changeNick($newnick, $oldnick); $u->nick = $newnick; $u->saveInCache(); + $this->forceWhoisReload($u->nick); // notify all the joined channels/privmsg $cmdp = $p; @@ -86,6 +87,7 @@ $u->nick = $newnick; $u->active = true; $u->saveInCache(); + $this->forceWhoisReload($u->nick); $xml_reponse->addScript("pfc.handleResponse('nick', 'connected', '".addslashes($newnick)."');"); Modified: trunk/src/commands/op.class.php =================================================================== --- trunk/src/commands/op.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/op.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -33,6 +33,8 @@ $container =& $c->getContainerInstance(); $nicktoopid = $container->getNickId($nicktoop); $container->setUserMeta($nicktoopid, 'isadmin', true); + + $this->forceWhoisReload($nicktoop); } } Modified: trunk/src/commands/privmsg.class.php =================================================================== --- trunk/src/commands/privmsg.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/privmsg.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -73,10 +73,6 @@ $u->privmsg[$pvrecipientid]["pvnickid"] = $pvnickid; $u->saveInCache(); - // clear the cached nicknames list for the given channel - $nicklist_sid = "pfc_nicklist_".$c->getId()."_".$clientid."_".$pvrecipientid; - $_SESSION[$nicklist_sid] = NULL; - // reset the message id indicator // i.e. be ready to re-get all last posted messages $from_id_sid = "pfc_from_id_".$c->getId()."_".$clientid."_".$pvrecipientid; Modified: trunk/src/commands/update.class.php =================================================================== --- trunk/src/commands/update.class.php 2006-09-30 19:39:55 UTC (rev 802) +++ trunk/src/commands/update.class.php 2006-09-30 22:07:15 UTC (rev 803) @@ -37,8 +... [truncated message content] |
From: <ke...@us...> - 2006-10-06 06:35:24
|
Revision: 822 http://svn.sourceforge.net/phpfreechat/?rev=822&view=rev Author: kerphi Date: 2006-10-05 23:35:09 -0700 (Thu, 05 Oct 2006) Log Message: ----------- remive useless themeurl stuff : only themepath is necessary since proxy.php is used Modified Paths: -------------- trunk/demo/demo21_with_hardcoded_urls.php trunk/src/pfcglobalconfig.class.php Modified: trunk/demo/demo21_with_hardcoded_urls.php =================================================================== --- trunk/demo/demo21_with_hardcoded_urls.php 2006-10-04 20:10:12 UTC (rev 821) +++ trunk/demo/demo21_with_hardcoded_urls.php 2006-10-06 06:35:09 UTC (rev 822) @@ -10,8 +10,6 @@ $params["data_public_url"] = "../data/public"; $params["client_script_url"] = "./demo21_with_hardcoded_urls.php"; $params["server_script_url"] = "./demo21_with_hardcoded_urls.php"; -$params["themeurl"] = "../themes"; -$params["themeurl_default"] = "../themes"; // setup paths $params["container_type"] = "File"; Modified: trunk/src/pfcglobalconfig.class.php =================================================================== --- trunk/src/pfcglobalconfig.class.php 2006-10-04 20:10:12 UTC (rev 821) +++ trunk/src/pfcglobalconfig.class.php 2006-10-06 06:35:09 UTC (rev 822) @@ -87,9 +87,7 @@ var $theme = "default"; var $themepath = ""; - var $themeurl = ""; var $themepath_default = ""; - var $themeurl_default = ""; var $language = ""; // could be something in i18n/* directory ("" means the language is guess from the server config) var $output_encoding = "UTF-8"; // could be ISO-8859-1 or anything else (which must be supported by iconv php module) @@ -364,11 +362,6 @@ // copy the themes into the public directory // $this->errors = array_merge($this->errors, @install_dir($this->themepath_default, $this->data_public_path."/themes")); // $this->errors = array_merge($this->errors, @install_dir($this->themepath, $this->data_public_path."/themes")); - // calculate the corresponding theme url - if ($this->themeurl_default == "") - $this->themeurl_default = relativePath($this->client_script_path, $this->data_public_path."/themes"); - if ($this->themeurl == "") - $this->themeurl = relativePath($this->client_script_path, $this->data_public_path."/themes"); // --- @@ -463,7 +456,7 @@ continue; else if (preg_match("/^([a-z_\-0-9]*(\.gif|\.png))(.*)$/i",$line,$res)) { - $smiley_file = 'smileys/'.$res[1];//$this->getFileUrlFromTheme('smileys/'.$res[1]); + $smiley_file = 'smileys/'.$res[1]; $smiley_str = trim($res[3])."\n"; $smiley_str = str_replace("\n", "", $smiley_str); $smiley_str = str_replace("\t", " ", $smiley_str); @@ -583,18 +576,7 @@ else die(_pfc("Error: '%s' could not be found, please check your themepath '%s' and your theme '%s' are correct", $file, $this->themepath, $this->theme)); } - - function getFileUrlFromTheme($file) - { - if (file_exists($this->themepath."/".$this->theme."/".$file)) - return $this->themeurl."/".$this->theme."/".$file; - else - if (file_exists($this->themepath_default."/default/".$file)) - return $this->themeurl_default."/default/".$file; - else - die(_pfc("Error: '%s' could not be found, please check your themepath '%s' and your theme '%s' are correct", $file, $this->themepath, $this->theme)); - } - + function getFilePathFromTheme($file) { if (file_exists($this->themepath."/".$this->theme."/".$file)) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-10-08 19:02:27
|
Revision: 827 http://svn.sourceforge.net/phpfreechat/?rev=827&view=rev Author: kerphi Date: 2006-10-08 12:02:16 -0700 (Sun, 08 Oct 2006) Log Message: ----------- [en] Add a blink effect to the tab's notifications. [45min] [fr] Ajout d'un effet de clignotement ?\195?\160 la notification des onglets. [45min] Modified Paths: -------------- trunk/src/client/chat.js.tpl.php trunk/src/client/pfcgui.js trunk/src/pfcglobalconfig.class.php trunk/themes/default/style.css Modified: trunk/src/client/chat.js.tpl.php =================================================================== --- trunk/src/client/chat.js.tpl.php 2006-10-07 18:30:07 UTC (rev 826) +++ trunk/src/client/chat.js.tpl.php 2006-10-08 19:02:16 UTC (rev 827) @@ -21,6 +21,8 @@ var pfc_debug = <?php echo $json->encode($debug); ?>; var pfc_btn_sh_smileys = <?php echo $json->encode($btn_sh_smileys); ?>; var pfc_btn_sh_whosonline = <?php echo $json->encode($btn_sh_whosonline); ?>; +var pfc_displaytabimage = <?php echo $json->encode($displaytabimage); ?>; +var pfc_displaytabclosebutton = <?php echo $json->encode($displaytabclosebutton); ?>; var pfc_connect_at_startup = <?php echo $json->encode($connect_at_startup); ?>; var pfc_notify_window = <?php echo $json->encode($notify_window); ?>; var pfc_defaultchan = <?php echo $json->encode($c->channels); ?>; Modified: trunk/src/client/pfcgui.js =================================================================== --- trunk/src/client/pfcgui.js 2006-10-07 18:30:07 UTC (rev 826) +++ trunk/src/client/pfcgui.js 2006-10-08 19:02:16 UTC (rev 827) @@ -8,6 +8,7 @@ initialize: function() { +// this.builder = new pfcGuiBuilder(); this.current_tab = ''; this.current_tab_id = ''; this.tabs = Array(); @@ -210,40 +211,48 @@ li_title.setAttribute('id', 'pfc_channel_title'+tabid); var li_div = document.createElement('div'); + li_div.setAttribute('id', 'pfc_tabdiv'+tabid); li_title.appendChild(li_div); - var img = document.createElement('img'); - img.setAttribute('id', 'pfc_tabimg'+tabid); - if (type == 'ch') - img.setAttribute('src', pfc.res.getFileUrl('images/ch.gif')); - if (type == 'pv') - img.setAttribute('src', pfc.res.getFileUrl('images/pv.gif')); var a1 = document.createElement('a'); - // Element.addClassName(a1, 'pfc_tabtitle'); a1.setAttribute('class', 'pfc_tabtitle'); a1.setAttribute('className', 'pfc_tabtitle'); // for IE6 - a1.appendChild(img); - a1.appendChild(document.createTextNode(name)); a1.setAttribute('href', '#'); a1.pfc_tabid = tabid; a1.onclick = function(){pfc.gui.setTabById(this.pfc_tabid); return false;} li_div.appendChild(a1); + + if (pfc_displaytabimage) + { + var img = document.createElement('img'); + img.setAttribute('id', 'pfc_tabimg'+tabid); + if (type == 'ch') + img.setAttribute('src', pfc.res.getFileUrl('images/ch.gif')); + if (type == 'pv') + img.setAttribute('src', pfc.res.getFileUrl('images/pv.gif')); + a1.appendChild(img); + } - var a2 = document.createElement('a'); - a2.pfc_tabid = tabid; - a2.onclick = function(){ - var res = confirm(pfc.res.getLabel('Do you really want to leave this room ?')); - if (res == true) pfc.sendRequest('/leave', this.pfc_tabid); return false; + // on ajoute le nom du channel + a1.appendChild(document.createTextNode(name)); + + if (pfc_displaytabclosebutton) + { + var a2 = document.createElement('a'); + a2.pfc_tabid = tabid; + a2.onclick = function(){ + var res = confirm(pfc.res.getLabel('Do you really want to leave this room ?')); + if (res == true) pfc.sendRequest('/leave', this.pfc_tabid); return false; + } + a2.alt = pfc.res.getLabel('Close this tab'); + a2.title = a2.alt; + a2.setAttribute('class', 'pfc_tabclose'); + a2.setAttribute('className', 'pfc_tabclose'); // for IE6 + var img = document.createElement('img'); + img.setAttribute('src', pfc.res.getFileUrl('images/tab_remove.gif')); + a2.appendChild(img); + li_div.appendChild(a2); } - a2.alt = pfc.res.getLabel('Close this tab'); - a2.title = a2.alt; - // Element.addClassName(a2, 'pfc_tabclose'); - a2.setAttribute('class', 'pfc_tabclose'); - a2.setAttribute('className', 'pfc_tabclose'); // for IE6 - var img = document.createElement('img'); - img.setAttribute('src', pfc.res.getFileUrl('images/tab_remove.gif')); - a2.appendChild(img); - li_div.appendChild(a2); var div_content = document.createElement('div'); div_content.setAttribute('id', 'pfc_channel_content'+tabid); @@ -291,6 +300,8 @@ { var tabpos = indexOf(this.tabids, tabid); var tabtype = this.tabtypes[tabpos]; + + // handle the tab's image modification var img = $('pfc_tabimg'+tabid); if (img) { @@ -299,6 +310,24 @@ if (tabtype == 'pv') img.src = pfc.res.getFileUrl('images/pv-active.gif'); } + + // handle the blicking effect + var div = $('pfc_tabdiv'+tabid); + if (div) + { + if (div.blinkstat == true) + { + div.setAttribute('class', 'pfc_tabblink1'); + div.setAttribute('className', 'pfc_tabblink1'); // for IE6 + } + else + { + div.setAttribute('class', 'pfc_tabblink2'); + div.setAttribute('className', 'pfc_tabblink2'); // for IE6 + } + div.blinkstat = !div.blinkstat; + div.blinktimeout = setTimeout('pfc.gui.notifyTab(\''+tabid+'\');', 500); + } }, /** @@ -308,6 +337,8 @@ { var tabpos = indexOf(this.tabids, tabid); var tabtype = this.tabtypes[tabpos]; + + // restore the tab's image var img = $('pfc_tabimg'+tabid); if (img) { @@ -316,6 +347,15 @@ if (tabtype == 'pv') img.src = pfc.res.getFileUrl('images/pv.gif'); } + + // stop the blinking effect + var div = $('pfc_tabdiv'+tabid); + if (div) + { + div.removeAttribute('class'); + div.removeAttribute('className'); // for IE6 + clearTimeout(div.blinktimeout); + } }, loadSmileyBox: function() Modified: trunk/src/pfcglobalconfig.class.php =================================================================== --- trunk/src/pfcglobalconfig.class.php 2006-10-07 18:30:07 UTC (rev 826) +++ trunk/src/pfcglobalconfig.class.php 2006-10-08 19:02:16 UTC (rev 827) @@ -78,6 +78,8 @@ var $openlinknewwindow = true; // used to open the links in a new window var $notify_window = true; // true : appends a prefix to the window title with the number of new posted messages + var $displaytabimage = true; + var $displaytabclosebutton = true; var $showwhosonline = true; var $showsmileys = true; var $btn_sh_whosonline = true; // display show/hide button for who is online Modified: trunk/themes/default/style.css =================================================================== --- trunk/themes/default/style.css 2006-10-07 18:30:07 UTC (rev 826) +++ trunk/themes/default/style.css 2006-10-08 19:02:16 UTC (rev 827) @@ -81,6 +81,10 @@ margin-left: 4px; cursor: pointer; } +/* blinking stuff (tab notifications) */ +ul#pfc_channels_list li div.pfc_tabblink2 { + background-color: #FFF; +} div.pfc_chat { @@ -105,10 +109,11 @@ /* height: 100%;*/ color: #000; /* colors can be overriden by js nickname colorization */ background-color: #FFF; + + /* borders are drawn by this image background */ background-image: url("proxy.php?p=default/images/online-separator.gif"); background-position: left; background-repeat: repeat-y; - /* borders are drawn by the javascript routines */ } div.pfc_online ul { list-style-type: none; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-10-16 14:46:36
|
Revision: 828 http://svn.sourceforge.net/phpfreechat/?rev=828&view=rev Author: kerphi Date: 2006-10-16 07:46:26 -0700 (Mon, 16 Oct 2006) Log Message: ----------- [en] Add pfcCommand::trace(...) function used for debug [30min] [fr] Ajout de la fonction pfcCommand::trace(...) utilis?\195?\169e pour le debug [30min] Modified Paths: -------------- trunk/src/client/chat.js.tpl.php trunk/src/pfccommand.class.php trunk/themes/default/style.css Modified: trunk/src/client/chat.js.tpl.php =================================================================== --- trunk/src/client/chat.js.tpl.php 2006-10-08 19:02:16 UTC (rev 827) +++ trunk/src/client/chat.js.tpl.php 2006-10-16 14:46:26 UTC (rev 828) @@ -160,6 +160,6 @@ color = '#DDD'; pfc_debug_color = true; } - $('pfc_debug').innerHTML += '<p style="margin:0;border-bottom:1px solid #555;background-color:'+color+'">' + text + '</p>'; + $('pfc_debug').innerHTML = '<p style="margin:0;border-bottom:1px solid #555;background-color:'+color+'">' + text + '</p>' + $('pfc_debug').innerHTML ; } <?php } ?> Modified: trunk/src/pfccommand.class.php =================================================================== --- trunk/src/pfccommand.class.php 2006-10-08 19:02:16 UTC (rev 827) +++ trunk/src/pfccommand.class.php 2006-10-16 14:46:26 UTC (rev 828) @@ -131,7 +131,7 @@ { die(_pfc("%s must be implemented", get_class($this)."::".__FUNCTION__)); } - + /** * Force whois reloading */ @@ -172,8 +172,21 @@ } } } + + function trace(&$xml_reponse, $msg, $data = NULL) + { + if ($data != NULL) + { + require_once(dirname(__FILE__)."/../lib/json/JSON.php"); + $json = new Services_JSON(); + $js = $json->encode($data); + $xml_reponse->addScript("trace('".$msg." -> ".$js."');"); + } + else + $xml_reponse->addScript("trace('".$msg."');"); + + } - } ?> Modified: trunk/themes/default/style.css =================================================================== --- trunk/themes/default/style.css 2006-10-08 19:02:16 UTC (rev 827) +++ trunk/themes/default/style.css 2006-10-16 14:46:26 UTC (rev 828) @@ -338,4 +338,8 @@ img.pfc_nickbutton { cursor: pointer; +} + +div#pfc_debug { + font-size: 11px; } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-10-16 17:44:35
|
Revision: 831 http://svn.sourceforge.net/phpfreechat/?rev=831&view=rev Author: kerphi Date: 2006-10-16 10:25:46 -0700 (Mon, 16 Oct 2006) Log Message: ----------- [en] New zilveer theme. I added a new CSS class to the default pfcclient.js which make possible to style odd and even messages : pfc_oddmsg and pfc_evenmsg (thanks to zilveer) [40min] [fr] Nouveau theme zilveer. J'ai ?\195?\169galment ajout?\195?\169 deux nouvelles classes CSS rendant possible le stylage des messages paires et impaires : pfc_oddmsg et pfc_evenmsg (merci ?\195?\160 zilveer) [40min] Modified Paths: -------------- trunk/demo/index.php trunk/src/client/pfcclient.js Added Paths: ----------- trunk/demo/demo51_zilveer_theme.php trunk/themes/zilveer/ trunk/themes/zilveer/images/ trunk/themes/zilveer/images/channels_content_bg.png trunk/themes/zilveer/images/newmsg.png trunk/themes/zilveer/images/oldmsg.png trunk/themes/zilveer/images/pfc_message1.png trunk/themes/zilveer/images/pfc_message2.png trunk/themes/zilveer/images/pfc_online.png trunk/themes/zilveer/images/pfc_send.png trunk/themes/zilveer/images/pfc_words.png trunk/themes/zilveer/images/tab_off.png trunk/themes/zilveer/images/tab_on.png trunk/themes/zilveer/images/tab_remove.gif trunk/themes/zilveer/images/user-me.gif trunk/themes/zilveer/images/user.gif trunk/themes/zilveer/info.php trunk/themes/zilveer/readme.txt trunk/themes/zilveer/style.css Added: trunk/demo/demo51_zilveer_theme.php =================================================================== --- trunk/demo/demo51_zilveer_theme.php (rev 0) +++ trunk/demo/demo51_zilveer_theme.php 2006-10-16 17:25:46 UTC (rev 831) @@ -0,0 +1,38 @@ +<?php + +require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; + +$params["serverid"] = md5(__FILE__); // calculate a unique id for this chat +$params["title"] = "A chat with a customized theme (zilveer theme)"; +$params["nick"] = "guest".rand(1,1000); // setup the intitial nickname +$params["theme"] = "zilveer"; +$chat = new phpFreeChat( $params ); + +?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html> + <head> + <meta http-equiv="content-type" content="text/html; charset=utf-8" /> + <title>phpFreeChat demo</title> + + <?php $chat->printJavascript(); ?> + <?php $chat->printStyle(); ?> + + </head> + + <body> + <?php $chat->printChat(); ?> + +<?php + // print the current file + echo "<h2>The source code</h2>"; + $filename = __FILE__; + echo "<p><code>".$filename."</code></p>"; + echo "<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">"; + $content = file_get_contents($filename); + echo htmlentities($content); + echo "</pre>"; +?> + + </body> +</html> \ No newline at end of file Modified: trunk/demo/index.php =================================================================== --- trunk/demo/index.php 2006-10-16 15:17:57 UTC (rev 830) +++ trunk/demo/index.php 2006-10-16 17:25:46 UTC (rev 831) @@ -88,6 +88,7 @@ <li><a href="demo28_mini_blune_theme.php">demo28 - use a customized theme (blune theme) - mini</a></li> <li><a href="demo44_green_theme.php">demo44 - use a customized theme (green)</a></li> <li><a href="demo49_msn_smiley_theme.php">demo49 - A chat with a customized smiley theme (msn theme)</a></li> + <li><a href="demo51_zilveer_theme.php">demo51 - A chat with a customized theme (zilveer theme)</a></li> </ul> <h2 id="demo-translations">Translations</h2> Modified: trunk/src/client/pfcclient.js =================================================================== --- trunk/src/client/pfcclient.js 2006-10-16 15:17:57 UTC (rev 830) +++ trunk/src/client/pfcclient.js 2006-10-16 17:25:46 UTC (rev 831) @@ -759,6 +759,7 @@ // format and post message var line = ''; line += '<div id="pfc_msg'+ id +'" class="pfc_cmd_'+ cmd +' pfc_message'; + line += (id % 2 == 0) ? ' pfc_evenmsg' : ' pfc_oddmsg'; if (oldmsg == 1) line += ' pfc_oldmsg'; line += '">'; line += '<span class="pfc_date'; Added: trunk/themes/zilveer/images/channels_content_bg.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/channels_content_bg.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/newmsg.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/newmsg.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/oldmsg.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/oldmsg.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/pfc_message1.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/pfc_message1.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/pfc_message2.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/pfc_message2.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/pfc_online.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/pfc_online.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/pfc_send.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/pfc_send.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/pfc_words.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/pfc_words.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/tab_off.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/tab_off.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/tab_on.png =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/tab_on.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/tab_remove.gif =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/tab_remove.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/user-me.gif =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/user-me.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/images/user.gif =================================================================== (Binary files differ) Property changes on: trunk/themes/zilveer/images/user.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/zilveer/info.php =================================================================== --- trunk/themes/zilveer/info.php (rev 0) +++ trunk/themes/zilveer/info.php 2006-10-16 17:25:46 UTC (rev 831) @@ -0,0 +1,6 @@ +<?php +$aka = ""zilveer; +$author = "Name: Isa Acar"; +$date = "10th Oct-2006"; +$mail = "zi...@gm..."; +?> \ No newline at end of file Added: trunk/themes/zilveer/readme.txt =================================================================== --- trunk/themes/zilveer/readme.txt (rev 0) +++ trunk/themes/zilveer/readme.txt 2006-10-16 17:25:46 UTC (rev 831) @@ -0,0 +1,44 @@ +Hi, + +the only changes I have made is that I have added this line in file pfcclient.js. +------------------ +line += (id % 2 == 0) ? '<div class=pfc_message1>' : '<div class=pfc_message2>'; + +--------------------- + +it is in the foor-loop in function "handleComingRequest: function( cmds )" at line 738. + +mine is looking like this: +----------------- + + handleComingRequest: function( cmds ) + { + var msg_html = $H(); + + //alert(cmds.inspect()); + + // var html = ''; + for(var mid = 0; mid < cmds.length ; mid++) + { + var id = cmds[mid][0]; + var date = cmds[mid][1]; + var time = cmds[mid][2]; + var sender = cmds[mid][3]; + var recipientid = cmds[mid][4]; + var cmd = cmds[mid][5]; + var param = cmds[mid][6]; + var fromtoday = cmds[mid][7]; + var oldmsg = cmds[mid][8]; + + // format and post message + + var line = ''; + + //CSS-zilveer + + line += (id % 2 == 0) ? '<div class=pfc_message1>' : '<div class=pfc_message2>'; +------------ +i will also include this file. + + +/regards, Isa Acar (zilveer), send me a mail if you have any questions: zi...@gm... Added: trunk/themes/zilveer/style.css =================================================================== --- trunk/themes/zilveer/style.css (rev 0) +++ trunk/themes/zilveer/style.css 2006-10-16 17:25:46 UTC (rev 831) @@ -0,0 +1,380 @@ +div#pfc_container * { + border: 0px; + margin: 0px; + padding: 0px; + +} + +div#pfc_container { + border: 1px solid #555; + color: #000; + padding: 10px; + min-height: 20px; + background-color: #FFF; + background-image: url("proxy.php?p=default/images/background.gif"); + background-position: right; +/* background-repeat: repeat-xy;*/ + font: 12px Trebuchet MS, Sans-Serif; /* without this rule, the tabs are not correctly display on FF */ + width: 640px; +} + +#pfc_minmax { + cursor: pointer; +} +/*bg of smilies and buttons*/ +div#pfc_content_expandable { + margin-top: 0.2em; + +} + +/*bg of the chat-messages*/ +div#pfc_channels_content { + z-index: 20; + position: relative; + + border-right: 2px solid #555; + border-left: 1px solid #555; + border-bottom: 2px solid #555; + background-color: #FFF; + margin-top: 5px; + + background-image: url("proxy.php?p=zilveer/images/channels_content_bg.png"); + width: 640px; +} +div.pfc_content { + +} + +/* channels tab-panes */ +ul#pfc_channels_list { + list-style-type: none; + display: block; + z-index: 50; + border-bottom: 1px solid #555; + margin-bottom: -5px; +} +ul#pfc_channels_list li { + display: inline; + margin-left: 5px; +} +/*tab-channel OFF*/ +ul#pfc_channels_list li div { + display: inline; + padding: 0 4px 0 4px; + border: 1px solid #555; + background-color: #DDD; + background-image: url("proxy.php?p=zilveer/images/tab_off.png"); + font-size: 11px; + font-weight: bold; + +/*these 2 lines below is to make the tabs looks the same in IE and FF */ + padding-bottom: 6px; + line-height: 26px; +} +/*tab-channel ON*/ +ul#pfc_channels_list li.selected div { + background-color: #FFF; + color: #000; + font-weight: bold; + font-size: 11px; + background-image: url("proxy.php?p=zilveer/images/tab_on.png"); + +/*these 2 lines below is to make the tabs looks the same in IE and FF */ + PADDING-BOTTOM: 6px; + line-height: 26px; +} +ul#pfc_channels_list li > div:hover { + background-color: #FFF; +} +/*tab-channel text*/ +ul#pfc_channels_list li a { + color: #333 ; + text-decoration: none; +} +ul#pfc_channels_list li a.pfc_tabtitle { + cursor: pointer; +} +ul#pfc_channels_list li a.pfc_tabtitle img { + padding-right: 4px; +} +ul#pfc_channels_list li a.pfc_tabclose { + margin-left: 4px; + cursor: pointer; +} + +/*where should the newmsg- and oldmsg pictures be placed? decide it here*/ +div.pfc_chat { + z-index: 100; + position: absolute; + top: 0px; + left: 3px; + right: 0px; + bottom: 3px; + width: 467px; +/* WARNING: do not fix height in % because it will display blank screens on IE6 */ +/* height: 100%;*/ + overflow: auto; +} + +/*usernames-onlinelist*/ +div.pfc_online { + position: absolute; + right: 0px; + top: 0px; + padding: 0px; + overflow: auto; + width: 171px; + border-bottom: 1px solid #555; +/* WARNING: do not fix height in % because it will display blank screens on IE6 */ +/* height: 100%;*/ + color: #000; /* colors can be overriden by js nickname colorization */ + background-color: #FFF; + background-image: url("proxy.php?p=zilveer/images/pfc_online.png"); + background-position: left; + background-repeat: repeat-y; + /* borders are drawn by the javascript routines */ +} +div.pfc_online ul { + list-style-type: none; + margin: 0px; + padding: 0px; + margin-left: 8px; + margin-right: 8px; +} +div.pfc_online li { + font-weight: bold; + font-size: 12px; + cursor: pointer; + /* bottom borders are drawn by the javascript routines */ +} + +h2#pfc_title { + font-size: 110%; +} + +img#pfc_minmax { + float: right; +} + +.pfc_invisible { + display: none; +} + +.pfc_oddmsg { + background-color: #fff; + color: #000; + background-image: url("proxy.php?p=zilveer/images/pfc_message1.png"); +} +.pfc_evenmsg { + background-color: #ccc; + color: #000; + background-image: url("proxy.php?p=zilveer/images/pfc_message2.png"); +} + +div.pfc_message { + background-image: url("proxy.php?p=zilveer/images/newmsg.png"); + background-position: right; + background-repeat: no-repeat; +} + +div.pfc_oldmsg { + background-image: url("proxy.php?p=zilveer/images/oldmsg.png"); + background-position: right; + background-repeat: no-repeat; +} + +span.pfc_heure, span.pfc_date { + color: #333; + font-size: 90%; +} + +span.pfc_nick { + color: #fbac17; + font-weight: bold; + cursor:pointer; +} + +div#pfc_input_container { + margin-top: 5px; + font-size: 12px; +} + +input#pfc_words { + border: 0px; + background-color: #FAFAFA; + width: 520px; + padding: 4px 5px 0px 5px; /*top right bottom left*/ + font-size: 12px; + height: 20Px; + vertical-align: bottom; + background-image: url("proxy.php?p=zilveer/images/pfc_words.png"); + font: 12px Trebuchet MS; + +} + +input#pfc_send { + display: block; + margin-left: 5px; + padding-top: 2px; + width: 100px; + border: 0px; + background-color: #ccc; + font: 12px Trebuchet MS; + color: #333; + height: 24px; + cursor: pointer; + background-image: url("proxy.php?p=zilveer/images/pfc_send.png"); + cursor: pointer; +} + + + +div#pfc_cmd_container { + position: relative; + margin-top: 5px; + margin-bottom: 5px; + width: 100%; +} +div#pfc_cmd_container * { + margin-right: 2px; +} + +p#pfc_handle { + display: inline; + cursor: pointer; + border: 1px solid #555; + padding: 2px 10px 2px 10px; + color: black; + margin-bottom: 5px; + font-weight: bold; + background-color: #EEE; + font-size: 70%; /* these two line fix a display problem in IE6 : */ + vertical-align: middle; /* the nickname box bottom border is hidden without these lines */ + +} + +a#pfc_logo { + position: absolute; + right: 0px; + top: 0px; +} + +div.pfc_btn { + display: inline; + cursor: pointer; +} +div.pfc_btn img { + /* doesn't work */ + /* border: 1px solid #393;*/ /* same as container color */ +} +div.pfc_btn img:hover { + /* doesn't work */ + /* border: 1px solid #000;*/ +} + +div#pfc_bbcode_container * { + margin-right: 2px; +} + +div#pfc_errors { + display: none; + padding: 5px; + border: 1px solid #555; + color: #EC4B0F; + background-color: #FFBB77; + font-style: italic; + font-family: monospace; + font-size: 90%; +} + +/* commands */ +.pfc_cmd_msg { + color: black; +} +.pfc_cmd_me { + font-style: italic; + color: black; +} +/*notice messages, login,logout,timed out etc..*/ +.pfc_cmd_notice { + font-style: italic; + color: #333; +} + +/* commands info */ +.pfc_info { + color: #fefefe; + + /* to fix IE6 display bug */ + /* http://sourceforge.net/tracker/index.php?func=detail&aid=1545403&group_id=158880&atid=809601 */ + font-family: sans-serif; /* do NOT setup monospace font or it will not work in IE6 */ + font-style: italic; + background-color: #EEE; + font-size: 80%; +} + + +div#pfc_colorlist { + display: none; +} +img.pfc_color { + padding: 1px; + cursor: pointer; +} + +.pfc_nickmarker { + white-space: pre; + +} + +div#pfc_smileys { + display: none; /* will be shown by javascript routines */ + background-color: #FFF; + border: 1px solid #555; + padding: 4px; + margin-top: 4px; +} +div#pfc_smileys * { + margin-right: 2px; +} + +div#pfc_smileys img { + cursor: pointer; +} + + + +div.pfc_nickwhois * { padding: 0; margin: 0; } +div.pfc_nickwhois a img { border: none; } +div.pfc_nickwhois { + border: 1px solid #444; + background-color: #FFF; + font-size: 75%; +} +div.pfc_nickwhois ul { + list-style-type: none; + background-color: #EEE; + border-bottom: 1px solid #444; +} +div.pfc_nickwhois li { + display: inline; + margin-right: 4px; + padding: 2px; +} +td.pfc_nickwhois_c1 { + font-weight: bold; +} +li.pfc_nickwhois_pv { + padding-left: 2px; + border-left: 1px solid #444; +} +li.pfc_nickwhois_pv a { + text-decoration: none; +} + +ul.pfc_nicklist span.pfc_nickmarker { +} + +img.pfc_nickbutton { + cursor: pointer; +} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-11-13 17:36:40
|
Revision: 870 http://svn.sourceforge.net/phpfreechat/?rev=870&view=rev Author: kerphi Date: 2006-11-13 09:36:30 -0800 (Mon, 13 Nov 2006) Log Message: ----------- New bangla translation (work in progress) Modified Paths: -------------- trunk/demo/index.php Added Paths: ----------- trunk/demo/demo52_in_bangla.php trunk/i18n/bn_BD/ trunk/i18n/bn_BD/main.php Added: trunk/demo/demo52_in_bangla.php =================================================================== --- trunk/demo/demo52_in_bangla.php (rev 0) +++ trunk/demo/demo52_in_bangla.php 2006-11-13 17:36:30 UTC (rev 870) @@ -0,0 +1,36 @@ +<?php + +require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; + +$params["serverid"] = md5(__FILE__); // calculate a unique id for this chat +$params["language"] = "bn_BD"; +$chat = new phpFreeChat( $params ); + +?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html> + <head> + <meta http-equiv="content-type" content="text/html; charset=utf-8" /> + <title>phpFreeChat demo</title> + + <?php $chat->printJavascript(); ?> + <?php $chat->printStyle(); ?> + + </head> + + <body> + <?php $chat->printChat(); ?> + +<?php + // print the current file + echo "<h2>The source code</h2>"; + $filename = __FILE__; + echo "<p><code>".$filename."</code></p>"; + echo "<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">"; + $content = file_get_contents($filename); + echo htmlentities($content); + echo "</pre>"; +?> + + </body> +</html> Modified: trunk/demo/index.php =================================================================== --- trunk/demo/index.php 2006-11-05 18:28:56 UTC (rev 869) +++ trunk/demo/index.php 2006-11-13 17:36:30 UTC (rev 870) @@ -118,6 +118,7 @@ <li><a href="demo45_in_bulgarian.php">demo45 - the Bulgarian translation of the chat</a></li> <li><a href="demo46_in_hungarian.php">demo46 - the Hungarian translation of the chat</a></li> <li><a href="demo47_in_polish.php">demo47 - the Polish translation of the chat</a></li> + <li><a href="demo52_in_bangla.php">demo52 - the Bangla translation of the chat</a></li> </ul> </div> Added: trunk/i18n/bn_BD/main.php =================================================================== --- trunk/i18n/bn_BD/main.php (rev 0) +++ trunk/i18n/bn_BD/main.php 2006-11-13 17:36:30 UTC (rev 870) @@ -0,0 +1,31 @@ +<?php +/** + * i18n/bn_BD/main.php + * + * Copyright \xA9 2006 Stephane Gully + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301 USA + */ + +/** + * Bangla translation of the messages (utf8 encoded!) + * + * @author Shuvro Prakash Paul + */ + + + +?> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-11-13 17:43:29
|
Revision: 871 http://svn.sourceforge.net/phpfreechat/?rev=871&view=rev Author: kerphi Date: 2006-11-13 09:43:16 -0800 (Mon, 13 Nov 2006) Log Message: ----------- New Armenian translation (work in progress) Modified Paths: -------------- trunk/demo/demo52_in_bangla.php trunk/demo/index.php Added Paths: ----------- trunk/demo/demo53_in_armenian.php trunk/i18n/hy_AM/ trunk/i18n/hy_AM/main.php Modified: trunk/demo/demo52_in_bangla.php =================================================================== --- trunk/demo/demo52_in_bangla.php 2006-11-13 17:36:30 UTC (rev 870) +++ trunk/demo/demo52_in_bangla.php 2006-11-13 17:43:16 UTC (rev 871) @@ -1,4 +1,4 @@ -<?php +<?php require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; Added: trunk/demo/demo53_in_armenian.php =================================================================== --- trunk/demo/demo53_in_armenian.php (rev 0) +++ trunk/demo/demo53_in_armenian.php 2006-11-13 17:43:16 UTC (rev 871) @@ -0,0 +1,36 @@ +<?php + +require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; + +$params["serverid"] = md5(__FILE__); // calculate a unique id for this chat +$params["language"] = "hy_AM"; +$chat = new phpFreeChat( $params ); + +?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html> + <head> + <meta http-equiv="content-type" content="text/html; charset=utf-8" /> + <title>phpFreeChat demo</title> + + <?php $chat->printJavascript(); ?> + <?php $chat->printStyle(); ?> + + </head> + + <body> + <?php $chat->printChat(); ?> + +<?php + // print the current file + echo "<h2>The source code</h2>"; + $filename = __FILE__; + echo "<p><code>".$filename."</code></p>"; + echo "<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">"; + $content = file_get_contents($filename); + echo htmlentities($content); + echo "</pre>"; +?> + + </body> +</html> Modified: trunk/demo/index.php =================================================================== --- trunk/demo/index.php 2006-11-13 17:36:30 UTC (rev 870) +++ trunk/demo/index.php 2006-11-13 17:43:16 UTC (rev 871) @@ -119,6 +119,7 @@ <li><a href="demo46_in_hungarian.php">demo46 - the Hungarian translation of the chat</a></li> <li><a href="demo47_in_polish.php">demo47 - the Polish translation of the chat</a></li> <li><a href="demo52_in_bangla.php">demo52 - the Bangla translation of the chat</a></li> + <li><a href="demo53_in_armenian.php">demo53 - the Armenian translation of the chat</a></li> </ul> </div> Added: trunk/i18n/hy_AM/main.php =================================================================== --- trunk/i18n/hy_AM/main.php (rev 0) +++ trunk/i18n/hy_AM/main.php 2006-11-13 17:43:16 UTC (rev 871) @@ -0,0 +1,311 @@ +<?php +/** + * i18n/hy_AM/main.php + * + * Copyright © 2006 Stephane Gully + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301 USA + */ + +/** + * Armenian translation of the messages (utf8 encoded!) + * + * @author Shadowed + */ + +$GLOBALS["i18n"]["My Chat"] = "Իմ չատը"; + +// line 201 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s not found, %s library can't be found."] = "%s գոյություն չունի, %s գրադարանը բացակայում է"; + +// line 355 in phpfreechat.class.php +$GLOBALS["i18n"]["Please enter your nickname"] = "Խնդրում ենք ներմուծել Ձեր ծածկանունը"; + +// line 565 in phpfreechat.class.php +$GLOBALS["i18n"]["Text cannot be empty"] = "Տեքստը չի կարող դատարկ լինել"; + +// line 392 in phpfreechat.class.php +$GLOBALS["i18n"]["%s changes his nickname to %s"] = "%s անունով անձը փոխեց իր ծածկանունը %s -ի"; + +// line 398 in phpfreechat.class.php +$GLOBALS["i18n"]["%s is connected"] = "%s անունով անձը ցանցում է"; + +// line 452 in phpfreechat.class.php +$GLOBALS["i18n"]["%s quit"] = "%s անունով անձը հեռացավ"; + +// line 468 in phpfreechat.class.php +$GLOBALS["i18n"]["%s disconnected (timeout)"] = "%s անունով անձը դուրս ընկավ (timeout)"; + +// line 262 in phpfreechat.class.php +$GLOBALS["i18n"]["Unknown command [%s]"] = "Անհայտ հրաման [%s]"; + +// line 149 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist: %s"] = "%s գոյություն չունի` %s"; + +// line 180 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["You need %s"] = "Ձեզ անհրաժեշտ է %s"; + +// line 241 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist, %s library can't be found"] = "%s գոյություն չունի, %s գրադարանը բացակայում է"; + +// line 280 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist"] = "%s գոյություն չունի"; + +// line 433 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s directory must be specified"] = "%s ուղին պետք է սահմանված լինի"; + +// line 439 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s must be a directory"] = "%s -ը պետք է ուղի հանդիսանա"; + +// line 446 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s can't be created"] = "%s -ը անհնար է ստեղծել"; + +// line 451 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not writeable"] = "%s -ը հասանելի չէ գրելու համար"; + +// line 496 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not readable"] = "%s -ը հասանելի չէ կարդալու համար"; + +// line 469 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not a file"] = "%s -ը ֆայլ չի հանդիսանում"; + +// line 491 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not a directory"] = "%s -ը ուղի չի հանդիսանում"; + +// line 23 in chat.html.tpl.php +$GLOBALS["i18n"]["PHP FREE CHAT [powered by phpFreeChat-%s]"] = " "; + +// line 296 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Hide nickname marker"] = "Թաքցնել ծածկանունների գույները"; + +// line 304 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Show nickname marker"] = "Ցույց տալ ծածկանունների գույները"; + +// line 389 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Disconnect"] = "Անջատվել"; + +// line 395 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Connect"] = "Միանալ"; + +// line 427 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Magnify"] = "Բացել"; + +// line 434 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Cut down"] = "Փակել"; + +// line 345 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Hide dates and hours"] = "Թաքցնել ամսաթվերն ու ժամերը"; + +// line 353 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Show dates and hours"] = "Ցույց տալ ամսաթվերն ու ժամերը"; + +// line 21 in chat.html.tpl.php +$GLOBALS["i18n"]["Enter your message here"] = "Ներմուծեք Ձեր հաղորդագրությունն այստեղ"; + +// line 24 in chat.html.tpl.php +$GLOBALS["i18n"]["Enter your nickname here"] = "Ներմուծեք Ձեր ծածկանունն այստեղ"; + +// line 93 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["Error: undefined or obsolete parameter '%s', please correct or remove this parameter"] = "Սխալ` չսահմանված կամ հնացած պարամետր '%s', խնդրում ենք ուղղել կամ ջնջել այդ պարամետրը"; + +// line 86 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Hide smiley box"] = "Թաքցնել ժպտիկների բլոկը"; + +// line 87 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Show smiley box"] = "Ցույց տալ ժպտիկների բլոկը"; + +// line 88 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Hide online users box"] = "Թաքցնել ներկաների բլոկը"; + +// line 89 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Show online users box"] = "Ցույց տալ ներկաների բլոկը"; + +// line 33 in chat.html.tpl.php +$GLOBALS["i18n"]["Bold"] = "Հաստ"; + +// line 34 in chat.html.tpl.php +$GLOBALS["i18n"]["Italics"] = "Շեղ"; + +// line 35 in chat.html.tpl.php +$GLOBALS["i18n"]["Underline"] = "Ընդգծված"; + +// line 36 in chat.html.tpl.php +$GLOBALS["i18n"]["Delete"] = "Ջնջել"; + +// line 37 in chat.html.tpl.php +$GLOBALS["i18n"]["Pre"] = "Պրե"; + +// line 38 in chat.html.tpl.php +$GLOBALS["i18n"]["Mail"] = "Փոստ"; + +// line 39 in chat.html.tpl.php +$GLOBALS["i18n"]["Color"] = "Գույն"; + +// line 48 in phpfreechattemplate.class.php +$GLOBALS["i18n"]["%s template could not be found"] = "%s շաբլոնը բացակայում է"; + +// line 324 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'serverid' parameter is mandatory by default use 'md5(__FILE__)' value"] = "'serverid' պարամետրը պարտադիր է, ընդհանուր դեպքում օգտագործեք 'md5(__FILE__)' արժեքը"; + +// line 512 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["Error: '%s' could not be found, please check your themepath '%s' and your theme '%s' are correct"] = "Սխալ` '%s'-ը բացակայում է, խնդրում ենք ստուգել '%s' թեմայի ուղին և '%s' թեման"; + +// line 75 in pfccommand.class.php +$GLOBALS["i18n"]["%s must be implemented"] = "%s -ը պետք է իրականացված լինի"; + +// line 343 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter is mandatory by default use '%s' value"] = "'%s' պարամետրը պարտադիր է, ընդհանուր դեպքում օգտագործեք '%s' արժեքը"; + +// line 378 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a positive number"] = "'%s' պարամետրը պետք է դրական թիվ լինի"; + +// line 386 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter is not valid. Available values are : '%s'"] = "'%s' պարամետրը չի համապատասխանում: Թույլատրելի արժեքներն են` '%s'"; + +// line 186 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["My room"] = "Իմ սենյակը"; + +// line 19 in unban.class.php +$GLOBALS["i18n"]["Missing parameter"] = "Պարամետրը բացակայում է"; + +// line 38 in ban.class.php +$GLOBALS["i18n"]["banished from %s by %s"] = "բան եղավ %s-ից %s-ի կողմից"; + +// line 23 in banlist.class.php +$GLOBALS["i18n"]["The banished user's id list is:"] = "Բան եղած անձանց ցուցակը`"; + +// line 32 in banlist.class.php +$GLOBALS["i18n"]["Empty"] = "Դատարկ է"; + +// line 34 in banlist.class.php +$GLOBALS["i18n"]["'/unban {id}' will unban the user identified by {id}"] = "'/unban {id}' հրամանը չբան կանի {id} ունեցող անձին"; + +// line 35 in banlist.class.php +$GLOBALS["i18n"]["'/unban all' will unban all the users on this channel"] = "'/unban all' հրամանը չբան կանի սենյակում գտնվող բոլոր անձանց"; + +// line 24 in update.class.php +$GLOBALS["i18n"]["%s quit (timeout)"] = "%s անունով անձը հեռացավ (timeout)"; + +// line 46 in join.class.php +$GLOBALS["i18n"]["%s joins %s"] = "%s անունով անձը մտնում է %s"; + +// line 31 in kick.class.php +$GLOBALS["i18n"]["kicked from %s by %s"] = "%s անունով անձը քացի կերավ %s-ի կողմից"; + +// line 38 in send.class.php +$GLOBALS["i18n"]["Can't send the message, %s is offline"] = "Անհնար է ուղարկել հաղորդագրությունը, %s անունով անձը միացած չէ"; + +// line 27 in unban.class.php +$GLOBALS["i18n"]["Nobody has been unbanished"] = "Ոչ ոք չբան չեղավ"; + +// line 42 in unban.class.php +$GLOBALS["i18n"]["%s has been unbanished"] = "%s անունով անձը չբան եղավ"; + +// line 49 in unban.class.php +$GLOBALS["i18n"]["%s users have been unbanished"] = "%s անձինք չբան եղան"; + +// line 47 in auth.class.php +$GLOBALS["i18n"]["You are not allowed to run '%s' command"] = "Ձեզ չի թույլատրվում աշխատացնել '%s' հրամանը"; + +// line 66 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because you are banished"] = "Անհնար է մտնել %s, քանի որ Դուք բան եք եղած"; + +// line 76 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because the channels list is restricted"] = "Անհնար է մտնել %s, քանի որ սենյակների ցանկը սահմանափակ է"; + +// line 89 in auth.class.php +$GLOBALS["i18n"]["You are not allowed to change your nickname"] = "Ձեզ չի թույլատրվում փոխել ծածկանունը"; + +// line 56 in noflood.class.php +$GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = "Խնդրում ենք չուղարկել այդքան շատ հաղորդագրություններ, հեղեղը չի ներվում"; + +// line 109 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Private message"] = "Անձնական հաղորդագրություն"; + +// line 110 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Close this tab"] = "Փակել այս ներդիրը"; + +// line 199 in pfcgui.js.tpl.php +$GLOBALS["i18n"]["Do you really want to leave this room ?"] = "Իսկապես ցանկանում եք հեռանա՞լ այս սենյակից"; + + +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = "Սխալ` '%s'-ը անձնական պարամետր է, Ձեզ չի թույլատրվում այն փոխել"; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = "'%s' պարամետրը պետք է զանգված լինի"; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = "'%s' պարամետրը պետք է բուլյան լինի"; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = "'%s' պարամետրը պետք է սիմվոլային տող լինի"; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = "'%s'-ը պետք է գրվելի լինի"; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = "'%s' ուղին գոյություն չունի"; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = "Խնդրում ենք ուղղել այս սխալները"; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = "Սխալ` պահված պարամետրերի ֆայլը գոյություն չունի"; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = "Սխալ` չատն անհնար է բեռնավորել! Հնարավոր է երկու պատճառ` Ձեր բրոուզերը javascript չի ապահովում, կամ Դուք սխալ եք նշել սերվերի ուղիների հասանելիության իրավունքները. մի երկմտեք և խնդրեք օգնություն ֆորումում"; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = "Ահա հրամանների ցանկը`"; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = "Ճանաչումը բարեհաջող է"; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = "Ձեզ չհաջողվեց ճանաչել"; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = "Հաղորդագրություն ուղարկելու համար Դուք պետք է միացած լինեք"; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = "Սեղմեք այստեղ հաղորդագրությունն ուղարկելու համար"; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = "Ներմուծեք ֆորմատի ենթակա տեքստը"; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = "Փոփոխությունները վերաբեռնավորվեցին"; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = "Վերաբեռնավորման ընթացքում սխալ տեղի ունեցավ"; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = "Ընտրված ծածկանունն արդեն զբաղված է"; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = "phpfreechat-ի ներկա տարբերակը` %s"; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = "Մտած սենյակների քանակը հասել է առավելագույնին"; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = "Անձնական խոսակցությունների քանակը հասել է առավելագույնին"; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = "Ասել"; + +?> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-11-13 21:35:45
|
Revision: 872 http://svn.sourceforge.net/phpfreechat/?rev=872&view=rev Author: kerphi Date: 2006-11-13 13:35:31 -0800 (Mon, 13 Nov 2006) Log Message: ----------- new translations areminian and bangla Modified Paths: -------------- trunk/demo/demo52_in_bangla.php trunk/demo/demo53_in_armenian.php trunk/i18n/bn_BD/main.php trunk/i18n/hy_AM/main.php Modified: trunk/demo/demo52_in_bangla.php =================================================================== --- trunk/demo/demo52_in_bangla.php 2006-11-13 17:43:16 UTC (rev 871) +++ trunk/demo/demo52_in_bangla.php 2006-11-13 21:35:31 UTC (rev 872) @@ -1,4 +1,4 @@ -<?php +<?php require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; Modified: trunk/demo/demo53_in_armenian.php =================================================================== --- trunk/demo/demo53_in_armenian.php 2006-11-13 17:43:16 UTC (rev 871) +++ trunk/demo/demo53_in_armenian.php 2006-11-13 21:35:31 UTC (rev 872) @@ -1,4 +1,4 @@ -<?php +<?php require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; Modified: trunk/i18n/bn_BD/main.php =================================================================== --- trunk/i18n/bn_BD/main.php 2006-11-13 17:43:16 UTC (rev 871) +++ trunk/i18n/bn_BD/main.php 2006-11-13 21:35:31 UTC (rev 872) @@ -2,7 +2,7 @@ /** * i18n/bn_BD/main.php * - * Copyright \xA9 2006 Stephane Gully + * Copyright © 2006 Stephane Gully * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -26,6 +26,284 @@ * @author Shuvro Prakash Paul */ +// line 45 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["My Chat"] = "আমার আড্ডা"; +// line 201 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s not found, %s library can't be found."] = "%s কে পাওয়া যায় নি , %s লাইব্রেরী খুঁজে পাওয়া গেল না।"; -?> \ No newline at end of file +// line 355 in phpfreechat.class.php +$GLOBALS["i18n"]["Please enter your nickname"] = "আপনার ডাকনাম লিখুন"; + +// line 565 in phpfreechat.class.php +$GLOBALS["i18n"]["Text cannot be empty"] = "টেক্সট ফাঁকা রাখা যাবে না"; + +// line 392 in phpfreechat.class.php +$GLOBALS["i18n"]["%s changes his nickname to %s"] = " জনাব/বেগম %s তার নাম পরিবর্তন করে রেখেছেন %s"; + +// line 398 in phpfreechat.class.php +$GLOBALS["i18n"]["%s is connected"] = "%s সংযুক্ত"; + +// line 452 in phpfreechat.class.php +$GLOBALS["i18n"]["%s quit"] = "%s ক্ষান্ত দাও"; + +// line 468 in phpfreechat.class.php +$GLOBALS["i18n"]["%s disconnected (timeout)"] = "%s সংযোগ বিচ্ছিন্ন (টাইম আউট)"; + +// line 262 in phpfreechat.class.php +$GLOBALS["i18n"]["Unknown command [%s]"] = "অজানা নির্দেশ (কমান্ড)[%s]"; + +// line 149 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist: %s"] = "%sএর কোন অস্তিত্ত্ব নেই: %s"; + +// line 180 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["You need %s"] = "আপনার প্রয়োজন %s"; + +// line 241 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist, %s library can't be found"] = "%s অস্তিত্ত্বহীন, %s লাইব্রেরী খুঁজে পাওয়া গেল না।"; + +// line 280 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist"] = "%s অস্তিত্ত্বহীন"; + +// line 433 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s directory must be specified"] = "%s ডিরেক্টরী অবশ্যই উল্লেখ করতে হবে"; + +// line 439 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s must be a directory"] = "%s কে অবশ্যই একটি ডিরেক্টরী হতে হবে"; + +// line 446 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s can't be created"] = "%s কে তৈরী করা সম্ভব নয়।"; + +// line 451 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not writeable"] = "%s লেখন উপযোগী নয়।"; + +// line 496 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not readable"] = "%s পঠন উপযোগী নয়।"; + +// line 469 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not a file"] = "%s টি কোন ফাইল নয়"; + +// line 491 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not a directory"] = "%s টি কোন ডিরেক্টরী নয়।"; + +// line 23 in chat.html.tpl.php +$GLOBALS["i18n"]["PHP FREE CHAT [powered by phpFreeChat-%s]"] = "পিএইচপি ফ্রি চ্যাট[phpFreeChat এর দ্বারা চালিত-%s]"; + +// line 296 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Hide nickname marker"] = "ডাকনামের রং লুকাও"; + +// line 304 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Show nickname marker"] = "ডাকনামের রং দেখাও"; + +// line 389 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Disconnect"] = "সংযোগ বিচ্ছিন্ন কর "; + +// line 395 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Connect"] = "সংযোগ কর"; + +// line 427 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Magnify"] = "বিবর্ধন কর"; + +// line 434 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Cut down"] = "কেটে ফেল"; + +// line 345 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Hide dates and hours"] = "তারিখ আর সময় লুকাও"; + +// line 353 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Show dates and hours"] = "তারিখ আর সময় দেখাও"; + +// line 21 in chat.html.tpl.php +$GLOBALS["i18n"]["Enter your message here"] = "আপনার বার্তা এখানে লিখুন"; + +// line 24 in chat.html.tpl.php +$GLOBALS["i18n"]["Enter your nickname here"] = "আপনার ডাকনাম এখানে লিখুন"; + +// line 93 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["Error: undefined or obsolete parameter '%s', please correct or remove this parameter"] = "সমস্যা: অনির্ধারিত বা অসংজ্ঞায়িত মান '%s', দয়া করে এই মান সঠিক ভাবে লিখুন কিংবা মুছে ফেলুন "; + +// line 86 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Hide smiley box"] = "স্মাইলি লুকাও"; + +// line 87 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Show smiley box"] = "স্মাইলি দেখাও"; + +// line 88 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Hide online users box"] = "অনলাইনে থাকা ব্যাবহারকারী তালিকা লুকাও"; + +// line 89 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Show online users box"] = "অনলাইনে থাকা ব্যাবহারকারী তালিকা দেখাও"; + +// line 33 in chat.html.tpl.php +$GLOBALS["i18n"]["Bold"] = "গাঢ়"; + +// line 34 in chat.html.tpl.php +$GLOBALS["i18n"]["Italics"] = "ডানদিকে বাঁকানো"; + +// line 35 in chat.html.tpl.php +$GLOBALS["i18n"]["Underline"] = "নিম্নরেখাঙ্কন"; + +// line 36 in chat.html.tpl.php +$GLOBALS["i18n"]["Delete"] = "মুছে ফেল"; + +// line 37 in chat.html.tpl.php +$GLOBALS["i18n"]["Pre"] = "পূর্ব"; + +// line 38 in chat.html.tpl.php +$GLOBALS["i18n"]["Mail"] = "মেইল"; + +// line 39 in chat.html.tpl.php +$GLOBALS["i18n"]["Color"] = "রং"; + +// line 48 in phpfreechattemplate.class.php +$GLOBALS["i18n"]["%s template could not be found"] = "%s ছাঁদটি (টেমপ্লেট) খুঁজে পাওয়া গেল না।"; + +// line 512 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["Error: '%s' could not be found, please check your themepath '%s' and your theme '%s' are correct"] = "সমস্যা : '%s' খুঁজে পাওয়া যায় নি , দয়া করে আপনার থীমের path '%s' পরখ করে দেখুন আপনার '%s' থীমগুলি সঠিক কি না"; + +// line 75 in pfccommand.class.php +$GLOBALS["i18n"]["%s must be implemented"] = "%s অবশ্যই বাস্তবায়ন করতে হবে"; + + +// line 343 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter is mandatory by default use '%s' value"] = "'%s' এর মান অবশ্যই থাকতে হবে। পূর্বনির্ধারিত মান হিসাবে '%s' ব্যাবহার করুন "; + +// line 378 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a positive number"] = "'%s' এর মান অবশ্যই ধনাত্মক সংখ্যা হতে হবে"; + +// line 386 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter is not valid. Available values are : '%s'"] = "'%s' মান টি সঠিক নয়. অন্যান্য সুলভ মান হলো: '%s'"; + +// line 185 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["My room"] = "আমার কক্ষ"; + +// line 109 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Private message"] = "ব্যাক্তিগত বার্তা"; + +// line 110 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Close this tab"] = "এই ট্যাবটি বন্ধ কর "; + +// line 225 in pfcgui.js.tpl.php +$GLOBALS["i18n"]["Do you really want to leave this room ?"] = "আপনি কি সত্যি সত্যি এই কক্ষ পরিত্যাগ করতে চান ?"; + +// line 19 in unban.class.php +$GLOBALS["i18n"]["Missing parameter"] = "হারানো মান "; + +// line 38 in ban.class.php +$GLOBALS["i18n"]["banished from %s by %s"] = " %s থেকে %s banish করেছে"; + +// line 23 in banlist.class.php +$GLOBALS["i18n"]["The banished user's id list is:"] = " banished ব্যবহার কারীর ID তালিকা :"; + +// line 32 in banlist.class.php +$GLOBALS["i18n"]["Empty"] = " খালি কর"; + +// line 34 in banlist.class.php +$GLOBALS["i18n"]["'/unban {id}' will unban the user identified by {id}"] = "'/unban {id}' নির্দেশটি এই {id} ব্যবহারকারী কে unban করবে "; + +// line 35 in banlist.class.php +$GLOBALS["i18n"]["'/unban all' will unban all the users on this channel"] = "'/unban all' নির্দেশটি এই চ্যানেলের সমস্ত ব্যাবহারকারী কে unban করবে "; + +// line 24 in update.class.php +$GLOBALS["i18n"]["%s quit (timeout)"] = "%s ক্ষান্ত (টাইম আউট)"; + +// line 46 in join.class.php +$GLOBALS["i18n"]["%s joins %s"] = "%s %s তে যোগ দিয়েছে"; + +// line 31 in kick.class.php +$GLOBALS["i18n"]["kicked from %s by %s"] = " %s থেকে %s বের করে দিয়েছে"; + +// line 38 in send.class.php +$GLOBALS["i18n"]["Can't send the message, %s is offline"] = "বার্তা পাঠানো যাচ্ছে না, %s এখন অফলাইনে"; + +// line 27 in unban.class.php +$GLOBALS["i18n"]["Nobody has been unbanished"] = "কাউকে unbanish করা হয় নি।"; + +// line 42 in unban.class.php +$GLOBALS["i18n"]["%s has been unbanished"] = "%s কে unbanish করা হয়েছে"; + +// line 49 in unban.class.php +$GLOBALS["i18n"]["%s users have been unbanished"] = "%s জন ব্যবহারকারী কে unbanish করা হয়েছে"; + +// line 47 in auth.class.php +$GLOBALS["i18n"]["You are not allowed to run '%s' command"] = "আপনাকে এই '%s' নির্দেশচালানোর অনুমতি দেওয়া হয় নি।"; + +// line 67 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because you are banished"] = " %s তে যোগ দিতে পারবেন না, যেহেতু আপনাকে banish করা হয়েছে"; + +// line 79 in auth.class.php +$GLOBALS["i18n"]["You are not allowed to change your nickname"] = "আপনি আপনার ডাকনাম বদলাতে পারবেন না।"; + +// line 76 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because the channels list is restricted"] = " %s এ যোগ দিতে পারবেন না কেননা চ্যানেল তালিকার অধিকার সংরক্ষিত"; + +// line 56 in noflood.class.php +$GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = "এত বেশি বেশী বার্তা লিখবেন না। ফ্লাডিং সহ্য করা হবে না।"; + +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = "সমস্যা: '%s' মান টি ব্যাক্তিগত । এটা পরিবর্তনের অধিকার আপনার নেই।"; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = "'%s' এর মান অবশ্যই একটি array হতে হবে"; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = "'%s' এর মান অবশ্যই একটি বুলিয়ান মান হতে হবে"; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = "'%s' এর মান অবশ্যই charatere স্ট্রিং হতে হবে"; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = "'%s' কে অবশ্যই লেখার যোগ্য হতে হবে"; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = "'%s'ডিরেক্টরী অস্তিত্ত্বহীন"; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = "দয়া করে এই সমস্যাগুলোর সমাধান করুন"; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = "সমস্যা: cached config ফাইলটির অস্তিত্ত্ব নেই"; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = "সমস্যা: আড্ডা লোড করা যাচ্ছে না। দুইটা সম্ভাবনা থাকতে পারে :হয় আপনার ব্রাউজার জাভাস্ক্রীপ্ট সাপোর্ট করে না নয়তো সার্ভার ডিরেক্টরীর অধিকার আপনি সঠিকভাবে সেটআপ করেননি। আলোচনা চক্রে যে কোন সাহায্যের জন্য আসুন ;ইতস্তত: বোধ করার কিছু নেই।"; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = "এই হলো নির্দেশ(কমান্ড) তালিকা:"; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = " সনাক্তকরণ সফল হয়েছে"; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = "সনাক্তকরণ ব্যর্থ"; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = "বার্তা পাঠাতে হলে অবশ্যই আপনাকে সংযুক্ত হতে হবে"; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = "বার্তা পাঠাতে এখানে ক্লিক করুন"; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = "ফরম্যাট করতে টেক্সট লিখুন"; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = "কনফিগারেশন কে rehash করা হয়েছে"; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = " Rehash করার সময় সমস্যা দেখা দিচ্ছে"; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = "পছন্দের ডাকনামটি আগেই কেউ নিয়ে নিয়েছে"; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = "phpfreechat এর বর্তমান ভার্সন হলো %s"; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = "যোগ দেওয়া চ্যানেলের সংখ্যা সর্বোচ্চ সীমায় পৌঁছে গিয়েছে।"; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = "ব্যাক্তিগত আড্ডার সংখ্যা সর্বোচ্চ সীমায় পৌঁছে গিয়েছে"; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = "পাঠাও"; + +?> Modified: trunk/i18n/hy_AM/main.php =================================================================== --- trunk/i18n/hy_AM/main.php 2006-11-13 17:43:16 UTC (rev 871) +++ trunk/i18n/hy_AM/main.php 2006-11-13 21:35:31 UTC (rev 872) @@ -1,4 +1,4 @@ -<?php +<?php /** * i18n/hy_AM/main.php * @@ -308,4 +308,4 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Ասել"; -?> \ No newline at end of file +?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-11-14 13:19:28
|
Revision: 873 http://svn.sourceforge.net/phpfreechat/?rev=873&view=rev Author: kerphi Date: 2006-11-14 05:19:22 -0800 (Tue, 14 Nov 2006) Log Message: ----------- rename ua_UA local to uk_UA (Ukrainian translation) Modified Paths: -------------- trunk/demo/demo36_in_ukrainian.php Added Paths: ----------- trunk/i18n/uk_UA/ Removed Paths: ------------- trunk/i18n/ua_UA/ Modified: trunk/demo/demo36_in_ukrainian.php =================================================================== --- trunk/demo/demo36_in_ukrainian.php 2006-11-13 21:35:31 UTC (rev 872) +++ trunk/demo/demo36_in_ukrainian.php 2006-11-14 13:19:22 UTC (rev 873) @@ -3,7 +3,7 @@ require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; $params["serverid"] = md5(__FILE__); // calculate a unique id for this chat -$params["language"] = "ua_UA"; +$params["language"] = "uk_UA"; $chat = new phpFreeChat( $params ); ?> Copied: trunk/i18n/uk_UA (from rev 872, trunk/i18n/ua_UA) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-11-15 07:31:10
|
Revision: 874 http://svn.sourceforge.net/phpfreechat/?rev=874&view=rev Author: kerphi Date: 2006-11-14 23:30:57 -0800 (Tue, 14 Nov 2006) Log Message: ----------- [en] Add the word-wrap CSS3 property to replace the dirty regex code in order to cut the long words. (thanks to firebane) [15min] [fr] Ajoute la r?\195?\168gle CSS3 word-wrap en remplacement des regex permettant de couper les mots. (merci ?\195?\160 firebane) [15min] Modified Paths: -------------- trunk/src/client/pfcclient.js trunk/themes/default/style.css Modified: trunk/src/client/pfcclient.js =================================================================== --- trunk/src/client/pfcclient.js 2006-11-14 13:19:22 UTC (rev 873) +++ trunk/src/client/pfcclient.js 2006-11-15 07:30:57 UTC (rev 874) @@ -1192,6 +1192,9 @@ rx = new RegExp('(^|[ :,;])'+RegExp.escape(this.nickname)+'([ :,;]|$)','gi'); msg = msg.replace(rx, '$1<strong>'+ this.nickname +'</strong>$2'); + + // this piece of code is replaced by the word-wrap CSS3 rule. + /* // don't allow to post words bigger than 65 caracteres // doesn't work with crappy IE and Konqueror ! rx = new RegExp('([^ \\:\\<\\>\\/\\&\\;]{60})','ig'); @@ -1206,6 +1209,7 @@ msg = msg + ttt[i] + ' '; } } + */ return msg; }, Modified: trunk/themes/default/style.css =================================================================== --- trunk/themes/default/style.css 2006-11-14 13:19:22 UTC (rev 873) +++ trunk/themes/default/style.css 2006-11-15 07:30:57 UTC (rev 874) @@ -96,6 +96,7 @@ /* WARNING: do not fix height in % because it will display blank screens on IE6 */ /* height: 100%;*/ overflow: auto; + word-wrap: break-word; } div.pfc_online { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-11-28 17:50:28
|
Revision: 880 http://svn.sourceforge.net/phpfreechat/?rev=880&view=rev Author: kerphi Date: 2006-11-28 09:50:20 -0800 (Tue, 28 Nov 2006) Log Message: ----------- [en] Add the sound notification using a small flash applet. It's possible to enable/disable the sound notification at startup with the 'startwithsound' parameter. (thanks to neohunter) [1h00] [fr] Ajoute la notification sonore par le biais d'une petite applet flash. Il est possible d'activer/d?\195?\169sactiver le son au d?\195?\169marrage grace au param?\195?\168tre 'startwithsound'. (merci ?\195?\160 neohunter) [1h00] Modified Paths: -------------- trunk/src/client/chat.js.tpl.php trunk/src/client/pfcclient.js trunk/src/client/pfcgui.js trunk/src/pfcglobalconfig.class.php trunk/themes/default/style.css Added Paths: ----------- trunk/themes/default/images/sound-off.gif trunk/themes/default/images/sound-on.gif trunk/themes/default/sound.swf Modified: trunk/src/client/chat.js.tpl.php =================================================================== --- trunk/src/client/chat.js.tpl.php 2006-11-28 16:52:37 UTC (rev 879) +++ trunk/src/client/chat.js.tpl.php 2006-11-28 17:50:20 UTC (rev 880) @@ -10,10 +10,11 @@ var pfc_clientid = <?php echo $json->encode(md5(uniqid(rand(), true))); ?>; var pfc_title = <?php echo $json->encode($title); ?>; var pfc_refresh_delay = <?php echo $json->encode($refresh_delay); ?>; -var pfc_max_refresh_delay = <?php echo $json->encode($max_refresh_delay); ?>; +var pfc_max_refresh_delay = <?php echo $json->encode($max_refresh_delay); ?>; var pfc_start_minimized = <?php echo $json->encode($start_minimized); ?>; var pfc_nickmarker = <?php echo $json->encode($nickmarker); ?>; var pfc_clock = <?php echo $json->encode($clock); ?>; +var pfc_startwithsound = <?php echo $json->encode($startwithsound); ?>; var pfc_showsmileys = <?php echo $json->encode($showsmileys); ?>; var pfc_showwhosonline = <?php echo $json->encode($showwhosonline); ?>; var pfc_focus_on_connect = <?php echo $json->encode($focus_on_connect); ?>; @@ -78,6 +79,8 @@ "You are not allowed to speak to yourself", // _pfc "Close", // _pfc "Choosen nickname is not allowed", // _pfc + "Play sound", // _pfc + "Mute sound", // _pfc ); foreach($labels_to_load as $l) { @@ -114,6 +117,9 @@ 'images/close-whoisbox.gif', 'images/openpv.gif', 'images/user-admin.gif', + 'images/sound-on.gif', + 'images/sound-off.gif', + 'sound.swf', ); foreach($fileurl_to_load as $f) Modified: trunk/src/client/pfcclient.js =================================================================== --- trunk/src/client/pfcclient.js 2006-11-28 16:52:37 UTC (rev 879) +++ trunk/src/client/pfcclient.js 2006-11-28 17:50:20 UTC (rev 880) @@ -117,6 +117,11 @@ if (cookie != null) this.switch_text_color(cookie); + cookie = getCookie('pfc_issoundenable'); + this.issoundenable = (cookie == 'true'); + if (cookie == '' || cookie == null) + this.issoundenable = pfc_startwithsound; + this.refresh_loginlogout(); this.refresh_minimize_maximize(); this.refresh_Smileys(); @@ -1389,6 +1394,36 @@ }, /** + * Sound button + */ + sound_swap: function() + { + if (this.issoundenable) { + this.issoundenable = false; + } else { + this.issoundenable = true; + } + this.refresh_sound(); + setCookie('pfc_issoundenable', this.issoundenable); + }, + refresh_sound: function( root ) + { + var snd_icon = $('pfc_sound'); + if (this.issoundenable) + { + snd_icon.src = this.res.getFileUrl('images/sound-on.gif'); + snd_icon.alt = this.res.getLabel('Play sound'); + snd_icon.title = snd_icon.alt; + } + else + { + snd_icon.src = this.res.getFileUrl('images/sound-off.gif'); + snd_icon.alt = this.res.getLabel('Mute sound'); + snd_icon.title = snd_icon.alt; + } + }, + + /** * Connect/disconnect button */ connect_disconnect: function() Modified: trunk/src/client/pfcgui.js =================================================================== --- trunk/src/client/pfcgui.js 2006-11-28 16:52:37 UTC (rev 879) +++ trunk/src/client/pfcgui.js 2006-11-28 17:50:20 UTC (rev 880) @@ -301,12 +301,29 @@ var rx = new RegExp('^\\[[0-9]+\\](.*)','ig'); document.title = document.title.replace(rx,'$1'); document.title = '['+this.windownotifynb+']'+document.title; + + // play the sound + var soundcontainer = document.getElementById('pfc_sound_container'); + if (pfc.issoundenable) + { + var flash = '<object style="visibility:hidden" classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" id="obj1" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" border="0">'; + flash += '<param name="movie" value="' + pfc.res.getFileUrl('sound.swf') + '">'; + flash += '<param name="quality" value="High">'; + flash += '<embed src="' + pfc.res.getFileUrl('sound.swf') + '" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" name="obj1">'; + flash += '</object>'; + soundcontainer.innerHTML = flash; + } }, unnotifyWindow: function() { this.windownotifynb = 0; var rx = new RegExp('^\\[[0-9]+\\](.*)','ig'); document.title = document.title.replace(rx,'$1'); + + // stop the sound + var soundcontainer = document.getElementById('pfc_sound_container'); + if (pfc.issoundenable) + soundcontainer.innerHTML = ''; }, /** @@ -537,6 +554,17 @@ btn.appendChild(img); cmdcontainer.appendChild(btn); + // button sound on/off + var btn = document.createElement('div'); + btn.setAttribute('class', 'pfc_btn'); + btn.setAttribute('className', 'pfc_btn'); // for IE6 + var img = document.createElement('img'); + img.setAttribute('id', 'pfc_sound'); + img.setAttribute('src', pfc.res.getFileUrl('images/sound-on.gif')); + img.onclick = function(){ pfc.sound_swap(); } + btn.appendChild(img); + cmdcontainer.appendChild(btn); + // button smileys on/off if (pfc_btn_sh_smileys) { @@ -677,6 +705,11 @@ smileybox.setAttribute('id', 'pfc_smileys'); inputcontainer.appendChild(smileybox); this.loadSmileyBox(); + + // sound container box : <div id="pfc_sound_container"> + var soundcontainerbox = document.createElement('div'); + soundcontainerbox.setAttribute('id', 'pfc_sound_container'); + inputcontainer.appendChild(soundcontainerbox); } }; Modified: trunk/src/pfcglobalconfig.class.php =================================================================== --- trunk/src/pfcglobalconfig.class.php 2006-11-28 16:52:37 UTC (rev 879) +++ trunk/src/pfcglobalconfig.class.php 2006-11-28 17:50:20 UTC (rev 880) @@ -82,6 +82,7 @@ var $shownotice = 3; // show: 0 = nothing, 1 = just nickname changes, 2 = join/quit, 3 = 1+2 var $nickmarker = true; // show/hide nicknames colors var $clock = true; // show/hide dates and hours + var $startwithsound = true; // start with sound enabled var $openlinknewwindow = true; // used to open the links in a new window var $notify_window = true; // true : appends a prefix to the window title with the number of new posted messages Added: trunk/themes/default/images/sound-off.gif =================================================================== (Binary files differ) Property changes on: trunk/themes/default/images/sound-off.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/default/images/sound-on.gif =================================================================== (Binary files differ) Property changes on: trunk/themes/default/images/sound-on.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/themes/default/sound.swf =================================================================== (Binary files differ) Property changes on: trunk/themes/default/sound.swf ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Modified: trunk/themes/default/style.css =================================================================== --- trunk/themes/default/style.css 2006-11-28 16:52:37 UTC (rev 879) +++ trunk/themes/default/style.css 2006-11-28 17:50:20 UTC (rev 880) @@ -346,4 +346,9 @@ div#pfc_debug { font-size: 11px; +} +div#pfc_sound_container { + visibility:hidden; /* this box is hidden because it contains a flash sound media (sound.swf)*/ + width: 0; + height: 0; } \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-01 22:23:23
|
Revision: 885 http://svn.sourceforge.net/phpfreechat/?rev=885&view=rev Author: kerphi Date: 2006-12-01 14:23:19 -0800 (Fri, 01 Dec 2006) Log Message: ----------- [en] New esperanto translation ('eo' locale) (thanks to Andrey Yankovskiy) [15min] [fr] Nouvelle traduction en Esperanto (locale 'eo') (merci ?\195?\160 Andrey Yankovskiy) [15min] Modified Paths: -------------- trunk/demo/index.php Added Paths: ----------- trunk/demo/demo54_in_esperanto.php trunk/i18n/eo/ trunk/i18n/eo/main.php Added: trunk/demo/demo54_in_esperanto.php =================================================================== --- trunk/demo/demo54_in_esperanto.php (rev 0) +++ trunk/demo/demo54_in_esperanto.php 2006-12-01 22:23:19 UTC (rev 885) @@ -0,0 +1,36 @@ +<?php + +require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; + +$params["serverid"] = md5(__FILE__); // calculate a unique id for this chat +$params["language"] = "eo"; +$chat = new phpFreeChat( $params ); + +?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html> + <head> + <meta http-equiv="content-type" content="text/html; charset=utf-8" /> + <title>phpFreeChat demo</title> + + <?php $chat->printJavascript(); ?> + <?php $chat->printStyle(); ?> + + </head> + + <body> + <?php $chat->printChat(); ?> + +<?php + // print the current file + echo "<h2>The source code</h2>"; + $filename = __FILE__; + echo "<p><code>".$filename."</code></p>"; + echo "<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">"; + $content = file_get_contents($filename); + echo htmlentities($content); + echo "</pre>"; +?> + + </body> +</html> Modified: trunk/demo/index.php =================================================================== --- trunk/demo/index.php 2006-12-01 09:05:32 UTC (rev 884) +++ trunk/demo/index.php 2006-12-01 22:23:19 UTC (rev 885) @@ -120,6 +120,7 @@ <li><a href="demo47_in_polish.php">demo47 - the Polish translation of the chat</a></li> <li><a href="demo52_in_bangla.php">demo52 - the Bangla translation of the chat</a></li> <li><a href="demo53_in_armenian.php">demo53 - the Armenian translation of the chat</a></li> + <li><a href="demo54_in_esperanto.php">demo54 - the Esperanto translation of the chat</a></li> </ul> </div> Added: trunk/i18n/eo/main.php =================================================================== --- trunk/i18n/eo/main.php (rev 0) +++ trunk/i18n/eo/main.php 2006-12-01 22:23:19 UTC (rev 885) @@ -0,0 +1,176 @@ +<?php +/** + * i18n/eo/main.php + * + * Copyright © 2006 Stephane Gully <ste...@gm...> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301 USA + */ + +/** + * Esperanto translation of the messages (utf8 encoded!) + * + * @author Andrey Yankovskiy + */ + +// line 45 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["My Chat"] = "Nia babilejo"; + +// line 201 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s not found, %s library can't be found."] = "%s not found, %s library can't be found."; + +// line 355 in phpfreechat.class.php +$GLOBALS["i18n"]["Please enter your nickname"] = "Bonvolu enskribi vian voknomon"; + +// line 565 in phpfreechat.class.php +$GLOBALS["i18n"]["Text cannot be empty"] = "Hej! Vi forgesis skribi ion!!!"; + +// line 392 in phpfreechat.class.php +$GLOBALS["i18n"]["%s changes his nickname to %s"] = "%s changes his/her nickname to %s"; + +// line 398 in phpfreechat.class.php +$GLOBALS["i18n"]["%s is connected"] = "%s is connected"; + +// line 452 in phpfreechat.class.php +$GLOBALS["i18n"]["%s quit"] = "%s quit"; + +// line 468 in phpfreechat.class.php +$GLOBALS["i18n"]["%s disconnected (timeout)"] = "%s disconnected (timeout)"; + +// line 262 in phpfreechat.class.php +$GLOBALS["i18n"]["Unknown command [%s]"] = "Unknown command [%s]"; + +// line 149 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist: %s"] = "%s doesn't exist: %s"; + +// line 180 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["You need %s"] = "You need %s"; + +// line 241 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist, %s library can't be found"] = "%s doesn't exist, %s library can't be found"; + +// line 280 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist"] = "%s doesn't exist"; + +// line 433 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s directory must be specified"] = "%s directory must be specified"; + +// line 439 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s must be a directory"] = "%s must be a directory"; + +// line 446 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s can't be created"] = "%s can't be created"; + +// line 451 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not writeable"] = "%s is not writeable"; + +// line 496 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not readable"] = "%s is not readable"; + +// line 469 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not a file"] = "%s is not a file"; + +// line 491 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not a directory"] = "%s is not a directory"; + +// line 23 in chat.html.tpl.php +$GLOBALS["i18n"]["PHP FREE CHAT [powered by phpFreeChat-%s]"] = "PHP FREE CHAT [powered by phpFreeChat-%s]"; + +// line 296 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Hide nickname marker"] = "malkolorigi la nomon"; + +// line 304 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Show nickname marker"] = "kolorigi la nomon"; + +// line 389 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Disconnect"] = "Diskonekto"; + +// line 395 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Connect"] = "Konekto"; + +// line 427 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Magnify"] = "Malsxrumpi"; + +// line 434 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Cut down"] = "Sxrumpi"; + +// line 345 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Hide dates and hours"] = "Kasxi tempon"; + +// line 353 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Show dates and hours"] = "Montri la tempon"; + +// line 21 in chat.html.tpl.php +$GLOBALS["i18n"]["Enter your message here"] = "Enskribu via mesagxo"; + +// line 24 in chat.html.tpl.php +$GLOBALS["i18n"]["Enter your nickname here"] = "Bonvolu enskribi vian nomon"; + +// line 93 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["Error: undefined or obsolete parameter '%s', please correct or remove this parameter"] = "Error: undefined or obsolete parameter '%s', please correct or remove this parameter"; + +// line 86 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Hide smiley box"] = "Kasxi la bildetaron"; + +// line 87 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Show smiley box"] = "Montri la bildetaron"; + +// line 88 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Hide online users box"] = "Kasxi la partoprenantojn"; + +// line 89 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Show online users box"] = "Montri la partoprenantojn"; + +// line 33 in chat.html.tpl.php +$GLOBALS["i18n"]["Bold"] = "Dike"; + +// line 34 in chat.html.tpl.php +$GLOBALS["i18n"]["Italics"] = "Kursive"; + +// line 35 in chat.html.tpl.php +$GLOBALS["i18n"]["Underline"] = "Substreke"; + +// line 36 in chat.html.tpl.php +$GLOBALS["i18n"]["Delete"] = "Forstreke"; + +// line 37 in chat.html.tpl.php +$GLOBALS["i18n"]["Pre"] = "Pre"; + +// line 38 in chat.html.tpl.php +$GLOBALS["i18n"]["Mail"] = "E-posxto"; + +// line 39 in chat.html.tpl.php +$GLOBALS["i18n"]["Color"] = "Koloro"; + +// line 48 in phpfreechattemplate.class.php +$GLOBALS["i18n"]["%s template could not be found"] = "%s template could not be found"; + +// line 512 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["Error: '%s' could not be found, please check your themepath '%s' and your theme '%s' are correct"] = "Error: '%s' could not be found, please check your themepath '%s' and your theme '%s' are correct"; + +// line 75 in pfccommand.class.php +$GLOBALS["i18n"]["%s must be implemented"] = "%s must be implemented"; + +// line 343 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter is mandatory by default use '%s' value"] = "'%s' parameter is mandatory by default use '%s' value"; + +// line 378 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a positive number"] = "'%s' parameter must be a positive number"; + +// line 386 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter is not valid. Available values are : '%s'"] = "'%s' parameter is not valid. Available values are: '%s'"; + +?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-06 15:35:38
|
Revision: 888 http://svn.sourceforge.net/phpfreechat/?rev=888&view=rev Author: kerphi Date: 2006-12-06 07:35:25 -0800 (Wed, 06 Dec 2006) Log Message: ----------- [en] Add a mysql container. See demo55 for an example (thanks to HenkBB) [3h30] [fr] Ajout d'un conteneur mysql. Voyez la demo55 pour un exemple (merci ?\195?\160 HenkBB) [3h30] Modified Paths: -------------- trunk/demo/index.php trunk/testcase/container_generic.php Added Paths: ----------- trunk/demo/demo55_mysql_container.php trunk/src/containers/mysql.class.php trunk/testcase/container_mysql.php Added: trunk/demo/demo55_mysql_container.php =================================================================== --- trunk/demo/demo55_mysql_container.php (rev 0) +++ trunk/demo/demo55_mysql_container.php 2006-12-06 15:35:25 UTC (rev 888) @@ -0,0 +1,41 @@ +<?php + +require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; +$params["serverid"] = md5(__FILE__); // calculate a unique id for this chat +$params["nick"] = "guest".rand(1,1000); +$params["container_type"] = "mysql"; +$params["container_cfg_mysql_host"] = "localhost"; // this is the default value +$params["container_cfg_mysql_port"] = 3306; // this is the default value +$params["container_cfg_mysql_database"] = "phpfreechat"; // this is the default value +$params["container_cfg_mysql_table"] = "phpfreechat"; // this is the default value +$params["container_cfg_mysql_username"] = "root"; // this is the default value +$params["container_cfg_mysql_password"] = ""; // this is the default value +$chat = new phpFreeChat($params); + +?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html> + + <head> + <meta http-equiv="content-type" content="text/html; charset=utf-8" /> + <title>phpFreeChat demo</title> + <?php $chat->printJavascript(); ?> + <?php $chat->printStyle(); ?> + </head> + + <body> + <?php $chat->printChat(); ?> + +<?php + // print the current file + echo "<h2>The source code</h2>"; + $filename = __FILE__; + echo "<p><code>".$filename."</code></p>"; + echo "<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">"; + $content = file_get_contents($filename); + echo htmlentities($content); + echo "</pre>"; +?> + </body> + +</html> \ No newline at end of file Modified: trunk/demo/index.php =================================================================== --- trunk/demo/index.php 2006-12-04 17:12:10 UTC (rev 887) +++ trunk/demo/index.php 2006-12-06 15:35:25 UTC (rev 888) @@ -71,10 +71,10 @@ <li><a href="demo31_show_who_is_online-whoisonline.php">demo31 - demo which show how to get the connected users list (whoisonline script)</a></li> <li><a href="demo32_show_last_messages-chat.php">demo32 - demo which show how to get the last posted messages (chat script)</a></li> <li><a href="demo32_show_last_messages-showlastmsg.php">demo32 - demo which show how to get the last posted messages (showlastmsg script)</a></li> - <li><a href="demo35_shared_memory.php">demo35 - demo which show how to use the shared memory container</a> (not yet working)</li> <li><a href="demo43_change_the_nicknames_colors.php">demo43 - demo which show how to change the nicknames automatic colors</a></li> <li><a href="demo50_customized_usermetadata.php">demo50 - demo which shows how to use user metadata : add avatar (images) to each connected users</a></li> + <li><a href="demo55_mysql_container.php">demo55 - demo which show how to use the mysql container</a></li> </ul> Added: trunk/src/containers/mysql.class.php =================================================================== --- trunk/src/containers/mysql.class.php (rev 0) +++ trunk/src/containers/mysql.class.php 2006-12-06 15:35:25 UTC (rev 888) @@ -0,0 +1,274 @@ +<?php +/** + * src/container/mysql.class.php + * + * Copyright © 2006 Stephane Gully <ste...@gm...> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301 USA + */ + +require_once dirname(__FILE__)."/../pfccontainer.class.php"; + +/** + * pfcContainer_Mysql is a concret container which store data into mysql + * + * Because of the new storage functions (setMeta, getMeta, rmMeta) + * everything can be stored in just one single table. + * Using type "HEAP" or "MEMORY" mysql loads this table into memory making it very fast + * There is no routine to create the table if it does not exists so you have to create it by hand + * Replace the database login info at the top of pfcContainer_mysql class with your own + * You also need some config lines in your chat index file: + * $params["container_type"] = "mysql"; + * $params["container_cfg_mysql_host"] = "localhost"; + * $params["container_cfg_mysql_port"] = 3306; + * $params["container_cfg_mysql_database"] = "phpfreechat"; + * $params["container_cfg_mysql_table"] = "phpfreechat"; + * $params["container_cfg_mysql_username"] = "root"; + * $params["container_cfg_mysql_password"] = ""; + * + * @author Stephane Gully <ste...@gm...> + * @author HenkBB + */ +class pfcContainer_Mysql extends pfcContainer +{ + var $_db = null; + var $_sql_create_table = " + CREATE TABLE IF NOT EXISTS `%table%` ( + `server` varchar(256) NOT NULL default '', + `group` varchar(256) NOT NULL default '', + `subgroup` varchar(256) NOT NULL default '', + `leaf` varchar(256) NOT NULL default '', + `leafvalue` varchar(1024) NOT NULL, + `timestamp` int(11) NOT NULL default 0, + PRIMARY KEY (`server`,`group`,`subgroup`,`leaf`) +) ENGINE=MEMORY;"; + + function pfcContainer_Mysql(&$config) + { + pfcContainer::pfcContainer($config); + } + + function getDefaultConfig() + { + $c =& $this->c; + $cfg = pfcContainer::getDefaultConfig(); + $cfg["mysql_host"] = 'localhost'; + $cfg["mysql_port"] = 3306; + $cfg["mysql_database"] = 'phpfreechat'; + $cfg["mysql_table"] = 'phpfreechat'; + $cfg["mysql_username"] = 'root'; + $cfg["mysql_password"] = ''; + return $cfg; + } + + function init() + { + $errors = pfcContainer::init(); + $c =& $this->c; + + // connect to the db + $db = $this->_connect(); + if ($db === FALSE) + { + $errors[] = _pfc("Mysql container: connect error"); + return $errors; + } + + // create the db if it doesn't exists + $db_exists = false; + $db_list = mysql_list_dbs($db); + while (!$db_exists && $row = mysql_fetch_object($db_list)) + $db_exists = ($c->container_cfg_mysql_database == $row->Database); + if (!$db_exists) + { + $query = 'CREATE DATABASE '.$c->container_cfg_mysql_database; + $result = mysql_query($query, $db); + if ($result === FALSE) + { + $errors[] = _pfc("Mysql container: create database error '%s'",mysql_error($db)); + return $errors; + } + mysql_select_db($c->container_cfg_mysql_database, $db); + } + + // create the table if it doesn't exists + $query = str_replace('%table%',$c->container_cfg_mysql_table,$this->_sql_create_table); + $result = mysql_query($query, $db); + if ($result === FALSE) + { + $errors[] = _pfc("Mysql container: create table error '%s'",mysql_error($db)); + return $errors; + } + return $errors; + } + + function _connect() + { + if (!$this->_db) + { + $c =& $this->c; + $this->_db = mysql_pconnect($c->container_cfg_mysql_host.':'.$c->container_cfg_mysql_port, + $c->container_cfg_mysql_username, + $c->container_cfg_mysql_password); + mysql_select_db($c->container_cfg_mysql_database, $this->_db); + } + return $this->_db; + } + + function setMeta($group, $subgroup, $leaf, $leafvalue = NULL) + { + $c =& $this->c; + + if ($c->debug) + file_put_contents("/tmp/debug.txt", "\nsetMeta(".$group.",".$subgroup.",".$leaf.",".$leafvalue.")", FILE_APPEND); + + $server = $c->serverid; + $db = $this->_connect(); + + if ($leafvalue == NULL){$leafvalue="";}; + + $sql_select = "SELECT * FROM ".$c->container_cfg_mysql_table." WHERE `server`='$server' AND `group`='$group' AND `subgroup`='$subgroup' AND `leaf`='$leaf'"; + $sql_insert="REPLACE INTO ".$c->container_cfg_mysql_table." (`server`, `group`, `subgroup`, `leaf`, `leafvalue`, `timestamp`) VALUES('$server', '$group', '$subgroup', '$leaf', '".addslashes($leafvalue)."', '".time()."')"; + $sql_update="UPDATE ".$c->container_cfg_mysql_table." SET `leafvalue`='".addslashes($leafvalue)."', `timestamp`='".time()."' WHERE `server`='$server' AND `group`='$group' AND `subgroup`='$subgroup' AND `leaf`='$leaf'"; + + $res = mysql_query($sql_select, $db); + if( !(mysql_num_rows($res)>0) ) + { + if ($c->debug) + file_put_contents("/tmp/debug.txt", "\nsetSQL(".$sql_insert.")", FILE_APPEND); + + mysql_query($sql_insert, $db); + return 0; // value created + } + else + { + if ($sql_update != "") + { + if ($c->debug) + file_put_contents("/tmp/debug.txt", "\nsetSQL(".$sql_update.")", FILE_APPEND); + + mysql_query($sql_update, $db); + } + return 1; // value overwritten + } + } + + + function getMeta($group, $subgroup = null, $leaf = null, $withleafvalue = false) + { + $c =& $this->c; + if ($c->debug) + file_put_contents("/tmp/debug.txt", "\ngetMeta(".$group.",".$subgroup.",".$leaf.",".$withleafvalue.")", FILE_APPEND); + + $ret = array(); + $ret["timestamp"] = array(); + $ret["value"] = array(); + + $server = $c->serverid; + $db = $this->_connect(); + + $sql_where=""; + $value="leafvalue"; + + if ($group != NULL) + { + $sql_where.=" AND `group`='$group'"; + $value="subgroup"; + } + + if ($subgroup != NULL) + { + $sql_where.=" AND `subgroup`='$subgroup'"; + $value="leaf"; + } + + if ($leaf != NULL) + { + $sql_where.=" AND `leaf`='$leaf'"; + $value="leafvalue"; + } + + $sql_select="SELECT `$value`, `timestamp` FROM ".$c->container_cfg_mysql_table." WHERE `server`='$server' $sql_where GROUP BY `$value` ORDER BY timestamp"; + + if ($c->debug) + file_put_contents("/tmp/debug.txt", "\ngetSQL(".$sql_select.")", FILE_APPEND); + + if ($sql_select != "") + { + $thisresult = mysql_query($sql_select, $db); + if (mysql_num_rows($thisresult)) + { + while ($regel = mysql_fetch_array($thisresult)) + { + $ret["timestamp"][] = $regel["timestamp"]; + if ($value == "leafvalue") + { + if ($withleafvalue) + $ret["value"][] = $regel[$value]; + else + $ret["value"][] = NULL; + } + else + $ret["value"][] = $regel[$value]; + } + + } + else + return $ret; + } + return $ret; + } + + function rmMeta($group, $subgroup = null, $leaf = null) + { + $c =& $this->c; + if ($c->debug) + file_put_contents("/tmp/debug.txt", "\nrmMeta(".$group.",".$subgroup.",".$leaf.")", FILE_APPEND); + + $server = $c->serverid; + $db = $this->_connect(); + + $sql_delete = "DELETE FROM ".$c->container_cfg_mysql_table." WHERE `server`='$server'"; + + if($group != NULL) + $sql_delete .= " AND `group`='$group'"; + + if($subgroup != NULL) + $sql_delete .= " AND `subgroup`='$subgroup'"; + + if ($leaf != NULL) + $sql_delete .= " AND `leaf`='$leaf'"; + + if ($c->debug) + file_put_contents("/tmp/debug.txt", "\nrmSQL(".$sql_delete.")", FILE_APPEND); + + mysql_query($sql_delete, $db); + return true; + } + + function encode($str) + { + return addslashes(urlencode($str)); + } + + function decode($str) + { + return urldecode(stripslashes($str)); + } + +} + +?> \ No newline at end of file Modified: trunk/testcase/container_generic.php =================================================================== --- trunk/testcase/container_generic.php 2006-12-04 17:12:10 UTC (rev 887) +++ trunk/testcase/container_generic.php 2006-12-06 15:35:25 UTC (rev 888) @@ -31,7 +31,7 @@ require_once dirname(__FILE__)."/../src/pfcglobalconfig.class.php"; $params = array(); $params["title"] = "testcase -> pfccontainer_".$this->type; - $params["serverid"] = md5(__FILE__/* . time()*/); + $params["serverid"] = md5(__FILE__ . time()); $params["container_type"] = $this->type; $this->c = new pfcGlobalConfig($params); $this->ct = $this->c->getContainerInstance(); @@ -296,7 +296,7 @@ $ret = $ct->getMeta($group, $subgroup, $leaf, true); $this->assertEquals($ret['value'][0], $leafvalue, "the leaf value is wrong"); } - + function test_getMeta_Generic_1() { $c =& $this->c; @@ -344,7 +344,7 @@ $time = time(); $ret = $ct->getMeta($group, $subgroup); - asort($ret["value"]); + sort($ret["value"]); $this->assertEquals(count($ret["timestamp"]), 2, "number of leaf is wrong"); $this->assertEquals($ret["timestamp"][0], $time, "the leaf timestamp is wrong"); $this->assertEquals($ret["timestamp"][1], $time, "the leaf timestamp is wrong"); @@ -368,16 +368,15 @@ $ct->setMeta($group, $subgroup2, $leaf1); $ct->setMeta($group, $subgroup2, $leaf2); $time = time(); - + $ret = $ct->getMeta($group); - asort($ret["value"]); - $this->assertEquals(count($ret["timestamp"]), 2, "number of subgroup is wrong"); - $this->assertEquals($ret["timestamp"][0], $time, "the subgroup timestamp is wrong"); - $this->assertEquals($ret["timestamp"][1], $time, "the subgroup timestamp is wrong"); - $this->assertEquals($ret["value"][0], $subgroup1, "the subgroup name is wrong"); - $this->assertEquals($ret["value"][1], $subgroup2, "the subgroup name is wrong"); + sort($ret["value"]); + $this->assertEquals(2, count($ret["timestamp"]), "number of subgroup is wrong"); + $this->assertEquals($time, $ret["timestamp"][0], "the subgroup timestamp is wrong"); + $this->assertEquals($time, $ret["timestamp"][1], "the subgroup timestamp is wrong"); + $this->assertEquals($subgroup1, $ret["value"][0], "the subgroup name is wrong"); + $this->assertEquals($subgroup2, $ret["value"][1], "the subgroup name is wrong"); } - } ?> Added: trunk/testcase/container_mysql.php =================================================================== --- trunk/testcase/container_mysql.php (rev 0) +++ trunk/testcase/container_mysql.php 2006-12-06 15:35:25 UTC (rev 888) @@ -0,0 +1,41 @@ +<?php + +require_once "container_generic.php"; + +class pfcContainerTestcase_Mysql extends pfcContainerTestcase +{ + // constructor of the test suite + function pfcContainerTestcase_Mysql($name) + { + $this->type = "Mysql"; + $this->pfcContainerTestcase($name); + } + + // called before the test functions will be executed + // this function is defined in PHPUnit_TestCase and overwritten + // here + function setUp() + { + pfcContainerTestcase::setUp(); + } + + // called after the test functions are executed + // this function is defined in PHPUnit_TestCase and overwritten + // here + function tearDown() + { + pfcContainerTestcase::tearDown(); + } +} + +// on desactive le timeout car se script peut mettre bcp de temps a s'executer +ini_set('max_execution_time', 0); + +$suite = new PHPUnit_TestSuite(); +$suite->addTestSuite("pfcContainerTestcase_Mysql"); +$result =& PHPUnit::run($suite); +echo "<pre>"; +print_r($result->toString()); +echo "</pre>"; + +?> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-07 17:56:02
|
Revision: 892 http://svn.sourceforge.net/phpfreechat/?rev=892&view=rev Author: kerphi Date: 2006-12-07 09:55:46 -0800 (Thu, 07 Dec 2006) Log Message: ----------- integrate the new command parsing function http://www.phpfreechat.net/forum/viewtopic.php?id=872 Modified Paths: -------------- trunk/src/pfccommand.class.php trunk/src/phpfreechat.class.php Added Paths: ----------- trunk/testcase/parsecommand.php Modified: trunk/src/pfccommand.class.php =================================================================== --- trunk/src/pfccommand.class.php 2006-12-07 14:38:34 UTC (rev 891) +++ trunk/src/pfccommand.class.php 2006-12-07 17:55:46 UTC (rev 892) @@ -190,7 +190,50 @@ $xml_reponse->addScript("trace('".$msg."');"); } + + function ParseCommand($cmd_str) + { + $pattern_quote = '/([^\\\]|^)"([^"]+[^\\\])"/'; + $pattern_quote = '/"([^"]+)"/'; + $pattern_noquote = '/([^"\s]+)/'; + $pattern_command = '/^\/([a-z0-9]+)\s*(.*)/'; + $result = array(); + // parse the command name (ex: '/invite') + if (preg_match($pattern_command, $cmd_str, $res)) + { + $cmd = $res[1]; + $params_str = $res[2]; + // parse the quotted parameters (ex: '/invite "nickname with spaces"') + preg_match_all($pattern_quote,$params_str,$res1,PREG_OFFSET_CAPTURE); + $params_res = $res1[1]; + // split the parameters string + $nospaces = preg_split($pattern_quote,$params_str,-1,PREG_SPLIT_OFFSET_CAPTURE|PREG_SPLIT_NO_EMPTY); + foreach($nospaces as $p) + { + // parse the splited blocks with unquotted parameter pattern (ex: '/invite nicknamewithoutspace') + preg_match_all($pattern_noquote,$p[0],$res2,PREG_OFFSET_CAPTURE); + foreach( $res2[1] as $p2 ) + { + $p2[1] += $p[1]; + $params_res[] = $p2; + } + } + + // order the array by offset + $params = array(); + foreach($params_res as $p) $params[$p[1]] = $p[0]; + ksort($params); + $params = array_values($params); + $params = array_map("trim",$params); + + $result['cmdstr'] = $cmd_str; + $result['cmdname'] = $cmd; + $result['params'] = $params; + } + return $result; + } + } -?> +?> \ No newline at end of file Modified: trunk/src/phpfreechat.class.php =================================================================== --- trunk/src/phpfreechat.class.php 2006-12-07 14:38:34 UTC (rev 891) +++ trunk/src/phpfreechat.class.php 2006-12-07 17:55:46 UTC (rev 892) @@ -321,37 +321,28 @@ $u =& pfcUserConfig::Instance(); if ($c->debug) ob_start(); // capture output - + $xml_reponse = new xajaxResponse(); // check the command - $rawcmd = ""; - $clientid = ""; + $cmdstr = ""; + $cmdname = ""; + $clientid = ""; $recipient = ""; $recipientid = ""; - $param = ""; - $sender = ""; - //if (preg_match("/^\/([a-z]*) ([0-9a-f]*) ([0-9a-f]*)( (.*)|)/", $request, $res)) - //if (preg_match("/^\/([a-z]+) ([0-9a-f]+) ([0-9a-f]+) (.*)/", $request, $res)) - if (preg_match("/^\/([a-zA-Z0-9]+) ([0-9a-f]+) ([0-9a-f]+)( (.*)|)/", $request, $res)) - { - - $rawcmd = strtolower(isset($res[1]) ? $res[1] : ""); - $clientid = isset($res[2]) ? $res[2] : ""; - $recipientid = isset($res[3]) ? $res[3] : ""; - $param = isset($res[5]) ? $res[5] : ""; - $sender = $u->nick; - // $recipient = "home"; + $param = ""; + $sender = ""; - //if ($rawcmd == "join") - // trigger_error(var_export($res)); - - } - - //if ($rawcmd == "join") - //trigger_error("channels=".var_export($u->channels)); - //trigger_error("pvs=".var_export($u->privmsg)); + $res = pfcCommand::ParseCommand($request); + $cmdstr = isset($res['cmdstr']) ? $res['cmdstr'] : $request; + $cmdname = strtolower(isset($res['cmdname']) ? $res['cmdname'] : ''); + $clientid = isset($res['params'][0]) ? $res['params'][0] : ''; + $recipientid = isset($res['params'][1]) ? $res['params'][1] : ""; + $params = array_slice($res['params'],2); + $param = implode(" ",$params); // to keep compatibility (will be removed) + $sender = $u->nick; + // translate the recipientid to the channel name if (isset($u->channels[$recipientid])) { @@ -363,10 +354,10 @@ // @todo: move this code in a proxy - if ($rawcmd != "update" && - $rawcmd != "leave" && // do not open the pv tab when other user close the tab - $rawcmd != "quit" && - $rawcmd != "privmsg2") + if ($cmdname != "update" && + $cmdname != "leave" && // do not open the pv tab when other user close the tab + $cmdname != "quit" && + $cmdname != "privmsg2") { // alert the other from the new pv // (warn other user that someone talk to him) @@ -435,10 +426,11 @@ } - $cmd =& pfcCommand::Factory($rawcmd); + $cmd =& pfcCommand::Factory($cmdname); $cmdp = array(); $cmdp["clientid"] = $clientid; $cmdp["param"] = $param; + $cmdp["params"] = $params; $cmdp["sender"] = $sender; $cmdp["recipient"] = $recipient; $cmdp["recipientid"] = $recipientid; @@ -455,7 +447,7 @@ $cmd =& pfcCommand::Factory("error"); $cmdp = array(); $cmdp["clientid"] = $clientid; - $cmdp["param"] = _pfc("Unknown command [%s]",stripslashes("/".$rawcmd." ".$param)); + $cmdp["param"] = _pfc("Unknown command [%s]",stripslashes("/".$cmdname." ".$param)); $cmdp["sender"] = $sender; $cmdp["recipient"] = $recipient; $cmdp["recipientid"] = $recipientid; @@ -467,8 +459,8 @@ // do not update twice // do not update when the user just quit - if ($rawcmd != "update" && - $rawcmd != "quit" && + if ($cmdname != "update" && + $cmdname != "quit" && (!isset($u->nick) || $u->nick != "")) { // force an update just after a command is sent Added: trunk/testcase/parsecommand.php =================================================================== --- trunk/testcase/parsecommand.php (rev 0) +++ trunk/testcase/parsecommand.php 2006-12-07 17:55:46 UTC (rev 892) @@ -0,0 +1,51 @@ +<?php + +require_once dirname(__FILE__).'/../src/pfccommand.class.php'; + +$results = array(); +$results[] = array('cmdstr' => '/cmdname', + 'cmdname' => 'cmdname', + 'params' => array()); +$results[] = array('cmdstr' => '/cmdname "param1" "param2"', + 'cmdname' => 'cmdname', + 'params' => array('param1','param2')); +$results[] = array('cmdstr' => '/cmdname "param1" "param2" "param3"', + 'cmdname' => 'cmdname', + 'params' => array('param1','param2','param3')); +$results[] = array('cmdstr' => '/cmdname "param1 with spaces" "param2 with spaces"', + 'cmdname' => 'cmdname', + 'params' => array('param1 with spaces','param2 with spaces')); +$results[] = array('cmdstr' => '/cmdname000 "param1" "param2"', + 'cmdname' => 'cmdname000', + 'params' => array('param1','param2')); +$results[] = array('cmdstr' => '/cmdname param1 param2', + 'cmdname' => 'cmdname', + 'params' => array('param1','param2')); +$results[] = array('cmdstr' => '/cmdname "param1 with spaces" param2 param3', + 'cmdname' => 'cmdname', + 'params' => array('param1 with spaces','param2','param3')); +$results[] = array('cmdstr' => '/cmdname "param1" param2 "param3 with spaces" param4', + 'cmdname' => 'cmdname', + 'params' => array('param1', 'param2', 'param3 with spaces', 'param4')); +$results[] = array('cmdstr' => '/cmdname "param1""param2"', + 'cmdname' => 'cmdname', + 'params' => array('param1', 'param2')); +$results[] = array('cmdstr' => '/cmdname "param1withoutspace"', + 'cmdname' => 'cmdname', + 'params' => array('param1withoutspace')); +echo '<pre>'; +for($i = 0; $i<count($results); $i++) +{ + $command = $results[$i]['cmdstr']; + $result = pfcCommand::ParseCommand($command); + if ($result == $results[$i]) + echo "OK => $command\n"; + else + { + print_r($result); + echo "KO => $command\n"; + } +} +echo '</pre>'; + +?> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-08 13:45:27
|
Revision: 893 http://svn.sourceforge.net/phpfreechat/?rev=893&view=rev Author: kerphi Date: 2006-12-08 05:45:26 -0800 (Fri, 08 Dec 2006) Log Message: ----------- remove annoying blinking when the sound notifier is started Modified Paths: -------------- trunk/src/client/pfcgui.js trunk/themes/default/style.css Modified: trunk/src/client/pfcgui.js =================================================================== --- trunk/src/client/pfcgui.js 2006-12-07 17:55:46 UTC (rev 892) +++ trunk/src/client/pfcgui.js 2006-12-08 13:45:26 UTC (rev 893) @@ -306,10 +306,10 @@ var soundcontainer = document.getElementById('pfc_sound_container'); if (pfc.issoundenable) { - var flash = '<object style="visibility:hidden" classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" id="obj1" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" border="0">'; + var flash = '<object style="visibility:hidden" classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" width="0" height="0">'; flash += '<param name="movie" value="' + pfc.res.getFileUrl('sound.swf') + '">'; flash += '<param name="quality" value="High">'; - flash += '<embed src="' + pfc.res.getFileUrl('sound.swf') + '" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" name="obj1">'; + flash += '<embed style="visibility:hidden" src="' + pfc.res.getFileUrl('sound.swf') + '" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="0" height="0" />'; flash += '</object>'; soundcontainer.innerHTML = flash; } @@ -709,7 +709,7 @@ // sound container box : <div id="pfc_sound_container"> var soundcontainerbox = document.createElement('div'); soundcontainerbox.setAttribute('id', 'pfc_sound_container'); - inputcontainer.appendChild(soundcontainerbox); + container.appendChild(soundcontainerbox); } }; Modified: trunk/themes/default/style.css =================================================================== --- trunk/themes/default/style.css 2006-12-07 17:55:46 UTC (rev 892) +++ trunk/themes/default/style.css 2006-12-08 13:45:26 UTC (rev 893) @@ -348,7 +348,10 @@ font-size: 11px; } div#pfc_sound_container { + position: absolute; + top: 0; + left: 0; visibility:hidden; /* this box is hidden because it contains a flash sound media (sound.swf)*/ width: 0; height: 0; -} \ No newline at end of file +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-08 13:55:37
|
Revision: 894 http://svn.sourceforge.net/phpfreechat/?rev=894&view=rev Author: kerphi Date: 2006-12-08 05:55:33 -0800 (Fri, 08 Dec 2006) Log Message: ----------- update i18n labels Modified Paths: -------------- trunk/i18n/ar_LB/main.php trunk/i18n/ba_BA/main.php trunk/i18n/bg_BG/main.php trunk/i18n/bn_BD/main.php trunk/i18n/de_DE-formal/main.php trunk/i18n/de_DE-informal/main.php trunk/i18n/el_GR/main.php trunk/i18n/en_US/main.php trunk/i18n/eo/main.php trunk/i18n/es_ES/main.php trunk/i18n/fr_FR/main.php trunk/i18n/hu_HU/main.php trunk/i18n/hy_AM/main.php trunk/i18n/id_ID/main.php trunk/i18n/it_IT/main.php trunk/i18n/ja_JP/main.php trunk/i18n/nb_NO/main.php trunk/i18n/nl_NL/main.php trunk/i18n/pl_PL/main.php trunk/i18n/pt_BR/main.php trunk/i18n/pt_PT/main.php trunk/i18n/ru_RU/main.php trunk/i18n/sr_CS/main.php trunk/i18n/sv_SE/main.php trunk/i18n/tr_TR/main.php trunk/i18n/uk_UA/main.php trunk/i18n/zh_CN/main.php trunk/i18n/zh_TW/main.php trunk/src/client/chat.js.tpl.php trunk/src/client/pfcclient.js Modified: trunk/i18n/ar_LB/main.php =================================================================== --- trunk/i18n/ar_LB/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/ar_LB/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -306,4 +306,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/ba_BA/main.php =================================================================== --- trunk/i18n/ba_BA/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/ba_BA/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -309,4 +309,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/bg_BG/main.php =================================================================== --- trunk/i18n/bg_BG/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/bg_BG/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -304,4 +304,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/bn_BD/main.php =================================================================== --- trunk/i18n/bn_BD/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/bn_BD/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -306,4 +306,29 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "পাঠাও"; -?> + +// line 40 in banlist.class.php +$GLOBALS["i18n"]["'/unban all' will unban all the users on this channel"] = ""; + +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/de_DE-formal/main.php =================================================================== --- trunk/i18n/de_DE-formal/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/de_DE-formal/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -309,4 +309,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/de_DE-informal/main.php =================================================================== --- trunk/i18n/de_DE-informal/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/de_DE-informal/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -309,4 +309,26 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Senden"; -?> + +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/el_GR/main.php =================================================================== --- trunk/i18n/el_GR/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/el_GR/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -305,4 +305,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/en_US/main.php =================================================================== --- trunk/i18n/en_US/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/en_US/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -306,4 +306,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Send"; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = "Mysql container: connect error"; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = "Mysql container: create database error '%s'"; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = "Mysql container: create table error '%s'"; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = "You are not allowed to speak to yourself"; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = "Choosen nickname is not allowed"; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = "Enable sound notifications"; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = "Disable sound notifications"; + ?> \ No newline at end of file Modified: trunk/i18n/eo/main.php =================================================================== --- trunk/i18n/eo/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/eo/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -174,3 +174,160 @@ $GLOBALS["i18n"]["'%s' parameter is not valid. Available values are : '%s'"] = "'%s' parameter is not valid. Available values are: '%s'"; ?> +// line 183 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = ""; + +// line 211 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["My room"] = ""; + +// line 284 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = ""; + +// line 296 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = ""; + +// line 302 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 421 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = ""; + +// line 454 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = ""; + +// line 576 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = ""; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = ""; + +// line 191 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = ""; + +// line 26 in unban.class.php +$GLOBALS["i18n"]["Missing parameter"] = ""; + +// line 45 in ban.class.php +$GLOBALS["i18n"]["banished from %s by %s"] = ""; + +// line 24 in banlist.class.php +$GLOBALS["i18n"]["The banished user's id list is:"] = ""; + +// line 37 in banlist.class.php +$GLOBALS["i18n"]["Empty"] = ""; + +// line 39 in banlist.class.php +$GLOBALS["i18n"]["'/unban {id}' will unban the user identified by {id}"] = ""; + +// line 40 in banlist.class.php +$GLOBALS["i18n"]["'/unban all' will unban all the users on this channel"] = ""; + +// line 32 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = ""; + +// line 64 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = ""; + +// line 69 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = ""; + +// line 49 in join.class.php +$GLOBALS["i18n"]["%s joins %s"] = ""; + +// line 81 in noflood.class.php +$GLOBALS["i18n"]["kicked from %s by %s"] = ""; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = ""; + +// line 50 in send.class.php +$GLOBALS["i18n"]["Can't send the message, %s is offline"] = ""; + +// line 34 in unban.class.php +$GLOBALS["i18n"]["Nobody has been unbanished"] = ""; + +// line 49 in unban.class.php +$GLOBALS["i18n"]["%s has been unbanished"] = ""; + +// line 56 in unban.class.php +$GLOBALS["i18n"]["%s users have been unbanished"] = ""; + +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 53 in auth.class.php +$GLOBALS["i18n"]["You are not allowed to run '%s' command"] = ""; + +// line 73 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because you are banished"] = ""; + +// line 83 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because the channels list is restricted"] = ""; + +// line 57 in checknickchange.class.php +$GLOBALS["i18n"]["You are not allowed to change your nickname"] = ""; + +// line 59 in checktimeout.class.php +$GLOBALS["i18n"]["%s quit (timeout)"] = ""; + +// line 75 in noflood.class.php +$GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = ""; + +// line 46 in chat.js.tpl.php +$GLOBALS["i18n"]["Do you really want to leave this room ?"] = ""; + +// line 60 in chat.js.tpl.php +$GLOBALS["i18n"]["Private message"] = ""; + +// line 61 in chat.js.tpl.php +$GLOBALS["i18n"]["Close this tab"] = ""; + +// line 71 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = ""; + +// line 72 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = ""; + +// line 73 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = ""; + +// line 74 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = ""; + +// line 75 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = ""; + +// line 76 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = ""; + +// line 77 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = ""; + +// line 78 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = ""; + +// line 79 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Close"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/es_ES/main.php =================================================================== --- trunk/i18n/es_ES/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/es_ES/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -305,4 +305,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/fr_FR/main.php =================================================================== --- trunk/i18n/fr_FR/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/fr_FR/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -306,4 +306,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Envoyer"; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = "Erreur du conteneur mysql : connexion"; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = "Erreur du conteneur mysql : création de la base de donnée '%s'"; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = "Erreur du conteneur mysql : création de la table '%s'"; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = "Vous n'êtes pas autorisés à vous parler"; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = "Le pseudonyme choisi n'est pas autorisé"; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = "Activer la notification sonore"; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = "Désactiver la notification sonore"; + ?> \ No newline at end of file Modified: trunk/i18n/hu_HU/main.php =================================================================== --- trunk/i18n/hu_HU/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/hu_HU/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -308,4 +308,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/hy_AM/main.php =================================================================== --- trunk/i18n/hy_AM/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/hy_AM/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -308,4 +308,26 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Ասել"; -?> + +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/id_ID/main.php =================================================================== --- trunk/i18n/id_ID/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/id_ID/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -309,4 +309,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/it_IT/main.php =================================================================== --- trunk/i18n/it_IT/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/it_IT/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -305,4 +305,29 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Invia"; -?> + +// line 302 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/ja_JP/main.php =================================================================== --- trunk/i18n/ja_JP/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/ja_JP/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -307,4 +307,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "送信する"; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/nb_NO/main.php =================================================================== --- trunk/i18n/nb_NO/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/nb_NO/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -306,4 +306,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/nl_NL/main.php =================================================================== --- trunk/i18n/nl_NL/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/nl_NL/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -307,4 +307,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/pl_PL/main.php =================================================================== --- trunk/i18n/pl_PL/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/pl_PL/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -307,4 +307,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/pt_BR/main.php =================================================================== --- trunk/i18n/pt_BR/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/pt_BR/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -308,4 +308,26 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Enviar"; -?> + +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/pt_PT/main.php =================================================================== --- trunk/i18n/pt_PT/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/pt_PT/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -307,4 +307,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/ru_RU/main.php =================================================================== --- trunk/i18n/ru_RU/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/ru_RU/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -310,4 +310,26 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Послать"; -?> + +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/sr_CS/main.php =================================================================== --- trunk/i18n/sr_CS/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/sr_CS/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -309,4 +309,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/sv_SE/main.php =================================================================== --- trunk/i18n/sv_SE/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/sv_SE/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -310,4 +310,29 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = "Skicka"; -?> + +// line 302 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = ""; + +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + +?> \ No newline at end of file Modified: trunk/i18n/tr_TR/main.php =================================================================== --- trunk/i18n/tr_TR/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/tr_TR/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -305,4 +305,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/uk_UA/main.php =================================================================== --- trunk/i18n/uk_UA/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/uk_UA/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -306,4 +306,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/zh_CN/main.php =================================================================== --- trunk/i18n/zh_CN/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/zh_CN/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -310,4 +310,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/i18n/zh_TW/main.php =================================================================== --- trunk/i18n/zh_TW/main.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/i18n/zh_TW/main.php 2006-12-08 13:55:33 UTC (rev 894) @@ -306,4 +306,25 @@ // line 88 in chat.js.tpl.php $GLOBALS["i18n"]["Send"] = ""; +// line 86 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: connect error"] = ""; + +// line 101 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create database error '%s'"] = ""; + +// line 112 in mysql.class.php +$GLOBALS["i18n"]["Mysql container: create table error '%s'"] = ""; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["You are not allowed to speak to yourself"] = ""; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is not allowed"] = ""; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Enable sound notifications"] = ""; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["Disable sound notifications"] = ""; + ?> \ No newline at end of file Modified: trunk/src/client/chat.js.tpl.php =================================================================== --- trunk/src/client/chat.js.tpl.php 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/src/client/chat.js.tpl.php 2006-12-08 13:55:33 UTC (rev 894) @@ -80,8 +80,8 @@ "You are not allowed to speak to yourself", // _pfc "Close", // _pfc "Choosen nickname is not allowed", // _pfc - "Play sound", // _pfc - "Mute sound", // _pfc + "Enable sound notifications", // _pfc + "Disable sound notifications", // _pfc ); foreach($labels_to_load as $l) { Modified: trunk/src/client/pfcclient.js =================================================================== --- trunk/src/client/pfcclient.js 2006-12-08 13:45:26 UTC (rev 893) +++ trunk/src/client/pfcclient.js 2006-12-08 13:55:33 UTC (rev 894) @@ -1434,13 +1434,13 @@ if (this.issoundenable) { snd_icon.src = this.res.getFileUrl('images/sound-on.gif'); - snd_icon.alt = this.res.getLabel('Mute sound'); + snd_icon.alt = this.res.getLabel('Disable sound notifications'); snd_icon.title = snd_icon.alt; } else { snd_icon.src = this.res.getFileUrl('images/sound-off.gif'); - snd_icon.alt = this.res.getLabel('Play sound'); + snd_icon.alt = this.res.getLabel('Enable sound notifications'); snd_icon.title = snd_icon.alt; } }, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-09 21:07:55
|
Revision: 897 http://svn.sourceforge.net/phpfreechat/?rev=897&view=rev Author: kerphi Date: 2006-12-09 13:07:47 -0800 (Sat, 09 Dec 2006) Log Message: ----------- [en] Makes possible to have commands with multi parameters. Quotes (") are used to identify parameters with spaces. see: http://www.phpfreechat.net/forum/viewtopic.php?id=872 [5h15] [fr] Rend possible les commandes ayant plusieurs param?\195?\168tres. Les doubles guillemets (") sont utilis?\195?\169s pour s?\195?\169parer les param?\195?\168tres contenant des espaces. cf: http://www.phpfreechat.net/forum/viewtopic.php?id=872 [5h15] Modified Paths: -------------- trunk/demo/demo15_multiple_channel.php trunk/demo/demo34_add_a_link_on_nicknames/mytheme/customize.js trunk/demo/demo50_data/mytheme/customize.js trunk/src/client/pfcclient.js trunk/src/client/pfcgui.js trunk/src/commands/asknick.class.php trunk/src/commands/ban.class.php trunk/src/commands/banlist.class.php trunk/src/commands/kick.class.php trunk/src/commands/leave.class.php trunk/src/commands/unban.class.php trunk/src/phpfreechat.class.php Modified: trunk/demo/demo15_multiple_channel.php =================================================================== --- trunk/demo/demo15_multiple_channel.php 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/demo/demo15_multiple_channel.php 2006-12-09 21:07:47 UTC (rev 897) @@ -24,8 +24,8 @@ <body> <p>Rooms list:</p> <ul> - <li><a href="#" onclick="pfc.sendRequest('/join', 'room1');">room1</a></li> - <li><a href="#" onclick="pfc.sendRequest('/join', 'room2');">room2</a></li> + <li><a href="#" onclick="pfc.sendRequest('/join room1');">room1</a></li> + <li><a href="#" onclick="pfc.sendRequest('/join room2');">room2</a></li> </ul> <?php $chat->printChat(); ?> Modified: trunk/demo/demo34_add_a_link_on_nicknames/mytheme/customize.js =================================================================== --- trunk/demo/demo34_add_a_link_on_nicknames/mytheme/customize.js 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/demo/demo34_add_a_link_on_nicknames/mytheme/customize.js 2006-12-09 21:07:47 UTC (rev 897) @@ -18,7 +18,7 @@ var a = document.createElement('a'); a.setAttribute('href', ''); a.pfc_nick = nicks[i]; - a.onclick = function(){pfc.sendRequest('/privmsg', this.pfc_nick); return false;} + a.onclick = function(){pfc.sendRequest('/privmsg "'+this.pfc_nick+'"'); return false;} a.appendChild(img); li.appendChild(a); } @@ -58,4 +58,4 @@ else nickdiv.appendChild(ul,fc); this.colorizeNicks(nickdiv); -} \ No newline at end of file +} Modified: trunk/demo/demo50_data/mytheme/customize.js =================================================================== --- trunk/demo/demo50_data/mytheme/customize.js 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/demo/demo50_data/mytheme/customize.js 2006-12-09 21:07:47 UTC (rev 897) @@ -38,7 +38,7 @@ a.pfc_parent = div; a.onclick = function(evt){ var nick = pfc.getUserMeta(this.pfc_nickid,'nick'); - pfc.sendRequest('/privmsg', nick); + pfc.sendRequest('/privmsg "'+nick+'"'); this.pfc_parent.style.display = 'none'; return false; } @@ -96,4 +96,4 @@ div.appendChild(img); this.nickwhoisbox[nickid] = div; - } \ No newline at end of file + } Modified: trunk/src/client/pfcclient.js =================================================================== --- trunk/src/client/pfcclient.js 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/client/pfcclient.js 2006-12-09 21:07:47 UTC (rev 897) @@ -138,7 +138,7 @@ if (nickname == '') nickname = this.nickname; var newnick = prompt(this.res.getLabel('Please enter your nickname'), nickname); if (newnick) - this.sendRequest('/nick', newnick); + this.sendRequest('/nick "'+newnick+'"'); }, /** @@ -158,7 +158,7 @@ this.askNick(this.nickname); else { - this.sendRequest('/nick', this.nickname); + this.sendRequest('/nick "'+this.nickname+'"'); } // give focus the the input text box if wanted @@ -266,34 +266,37 @@ for (var i=0; i<pfc_defaultchan.length; i++) { if (i<pfc_defaultchan.length-1) - cmd = "/join2"; + cmd = '/join2'; else - cmd = "/join"; - this.sendRequest(cmd, pfc_defaultchan[i]); + cmd = '/join'; + cmd += ' "'+pfc_defaultchan[i]+'"'; + this.sendRequest(cmd); } // now join channels comming from sessions for (var i=0; i<pfc_userchan.length; i++) { if (i<pfc_userchan.length-1) - cmd = "/join2"; + cmd = '/join2'; else - cmd = "/join"; - this.sendRequest(cmd, pfc_userchan[i]); + cmd = '/join'; + cmd += ' "'+pfc_userchan[i]+'"'; + this.sendRequest(cmd); } // join the default privmsg comming from the parameter list for (var i=0; i<pfc_defaultprivmsg.length; i++) { if (i<pfc_defaultprivmsg.length-1) - cmd = "/privmsg2"; + cmd = '/privmsg2'; else - cmd = "/privmsg"; - this.sendRequest(cmd, pfc_defaultprivmsg[i]); + cmd = '/privmsg'; + cmd += ' "'+pfc_defaultprivmsg[i]+'"'; + this.sendRequest(cmd); } // now join privmsg comming from the sessions for (var i=0; i<pfc_userprivmsg.length; i++) { - this.sendRequest("/privmsg", pfc_userprivmsg[i]); + this.sendRequest('/privmsg "'+pfc_userprivmsg[i]+'"'); } } @@ -457,7 +460,7 @@ var nickid = meta['users']['nickid'][i]; var nick = meta['users']['nick'][i]; var um = this.getAllUserMeta(nickid); - if (!um) this.sendRequest('/whois2', nick); + if (!um) this.sendRequest('/whois2 "'+nick+'"'); } // update the nick list display on the current channel @@ -541,7 +544,7 @@ // a user command cmd = wval.replace(re, '$1'); param = wval.replace(re, '$3'); - this.sendRequest(cmd, param.substr(0, pfc_max_text_len + this.clientid.length)); + this.sendRequest(cmd +' '+ param.substr(0, pfc_max_text_len + 2*this.clientid.length)); } else { @@ -558,7 +561,7 @@ if (this.current_text_color != '' && wval.length != '') wval = '[color=#' + this.current_text_color + '] ' + wval + ' [/color]'; - this.sendRequest('/send', wval); + this.sendRequest('/send '+ wval); } w.value = ''; return false; @@ -885,28 +888,14 @@ * Call the ajax request function * Will query the server */ - sendRequest: function(cmd, param) + sendRequest: function(cmd) { - var recipientid = this.gui.getTabId(); - - - var req = cmd+" "+this.clientid+" "+(recipientid==''?'0':recipientid)+(param?" "+param : ""); if (pfc_debug) - if (cmd != "/update") trace('sendRequest: '+req); - return eval('pfc_handleRequest(req);'); - }, - - // @todo remplacer sendRequest par cette fonction (cf /leave dans pfcgui.js) - sendRequest2: function(cmd) - { + if (cmd != "/update") trace('sendRequest: '+cmd); var rx = new RegExp('(^\/[^ ]+) *(.*)','ig'); - var ttt = cmd.split(rx); - var recipientid = this.gui.getTabId(); - var req = ttt[1]+" "+this.clientid+" "+(recipientid==''?'0':recipientid)+' '+ttt[2]; - if (pfc_debug) - if (cmd != "/update") trace('sendRequest: '+req); - return eval('pfc_handleRequest(req);'); + cmd = cmd.replace(rx, '$1 '+this.clientid+' '+(recipientid==''?'0':recipientid)+' $2'); + return eval('pfc_handleRequest(cmd);'); }, /** @@ -1028,7 +1017,7 @@ a.pfc_parent = div; a.onclick = function(evt){ var nick = pfc.getUserMeta(this.pfc_nickid,'nick'); - pfc.sendRequest('/privmsg', nick); + pfc.sendRequest('/privmsg "'+nick+'"'); this.pfc_parent.style.display = 'none'; return false; } Modified: trunk/src/client/pfcgui.js =================================================================== --- trunk/src/client/pfcgui.js 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/client/pfcgui.js 2006-12-09 21:07:47 UTC (rev 897) @@ -257,9 +257,12 @@ var a2 = document.createElement('a'); a2.pfc_tabid = tabid; a2.pfc_tabname = name; + a2.pfc_tabtype = type; a2.onclick = function(){ var res = confirm(pfc.res.getLabel('Do you really want to leave this room ?')); - if (res == true) pfc.sendRequest2('/leave "'+this.pfc_tabname+'"'); return false; + if (res == true) + pfc.sendRequest('/leave '+this.pfc_tabtype+' "'+this.pfc_tabname+'"'); + return false; } a2.alt = pfc.res.getLabel('Close this tab'); a2.title = a2.alt; Modified: trunk/src/commands/asknick.class.php =================================================================== --- trunk/src/commands/asknick.class.php 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/commands/asknick.class.php 2006-12-09 21:07:47 UTC (rev 897) @@ -34,7 +34,7 @@ } else $msg = "'".$nicktochange."' is used, please choose another nickname."; - $xml_reponse->addScript("var newnick = prompt('".addslashes($msg)."', '".addslashes($nicktochange)."'); if (newnick) pfc.sendRequest('/nick', newnick);"); + $xml_reponse->addScript("var newnick = prompt('".addslashes($msg)."', '".addslashes($nicktochange)."'); if (newnick) pfc.sendRequest('/nick \"'+newnick+'\"');"); } } } Modified: trunk/src/commands/ban.class.php =================================================================== --- trunk/src/commands/ban.class.php 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/commands/ban.class.php 2006-12-09 21:07:47 UTC (rev 897) @@ -18,7 +18,12 @@ $c =& $this->c; $u =& $this->u; - if (trim($params[0]) == '') + $nick = isset($params[0]) ? trim($params[0]) : ''; + $reason = isset($params[1]) ? $params[1] : ''; + if ($reason == '') $reason = _pfc("no reason"); + $channame = $u->channels[$recipientid]["name"]; + + if ($nick == '') { // error $cmdp = $p; @@ -30,11 +35,11 @@ } $ct =& $c->getContainerInstance(); - $nickidtoban = $ct->getNickId($params[0]); + $nickidtoban = $ct->getNickId($nick); // notify all the channel $cmdp = $p; - $cmdp["param"] = _pfc("banished from %s by %s", $recipient, $sender); + $cmdp["param"] = _pfc("banished from %s by %s", $channame, $sender); $cmdp["flag"] = 1; $cmd =& pfcCommand::Factory("notice"); $cmd->run($xml_reponse, $cmdp); @@ -42,8 +47,8 @@ // kick the user (maybe in the future, it will be dissociate in a /kickban command) $cmdp = $p; $cmdp["params"] = array(); - $cmdp["params"][] = $params[0]; // nickname to kick - $cmdp["params"][] = $params[1]; // reason + $cmdp["params"][] = $nick; // nickname to kick + $cmdp["params"][] = $reason; // reason $cmd =& pfcCommand::Factory("kick"); $cmd->run($xml_reponse, $cmdp); Modified: trunk/src/commands/banlist.class.php =================================================================== --- trunk/src/commands/banlist.class.php 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/commands/banlist.class.php 2006-12-09 21:07:47 UTC (rev 897) @@ -21,14 +21,14 @@ if ($banlist == NULL) $banlist = array(); else $banlist = unserialize($banlist); $msg = ""; - $msg .= "<p>"._pfc("The banished user's id list is:")."</p>"; + $msg .= "<p>"._pfc("The banished user list is:")."</p>"; if (count($banlist)>0) { $msg .= "<ul>"; foreach($banlist as $b) { $n = $ct->getNickname($b); - $msg .= "<li style=\"margin-left:50px\">".$b." (".$n.")</li>"; + $msg .= "<li style=\"margin-left:50px\">".$n."</li>"; } $msg .= "</ul>"; } @@ -36,7 +36,7 @@ { $msg .= "<p>("._pfc("Empty").")</p>"; } - $msg .= "<p>"._pfc("'/unban {id}' will unban the user identified by {id}")."</p>"; + $msg .= "<p>"._pfc("'/unban {nickname}' will unban the user identified by {nickname}")."</p>"; $msg .= "<p>"._pfc("'/unban all' will unban all the users on this channel")."</p>"; $xml_reponse->addScript("pfc.handleResponse('".$this->name."', 'ok', '".addslashes($msg)."');"); Modified: trunk/src/commands/kick.class.php =================================================================== --- trunk/src/commands/kick.class.php 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/commands/kick.class.php 2006-12-09 21:07:47 UTC (rev 897) @@ -18,7 +18,11 @@ $c =& $this->c; $u =& $this->u; - if (trim($params[0]) == '') + $nick = isset($params[0]) ? trim($params[0]) : ''; + $reason = isset($params[1]) ? $params[1] : ''; + if ($reason == '') $reason = _pfc("no reason"); + + if ($nick == '') { // error $cmdp = $p; @@ -31,12 +35,12 @@ // kicking a user just add a command to play to the aimed user metadata. $ct =& $c->getContainerInstance(); - $otherid = $ct->getNickId($params[0]); + $otherid = $ct->getNickId($nick); $channame = $u->channels[$recipientid]["name"]; $cmdstr = 'leave'; $cmdp = array(); $cmdp['params'][] = $channame; // channel name - $cmdp['params'][] = _pfc("kicked from %s by %s - reason: %s", $channame, $sender, $params[1]); // reason + $cmdp['params'][] = _pfc("kicked from %s by %s - reason: %s", $channame, $sender, $reason); // reason pfcCommand::AppendCmdToPlay($otherid, $cmdstr, $cmdp); } } Modified: trunk/src/commands/leave.class.php =================================================================== --- trunk/src/commands/leave.class.php 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/commands/leave.class.php 2006-12-09 21:07:47 UTC (rev 897) @@ -5,7 +5,7 @@ class pfcCommand_leave extends pfcCommand { - var $usage = "/leave [{channel} {reason}]"; + var $usage = "/leave [ch|pv [[{channel|nickname}] {reason}]]"; function run(&$xml_reponse, $p) { @@ -17,24 +17,55 @@ $c =& $this->c; $u =& $this->u; + $ct =& $c->getContainerInstance(); - // tab to leave can be passed in the parameters - // a reason can also be present (used for kick and ban commands) - $id = ''; $reason = ''; - if (count($params)>0) + $type = isset($params[0]) ? $params[0] : ''; + $name = isset($params[1]) ? $params[1] : ''; + $reason = isset($params[2]) ? $params[2] : ''; + + if ($type != 'ch' && $type != 'pv' && $type != '') { - $id = pfcCommand_join::GetRecipientId($params[0]); - $reason = implode(" ",array_slice($params,1)); + // error + $cmdp = $p; + $cmdp["param"] = _pfc("Missing parameter"); + $cmdp["param"] .= " (".$this->usage.")"; + $cmd =& pfcCommand::Factory("error"); + $cmd->run($xml_reponse, $cmdp); + return; } - if ($id == '') $id = $recipientid; // be default this is the current tab to leave + - // $xml_reponse->addScript("alert('sender=".addslashes($sender)."');"); - // $xml_reponse->addScript("alert('recipientid=".addslashes($id)."');"); + // get the recipientid to close (a pv or a channel) + $id = ''; + if ($type == 'ch') + { + if ($name == '') + $id = $recipientid; + else + $id = pfcCommand_join::GetRecipientId($name); + } + else if ($type == 'pv') + { + // pv + $pvnickid = $ct->getNickId($name); + $nickid = $u->nickid; + if ($pvnickid != '') + { + // generate a pvid from the two nicknames ids + $a = array($pvnickid, $nickid); sort($a); + $pvrecipient = "pv_".$a[0]."_".$a[1]; + $id = md5($pvrecipient); + } + } + else + $id = $recipientid; + + $leavech = false; $leavepv = false; - $leave_recip = ""; - $leave_id = ""; + $leave_recip = ''; + $leave_id = ''; // check into channels if ( isset($u->channels[$id]) ) @@ -72,7 +103,6 @@ } // remove the nickname from the channel/pv - $ct =& $c->getContainerInstance(); $ct->removeNick($leave_recip, $u->nickid); // reset the sessions indicators Modified: trunk/src/commands/unban.class.php =================================================================== --- trunk/src/commands/unban.class.php 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/commands/unban.class.php 2006-12-09 21:07:47 UTC (rev 897) @@ -4,12 +4,13 @@ class pfcCommand_unban extends pfcCommand { - var $usage = "/unban {id}"; + var $usage = "/unban {nickname}"; function run(&$xml_reponse, $p) { $clientid = $p["clientid"]; $param = $p["param"]; + $params = $p["params"]; $sender = $p["sender"]; $recipient = $p["recipient"]; $recipientid = $p["recipientid"]; @@ -17,9 +18,12 @@ $c =& $this->c; $u =& $this->u; - $container =& $c->getContainerInstance(); + $ct =& $c->getContainerInstance(); - if (trim($param) == "") + $nick = isset($params[0]) ? $params[0] : ''; + $nickid = $ct->getNickId($nick); + + if ($nick == "") { // error $cmdp = $p; @@ -29,29 +33,30 @@ $cmd->run($xml_reponse, $cmdp); return; } + $updated = false; $msg = "<p>"._pfc("Nobody has been unbanished")."</p>"; // update the recipient banlist - $banlist = $container->getChanMeta($recipient, 'banlist_nickid'); + $banlist = $ct->getChanMeta($recipient, 'banlist_nickid'); if ($banlist == NULL) $banlist = array(); else $banlist = unserialize($banlist); $nb = count($banlist); - if (in_array($param, $banlist)) + if (in_array($nickid, $banlist)) { - $banlist = array_diff($banlist, array($param)); - $container->setChanMeta($recipient, 'banlist_nickid', serialize($banlist)); + $banlist = array_diff($banlist, array($nickid)); + $ct->setChanMeta($recipient, 'banlist_nickid', serialize($banlist)); $updated = true; - $msg = "<p>"._pfc("%s has been unbanished", $param)."</p>"; + $msg = "<p>"._pfc("%s has been unbanished", $nick)."</p>"; } - else if ($param == "all") + else if ($nick == "all") // @todo move the "/unban all" command in another command /unbanall { $banlist = array(); - $container->setChanMeta($recipient, 'banlist_nickid', serialize($banlist)); + $ct->setChanMeta($recipient, 'banlist_nickid', serialize($banlist)); $updated = true; $msg = "<p>"._pfc("%s users have been unbanished", $nb)."</p>"; } Modified: trunk/src/phpfreechat.class.php =================================================================== --- trunk/src/phpfreechat.class.php 2006-12-09 17:31:03 UTC (rev 896) +++ trunk/src/phpfreechat.class.php 2006-12-09 21:07:47 UTC (rev 897) @@ -339,7 +339,7 @@ $cmdname = strtolower(isset($res['cmdname']) ? $res['cmdname'] : ''); $clientid = isset($res['params'][0]) ? $res['params'][0] : ''; $recipientid = isset($res['params'][1]) ? $res['params'][1] : ""; - $params = array_slice($res['params'],2); + $params = array_slice(is_array($res['params']) ? $res['params'] : array() ,2); $param = implode(" ",$params); // to keep compatibility (will be removed) $sender = $u->nick; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-17 17:11:21
|
Revision: 899 http://svn.sourceforge.net/phpfreechat/?rev=899&view=rev Author: kerphi Date: 2006-12-17 09:11:13 -0800 (Sun, 17 Dec 2006) Log Message: ----------- [en] Add the Romanian translation (thanks to Bindila Eduard Catalin) [0h15] [fr] Ajout de la traduction Roumaine (merci ?\195?\160 Bindila Eduard Catalin) [0h15] Modified Paths: -------------- trunk/demo/index.php Added Paths: ----------- trunk/demo/demo56_in_romanian.php trunk/i18n/uk_RO/ trunk/i18n/uk_RO/admin.php trunk/i18n/uk_RO/main.php Added: trunk/demo/demo56_in_romanian.php =================================================================== --- trunk/demo/demo56_in_romanian.php (rev 0) +++ trunk/demo/demo56_in_romanian.php 2006-12-17 17:11:13 UTC (rev 899) @@ -0,0 +1,36 @@ +<?php + +require_once dirname(__FILE__)."/../src/phpfreechat.class.php"; + +$params["serverid"] = md5(__FILE__); // calculate a unique id for this chat +$params["language"] = "uk_RO"; +$chat = new phpFreeChat( $params ); + +?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html> + <head> + <meta http-equiv="content-type" content="text/html; charset=utf-8" /> + <title>phpFreeChat demo</title> + + <?php $chat->printJavascript(); ?> + <?php $chat->printStyle(); ?> + + </head> + + <body> + <?php $chat->printChat(); ?> + +<?php + // print the current file + echo "<h2>The source code</h2>"; + $filename = __FILE__; + echo "<p><code>".$filename."</code></p>"; + echo "<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">"; + $content = file_get_contents($filename); + echo htmlentities($content); + echo "</pre>"; +?> + + </body> +</html> Modified: trunk/demo/index.php =================================================================== --- trunk/demo/index.php 2006-12-10 11:43:09 UTC (rev 898) +++ trunk/demo/index.php 2006-12-17 17:11:13 UTC (rev 899) @@ -121,6 +121,7 @@ <li><a href="demo52_in_bangla.php">demo52 - the Bangla translation of the chat</a></li> <li><a href="demo53_in_armenian.php">demo53 - the Armenian translation of the chat</a></li> <li><a href="demo54_in_esperanto.php">demo54 - the Esperanto translation of the chat</a></li> + <li><a href="demo56_in_romanian.php">demo56 - the Romanian translation of the chat</a></li> </ul> </div> Added: trunk/i18n/uk_RO/admin.php =================================================================== --- trunk/i18n/uk_RO/admin.php (rev 0) +++ trunk/i18n/uk_RO/admin.php 2006-12-17 17:11:13 UTC (rev 899) @@ -0,0 +1,72 @@ +<?php +/** + * i18n/uk_RO/main.php + * + * Copyright © 2006 Stephane Gully <ste...@gm...> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301 USA + */ + +/** + * Romanian translation of the messages (utf8 encoded!) + * + * @author Bindila Eduard Catalin + */ + +$GLOBALS["i18n"]["lang"] = "Romana"; + +// admin/index.php +$GLOBALS["i18n"]["Administration"] = "Administrare"; +$GLOBALS["i18n"]["Available Languages"] = "Limbi valabile"; +$GLOBALS["i18n"]["PFC version verification"] = "Verificare versiune PFC "; +$GLOBALS["i18n"]["Internet connection is not possible"] = "Conectarea nu este posibila "; +$GLOBALS["i18n"]["PFC is update"] = "PFC este update"; +$GLOBALS["i18n"]["PFC version"] = "Versiune PFC "; +$GLOBALS["i18n"]["The last official version"] = "Ultima versiune oficiala"; +$GLOBALS["i18n"]["PFC is not update"] = "PFC nu este update"; +$GLOBALS["i18n"]["Your version"] = "Versiunea ta"; +$GLOBALS["i18n"]["Download the last version %s here %s."] = "Donwloadeaza ultima versiune %s aici %s."; + + +// admin/user.php +$GLOBALS["i18n"]["Users management"] = "Administrare useri"; +$GLOBALS["i18n"]["At least one user must be declare to activate authentication."] = "Cel putin un user trebuie declarat pentru a activa autentificarea."; +$GLOBALS["i18n"]["It is not possible to delete the last user."] = "Nu este posibila stergera ultimului user."; + +$GLOBALS["i18n"]["User %s deleted."] = "Userul %s a fost sters."; +$GLOBALS["i18n"]["User %s added."] = "Userul %s a fost adaugat."; +$GLOBALS["i18n"]["User %s edited."] = "Userul %s a fost editat."; + +$GLOBALS["i18n"]["Authentication disable"] = "Autentificare dezactivata"; +$GLOBALS["i18n"]["Enable here"] = "Activeazsa aici"; +$GLOBALS["i18n"]["Authentication enable"] = "Autentificare activata"; +$GLOBALS["i18n"]["Disable here"] = "Dezactiveaza aici"; + +$GLOBALS["i18n"]["Username"] = "Nume"; +$GLOBALS["i18n"]["Password"] = "Parola"; +$GLOBALS["i18n"]["Group"] = "Grup"; + +$GLOBALS["i18n"]["Do you really want to delete %s ?"] = "Sigur vrei sa stergi userul %s ?"; +$GLOBALS["i18n"]["Add a new user"] = "Adauga user"; + +$GLOBALS["i18n"]["Edit"] = "Editeaza"; +$GLOBALS["i18n"]["Delete"] = "Sterge"; + +// admin/themes.php +$GLOBALS["i18n"]["Available themes"] = "Teme valabile"; +$GLOBALS["i18n"]["Screenshot"] = "Imagini"; + +?> \ No newline at end of file Added: trunk/i18n/uk_RO/main.php =================================================================== --- trunk/i18n/uk_RO/main.php (rev 0) +++ trunk/i18n/uk_RO/main.php 2006-12-17 17:11:13 UTC (rev 899) @@ -0,0 +1,309 @@ +<?php +/** + * i18n/uk_RO/main.php + * + * Copyright © 2006 Stephane Gully <ste...@gm...> + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the + * Free Software Foundation, 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301 USA + */ + +/** + * Romanian translation of the messages (utf8 encoded!) + * + * @author Bindila Eduard Catalin + */ + +// line 45 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["My Chat"] = "Chat-ul meu"; + +// line 201 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s not found, %s library can't be found."] = "fisierul %s nu a fost gasit, %s libriaria nu este gasita."; + +// line 355 in phpfreechat.class.php +$GLOBALS["i18n"]["Please enter your nickname"] = "Te rog sa introduci un nume (nick)"; + +// line 565 in phpfreechat.class.php +$GLOBALS["i18n"]["Text cannot be empty"] = "Textul nu poate fi gol"; + +// line 392 in phpfreechat.class.php +$GLOBALS["i18n"]["%s changes his nickname to %s"] = "%s si-a schimbat nick-ul in %s"; + +// line 398 in phpfreechat.class.php +$GLOBALS["i18n"]["%s is connected"] = "%s s-a conectat"; + +// line 452 in phpfreechat.class.php +$GLOBALS["i18n"]["%s quit"] = "%s a iesit"; + +// line 468 in phpfreechat.class.php +$GLOBALS["i18n"]["%s disconnected (timeout)"] = "%s a fost deconectat (timeout) "; + +// line 262 in phpfreechat.class.php +$GLOBALS["i18n"]["Unknown command [%s]"] = "Comanda necunoscuta [%s]"; + +// line 149 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist: %s"] = "%s nu exista: %s"; + +// line 180 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["You need %s"] = "Ai nevoie de %s"; + +// line 241 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist, %s library can't be found"] = "%s nu exista, %s libraria nu a fost gasita"; + +// line 280 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s doesn't exist"] = "%s nu exista"; + +// line 433 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s directory must be specified"] = "%s directorul trebuie specificat"; + +// line 439 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s must be a directory"] = "%s trebuie sa fie un director"; + +// line 446 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s can't be created"] = "%s nu poate fi creat"; + +// line 451 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not writeable"] = "%s nu poate fi scris"; + +// line 496 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not readable"] = "%s nu poate fi citit"; + +// line 469 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not a file"] = "%s nu este un fisier"; + +// line 491 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["%s is not a directory"] = "%s nu este director"; + +// line 23 in chat.html.tpl.php +$GLOBALS["i18n"]["PHP FREE CHAT [powered by phpFreeChat-%s]"] = "PHP FREE CHAT [powered by phpFreeChat-%s]"; + +// line 296 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Hide nickname marker"] = "AScunde culorile nickurilor"; + +// line 304 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Show nickname marker"] = "Arata culorile nickuriloe"; + +// line 389 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Disconnect"] = "Deconectare"; + +// line 395 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Connect"] = "Conectare"; + +// line 427 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Magnify"] = "Mareste"; + +// line 434 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Cut down"] = "Taie"; + +// line 345 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Hide dates and hours"] = "AScunde data si ora"; + +// line 353 in javascript1.js.tpl.php +$GLOBALS["i18n"]["Show dates and hours"] = "Arata data si ora"; + +// line 21 in chat.html.tpl.php +$GLOBALS["i18n"]["Enter your message here"] = "Introdu mesajul aici"; + +// line 24 in chat.html.tpl.php +$GLOBALS["i18n"]["Enter your nickname here"] = "Te rog sa introduci nickul aici"; + +// line 93 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["Error: undefined or obsolete parameter '%s', please correct or remove this parameter"] = "EROARE: parametru nedefinit: '%s', te rog corecteaza acest parametru"; + +// line 86 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Hide smiley box"] = "Ascunde panoul cu Zambete"; + +// line 87 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Show smiley box"] = "Arata panoul cu Zambete"; + +// line 88 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Hide online users box"] = "AScunde panoul cu userii online"; + +// line 89 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Show online users box"] = "Arata panoul cu userii online"; + +// line 33 in chat.html.tpl.php +$GLOBALS["i18n"]["Bold"] = "Bold"; + +// line 34 in chat.html.tpl.php +$GLOBALS["i18n"]["Italics"] = "Italic"; + +// line 35 in chat.html.tpl.php +$GLOBALS["i18n"]["Underline"] = "Subliniat"; + +// line 36 in chat.html.tpl.php +$GLOBALS["i18n"]["Delete"] = "Sterge"; + +// line 37 in chat.html.tpl.php +$GLOBALS["i18n"]["Pre"] = "Pre"; + +// line 38 in chat.html.tpl.php +$GLOBALS["i18n"]["Mail"] = "Mail"; + +// line 39 in chat.html.tpl.php +$GLOBALS["i18n"]["Color"] = "Culoare"; + +// line 48 in phpfreechattemplate.class.php +$GLOBALS["i18n"]["%s template could not be found"] = "%s template negasit"; + +// line 512 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["Error: '%s' could not be found, please check your themepath '%s' and your theme '%s' are correct"] = "EROARE: '%s' nu a fost gasit, te rog verifica calea temei tale '%s' si daca fisierul '%s' este corect"; + +// line 75 in pfccommand.class.php +$GLOBALS["i18n"]["%s must be implemented"] = "%s trebuie implementat"; + + +// line 343 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter is mandatory by default use '%s' value"] = "'%s' parametrul este mandatar '%s' ca valoare"; + +// line 378 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a positive number"] = "'%s' parameter must be a positive number"; + +// line 386 in phpfreechatconfig.class.php +$GLOBALS["i18n"]["'%s' parameter is not valid. Available values are : '%s'"] = "'%s' parametrul nu este valid.Valorile valabile sunt: '%s'"; + +// line 185 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["My room"] = "Camera mea"; + +// line 109 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Private message"] = "Mesaj privat"; + +// line 110 in pfcclient.js.tpl.php +$GLOBALS["i18n"]["Close this tab"] = "Inchide aceasta fereastra"; + +// line 225 in pfcgui.js.tpl.php +$GLOBALS["i18n"]["Do you really want to leave this room ?"] = "Chiar vrei sa parasesti aceasta camera ?"; + +// line 19 in unban.class.php +$GLOBALS["i18n"]["Missing parameter"] = "Lipseste un parametru"; + +// line 38 in ban.class.php +$GLOBALS["i18n"]["banished from %s by %s"] = "banat din %s de %s"; + +// line 23 in banlist.class.php +$GLOBALS["i18n"]["The banished user's id list is:"] = "Lista cu ID-uri banate:"; + +// line 32 in banlist.class.php +$GLOBALS["i18n"]["Empty"] = "Gol"; + +// line 34 in banlist.class.php +$GLOBALS["i18n"]["'/unban {id}' will unban the user identified by {id}"] = "'/unban {id}' va scoate balu pentru {id}"; + +// line 35 in banlist.class.php +$GLOBALS["i18n"]["'/unban all' will unban all the users on this channel"] = "'/unban all' va scoate banul pentru toti userii de pe acest canal"; + +// line 24 in update.class.php +$GLOBALS["i18n"]["%s quit (timeout)"] = "%s a iesit (timeout)"; + +// line 46 in join.class.php +$GLOBALS["i18n"]["%s joins %s"] = "%s intra pe %s"; + +// line 31 in kick.class.php +$GLOBALS["i18n"]["kicked from %s by %s"] = "A luat kick pe %s de la %s"; + +// line 38 in send.class.php +$GLOBALS["i18n"]["Can't send the message, %s is offline"] = "Nu pot trimite mesaj, %s este offline"; + +// line 27 in unban.class.php +$GLOBALS["i18n"]["Nobody has been unbanished"] = "Nimanui nu i s-a scos banul "; + +// line 42 in unban.class.php +$GLOBALS["i18n"]["%s has been unbanished"] = " I s-a scos banul lui %s"; + +// line 49 in unban.class.php +$GLOBALS["i18n"]["%s users have been unbanished"] = " Userilor %s li s-au scos banul "; + +// line 47 in auth.class.php +$GLOBALS["i18n"]["You are not allowed to run '%s' command"] = "Nu ai voie sa folosesti comanda aceasta '%s' "; + +// line 67 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because you are banished"] = "Nu poti intra in %s pentru ca ai ban!"; + +// line 79 in auth.class.php +$GLOBALS["i18n"]["You are not allowed to change your nickname"] = "Nu ai voie sa-ti schimbi numele"; + +// line 76 in auth.class.php +$GLOBALS["i18n"]["Can't join %s because the channels list is restricted"] = "Nu poti intra pe %s pentru ca lista cu canale este restrictionatat"; + +// line 56 in noflood.class.php +$GLOBALS["i18n"]["Please don't post so many message, flood is not tolerated"] = "Te rog nu posta atatea mesaje, flood-ul nu va fi tolerat"; + +// line 169 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Error: '%s' is a private parameter, you are not allowed to change it"] = "EROARE: '%s' este un parametru privat, nu ai voie sa-l schimbi"; + +// line 253 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be an array"] = "'%s' acest parametru trebuie sa fie vector (array)"; + +// line 265 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a boolean"] = "'%s' acest parametru trebuie sa fie bulean"; + +// line 271 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' parameter must be a charatere string"] = "'%s' acest parametru trebuie sa fie caracter string"; + +// line 395 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' must be writable"] = "'%s' trebuie sa fie scris"; + +// line 425 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["'%s' directory doesn't exist"] = "'%s' directorul nu exista"; + +// line 544 in pfcglobalconfig.class.php +$GLOBALS["i18n"]["Please correct these errors"] = "Please correct these errors"; + +// line 21 in pfcinfo.class.php +$GLOBALS["i18n"]["Error: the cached config file doesn't exists"] = "EROARE: fisierul de configurare a cache nu este gasit"; + +// line 190 in phpfreechat.class.php +$GLOBALS["i18n"]["Error: the chat cannot be loaded! two possibilities: your browser doesn't support javascript or you didn't setup correctly the server directories rights - don't hesitate to ask some help on the forum"] = "EROARE: chatul nu poate fi incarcat! Exista 2 posibilitati: browserul tau nu suporta javascript sau nu ai setat corect drepturile pentru directoare - nu ezita sa ceri ajutor pe forum"; + +// line 31 in help.class.php +$GLOBALS["i18n"]["Here is the command list:"] = "Lista cu comenzi:"; + +// line 63 in identify.class.php +$GLOBALS["i18n"]["Succesfully identified"] = "Identificare facuta cu succes"; + +// line 68 in identify.class.php +$GLOBALS["i18n"]["Identification failure"] = "Identificare nereusita"; + +// line 25 in send.class.php +$GLOBALS["i18n"]["Your must be connected to send a message"] = "Trebuie sa fii conectat pen tru a trimite un mesaj"; + +// line 87 in chat.js.tpl.php +$GLOBALS["i18n"]["Click here to send your message"] = "Click aici pentru a trimite un mesaj"; + +// line 80 in chat.js.tpl.php +$GLOBALS["i18n"]["Enter the text to format"] = "introdu textul pentru format"; + +// line 81 in chat.js.tpl.php +$GLOBALS["i18n"]["Configuration has been rehashed"] = "Configurarea a fost resetata"; + +// line 82 in chat.js.tpl.php +$GLOBALS["i18n"]["A problem occurs during rehash"] = "O problema a aparut in timpul restartului"; + +// line 83 in chat.js.tpl.php +$GLOBALS["i18n"]["Choosen nickname is allready used"] = "Alege alt nick acesta este deja folosit"; + +// line 84 in chat.js.tpl.php +$GLOBALS["i18n"]["phpfreechat current version is %s"] = "versiunea curenta de phpfreechat %s"; + +// line 85 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of joined channels has been reached"] = "Numarul maxim de useri a fost atins"; + +// line 86 in chat.js.tpl.php +$GLOBALS["i18n"]["Maximum number of private chat has been reached"] = "Numarul de chaturi private a fost atins"; + +// line 88 in chat.js.tpl.php +$GLOBALS["i18n"]["Send"] = "Trimite"; + +?> \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-18 09:13:07
|
Revision: 900 http://svn.sourceforge.net/phpfreechat/?rev=900&view=rev Author: kerphi Date: 2006-12-18 01:13:04 -0800 (Mon, 18 Dec 2006) Log Message: ----------- documentation : replace hard files links by html links to phpfreechat website (because it's considered by duplicate content by google) Modified Paths: -------------- trunk/index.php trunk/misc/tarSource trunk/version Modified: trunk/index.php =================================================================== --- trunk/index.php 2006-12-17 17:11:13 UTC (rev 899) +++ trunk/index.php 2006-12-18 09:13:04 UTC (rev 900) @@ -53,43 +53,43 @@ <li> <ul> <li class="item"> - <a href="overview.en.html">Overview [en]</a> + <a href="http://www.phpfreechat.net/overview.en.html">Overview [en]</a> </li> <li class="item"> - <a href="overview.fr.html">Overview [fr]</a> + <a href="http://www.phpfreechat.net/overview.fr.html">Overview [fr]</a> </li> <li class="item"> - <a href="overview.es.html">Overview [es]</a> + <a href="http://www.phpfreechat.net/overview.es.html">Overview [es]</a> </li> <li class="item"> - <a href="overview.ar.html">Overview [zh]</a> + <a href="http://www.phpfreechat.net/overview.ar.html">Overview [zh]</a> </li> <li class="item"> - <a href="overview.ar.html">Overview [ar]</a> + <a href="http://www.phpfreechat.net/overview.ar.html">Overview [ar]</a> </li> <li class="item"> - <a href="install.en.html">Install [en]</a> + <a href="http://www.phpfreechat.net/install.en.html">Install [en]</a> </li> <li class="item"> - <a href="install.fr.html">Install [fr]</a> + <a href="http://www.phpfreechat.net/install.fr.html">Install [fr]</a> </li> <li class="item"> - <a href="faq.en.html">FAQ [en]</a> + <a href="http://www.phpfreechat.net/faq.en.html">FAQ [en]</a> </li> <li class="item"> - <a href="faq.fr.html">FAQ [fr]</a> + <a href="http://www.phpfreechat.net/faq.fr.html">FAQ [fr]</a> </li> <li class="item"> - <a href="customize.en.html">Customize [en]</a> + <a href="http://www.phpfreechat.net/customize.en.html">Customize [en]</a> </li> <li class="item"> - <a href="customize.fr.html">Customize [fr]</a> + <a href="http://www.phpfreechat.net/customize.fr.html">Customize [fr]</a> </li> <li class="item"> - <a href="changelog.en.html">ChangeLog [en]</a> + <a href="http://www.phpfreechat.net/changelog.en.html">ChangeLog [en]</a> </li> <li class="item"> - <a href="changelog.fr.html">ChangeLog [fr]</a> + <a href="http://www.phpfreechat.net/changelog.fr.html">ChangeLog [fr]</a> </li> </ul> </li> Modified: trunk/misc/tarSource =================================================================== --- trunk/misc/tarSource 2006-12-17 17:11:13 UTC (rev 899) +++ trunk/misc/tarSource 2006-12-18 09:13:04 UTC (rev 900) @@ -10,20 +10,20 @@ rm -rf ./$NAME/contrib rm -rf ./$NAME/admin -echo "-> downloading documentation" -wget http://www.phpfreechat.net/pages/fr/install.html -q -O ./$NAME/install.fr.html -wget http://www.phpfreechat.net/pages/en/install.html -q -O ./$NAME/install.en.html -wget http://www.phpfreechat.net/pages/fr/faq.html -q -O ./$NAME/faq.fr.html -wget http://www.phpfreechat.net/pages/en/faq.html -q -O ./$NAME/faq.en.html -wget http://www.phpfreechat.net/pages/fr/overview.html -q -O ./$NAME/overview.fr.html -wget http://www.phpfreechat.net/pages/en/overview.html -q -O ./$NAME/overview.en.html -wget http://www.phpfreechat.net/pages/ar/overview.html -q -O ./$NAME/overview.ar.html -wget http://www.phpfreechat.net/pages/es/overview.html -q -O ./$NAME/overview.es.html -wget http://www.phpfreechat.net/pages/zh/overview.html -q -O ./$NAME/overview.zh.html -wget http://www.phpfreechat.net/pages/fr/customize.html -q -O ./$NAME/customize.fr.html -wget http://www.phpfreechat.net/pages/en/customize.html -q -O ./$NAME/customize.en.html -wget http://www.phpfreechat.net/pages/fr/changelog.html -q -O ./$NAME/changelog.fr.html -wget http://www.phpfreechat.net/pages/en/changelog.html -q -O ./$NAME/changelog.en.html +#echo "-> downloading documentation" +#wget http://www.phpfreechat.net/pages/fr/install.html -q -O ./$NAME/install.fr.html +#wget http://www.phpfreechat.net/pages/en/install.html -q -O ./$NAME/install.en.html +#wget http://www.phpfreechat.net/pages/fr/faq.html -q -O ./$NAME/faq.fr.html +#wget http://www.phpfreechat.net/pages/en/faq.html -q -O ./$NAME/faq.en.html +#wget http://www.phpfreechat.net/pages/fr/overview.html -q -O ./$NAME/overview.fr.html +#wget http://www.phpfreechat.net/pages/en/overview.html -q -O ./$NAME/overview.en.html +#wget http://www.phpfreechat.net/pages/ar/overview.html -q -O ./$NAME/overview.ar.html +#wget http://www.phpfreechat.net/pages/es/overview.html -q -O ./$NAME/overview.es.html +#wget http://www.phpfreechat.net/pages/zh/overview.html -q -O ./$NAME/overview.zh.html +#wget http://www.phpfreechat.net/pages/fr/customize.html -q -O ./$NAME/customize.fr.html +#wget http://www.phpfreechat.net/pages/en/customize.html -q -O ./$NAME/customize.en.html +#wget http://www.phpfreechat.net/pages/fr/changelog.html -q -O ./$NAME/changelog.fr.html +#wget http://www.phpfreechat.net/pages/en/changelog.html -q -O ./$NAME/changelog.en.html echo "-> creating checkmd5.php file" ./checkmd5 ./$NAME ./$NAME/checkmd5.php Modified: trunk/version =================================================================== --- trunk/version 2006-12-17 17:11:13 UTC (rev 899) +++ trunk/version 2006-12-18 09:13:04 UTC (rev 900) @@ -1 +1 @@ -1.0-beta8-pre +1.0-beta8 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <ke...@us...> - 2006-12-18 09:16:10
|
Revision: 901 http://svn.sourceforge.net/phpfreechat/?rev=901&view=rev Author: kerphi Date: 2006-12-18 01:16:01 -0800 (Mon, 18 Dec 2006) Log Message: ----------- adjust some promoted links Modified Paths: -------------- trunk/demo/index.php trunk/index.php Modified: trunk/demo/index.php =================================================================== --- trunk/demo/index.php 2006-12-18 09:13:04 UTC (rev 900) +++ trunk/demo/index.php 2006-12-18 09:16:01 UTC (rev 901) @@ -45,8 +45,8 @@ <a href="http://www.phpfreechat.net"><img alt="phpfreechat.net" src="../style/logo_88x31.gif" /></a><br/> <a href="http://sourceforge.net/projects/phpfreechat"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=158880&type=1" alt="SourceForge.net Logo" height="31px" width="88px" /></a><br/><br/> <a href="http://www.hotscripts.com/?RID=N452772">hotscripts.com</a><br/> - <a href="http://www.jeu-gratuit.net/?refer=phpfreechat">jeu-gratuit.net</a><br/> - <a href="http://www.pronofun.com/?refer=phpfreechat">pronofun.com</a><br/> + <a href="http://www.jeu-gratuit.net/">jeu-gratuit.net</a><br/> + <a href="http://www.pronofun.com/">pronofun.com</a><br/> </p> </div> Modified: trunk/index.php =================================================================== --- trunk/index.php 2006-12-18 09:13:04 UTC (rev 900) +++ trunk/index.php 2006-12-18 09:16:01 UTC (rev 901) @@ -98,8 +98,8 @@ <a href="http://www.phpfreechat.net"><img alt="phpfreechat.net" src="style/logo_88x31.gif" /></a><br/> <a href="http://sourceforge.net/projects/phpfreechat"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=158880&type=1" alt="SourceForge.net Logo" height="31px" width="88px" /></a><br/><br/> <a href="http://www.hotscripts.com/?RID=N452772">hotscripts.com</a><br/> - <a href="http://www.jeu-gratuit.net/?refer=phpfreechat">jeu-gratuit.net</a><br/> - <a href="http://www.pronofun.com/?refer=phpfreechat">pronofun.com</a><br/> + <a href="http://www.jeu-gratuit.net/">jeu-gratuit.net</a><br/> + <a href="http://www.pronofun.com/">pronofun.com</a><br/> </p> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |