1 |
<html> |
<html> |
2 |
|
<head> |
3 |
|
<title>joko's sample notes - 2003-01 - InventoryCleanupAndRefactoring</title> |
4 |
|
<link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" /> |
5 |
|
</head> |
6 |
<body> |
<body> |
7 |
|
|
8 |
|
|
9 |
<pre> |
<pre> |
10 |
|
|
11 |
|
|
12 |
|
<hr/> |
13 |
|
|
14 |
|
AIMS: |
15 |
|
- Convert this document into a data-structure and back. |
16 |
|
- Don't loose a bit of information. |
17 |
|
- Make possible to link to all resources available. |
18 |
|
|
19 |
|
for working with it |
20 |
|
- global metadata |
21 |
|
- cvs-loginfo/commitinfo |
22 |
|
- ItemMetadata |
23 |
|
- ItemStatus (open, closed and stuff) |
24 |
|
- ItemAuthor |
25 |
|
- ItemType |
26 |
|
- ItemIdentifier |
27 |
|
- references/associations to/from |
28 |
|
- word metadata |
29 |
|
- link to target |
30 |
|
- show target as ... |
31 |
|
- overview of all gathered metadata (at the bottom) |
32 |
|
|
33 |
|
for rendering it |
34 |
|
- render <target> at <locator> as <that-type> [in <this-mode>] [to this <othertarget>] |
35 |
|
|
36 |
|
<hr/> |
37 |
|
|
38 |
joko@netfrag.org - sample stack: |
joko@netfrag.org - sample stack: |
39 |
|
|
40 |
|
o get (and refactor) from janosch: |
41 |
|
- serial-interface-perl-scripts (3?) |
42 |
|
- aquastar.pl |
43 |
|
- relais.pl |
44 |
|
- xyz |
45 |
|
x faxGate.pl: mail-handler (Faxversandmodul) |
46 |
|
|
47 |
|
o gtk radiant |
48 |
|
|
49 |
|
o serial-line to eagle.psl.netfrag.org |
50 |
|
|
51 |
|
o rabit: php-gtk-ide (phpMole?) |
52 |
|
|
53 |
|
x mail links to jonen |
54 |
|
|
55 |
|
o Quake SDK (bots, ....) |
56 |
|
|
57 |
|
o 3dmax: Reactor |
58 |
|
|
59 |
|
o look at tools @ perl/bin!!! |
60 |
|
|
61 |
|
o trim ~joko/Mail/.rules.pm for new Mailing Lists and CVS Logs (from CVSSpam) |
62 |
|
|
63 |
|
o get into ExtUtils::MakeMaker!!! |
64 |
|
|
65 |
|
o glossary: sync = get|send new mail & publish|announce |
66 |
|
|
67 |
|
x new mechanism to pass configuration-metadata to Torus: 'config_metadata => { file => '../etc/syncOutlookContacts.ini' }, ' and stuff.... |
68 |
|
|
69 |
|
o TUTOS - to (static) report: |
70 |
|
o Overview - All Projects: http://www.netfrag.org/tutos/php/product_overview.php?name= |
71 |
|
o Statistics - All Projects: http://www.netfrag.org/tutos/php/product_overview.php?format=&start=0&format=stat |
72 |
|
o Timetrack Summary - per User: http://www.netfrag.org/tutos/php/timetrack_overview.php?worker=1036 |
73 |
|
look at: |
74 |
|
http://www.netfrag.org/tutos/php/res_cal.php?id=1036 |
75 |
|
http://www.netfrag.org/tutos/php/timetrack_overview.php?worker=1036 |
76 |
|
|
77 |
|
o Torus/XML |
78 |
|
----------------------------------------------------------------------------- |
79 |
|
Torus::addItem |
80 |
|
|
81 |
|
<item name="" type="Note"> |
82 |
|
<parent name="Torus" type="Project" /> |
83 |
|
<item name="" parent=""> |
84 |
|
<description> |
85 |
|
|
86 |
|
</description> |
87 |
|
</item> |
88 |
|
</item> |
89 |
|
----------------------------------------------------------------------------- |
90 |
|
|
91 |
|
o register: archive.netfrag.org |
92 |
|
|
93 |
|
x already archived somewhere in mail-history |
94 |
|
Data::Transfer::Sync::API::syncNodes |
95 |
|
Data::Transfer::Sync::Core::_syncNodes |
96 |
|
Data::Transfer::Sync::StorageInterface::_getNodeList( source ) |
97 |
|
Data::Transfer::Sync::StorageInterface::_resolveNodeIdent( source ) |
98 |
|
Data::Transfer::Sync::StorageInterface::_statloadNode( target ) |
99 |
|
Data::Transfer::Sync::Compare::Checksum::_readChecksum( source ) |
100 |
|
Data::Transfer::Sync::Core::_buildMap |
101 |
|
Data::Transfer::Sync::Core::_doTransferToTarget( insert|update ) |
102 |
|
Data::Transfer::Sync::StorageInterface::_statloadNode( target ) |
103 |
|
Data::Transfer::Sync::Compare::Checksum::_readChecksum( target ) |
104 |
|
(Data::Transfer::Sync::Core::_doModifySource_IdentChecksum) |
105 |
|
|
106 |
|
o shortcut url: Detailed History (Tracker): http://www.netfrag.org/tutos/php/history_show.php?id=1054 |
107 |
|
|
108 |
|
o glossary: "bind data" (add relationships and stuff...) |
109 |
|
|
110 |
|
o accounts for jonen, janosch and bareface (and all others) for inn@news.netfrag.org |
111 |
|
|
112 |
|
x outlook2ldap: win32, perl-5.8.0: |
113 |
|
---> App::Config (CPAN, force) |
114 |
|
Tie::IxHash (CPAN) |
115 |
|
Log::Dispatch (CPAN) |
116 |
|
Log::Dispatch::Config (CPAN, force) |
117 |
|
mixin (ppm) |
118 |
|
DBI (ppm) |
119 |
|
Hash::Merge (ppm) |
120 |
|
Tie::SecureHash (ppm) |
121 |
|
---> Date::Manip (CPAN) |
122 |
|
---> Net::LDAP (own) |
123 |
|
|
124 |
|
o integrate TUTOS and sloccount!? the "costs"? |
125 |
|
|
126 |
|
o refactor DesignPattern:: to Data::Code::Object |
127 |
|
|
128 |
|
o create apache conf statically|dynamically from some declaration stored in ldap |
129 |
|
|
130 |
|
o misc |
131 |
|
cd /tmp |
132 |
|
umount /data |
133 |
|
recover /dev/ubd/2 |
134 |
|
|
135 |
|
o implement rmtray!!! -> mv xyz /lost+found/tray/xyz |
136 |
|
-> [ insert project found by jonen here ] |
137 |
|
|
138 |
|
o apache startphrase: quepasa.netfrag.org |
139 |
|
|
140 |
|
o TUTOS FATAL ERROR Wednesday 22. Jan 2003 |
141 |
|
================================================================= |
142 |
|
TUTOS FATAL ERROR Wednesday 22. Jan 2003 |
143 |
|
14:15 |
144 |
|
Error: |
145 |
|
Opening the MYSQL database MYSQL:tutos@localhost |
146 |
|
Detail: |
147 |
|
2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) |
148 |
|
|
149 |
|
TUTOS Version: 1.0.20021113 |
150 |
|
PHP Version: 4.2.3 Linux |
151 |
|
PHP Config: /etc/php4/apache/php.ini |
152 |
|
APACHE Version: Apache/1.3.26 (Unix) Debian GNU/Linux PHP/4.2.3 mod_ssl/2.8.9 OpenSSL/0.9.6g mod_perl/1.26 |
153 |
|
Called from: http://www.netfrag.org/tutos/php/product_show.php?id=1108 |
154 |
|
Called by: 217.231.123.32 |
155 |
|
PHP Info Page |
156 |
|
================================================================= |
157 |
|
|
158 |
|
o Perl::Module::AutoInstall |
159 |
|
- detect dynamically |
160 |
|
- download from CPAN |
161 |
|
- install || force install |
162 |
|
- continue |
163 |
|
|
164 |
|
o perl -MCPAN -eshell |
165 |
|
install Hash::Merge |
166 |
|
install Bundle::CPAN |
167 |
|
install Hash::Merge |
168 |
|
force install Clone |
169 |
|
install Hash::Merge |
170 |
|
|
171 |
|
o apt-get install libtrash!!! |
172 |
|
|
173 |
|
o enhance-apache-perl-configuration: |
174 |
|
- bug: |
175 |
|
root@quepasa:/tmp# /etc/init.d/apache start |
176 |
|
Starting web server: apacheconfiguring dynamic domain "golf5.de" |
177 |
|
- features!!! |
178 |
|
- have declaration stored in ldap: |
179 |
|
- ldap-company-hierarchy-containers |
180 |
|
- ldap-account-containers |
181 |
|
- metadata (nsswitch) |
182 |
|
- contact-information (pim (outlook|horde), notify, etc.) |
183 |
|
- ldap-data-containers |
184 |
|
- data-transfer (column/property -> column/property) mappings (via Data::Map) |
185 |
|
- sendmail-virtusertable & -aliases |
186 |
|
- mapped apache-config |
187 |
|
|
188 |
|
|
189 |
|
o misc |
190 |
o [task by joko] introduced "dispatchmail" to add mail2news-functionality to "recieveMail" (collector@netfrag.org) |
o [task by joko] introduced "dispatchmail" to add mail2news-functionality to "recieveMail" (collector@netfrag.org) |
191 |
x [task by joko] migrated joko_mail from "receiveMail" to "dispatchmail" |
x [task by joko] migrated joko_mail from "receiveMail" to "dispatchmail" |
192 |
x [bug from joko] what about mailing from the cli / mails sent from the system (e.g. via CVSSpam): |
x [bug from joko] what about mailing from the cli / mails sent from the system (e.g. via CVSSpam): |
612 |
x /etc/init.d/apache reload |
x /etc/init.d/apache reload |
613 |
x test: http://news.netfrag.org/ |
x test: http://news.netfrag.org/ |
614 |
|
|
|
|
|
|
|
|
615 |
o new module for cvs-repository? |
o new module for cvs-repository? |
616 |
o nfo/layouts/fs/skel/data2 |
o nfo/layouts/fs/skel/data2 |
617 |
o checkout to /data on quepasa.netfrag.org |
o checkout to /data on quepasa.netfrag.org |
629 |
x usermod -G src,staff,rootsrc jonen |
x usermod -G src,staff,rootsrc jonen |
630 |
x usermod -G rootsrc root |
x usermod -G rootsrc root |
631 |
x change permissions |
x change permissions |
632 |
x cd /var/lib/cvs/nfo/hosts/ |
x cd /var/lib/cvs/nfo/ |
633 |
x chown -R .rootsrc quepasa.netfrag.org |
x chown -R .rootsrc hosts |
634 |
x chmod -R g+w quepasa.netfrag.org |
x chmod -R g+w hosts |
635 |
|
|
636 |
|
|
637 |
x add to system-conf-repository: |
x add to system-conf-repository: |
744 |
x sysadmin@netfrag.org |
x sysadmin@netfrag.org |
745 |
x faq@netfrag.org |
x faq@netfrag.org |
746 |
|
|
747 |
x setup newsportal (by Florian Amrhein) |
x --rework|*reworked*-- apache-layout - check into repository as something root is responsible for! |
748 |
|
|
749 |
|
x --setup|*setting up*-- newsportal (by Florian Amrhein) |
750 |
x url: http://florian-amrhein.de/newsportal/ |
x url: http://florian-amrhein.de/newsportal/ |
751 |
x cd /home/service/download |
x cd /home/service/download |
752 |
x mkdir newsportal |
x mkdir newsportal |
753 |
x cd newsportal |
x cd newsportal |
754 |
x wget http://florian-amrhein.de/newsportal/download/newsportal-0.24.tar.gz |
x wget http://florian-amrhein.de/newsportal/download/newsportal-0.24.tar.gz |
755 |
x mkdir -p /data/www/virtual/netfrag/sites/news/apps/newsportal/ |
x mkdir -p /data/www/virtual/netfrag/sites/news/apps/newsportal/ |
756 |
x tar -xzf newsportal-0.24.tar.gz --directory=/data/www/virtual/netfrag/sites/news/apps/newsportal/ |
x tar -xzf newsportal-0.24.tar.gz --directory=/data/www/global/apps/newsportal/ |
757 |
|
x add to /data/www/virtual/netfrag/conf/applications.conf |
758 |
|
Alias /webnews/ /data/www/global/apps/newsportal/ |
759 |
|
x configure in /data/www/global/apps/newsportal/config.inc |
760 |
|
// newsserver setup |
761 |
|
$server="news.netfrag.org"; |
762 |
|
$server_auth_user="webnews"; |
763 |
|
$server_auth_pass="web123"; |
764 |
|
x add to /etc/news/nnrp.access: |
765 |
|
# 2003-01-26, joko |
766 |
|
*:Read Post:webnews:web123:* |
767 |
|
x modify groups.txt |
768 |
|
<nfo.* - add all groups here> |
769 |
|
o TODO: AUTOUPDATE here! |
770 |
|
x add to the index-page: |
771 |
|
xR set INSERTION="<link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" />" |
772 |
|
x grep -rin "<head" * |
773 |
|
doc/readme-deutsch.html:4:</head> |
774 |
|
doc/faq.html:4:</head> |
775 |
|
doc/history.txt:234:- fehlender </head> Tag ergaenzt |
776 |
|
doc/readme-english.html:4:</head> |
777 |
|
doc/history.txt~:233:- fehlender </head> Tag ergaenzt |
778 |
|
extras/frames/thread_frameset.php:10:</head> |
779 |
|
head.inc:5:</head> |
780 |
|
x cvs add head.inc |
781 |
|
x cvs commit -m "+ initial commit" head.inc |
782 |
|
x <modify head.inc> |
783 |
|
x nano head.inc |
784 |
|
x <jump to line 5> STRG+W + T: 5 |
785 |
|
xR <insert INSERTION> |
786 |
|
xR <insert [ENTER]> |
787 |
|
x <save file> STRG+O + [ENTER] |
788 |
|
x test: <hit reload on <a href="http://www.netfrag.org/webnews/">http://www.netfrag.org/webnews/</a>> |
789 |
|
o TODO: RefactorThisHtmlRef to WebNews |
790 |
|
o view message in some MimeViewer or HtmlViewer (Horde?) |
791 |
|
o -> use a MessageViewer with MimeCapabilities and HtmlCapabilities |
792 |
|
x Why newsportal and no other? |
793 |
|
x directly connects to nntp-daemon |
794 |
|
x has local spool (o TODO: purge regularly?) |
795 |
|
x highly customizable |
796 |
|
x added custom css-stylesheet and changed something at content-rendering-level without any problems |
797 |
|
x visit cvs.netfrag.org to look at the changes made to the newsportal codebase: |
798 |
|
x -> <a href="http://cvs.netfrag.org/nfo/hosts/quepasa.netfrag.org/data/www/global/apps/newsportal/">newsportal at cvs.netfrag.org</a> |
799 |
|
o TODO: RefactorThisLink |
800 |
|
x it's just easy! |
801 |
|
x setup dispatchrequest for http://news.netfrag.org |
802 |
|
x cd /data/www/virtual/netfrag/sites/news/ |
803 |
|
x create symlink |
804 |
|
x ./.symlinkrc |
805 |
|
x copy over from webcvs |
806 |
|
x cp ../webcvs/index.php . |
807 |
|
x mkdir .dispatch |
808 |
|
x cd .dispatch |
809 |
|
x cp ../webcvs/.dispatch/config.php . |
810 |
|
x cp ../webcvs/.dispatch/index.php . |
811 |
|
x cvs add ... |
812 |
|
x cvs commit ... |
813 |
|
x added|*adding* dispatcher at http://news.netfrag.org |
814 |
|
x used and mungled DispatchRequest(->cvs, ->doc, ->search) for this purpose |
815 |
|
o IdeaFor ParseDoc: expand: cvs=JumpToCvs, doc=JumpToDoc, search=SearchFor |
816 |
|
x examples for the JumpToCvs mechanism are shown on <a href="http://netfrag.org/~joko/computing/overview/topics/>computing/overview/topics</a> |
817 |
|
x tested http://cvs.netfrag.org/ - still working... |
818 |
|
o AddedFeatures to DispatchRequest: |
819 |
|
x JumpToNewsgroup: http://news.netfrag.org/nfo.tutos.sysadmin/ |
820 |
|
e.g. ->http://netfrag.org/webnews/thread.php?group=nfo.links.computing |
821 |
|
o JumpToThread: NotYetImplemented! DoWeReallyNeedThis? |
822 |
|
o JumpToArticle: http://news.netfrag.org/nfo.sysadmin.tutos/id/b0shbj$l9s$1@quepasa.netfrag.org |
823 |
|
x JumpToArticle: http://news.netfrag.org/nfo.links.computing/id/44 |
824 |
|
e.g. ->http://netfrag.org/webnews/article.php?id=44&group=nfo.links.computing |
825 |
|
|
826 |
|
x NfoWeb |
827 |
|
o add WikiPages: |
828 |
|
o Overview |
829 |
|
o News |
830 |
|
o news.netfrag.org |
831 |
|
o Users |
832 |
|
o Development |
833 |
|
o Projects |
834 |
|
o cvs.netfrag.org |
835 |
|
o Documentation |
836 |
|
o Topics |
837 |
|
o MiniHowto |
838 |
|
o Download |
839 |
|
(o Search) |
840 |
|
o modify HomePage |
841 |
|
o change Projects to Overview |
842 |
|
|
843 |
|
o yakka & pod |
844 |
|
o convert pod to tavi |
845 |
|
o perl first (pod2tavi) |
846 |
|
o php afterwards (pod2tavi-php) |
847 |
|
o then refactor to a YakkaPlugin (an "input-filter"?) ('yakka-filter-pod'?) |
848 |
|
o address "files" outside the normal/configured default YakkaRepository |
849 |
|
o introduce: "ExplicitAddressingOfArbitraryTargets" |
850 |
|
o via HttpHeader (GET/POST) (HtmlUrlArgument, HtmlFormField) |
851 |
|
o introduce "YakkaContainers": aim: group a bunch of targets/items together as a kind of "MetaRepository" |
852 |
|
|
853 |
|
o viewcvs & yakka |
854 |
|
o a filesystem-adapter for yakka's storage-handler-system |
855 |
|
o show "view in yakka" if document-type eq 'tavi|tavi,v|pod' |
856 |
|
|
857 |
|
o IconForNetfrag.Org? |
858 |
|
o fav.ico? |
859 |
|
|
860 |
|
x --*installed*|install-- viewcvs |
861 |
|
x apt-get install viewcvs |
862 |
|
x configured: |
863 |
|
x /var/lib/cvs |
864 |
|
x email-address (new): cvs-admin@netfrag.org -> dev@netfrag.org |
865 |
|
x no forbidden modules (do this via unix permissions!) |
866 |
|
x allow tarball generation? yes! |
867 |
|
x Hint: add "Alias /viewcvs/ /usr/share/viewcvs/" to /etc/apache/conf/httpd.conf for online documents and icons |
868 |
|
x added to '/data/www/virtual/netfrag/conf/applications.conf' in our case |
869 |
|
x added '<link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" />' to '/etc/viewcvs/templates/header.ezt' |
870 |
|
|
871 |
|
o rendering *proposals* for TaviWorkflow |
872 |
|
o Linking|Referencing (WikiWords, PureExplicitLinkExtrapolation, NamedLinks) |
873 |
|
o Coloring |
874 |
|
o [o=red, x=green, R=red, r=green] |
875 |
|
|
876 |
|
o *shortcut*: TestApache to run 'apachectl configtest' (WikiForSystemAdministration) |
877 |
|
|
878 |
|
x web-based newsreader? twig! |
879 |
|
x apt-get install twig |
880 |
|
|
881 |
|
o shutdown horde (for now: "pause") |
882 |
|
|
883 |
|
o viewcvs & apache-mod-python? |
884 |
|
|
885 |
|
o home2web, .home2webrc |
886 |
|
o what? |
887 |
|
--before: buildhtml --source=pod|tavi |
888 |
|
--after: say "ready" |
889 |
|
o hmmm... |
890 |
|
o buildhtml: automate various SubTasks |
891 |
|
o synccvs (->cvs.nfo.perl.scripts.shortcuts.synccvs.pl) |
892 |
|
o buildhtml (->makedoc) (->cvs.nfo.perl.scripts.shortcuts.synccvs.pl) |
893 |
|
|
894 |
|
x added root of quepasa to cvs |
895 |
|
x su root |
896 |
|
x cd /var/lib/cvs/nfo/hosts/quepasa.netfrag.org |
897 |
|
x mkdir root |
898 |
|
x chown -R .rootsrc root/ |
899 |
|
x chmod -R g+w root/ |
900 |
|
x cd /tmp |
901 |
|
x cvs -d /var/lib/cvs checkout -d / nfo/hosts/quepasa.netfrag.org/root |
902 |
|
x start with /etc |
903 |
|
x cd /etc |
904 |
|
x cvs add etc |
905 |
|
x cvs add viewcvs |
906 |
|
x cd viewcvs |
907 |
|
x cvs add .... |
908 |
|
x cvs commit -m "+ initial commit" |
909 |
|
|
910 |
|
x How to get a single file from cvs for download: (e.g.) |
911 |
|
wget http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/*checkout*/viewcvs/viewcvs/templates/header.ezt?rev=1.2 |
912 |
|
|
913 |
|
x cvsgraph still missing: apt-get install cvsgraph |
914 |
|
|
915 |
|
x chora -> viewcvs |
916 |
|
o change logo at /usr/share/viewcvs/images |
917 |
|
x removed from template |
918 |
|
x cvsview-query.cgi didn't work yet! |
919 |
|
x error was: |
920 |
|
x tail -f /data/www/virtual/netfrag/log/error_log |
921 |
|
Traceback (most recent call last): |
922 |
|
File "/usr/lib/cgi-bin/viewcvs-query.cgi", line 50, in ? |
923 |
|
import query |
924 |
|
File "/usr/lib/python2.1/viewcvs/query.py", line 42, in ? |
925 |
|
import cvsdb |
926 |
|
File "/usr/lib/python2.1/viewcvs/cvsdb.py", line 34, in ? |
927 |
|
import dbi |
928 |
|
File "/usr/lib/python2.1/viewcvs/dbi.py", line 17, in ? |
929 |
|
import MySQLdb |
930 |
|
ImportError: No module named MySQLdb |
931 |
|
[Sat Jan 25 11:16:55 2003] [error] [client 217.231.127.85] Premature end of script headers: /usr/lib/cgi-bin/viewcvs-query.cgi |
932 |
|
x solution is: |
933 |
|
x apt-get install python-mysqldb |
934 |
|
x use mysql; |
935 |
|
x insert into db values ('localhost', 'ViewCVS', 'viewcvs', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y'); |
936 |
|
x insert into db values ('%', 'ViewCVS', 'viewcvs', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y'); |
937 |
|
x insert into user (host, user, password) values ('localhost', 'viewcvs', password('viewcvs')); |
938 |
|
x flush privileges; |
939 |
|
x cd /usr/lib/viewcvs |
940 |
|
x ./make-database |
941 |
|
x |
942 |
|
o mail to author of viewcvs |
943 |
|
|
944 |
|
|
945 |
|
o docu about uml and filesystem-layer running on gharb for MiniHowTo? |
946 |
|
|
947 |
|
o search.php?wiki=1&cvs=1&index=1 |
948 |
|
|
949 |
|
x get mnoGoSearch running |
950 |
|
e apt-get install mnoGoSearch |
951 |
|
e apt-get install mnogosearch-common mnogosearch-doc mnogosearch-pgsql mnogosearch-php |
952 |
|
x apt-get install mnogosearch-common mnogosearch-php |
953 |
|
x don't overwrite configuration files |
954 |
|
x use 'crc-multi' |
955 |
|
x use 'postgres' |
956 |
|
x use 'mnogosearch' |
957 |
|
x apt-get install postgresql |
958 |
|
x use 'Enter default encoding (SQL_ASCII):' |
959 |
|
Success. You can now start the database server using: |
960 |
|
|
961 |
|
/usr/lib/postgresql/bin/postmaster -D /var/lib/postgres/data |
962 |
|
or |
963 |
|
/usr/lib/postgresql/bin/pg_ctl -D /var/lib/postgres/data -l logfile start |
964 |
|
|
965 |
|
PostgreSQL database now installed. |
966 |
|
Use /usr/bin/createdb to create a specific database and |
967 |
|
/usr/bin/createuser to enable other users to connect to a |
968 |
|
PostgreSQL database. |
969 |
|
|
970 |
|
In the first instance, these commands must be run by the |
971 |
|
user 'postgres'. |
972 |
|
|
973 |
|
Restarting PostgreSQL database: postmaster |
974 |
|
No /usr/lib/postgresql/bin/postmaster found running; none killed. |
975 |
|
Starting PostgreSQL postmaster. |
976 |
|
postmaster successfully started |
977 |
|
. |
978 |
|
Enabling the PL procedural language in all PostgreSQL databases... |
979 |
|
plpgsql added to template1 |
980 |
|
x apt-get install postgresql-dev |
981 |
|
e apt-get install libpostgresql |
982 |
|
e apt-get install libpgtcl |
983 |
|
x apt-get install mnogosearch-pgsql mnogosearch-pgsql-dev |
984 |
|
x dpkg-reconfigure mnogosearch-common |
985 |
|
x su postgres |
986 |
|
x /usr/lib/postgresql/bin/createuser mnogosearch |
987 |
|
x /usr/lib/postgresql/bin/createdb mnogosearch |
988 |
|
|
989 |
|
x changed to "mysql" in /etc/mnogosearch/indexer.conf and |
990 |
|
e deployed schemas at /usr/share/doc/mnogosearch-common/create/mysql/ |
991 |
|
x mysql -e "insert into user (host, user, password) values ('localhost', 'mnogosearch', password('mno123'));" mysql |
992 |
|
c mysql -e "insert into user (host, user, password) values ('%', 'mnogosearch', password('mno123'));" mysql |
993 |
|
x mysql -e "insert into db values ('localhost', 'mnogosearch', 'mnogosearch', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y');" mysql |
994 |
|
x mysql -e "create database mnogosearch;" |
995 |
|
x cd /usr/share/doc/mnogosearch-common/create/mysql/ |
996 |
|
x mysql mnogosearch < categories.txt |
997 |
|
x mysql mnogosearch < crc-multi.txt |
998 |
|
x deployed schemas at /usr/share/doc/mnogosearch-common/create/pgsql/ |
999 |
|
x psql -U mnogosearch mnogosearch < create.txt |
1000 |
|
x ... |
1001 |
|
x added to /data/www/virtual/netfrag/conf/applications.conf |
1002 |
|
php_value include_path /usr/share/mnogosearch-php:/etc/mnogosearch-php |
1003 |
|
Alias /search/ /var/www/search.php |
1004 |
|
x apt-get install php4-pgsql |
1005 |
|
|
1006 |
|
x !!! jonen made mysql-mode apts for mnogosearch-common_3.2.6-2.SU.1_all.deb !!! |
1007 |
|
use them: [...] ->archive:/path/to/debs |
1008 |
|
|
1009 |
|
|
1010 |
|
o it's not tavi nor tavi-workflow - it's: JustWrite? it's todo! (.todo -> .justdo -> .justwrite -> .done) |
1011 |
|
|
1012 |
|
o ScanToWeb |
1013 |
|
|
1014 |
|
o look at Mailman: http://www.list.org/features.html |
1015 |
|
|
1016 |
|
o use cvsup!? |
1017 |
|
|
1018 |
|
o alien.netfrag.org - (package-conversion) --> alien.packages.netfrag.org |
1019 |
|
|
1020 |
|
o chora2viewcvs - How to migrate from Horde/Chora to viewcvs. |
1021 |
|
|
1022 |
|
o LinuxInCvs (linux2cvs) |
1023 |
|
|
1024 |
|
o TestApacheConfig, StopApache, StartApache have to work without any running Apache - of course! |
1025 |
|
|
1026 |
|
o through "viewcvs" we loose the ability to "publish" documents via former chora: |
1027 |
|
viewcvs takes care to keep documents like they are in their original - so ".html"-files should be shown with text/plain |
1028 |
|
|
1029 |
|
o re-integrate .cvslink/JumpToCvs with dispatchurl |
1030 |
|
|
1031 |
|
o WikiWords in CvsCommitMessages? (via yakka?) |
1032 |
|
|
1033 |
|
x http://cvs.netfrag.org/bareface/yakka/?tarball=1 |
1034 |
|
|
1035 |
|
o [source:/link/to/source-code] (most times a '.cvslink' - hmmm?) |
1036 |
|
[source:<projectname>] |
1037 |
|
|
1038 |
|
o HelpMe |
1039 |
|
|
1040 |
|
o [snapshot:/link/to/snapshot] |
1041 |
|
[snapshot:<projectname>] |
1042 |
|
|
1043 |
|
o dispatchrequest - a multipurpose request dispatcher |
1044 |
|
o integrate: |
1045 |
|
x redirector at cvs.netfrag.org ... |
1046 |
|
o ... and news.netfrag.org |
1047 |
|
o JumpToCvs (.cvslink-mechanism) |
1048 |
|
o how was it done? |
1049 |
|
x cd /data/www/virtual/netfrag/sites/webcvs/.dispatch |
1050 |
|
x ln -s /data/www/global/apps/dispatchrequest . |
1051 |
|
|
1052 |
|
|
1053 |
|
o buildhtml -> makedoc |
1054 |
|
|
1055 |
|
o TWIG & yakka? |
1056 |
|
|
1057 |
|
o rename: dispatchmail -> dispatchmessage |
1058 |
|
|
1059 |
|
c rename: dispatchrequest -> forwardrequest? |
1060 |
|
|
1061 |
|
o readrc of bashrc|perlrc|xmlrc |
1062 |
|
|
1063 |
|
x setup TWIG |
1064 |
|
x cd /usr/share/doc/twig |
1065 |
|
x cd /data/www/virtual/netfrag/conf/ |
1066 |
|
x nano applications.conf |
1067 |
|
x add line: Alias /twig/ /usr/share/twig/ |
1068 |
|
x had to modify /etc/apache/conf/httpd.conf: |
1069 |
|
x added: 'index.php3' |
1070 |
|
<IfModule mod_dir.c> |
1071 |
|
DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 |
1072 |
|
</IfModule> |
1073 |
|
x added: '.php3' |
1074 |
|
AddType application/x-httpd-php .php .php3 |
1075 |
|
x /etc/init.d/apache reload |
1076 |
|
x cd /etc/twig |
1077 |
|
x modify config.inc.php3 |
1078 |
|
x cd /usr/share/twig/setup |
1079 |
|
x mysql |
1080 |
|
x use mysql |
1081 |
|
x insert into user (host, user, password) values ('localhost', 'www-data', password('')); |
1082 |
|
x insert into db values ('localhost', 'twig', 'www-data', 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y'); |
1083 |
|
x create database twig; |
1084 |
|
x flush privileges; |
1085 |
|
x database-schema |
1086 |
|
x gunzip twig.table.mysql.gz |
1087 |
|
x mysql twig < twig.table.mysql |
1088 |
|
|
1089 |
|
x setup arbitrary packet and bind to csm-system (Collaborative Software Management) |
1090 |
|
x pinstall twig |
1091 |
|
x apt-get install twig |
1092 |
|
x cd /etc |
1093 |
|
x cvs add twig |
1094 |
|
x cd twig |
1095 |
|
x cvs add * |
1096 |
|
x cvs add .htaccess |
1097 |
|
x cvs commit -m "+ initial commit" |
1098 |
|
|
1099 |
|
|
1100 |
|
o remove html from phpWiki: ('http://'!!!) (->https!!!) |
1101 |
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
1102 |
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
1103 |
|
<link rel="copyright" title="GNU General Public License" href="http://www.gnu.org/copyleft/gpl.html#SEC1" /> |
1104 |
|
<link rel="author" title="The PhpWiki Programming Team" href="http://phpwiki.sourceforge.net/phpwiki/ThePhpWikiProgrammingTeam" /> |
1105 |
|
|
1106 |
|
o force https for: (authentication purposes - anonymous is http!) |
1107 |
|
o horde |
1108 |
|
o tutos |
1109 |
|
|
1110 |
|
x dpkg -x twig_2.7.5-4_all.deb tmp/ |
1111 |
|
|
1112 |
|
o TWIG & OpenLDAP!? |
1113 |
|
|
1114 |
|
x ApacheMasterLayoutRefactoring: quepasa.netfrag.org: |
1115 |
|
x removed /data/www/doc to /data/www/global/apps |
1116 |
|
x test: |
1117 |
|
x cd /data/www/virtual |
1118 |
|
x grep -ri "/data/www/doc" * |
1119 |
|
x cd /data/www/global |
1120 |
|
x grep -ri "/data/www/doc" * |
1121 |
|
x apps/twiki/ |
1122 |
|
x lib/TWiki.cfg |
1123 |
|
x bin/.htaccess |
1124 |
|
x conf/twiki-httpd |
1125 |
|
---> just change between 'global' and (e.g.) 'virtual/netfrag' for switching between scopes ;-) |
1126 |
|
---> the container (folder)-structure at global and sub-virtual level must match almost exactly to make this possible!!!!! |
1127 |
|
x conf/virtualdomains-httpd/ |
1128 |
|
x doc/twiki/ |
1129 |
|
x removed: /data/www/virtual/netfrag/pub to /data/www/virtual/netfrag/sites/public |
1130 |
|
x cd virtual/netfrag/conf |
1131 |
|
x grep -ri "/pub" * |
1132 |
|
x modify httpd.conf and applications.conf |
1133 |
|
x apachectl configtest |
1134 |
|
Syntax error on line 345 of /etc/apache/httpd.conf: |
1135 |
|
DocumentRoot must be a directory |
1136 |
|
x disabled there completely |
1137 |
|
x now in /data/www/global/conf/httpd.conf |
1138 |
|
DocumentRoot /data/www/virtual/netfrag/sites/public |
1139 |
|
x apachectl configtest |
1140 |
|
fopen: No such file or directory |
1141 |
|
apache: could not open document config file /data/www/conf/twiki-httpd.conf |
1142 |
|
x mv /data/www/global/conf/twiki-httpd.conf /data/www/virtual/netfrag/conf/ |
1143 |
|
x nano /data/www/virtual/netfrag/conf/applications.conf to match new path |
1144 |
|
x apachectl configtest |
1145 |
|
fopen: No such file or directory |
1146 |
|
apache: could not open document config file /data/www/conf/tutos-httpd.conf |
1147 |
|
x cd virtual/netfrag |
1148 |
|
x grep -rin "www/conf" * |
1149 |
|
x edit applications.conf:21 |
1150 |
|
x was: Include /data/www/conf/tutos-httpd.conf |
1151 |
|
x is: Include /data/www/global/conf/tutos-httpd.conf |
1152 |
|
x apachectl configtest |
1153 |
|
Warning: DocumentRoot [/data/www/virtual/netfrag/sites/webnews] does not exist |
1154 |
|
fopen: No such file or directory |
1155 |
|
apache: could not open document config file /data/www/conf/dynamic.conf |
1156 |
|
x grep -rin webnews * |
1157 |
|
x edit applications.conf:30 |
1158 |
|
x was: Alias /webnews/ /data/www/global/apps/newsportal/ |
1159 |
|
x is: Alias /webnews/ /data/www/global/apps/newsportal/ |
1160 |
|
x edit httpd.conf:74 |
1161 |
|
x was: DocumentRoot /data/www/virtual/netfrag/sites/webnews |
1162 |
|
x is: DocumentRoot /data/www/virtual/netfrag/sites/news |
1163 |
|
x cd global/conf |
1164 |
|
x grep -rin www/conf * |
1165 |
|
x STDOUT-PARSE: |
1166 |
|
httpd.conf:14:#Include /data/www/conf/httpd-php-perl.conf |
1167 |
|
httpd.conf:16:#Include /data/www/conf/virtualdomains-httpd.conf |
1168 |
|
httpd.conf:29:Include /data/www/conf/dynamic.conf |
1169 |
|
->FILE-MODIFY: httpd.conf:29:Include /data/www/global/conf/dynamic.conf |
1170 |
|
x apachectl configtest |
1171 |
|
root@quepasa:/data/www/global/conf# apachectl configtest |
1172 |
|
configuring dynamic domain "golf5.de" |
1173 |
|
configuring dynamic domain "smartmen.de" |
1174 |
|
configuring dynamic domain "ballonflug.de" |
1175 |
|
Syntax OK |
1176 |
|
x /etc/init.d/apache restart |
1177 |
|
x testing "http://netfrag.org/" fails |
1178 |
|
x testing "http://netfrag.org/index.php" |
1179 |
|
x makes redirect to "http://netfrag.org/nfoweb/" but fails there |
1180 |
|
x tail -f tail -f /data/www/virtual/netfrag/log/error_log |
1181 |
|
[Sun Jan 26 15:32:04 2003] [error] [client 217.231.119.195] File does not exist: /data/www/virtual/netfrag/pub/ |
1182 |
|
[Sun Jan 26 15:33:02 2003] [error] [client 217.231.119.195] File does not exist: /data/www/virtual/netfrag/pub/ |
1183 |
|
[Sun Jan 26 16:37:37 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/ |
1184 |
|
[Sun Jan 26 16:38:08 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/ |
1185 |
|
[Sun Jan 26 16:40:10 2003] [error] [client 217.231.119.195] Symbolic link not allowed: /data/www/virtual/netfrag/sites/public/nfoweb/ |
1186 |
|
|
1187 |
|
|
1188 |
|
o register: |
1189 |
|
public.netfrag.org -> http://netfrag.org |
1190 |
|
secure.netfrag.org -> https://netfrag.org |
1191 |
|
|
1192 |
|
o netfrag.org: DispatchRequest for http://netfrag.org/nfoweb/! |
1193 |
|
o netfrag.org: DispatchRequest for http://netfrag.org/rrr/! |
1194 |
|
|
1195 |
|
o IntroduceMergePoint at http://netfrag.org/doc/ |
1196 |
|
o MiniHowto |
1197 |
|
o faqs (e.g. from news://news.netfrag.org/nfo.faq.users |
1198 |
|
|
1199 |
|
o what about an "AUTOSAVE"-feature for UltraEdit when leaving the window or |
1200 |
|
o an AUTOCOMMIT on that very event (maybe integrated with a counter) |
1201 |
|
|
1202 |
|
o write scripts to iterate recursively through directories under specified path ... |
1203 |
|
o ... and do some actions on each directory, e.g. |
1204 |
|
o execute some specified .dot-files (e.g. .pod2htmlrc, .symlinkrc, .makedocrc) |
1205 |
|
|
1206 |
|
x CVSSpam in action: |
1207 |
|
10146 ? S 0:00 /usr/sbin/sshd |
1208 |
|
10148 ? S 0:00 /usr/sbin/sshd |
1209 |
|
10149 ? S 0:00 cvs server |
1210 |
|
10150 ? S 0:00 cvs server |
1211 |
|
10151 ? S 0:00 /bin/login |
1212 |
|
10155 ? S 0:00 /usr/bin/ruby -w /var/lib/cvs/CVSROOT/collect_diffs.rb --to joko@netfrag |
1213 |
|
10158 ? S 0:00 /usr/bin/ruby /var/lib/cvs/CVSROOT/cvsspam.rb /tmp/#cvs.loginfo.10149.10 |
1214 |
|
|
1215 |
|
x as Chora'sStylesheet has come active (by accident) when viewing this file view web |
1216 |
|
we should include this as a fixed default making horde our default stylesheet delivery engine (for now) |
1217 |
|
|
1218 |
|
o link-checker for netfrag.org |
1219 |
|
|
1220 |
|
o dispatcher for style.netfrag.org redirecting to <link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" />? |
1221 |
|
o styleme.php |
1222 |
|
o brandme.php |
1223 |
|
|
1224 |
|
|
1225 |
|
|
1226 |
|
o mini-howto: "HttpRedirect" |
1227 |
|
|
1228 |
|
o how to refactor the MiniHowtos? |
1229 |
|
o into a wiki? wikis seem to miss offline/distributed capabilities! (for now) |
1230 |
|
x into pod |
1231 |
|
x build offline |
1232 |
|
o build online |
1233 |
|
o into DocBook? |
1234 |
|
o into tavi? (or "TaviWorkflow"?) |
1235 |
|
o but: LinkWithWikiAutomagically to get everything together |
1236 |
|
o look at the InterwikiMechanism |
1237 |
|
o look at the various WikiPluginArchitectures |
1238 |
|
o look at YakkaDev! |
1239 |
|
|
1240 |
|
o a LinkageExample: RenderThis(html4|text|html3|pdf) with [[yakka]] and [[tavi-workflow]]! |
1241 |
|
o this could mean: |
1242 |
|
o use the declared formats as output filters for viewing target in other formats / styles |
1243 |
|
|
1244 |
|
o proposal for hierarchical structure (and HomePage) of netfrag.org |
1245 |
|
~overview -> SomeWiki -> Overview |
1246 |
|
~projects (include some common text here) |
1247 |
|
~users (include some common text here) |
1248 |
|
- Page: UserArea |
1249 |
|
- Page: ~users |
1250 |
|
~projects -> SomeWiki-> Projects |
1251 |
|
~users (include former page "User area" (now UserArea) automagically at the bottom here! (WikiInclude?)) |
1252 |
|
~rabit (raBit's router - psl.no-ip.com) |
1253 |
|
~natraj (sam's place - optix) |
1254 |
|
~joko (joko's) |
1255 |
|
~bareface (->yakka) |
1256 |
|
|
1257 |
|
o MasterWorkflow: |
1258 |
|
-> TheThreeGoodThings |
1259 |
|
-> HaveIdea -> WriteDown (RefactorLater) -> WriteDownMore -> WriteDownAssociations -> WriteDownEvenMoreIfNotStoppedByExternalInfluences |
1260 |
|
-> RefactorIdeas -> Categorize -> AddNotes -> AddTasks |
1261 |
|
-> DoThings -> ReadTasks -> DoTasks |
1262 |
|
-> TheFourthBadThing: TimeTrackAllThis ;-) (it seems to be not so far away....) |
1263 |
|
|
1264 |
|
o what do we need / what do we do? |
1265 |
|
--- researcher |
1266 |
|
o OnlineReading |
1267 |
|
(o SelectItemsForDownload) <- want-to-have |
1268 |
|
(o DownloadItems) <- want-to-have |
1269 |
|
--- researcher |
1270 |
|
o OfflineReading |
1271 |
|
x ClumsyOfflineReading <- status-quo |
1272 |
|
(o NiceOfflineReading) <- want-to-have |
1273 |
|
(o OfflineArchiving) <- want-to-have |
1274 |
|
o OfflineEditing (text, html, pod, tavi) |
1275 |
|
o OnlinePublishing (<all - everything what has been rendered or archived offline>) |
1276 |
|
--- engine |
1277 |
|
o LiveDispatching (ContentEncoding, ContentConversion, EnvelopeEncapsulation, GatewayToXyz) |
1278 |
|
o OfflineRendering (html, text, pdf, chm) |
1279 |
|
--- reader |
1280 |
|
o OnlineReading (<everything that has been published>) |
1281 |
|
(o SelectItemsForDownload) <- want-to-have |
1282 |
|
(o DownloadItems) <- want-to-have |
1283 |
|
o OfflineReading (pdf, chm) |
1284 |
|
|
1285 |
|
o link to http://teamsonar.no-ip.com |
1286 |
|
|
1287 |
|
o mail announces to announce@netfrag.org |
1288 |
|
|
1289 |
|
o no symlinks in webroot anymore? use ApacheAliases? |
1290 |
|
|
1291 |
|
o MiniHowto: NfoLinkageSystem(->news.nfo.announce) |
1292 |
|
o this declaration could mean: |
1293 |
|
o UseResources: |
1294 |
|
o look up "NfoLinkageSystem" as subject in newsgroup "news.nfo.announce" on default newsserver |
1295 |
|
o RenderThisWay: |
1296 |
|
o embed into document - html3 |
1297 |
|
o embed into document - dhtml (ExpandTree, CollapseTree) |
1298 |
|
o LinkToIt (JumpToMechanism(->minihowto)) |
1299 |
|
|
1300 |
|
o php: appcontrol: reads .appcontrolrc-files recursively from directories and adds/removes users or sets passwords |
1301 |
|
according to specification in there |
1302 |
|
|
1303 |
|
o source-code parser which creates documentation with wiki techniques |
1304 |
|
o pod2tavi -> tavi2html |
1305 |
|
o phpDoc <- tavi-plugin? |
1306 |
|
|
1307 |
|
o integrate yakka and newsportal: |
1308 |
|
o make a yakka-page of embedded news-articles / threads / thread-parts (a NewsComposition) (->YakkaPageMetadata) |
1309 |
|
o article-sources |
1310 |
|
o all items from one news-server |
1311 |
|
o !!! from different news-servers !!! |
1312 |
|
o add a "CommentThis"-links to each item when rendering |
1313 |
|
o when user posts the answer on YakkaEditPage |
1314 |
|
o make yakka post to the article's associated news-server (read from YakkaItemMetadata) |
1315 |
|
o wait until new article is published, then ... |
1316 |
|
o ... add to NewsComposition (update YakkaPageMetadata) (->AsynchronousBackendDaemon) |
1317 |
|
o ... use/introduce a MetaItem "New" into YakkaPageMetadata (at TopLevel) |
1318 |
|
which shows NewItems(->self, ->live) per thread or newsgroup |
1319 |
|
|
1320 |
|
o download this and that - e.g.: |
1321 |
|
o phpMyadmin(->archive.software.phpMyAdmin) |
1322 |
|
o this requires 'archive.software' to have ... |
1323 |
|
o ... a ListSearchHandler (searches nodelist below 'archive.software' only) |
1324 |
|
o ... a RecursiveSearchHandler (searches nodelist below 'archive.software' and all subfolders recursively) |
1325 |
|
o make this available as a ResourceHandler via a DispatchRequest sitting at |
1326 |
|
o http://netfrag.org/archive/?base=software&search=phpMyAdmin |
1327 |
|
o http://archive.netfrag.org/ |
1328 |
|
|
1329 |
|
x rename newsgroup nfo.csm to nfo.caesar (Collaborative And Easy System Management) |
1330 |
|
x ctlinnd newgroup nfo.caesar |
1331 |
|
x /etc/init.d/inn stop |
1332 |
|
x cd /var/spool/news/nfo |
1333 |
|
x cp csm/* caesar/ |
1334 |
|
x cd caesar |
1335 |
|
(x movearticle ...) |
1336 |
|
o chown news.news * |
1337 |
|
o /usr/lib/news/bin/makehistory |
1338 |
|
x THIS FAILED! DON'T DO IT |
1339 |
|
|
1340 |
|
o MiniHowto: KerberizedSystem (->~jonen) |
1341 |
|
|
1342 |
|
o RefWords -> LookUpDb -> SearchDb |
1343 |
|
|
1344 |
|
x added first news-article which refers/references to another one in another newsgroup |
1345 |
|
<a href="http://news.netfrag.org/nfo.caesar/id/1">Requirement: LDAP For Aliases, Maps, And Classes</a> |
1346 |
|
o PARSER-TODO: RefactorThisLink |
1347 |
|
|
1348 |
|
o check out /usr/sbin/checksecurity - what's that? |
1349 |
|
x seems to come from /etc/cron.daily/standard |
1350 |
|
|
1351 |
|
o write mail to the KroupwareMailingList |
1352 |
|
|
1353 |
|
o ContentIndexer for netfrag.org which should provide a FullTextSearch over AllResources |
1354 |
|
|
1355 |
|
o run MakeDoc at interval at netfrag.org as ServiceUser |
1356 |
|
o implement first version of makedoc |
1357 |
|
o use mkDoc.bat (or similar) for that purpose |
1358 |
|
o extend: use 'makedoc.bat|.pl' from ->cvs.joko.TestArea.topics.authoring.DocBook |
1359 |
|
|
1360 |
|
o DispatchRequest to tie all together |
1361 |
|
o just make a ref from almost everything and see what comes in.... |
1362 |
|
o write handlers for the various refs.... |
1363 |
|
|
1364 |
|
o show foldername in CVSSpam - message |
1365 |
|
|
1366 |
|
o SoWhyCommands? |
1367 |
|
o JustUseHumanLanguage! |
1368 |
|
o StartWithEnglish |
1369 |
|
o TryGerman |
1370 |
|
|
1371 |
|
o wrappers around the common used cvs commands |
1372 |
|
o cvscheckout <what> |
1373 |
|
o cvsupdate <what> |
1374 |
|
o cvscommit <what> <message> |
1375 |
|
|
1376 |
|
o newsportal |
1377 |
|
feature-idea: crosspost to another group |
1378 |
|
|
1379 |
|
o FreeTaskManagement |
1380 |
|
|
1381 |
|
o run-dotfiles -R fetchdoc|synccvs|makedoc |
1382 |
|
|
1383 |
|
o netfrag.org: "NewItems" (interacting with user's cookie's) |
1384 |
|
|
1385 |
|
o phpLdapAdmin |
1386 |
|
o use Horde's Ldap-driver! |
1387 |
|
o tryout http://www.enaliath.com/phpLDAPadmin.tgz |
1388 |
|
|
1389 |
|
o david-addons (Freeware) |
1390 |
|
|
1391 |
|
o MacOsX (Shareware) |
1392 |
|
|
1393 |
|
o POE - mailing-list??? |
1394 |
|
|
1395 |
|
o publish all ldap-schemas seperately |
1396 |
|
|
1397 |
|
o copyright information for nfo/docs/schemas (horde & janosch) |
1398 |
|
|
1399 |
|
o notify of new news-entries / bug-requests |
1400 |
|
|
1401 |
|
o scan urls from channel nfo and post to nfo.links.misc |
1402 |
|
|
1403 |
|
o write current topic of #nfo to some page on http://netfrag.org and link to irc-channel there |
1404 |
|
|
1405 |
|
o FeatureForTUTOS: ConvertNoteToTask |
1406 |
|
|
1407 |
|
o FeatureForTUTOS: mark items in MiniTaskView as open or closed (by their respecrive state) |
1408 |
|
|
1409 |
|
o wiki.de? |
1410 |
|
|
1411 |
|
o increase memory for quepasa.netfrag.org (128?) |
1412 |
|
|
1413 |
|
o have a look at /usr/share/mail-audit-tools/popread |
1414 |
|
|
1415 |
|
o ModeWorkflow: |
1416 |
|
o OnlineMode: |
1417 |
|
o GoOnline |
1418 |
|
o SyncHome2Web |
1419 |
|
o BrowseInternet, SelectItemsForDownload (SeeOtherNote "what do we need / what do we do?") |
1420 |
|
o SyncWeb2Home |
1421 |
|
o GoOffline (switches to DisconnectedMode) |
1422 |
|
o DisconnectedMode: |
1423 |
|
o ReadMails, WriteMails |
1424 |
|
o ReadNews, PostAnswers |
1425 |
|
o BrowseIntranet, PublishStuff |
1426 |
|
o GoHome (switches to ShutdownMode) |
1427 |
|
o ShutdownMode |
1428 |
|
o all (important - more or less...) messages are redirected to pre-configured |
1429 |
|
addresses and/or notifications are sent on incoming messages at specific |
1430 |
|
targets to pre-configured addresses as well. |
1431 |
|
|
1432 |
|
o Hack: ModifyWord to *only* load and save HTML-Documents |
1433 |
|
|
1434 |
|
o TUTOS: |
1435 |
|
o MyTUTOS: |
1436 |
|
o on http://www.netfrag.org/tutos/php/mytutos.php ... |
1437 |
|
o "Open Tasks" (below|above "Products & Projects") |
1438 |
|
o ... display http://www.netfrag.org/tutos/php/task_overview.php?id=1036 |
1439 |
|
o columns: Taskname (linked to task), Projectname (linked to project), created |
1440 |
|
o Calendar: |
1441 |
|
o collapse Items (cut away Project-relationship) |
1442 |
|
o limit column width |
1443 |
|
o smaller font |
1444 |
|
o evtl.: vertically |
1445 |
|
o create Task: |
1446 |
|
o a "pre"-task doesn't need dates (neither from nor to) (use the creation-date for displaying in overview) |
1447 |
|
o an "ongoing"-task needs a begin date only |
1448 |
|
o a "finished" task needs both! |
1449 |
|
|
1450 |
|
o look at docbook.m4 at /home/service/download/mnogosearch/mnogosearch-3.2.7/ |
1451 |
|
|
1452 |
|
o /home/service/download/mnogosearch/3.1.2.5/sample |
1453 |
|
|
1454 |
|
x all attempts to install some recent mnoGoSearch-version working together with mysql |
1455 |
|
from some debian packages failed, now trying mnogosearch-3.1.20 |
1456 |
|
x configure --with-mysql |
1457 |
|
x apt-get install libmysqlclient10-dev |
1458 |
|
x configure --with-mysql |
1459 |
|
x make && make install |
1460 |
|
x configure /usr/local/mnogosearch/etc/indexer.conf |
1461 |
|
x cd /home/service/download/mnogosearch/mnogosearch-3.1.20/create/stopwords |
1462 |
|
x ./stopword.pl stop.de.txt stop.en.txt > stopwords.txt |
1463 |
|
x mysql mnogosearch < stopwords.txt |
1464 |
|
|
1465 |
|
x seems to work perfectly with "single"-mode! |
1466 |
|
|
1467 |
|
o now switching to crc-multi again.... |
1468 |
|
x cd /usr/local/mnogosearch |
1469 |
|
x ./sbin/indexer -a -v 5 |
1470 |
|
|
1471 |
|
o phpHtmlLib |
1472 |
|
o quick2pick-code: refactor TreeView to *new* phpHtmlLib-component |
1473 |
|
o new: add EditingFeature to phpHtmlLib's "InfoTable"-component |
1474 |
|
o quick2pick-code: refactor to feature "IntegratedEditing" of phpHtmlLib's "Xyz List" - component |
1475 |
|
|
1476 |
|
x indexing netfrag.org |
1477 |
|
|
1478 |
|
x lookup examples: |
1479 |
|
sendmail (->rank!) (exclude http://www.netfrag.org/docs/build/?) |
1480 |
|
sync (ok) |
1481 |
|
kerberos (exclude http://www.netfrag.org/docs/build/?) |
1482 |
|
xabbu (ok) |
1483 |
|
polygon (ok) |
1484 |
|
textur (ok) |
1485 |
|
3d (ok) |
1486 |
|
parkvilla (ok) |
1487 |
|
stonie (ok) |
1488 |
|
lash la rue (ok) |
1489 |
|
sendmail (ok) |
1490 |
|
kerberos (ok) |
1491 |
|
|
1492 |
|
o not needed urls (exclude somehow (mnogosearch-directive|robots.txt!): |
1493 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/HowToUseWiki |
1494 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/FindPage |
1495 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/SandBox |
1496 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/WikiWikiWeb |
1497 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/RecentChanges |
1498 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/AddingPages |
1499 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/TextFormattingRules |
1500 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/UserPreferences |
1501 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PhpWikiDocumentation |
1502 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/MoreAboutMechanics |
1503 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/EditText |
1504 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/WabiSabi |
1505 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/RecentVisitors |
1506 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/SteveWainstead |
1507 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/RecentEdits |
1508 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PhpWiki |
1509 |
|
(Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/HomePage)??? |
1510 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/MagicPhpWikiURLs |
1511 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/CalendarPlugin |
1512 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/GoodStyle |
1513 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/InterWiki |
1514 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/LinkIcons |
1515 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PgsrcTranslation |
1516 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PhpWikiAdministration |
1517 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/ReleaseNotes |
1518 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/WikiPlugin |
1519 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/MostPopular |
1520 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/InterWikiMap |
1521 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/CategoryCategory |
1522 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/AllPages |
1523 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/BackLinks |
1524 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/DebugInfo |
1525 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/FullRecentChanges |
1526 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/FullTextSearch |
1527 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/LikePages |
1528 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageHistory |
1529 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/TitleSearch |
1530 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/TestPage |
1531 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/OrphanedPages |
1532 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/FuzzyPages |
1533 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/Info |
1534 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/NewMarkupTestPage |
1535 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTest |
1536 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTestFour |
1537 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTestOne |
1538 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTestThree |
1539 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/PageGroupTestTwo |
1540 |
|
Indexer[23070]: [1] http://www.netfrag.org/nfoweb/index.php/RandomPage |
1541 |
|
o ... same with "http://www.netfrag.org/rrr/index.php/" - it's a phpWiki, too |
1542 |
|
=> make up a robots.txt? |
1543 |
|
x exclude http://www.netfrag.org/docs/build/!!! |
1544 |
|
x Disallow Regex http://www.netfrag.org/docs/build/.* |
1545 |
|
o FeatureRequest: remember (via cookie!) last issued searches |
1546 |
|
x how to clear a mnogosearch-index-database? |
1547 |
|
x indexer -C |
1548 |
|
x how to re-index? |
1549 |
|
x just run 'indexer' |
1550 |
|
o index more resources on netfrag.org (news, cvs) |
1551 |
|
o exclude unwanted resources (wiki-test-& default-pages & co.) |
1552 |
|
o establish http://search.netfrag.org/ |
1553 |
|
o place DispatchRequest there, let it redirect to an application "mnoGoSearch" |
1554 |
|
o "mnoGoSearch" is currently installed at http://netfrag.org/search/ |
1555 |
|
o => (e.g.) http://search.netfrag.org/dust -> http://netfrag.org/search/?q=dust |
1556 |
|
|
1557 |
|
o http://w-a-c.com: Inhalt unter "Clubtreffen" besser positionieren! |
1558 |
|
|
1559 |
|
o http://lashlarue.de: inhalte und struktur überarbeiten |
1560 |
|
|
1561 |
|
x patch cvs-permissions: |
1562 |
|
x cd /var/lib/cvs/nfo |
1563 |
|
x chown -R .src doc patches perl php |
1564 |
|
x chown -R .rootsrc hosts layouts |
1565 |
|
o do this regularly |
1566 |
|
|
1567 |
|
o run indexer and '.runrc' on interval! |
1568 |
|
|
1569 |
|
o amo@grasshopper: cleanup local repository 'nfo' from cvs.netfrag.org!!! |
1570 |
|
|
1571 |
|
o categorization: |
1572 |
|
o document-type: <mime-type> |
1573 |
|
o file-type: |
1574 |
|
o suffix: .xyz (guess application-relationship of file from this) |
1575 |
|
o content-encoding: ASCII, EBCDIC, UTF-8, etc. |
1576 |
|
|
1577 |
|
o shortcut for: |
1578 |
|
o ctlinnd newgroup nfo.dev.php |
1579 |
|
o nano /data/www/global/apps/newsportal/groups.txt |
1580 |
|
add: nfo.dev.php Php Development |
1581 |
|
|
1582 |
|
o look at slurp:/var/www/docbook-dsssl/ |
1583 |
|
|
1584 |
|
o make ResourceGroups (group - what else? - resources together - from netfrag.org or other urls/urns or WikiTags) |
1585 |
|
|
1586 |
|
o look at R:\staff\public\Research\Mirrored Sites |
1587 |
|
|
1588 |
|
o phpw2hfax? |
1589 |
|
|
1590 |
|
o look at phpOrgaSync: http://www.ds-services.de/portal/ |
1591 |
|
o ->http://www.phprojekt.com/ |
1592 |
|
|
1593 |
|
o amavis uses 'Net::Server::PreForkSimple': |
1594 |
|
Jan 30 07:52:53 quepasa amavis[25445]: 2003/01/30-07:52:53 Amavis (type Net::Server::PreForkSimple) starting! pid(25445) |
1595 |
|
|
1596 |
|
o mnogosearch: use searchd? what's spelld? |
1597 |
|
|
1598 |
|
o look at quepasa:/etc/apache/httpd.conf: |
1599 |
|
# MetaDir: specifies the name of the directory in which Apache can find |
1600 |
|
# meta information files. These files contain additional HTTP headers |
1601 |
|
# to include when sending the document |
1602 |
|
# |
1603 |
|
#MetaDir .web |
1604 |
|
|
1605 |
|
# |
1606 |
|
# MetaSuffix: specifies the file name suffix for the file containing the |
1607 |
|
# meta information. |
1608 |
|
# |
1609 |
|
#MetaSuffix .meta |
1610 |
|
|
1611 |
|
o look at quepasa:/etc/apache/httpd.conf: |
1612 |
|
# Customizable error response (Apache style) |
1613 |
|
# these come in three flavors |
1614 |
|
# |
1615 |
|
# 1) plain text |
1616 |
|
#ErrorDocument 500 "The server made a boo boo. |
1617 |
|
# n.b. the (") marks it as text, it does not get output |
1618 |
|
# |
1619 |
|
# 2) local redirects |
1620 |
|
#ErrorDocument 404 /missing.html |
1621 |
|
# to redirect to local URL /missing.html |
1622 |
|
#ErrorDocument 404 /cgi-bin/missing_handler.pl |
1623 |
|
# N.B.: You can redirect to a script or a document using server-side-includes. |
1624 |
|
# |
1625 |
|
# 3) external redirects |
1626 |
|
#ErrorDocument 402 http://some.other_server.com/subscription_info.html |
1627 |
|
# N.B.: Many of the environment variables associated with the original |
1628 |
|
# request will *not* be available to such a script. |
1629 |
|
|
1630 |
|
o look at quepasa:/etc/apache/httpd.conf: |
1631 |
|
# Allow http put (such as Netscape Gold's publish feature) |
1632 |
|
# Use htpasswd to generate /etc/apache/passwd. |
1633 |
|
# You must unremark these two lines at the top of this file as well: |
1634 |
|
#LoadModule put_module modules/mod_put.so |
1635 |
|
# |
1636 |
|
#Alias /upload /tmp |
1637 |
|
#<Location /upload> |
1638 |
|
# EnablePut On |
1639 |
|
# AuthType Basic |
1640 |
|
# AuthName Temporary |
1641 |
|
# AuthUserFile /etc/apache/passwd |
1642 |
|
# EnableDelete Off |
1643 |
|
# umask 007 |
1644 |
|
# <Limit PUT> |
1645 |
|
# require valid-user |
1646 |
|
# </Limit> |
1647 |
|
#</Location> |
1648 |
|
|
1649 |
|
o admin: |
1650 |
|
o LoginLists (e.g. User-Account per Service(mail (send & recieve), shell, wiki, news)) |
1651 |
|
o IncludeLists (e.g. include newsgroup into newsportal (news2http-gateway), include path to Backup) |
1652 |
|
o ExcludeLists (e.g. exclude from Indexer (mnoGoSearch)) |
1653 |
|
|
1654 |
|
o a general question: why does a user *still* has to specifiy *two* servers for mail? |
1655 |
|
technical - okay (more than....) - but from the user perspective? no! just one! |
1656 |
|
|
1657 |
|
o benchmark dispatchmail: |
1658 |
|
a) started via pipe in .forward-file |
1659 |
|
MTA Queue status... |
1660 |
|
/var/spool/mqueue (3 requests) |
1661 |
|
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient----------- |
1662 |
|
h0U8ARv9027686* 16930 Thu Jan 30 09:13 <news@quepasa.netfrag.org> |
1663 |
|
<usenet@quepasa.netfrag.org> |
1664 |
|
h0U8ARv7027686* 56 Thu Jan 30 09:13 <joko_mail@quepasa.netfrag.org> |
1665 |
|
|"/data/opt/dispatchmail/bin/dispatchm |
1666 |
|
h0U8ARv5027686* 56 Thu Jan 30 09:13 <joko_mail@quepasa.netfrag.org> |
1667 |
|
|"/data/opt/dispatchmail/bin/dispatchm |
1668 |
|
Total requests: 3 |
1669 |
|
b) as milter-handler???? |
1670 |
|
|
1671 |
|
o lookup: paul verilio |
1672 |
|
|
1673 |
|
o review D:\e\home\amo\develop\cvs\nautilux.progressive-media.de\amo !!! |
1674 |
|
|
1675 |
|
o make up a Bundle::dispatchmail |
1676 |
|
o install dispatchmail |
1677 |
|
o get dispatchmail.pl from nfo-repository |
1678 |
|
o get Mail::Audit from CPAN |
1679 |
|
o get Mail::Audit::Dispatch from nfo-repository |
1680 |
|
o get dependencies |
1681 |
|
o DesignPattern::Object |
1682 |
|
o DesignPattern::Bridge |
1683 |
|
o org::netfrag::shortcuts |
1684 |
|
o MIME::Lite |
1685 |
|
o Hash::Merge |
1686 |
|
o Log::Dispatch |
1687 |
|
o Log::Dispatch::Config |
1688 |
|
o load a sample .dispatchmrc into your users home-directory |
1689 |
|
o edit it according your needs - see (in future) Mail::Audit::Tour |
1690 |
|
o test your rules by running |
1691 |
|
o ./buildmail | ./dispatchmail --base=/home/username (you'll need MIME::Lite for running buildmail...) |
1692 |
|
|
1693 |
|
o cvshistory |
1694 |
|
o draw a graphical / navigatable timeline of a cvs-history |
1695 |
|
o embed urls pointing to arbitrary resources |
1696 |
|
|
1697 |
|
o establish: bugs@netfrag.org |
1698 |
|
o automagically create TUTOS-ticket |
1699 |
|
|
1700 |
|
x groupwares / time-trackers |
1701 |
|
x TUTOS |
1702 |
|
x phpProjekt |
1703 |
|
o [include tool from janosch here] |
1704 |
|
|
1705 |
|
o get together Log::Dispatch(mail) and Mail::Audit::Dispatch |
1706 |
|
o make up a Log::Dispatch::Address |
1707 |
|
o use Data::Map(via ldap) to actually resolve |
1708 |
|
|
1709 |
|
o Torus - client-compatibility |
1710 |
|
o Outlook Express, Outlook 2000, 2002 (win32) |
1711 |
|
o Horde (web) |
1712 |
|
o Netscape & Mozilla (win32 & *nix) |
1713 |
|
o Ximian Evolution (*nix) |
1714 |
|
o TUTOS (web) |
1715 |
|
o Twig (web) |
1716 |
|
o PhpProjekt |
1717 |
|
|
1718 |
|
o jonen@gharb: patched Mail::Audit::Dispatch (don't ask for ~/Mail any more!) |
1719 |
|
|
1720 |
|
o glossary: public bulletin board |
1721 |
|
|
1722 |
|
o dispatchmail: make option "--user=" work again! |
1723 |
|
|
1724 |
|
o flib: |
1725 |
|
o include & boot |
1726 |
|
o include-paths |
1727 |
|
o configKey (servername) => servername/appname |
1728 |
|
o make glib |
1729 |
|
o RPC::Remote: just can talk to single rpc-server!!!! |
1730 |
|
o app-cleanup: |
1731 |
|
o replace ../img/ through img/ globally (in all files found) |
1732 |
|
o grep -ri "../img" | modify.pl --regex=s/\.\.\/img/img/g [--in-type=filelist] |
1733 |
|
o refactor replace_cvs.pl to: |
1734 |
|
finder.pl -R --regex=/CVS/Root . | modify.pl --regex=s/:pserver:/:ext:/ [--in-type=filelist] |
1735 |
|
o is it possible to actually parse settings && arguments (not just "options") using Getopt::Long?? |
1736 |
|
o else: look at CPAN more detailed or make a CliCmd::Option + CliCmd::Argument = CliCmd::Setting!! |
1737 |
|
|
1738 |
|
o 0. Oef::Request -> ... |
1739 |
|
o 1. CliCmd::Setting -> Oef::Request -> [hibernate] -> [wakup] -> Oef::Engine -> Oef::>Task -> Oef::Response |
1740 |
|
o need to freeze a Oef::Request |
1741 |
|
o 2. CliCmd::Setting -> Oef::Request -> Oef::Engine -> Oef::Task -> [hibernate] -> [wakup] -> Oef::Response |
1742 |
|
o need to freeze a Oef::Engine |
1743 |
|
|
1744 |
|
o Oef::Base bases on DesignPattern::Object and DesignPattern::Bridge |
1745 |
|
|
1746 |
|
o refactor DesignPattern::Object::Logger to Oef::Base::Logger |
1747 |
|
|
1748 |
|
o use phpHtmlLib - widgets in a wiki (yakka!) |
1749 |
|
|
1750 |
|
o rename Data::Storage::Handler::NetLDAP to Data::Storage::Handler::LDAP |
1751 |
|
|
1752 |
|
o register: data-storage.[perl.]netfrag.org |
1753 |
|
|
1754 |
|
o look at '<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />'!!! |
1755 |
|
o better use 'utf-8' to achieve full i18n? |
1756 |
|
|
1757 |
|
|
1758 |
|
|
|
o rework apache-layout - check into repository as something root is responsible for! |
|
1759 |
|
|
1760 |
|
|
1761 |
</pre> |
</pre> |