I have posted an update to ZRTChat, Realtime Chat for Zope, at http://www.zope.org/Members/jwashin/ZRTChat It has some code cleanups, the new Product structure, inline Style, show/hide controls, and finally has a customizable (TTW DTML Methods) user interface. MIT License. Existing installations that wish to keep old chat items may copy and paste these into a newly-created instance of the updated product. -- Jim Washington
Hi Jim! It's really cool of you to give ZRTChat these refreshing improvements. It's AFAIK Zope's only native Chat product, and it hasn't been worked on for quite a while. Thank you. I found one little issue when checking "add default DTML methods" upon instance creation of a ZRTChat object: ZRTChat.py, line 101 (add_default_DTML): ... t = open(os.path.join(SOFTWARE_HOME,'Products','ZRTChat','www',k[0])+'.dtml') ... On a server with an "INSTANCE_HOME" installation and the ZRTChat product installed only in that subfolder, the dtml-files won't be found... Zope's looking for them in Zope_Main/lib/python/Products/ZRTChat instead of Zope_Main/My_Zope/Products/ZRTChat, or maybe even Zope_Main/My_Zope/lib/python/Products/ZRTChat, this is also possible since Version (was it?) 2.4 Danny On Tuesday 25 September 2001 00:07, Jim Washington wrote:
I have posted an update to ZRTChat, Realtime Chat for Zope, at http://www.zope.org/Members/jwashin/ZRTChat It has some code cleanups, the new Product structure, inline Style, show/hide controls, and finally has a customizable (TTW DTML Methods) user interface. MIT License. Existing installations that wish to keep old chat items may copy and paste these into a newly-created instance of the updated product.
-- Jim Washington
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )
Danny William Adair wrote:
Hi Jim!
It's really cool of you to give ZRTChat these refreshing improvements. It's AFAIK Zope's only native Chat product, and it hasn't been worked on for quite a while. Thank you.
I found one little issue when checking "add default DTML methods" upon instance creation of a ZRTChat object:
ZRTChat.py, line 101 (add_default_DTML): ... t = open(os.path.join(SOFTWARE_HOME,'Products','ZRTChat','www',k[0])+'.dtml') ...
On a server with an "INSTANCE_HOME" installation and the ZRTChat product installed only in that subfolder, the dtml-files won't be found...
Zope's looking for them in Zope_Main/lib/python/Products/ZRTChat instead of Zope_Main/My_Zope/Products/ZRTChat, or maybe even Zope_Main/My_Zope/lib/python/Products/ZRTChat, this is also possible since Version (was it?) 2.4
Thank-you Danny. I see the problem. I don't know anything about INSTANCE_HOME, but I see that I can get INSTANCE_HOME from the same place I get SOFTWARE_HOME. So this may be a simple os.path.exists question? I sure hope so. Or is there an easier way to determine where the software is? Just getting www/filename hasn't worked for me. On an INSTANCE_HOME'd installation, is os.path.join(INSTANCE_HOME,'Products') the equivalent of os.path.join(SOFTWARE_HOME,'Products') on a SOFTWARE_HOME'd installation? -- Jim Washington
Hello Jim, yes, os.path.join(INSTANCE_HOME,'Products') should do, even if you don't have a INSTANCE_HOMEd installation If I read lib/python/App/FindHomes.py correctly, Zope's INSTANCE_HOME will be set to the same value as SOFTWARE_HOME if there is no environment variable found with that name from http://www.zope.org/Products/Zope/Products/Zope/2.4.0/CHANGES.txt : - If an INSTANCE_HOME is defined and has a 'lib/python' subdirectory, it will be added to the front of the Python path. (which means that products have to reside under "INSTANCE_HOME/Products" rather than "INSTANCE_HOME/lib/python/Products", got that wrong in my last email) BTW, There also is a nice how-to at http://www.zope.org/Members/4am/instancehome Danny On Tuesday 25 September 2001 14:14, Jim Washington wrote:
... Thank-you Danny.
I see the problem. I don't know anything about INSTANCE_HOME, but I see that I can get INSTANCE_HOME from the same place I get SOFTWARE_HOME.
So this may be a simple os.path.exists question? I sure hope so. Or is there an easier way to determine where the software is? Just getting www/filename hasn't worked for me.
On an INSTANCE_HOME'd installation, is
os.path.join(INSTANCE_HOME,'Products')
the equivalent of
os.path.join(SOFTWARE_HOME,'Products')
on a SOFTWARE_HOME'd installation?
-- Jim Washington
Danny William Adair wrote:
Hello Jim,
yes,
os.path.join(INSTANCE_HOME,'Products')
should do, even if you don't have a INSTANCE_HOMEd installation
If I read
lib/python/App/FindHomes.py
correctly, Zope's INSTANCE_HOME will be set to the same value as SOFTWARE_HOME if there is no environment variable found with that name
from http://www.zope.org/Products/Zope/Products/Zope/2.4.0/CHANGES.txt : - If an INSTANCE_HOME is defined and has a 'lib/python' subdirectory, it will be added to the front of the Python path.
(which means that products have to reside under "INSTANCE_HOME/Products" rather than "INSTANCE_HOME/lib/python/Products", got that wrong in my last email)
BTW, There also is a nice how-to at http://www.zope.org/Members/4am/instancehome
Thanks again, Danny My Debian installation puts INSTANCE_HOME in /var/lib/zope/, so it turns out I have to look in both locations to find the Products directory. Fun exercise, though. I updated the .tgz on zope.org a few moments ago. -- Jim Washington
participants (2)
-
Danny William Adair -
Jim Washington