| 1 | <html> | 
| 2 | <head> | 
| 3 | <title>joko's sample notes - 2003-02 - ResourceIntegration</title> | 
| 4 | <link href="/horde/css.php?app=chora" rel="stylesheet" type="text/css" /> | 
| 5 | </head> | 
| 6 | <body> | 
| 7 |  | 
| 8 |  | 
| 9 | <pre> | 
| 10 |  | 
| 11 |  | 
| 12 | <hr/> | 
| 13 |  | 
| 14 | o flib: | 
| 15 | o include & boot | 
| 16 | o include-paths | 
| 17 | o configKey (servername) => servername/appname | 
| 18 | o make glib | 
| 19 | o RPC::Remote: just can talk to single rpc-server!!!! | 
| 20 | o app-cleanup: | 
| 21 | o replace ../img/ through img/ globally (in all files found) | 
| 22 | o grep -ri "../img" | modify.pl --regex=s/\.\.\/img/img/g [--in-type=filelist] | 
| 23 | o refactor replace_cvs.pl to: | 
| 24 | finder.pl -R --regex=/CVS/Root . | modify.pl --regex=s/:pserver:/:ext:/ [--in-type=filelist] | 
| 25 | o is it possible to actually parse settings && arguments (not just "options") using Getopt::Long?? | 
| 26 | o else: look at CPAN more detailed or make a CliCmd::Option + CliCmd::Argument = CliCmd::Setting!! | 
| 27 | O refactor Getopt::Simple to Getopt::Easy and add features!? a) argument/option-mechanism b) restrict option-mech | 
| 28 | symbol: O=Ongoing | 
| 29 | c use Getopt::Auto??? | 
| 30 | x make Getopt::Easy!!! | 
| 31 |  | 
| 32 |  | 
| 33 | o 0. Oef::Request -> ... | 
| 34 | o 1. CliCmd::Setting -> Oef::Request -> [hibernate] -> [wakup] -> Oef::Engine -> Oef::>Task -> Oef::Response | 
| 35 | o need to freeze a Oef::Request | 
| 36 | o 2. CliCmd::Setting -> Oef::Request -> Oef::Engine -> Oef::Task -> [hibernate] -> [wakup] -> Oef::Response | 
| 37 | o need to freeze a Oef::Engine | 
| 38 |  | 
| 39 | o Oef::Base bases on DesignPattern::Object and DesignPattern::Bridge | 
| 40 |  | 
| 41 | o refactor DesignPattern::Object::Logger to Oef::Base::Logger | 
| 42 |  | 
| 43 | o use phpHtmlLib - widgets in a wiki (yakka!) | 
| 44 |  | 
| 45 | o rename Data::Storage::Handler::NetLDAP to Data::Storage::Handler::LDAP | 
| 46 |  | 
| 47 | o register: data-storage.[perl.]netfrag.org | 
| 48 |  | 
| 49 | o look at '<meta  http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />'!!! | 
| 50 | o better use 'utf-8' to achieve full i18n? | 
| 51 |  | 
| 52 | o add descriptive words (undelete, etc.) and references to similar projects to mini-howto_trashcan-under-linux_libtrash.html | 
| 53 |  | 
| 54 | o proarc - professional document archiving, indexing, distributing and publishing | 
| 55 | o archiver | 
| 56 | archive --reference|meta|content --check-descents=*.txt <path> --type=file|document | 
| 57 | o indexer | 
| 58 | index <all>, use mnoGoSearch's indexer | 
| 59 | o manager | 
| 60 | o build sets of data | 
| 61 | o make distribution lists | 
| 62 | o manage global settings (base-paths/-urls, etc.) | 
| 63 | o edit object details (public-url, acls, etc.) | 
| 64 | o edit global and/or per-object metadata | 
| 65 | o to-be-published (@) | 
| 66 | o to-be-indexed | 
| 67 | o build manager-rules on top of that | 
| 68 | o distributor | 
| 69 | o prepare/distribute sets of data | 
| 70 | o publisher | 
| 71 | o publish data to given url@server | 
| 72 | a) prepared machine-readable sets for distribution | 
| 73 | b) human-readable material (e.g.: generated indexes, overviews, details, descent-documents) | 
| 74 | o add collaboration on top of that! | 
| 75 | o (technical) annotations, pbb, etc. | 
| 76 | o what is already there? | 
| 77 | x found: ProArc, OpenArc - but nothing seems to be truly *open*! | 
| 78 |  | 
| 79 | o Gtk Rules | phpRules - an abstract rule chain editor | 
| 80 | o modes: dispatchmail, dispatchrequest, ipchains? | 
| 81 | o look at Outlook 2000, Ximian Evolution, Horde | 
| 82 |  | 
| 83 | o iSerienbrief (mac & win32) | 
| 84 |  | 
| 85 | o freier xml-editor für win32? (nicht auf msxml3 basierend?) | 
| 86 |  | 
| 87 | o Data::Storage | 
| 88 | - overview | 
| 89 | - just gives you a handle to a preconfigured data-source. | 
| 90 | - it's a meta-module on our way to unified data access. | 
| 91 | - details | 
| 92 | It also lets you add additional methods to this handle from | 
| 93 | specified Perl-modules acting as "plugins". | 
| 94 | It's delivered with "Handlers" ready for talking to rdbms-databases, | 
| 95 | flat-file databases (csv, etc.), structured files (INPADOC, XML) and | 
| 96 | oo-rdbms-mappers (orms) - in our case "Tangram" (from CPAN). | 
| 97 |  | 
| 98 | o Resources, Ontologies, Information Delivery | 
| 99 | o RSS, RDF, RDFS | 
| 100 |  | 
| 101 | o modifier.pl | 
| 102 | o soap <-> rpc-xml | 
| 103 | o Tangram-Schema <-> RDF Schema (RDFS) | 
| 104 |  | 
| 105 | o use nntp//rss!!! | 
| 106 |  | 
| 107 | o cvssync | 
| 108 | o option AUTOCOMMIT | 
| 109 | o option AUTOADD | 
| 110 | o mode GUI | 
| 111 |  | 
| 112 | o sieve & XML??? | 
| 113 |  | 
| 114 | o cvs & kerberos??? | 
| 115 |  | 
| 116 | o enhance Mail::Audit::Dispatch | 
| 117 | x recieveMail -> dispatchmail & Mail::Audit::Dispatch | 
| 118 | o Mail::Audit::Dispatch::Folder::Mbox (by joko, the main part of the former recieveMail, just uses Mail::Audit) | 
| 119 | o Mail::Audit::Dispatch::Spool (by joko, a little part of the former recieveMail, just uses Mail::Audit) | 
| 120 | x Mail::Audit::Dispatch::Newsgate (by joko, uses Net::NNTP) | 
| 121 | o Mail::Audit::Dispatch::Folder::Cyrus1 (by jonen, acts as sendmail MDA instead of /usr/sbin/cyrdeliver, but re-dispatches to it again after resolving addresses against an arbitrary data source, see 'Data::Map' stuff....) | 
| 122 | o Mail::Audit::Dispatch::Faxgate (by janosch, uses /usr/bin/sendfax; still inside 'mail-handler', tbr) | 
| 123 | o Mail::Audit::Dispatch::Smsgate (by janosch, uses /usr/bin/yaps; still inside 'mail-handler', tbr) | 
| 124 | o could also use /usr/bin/smssend or some module from CPAN | 
| 125 | o Mail::Audit::Dispatch::Response (by joko, notifies sender that his/her mail was processed by arbitrary system) | 
| 126 | o send autoresponse with subject: "Your bug-request was filed." when mailing to bugs@netfrag.org (done by gateway@netfrag.org) | 
| 127 | o actually do file the message at nfo.support.queue (done by gateway@netfrag.org) | 
| 128 | o maybe cc: to or integrate with tutos or other ticketing system (bugzilla)???) | 
| 129 | o this should be the basic functionality needed to implement known features as "autoresponder" or "vacation" on top of this | 
| 130 |  | 
| 131 | o write about: | 
| 132 | o path-structure inside dev-cvs (->bareface, ->janosch) | 
| 133 | o path-structure inside sysadmin-cvs (hosts, skels) (->jonen) | 
| 134 | o path-structure at web/pub (->jonen) | 
| 135 |  | 
| 136 | o enhance newsportal | 
| 137 | o features for ArticleViewer: | 
| 138 | o embedded images | 
| 139 | o MIME capability | 
| 140 | o HTML frameset capability | 
| 141 | o show in external window | 
| 142 | o convert to HTML tables!? | 
| 143 |  | 
| 144 | o a StartingPoint: TUTOS Project/Product Overview | 
| 145 |  | 
| 146 | o generate some documentation for flib and glib automagically | 
| 147 | o use JavaDoc? see ->phpHtmlLib | 
| 148 | o use phpDoc? see ->Xyz | 
| 149 |  | 
| 150 | o yakka: | 
| 151 | o SeperationOfWikiCoreFeatures | 
| 152 | o revisioning | 
| 153 | o EnhancementOfCoreFeatures | 
| 154 | o object oriented linking/referencing | 
| 155 | o reference maintenance capabilities (copy, move, unlink) (+clone, +deep_copy) | 
| 156 | o reference structuring (make set, add more metadata) | 
| 157 | o use RDF and/or RDFS? | 
| 158 | o look at RDFWiki.... | 
| 159 | o EnhancementOfFrontend | 
| 160 | o ReIntegrationOfWikiCoreFeatures | 
| 161 |  | 
| 162 | o "outsource" mysql from quepasa.netfrag.org to h1.service.netfrag.org | 
| 163 |  | 
| 164 | o establish slapd on h1.service.netfrag.org | 
| 165 |  | 
| 166 | o faxabruf für w2hfax (sendfax -d <nummer> -p) | 
| 167 | o konvertiere empfanges dokument von ps nach pdf, tiff? | 
| 168 |  | 
| 169 | o look at bonsai? | 
| 170 |  | 
| 171 | o scripts from janosch | 
| 172 |  | 
| 173 | o LookAt php-4.3.0??? | 
| 174 |  | 
| 175 | o emacs? | 
| 176 |  | 
| 177 | o check if backend-logging still works!? | 
| 178 |  | 
| 179 | o LookAt PythonInPhp | 
| 180 | o integrate python-library from w2hfax (hfaxlib) into Horde!? | 
| 181 |  | 
| 182 | o task list | 
| 183 | start apache1 (click) | 
| 184 | start mysql (type net start mysql) | 
| 185 | start internet explorer (click) | 
| 186 | start explorer (press win-key & e) | 
| 187 | navigate to target | 
| 188 | open in ultraedit | 
| 189 |  | 
| 190 | o php-enhancements!? | 
| 191 | o mixin inheritance for php? | 
| 192 | o manipulating the symbol table? | 
| 193 |  | 
| 194 | o integrate timestamp into log-output of CPAN's Log::Dispatch!? | 
| 195 |  | 
| 196 | o integrate autogenerated api-documentation for code@netfrag.org | 
| 197 | use PhpDocumentor: http://phpdocu.sourceforge.net/ | 
| 198 |  | 
| 199 | o phpLdapBrowser using components from | 
| 200 | o PEAR (DB_ldap) | 
| 201 | o smarty (maybe some parts for gui rendering) | 
| 202 | o phpHtmlLib (abstraction of basic html tags and more highlevel widgets, gui/forms-to-data binding) | 
| 203 | o netfrag.org | 
| 204 | o yakka as navigation-backend | 
| 205 | o on-the-fly generation of navigation-structure | 
| 206 | o page-rendering, -dispatching and -layout | 
| 207 | o maybe integrate these together to get max. overview over all details | 
| 208 | to be able to provide enough abstraction in implementation: | 
| 209 | o current dispatcher from yakka (Engine 1.0?, Engine 2.0?) | 
| 210 | o dispatchrequest (the generic dispatcher which listens at http://cvs.netfrag.org and http://news.netfrag.org) | 
| 211 | o glib/Application/AbstractRequest (a component which grew out of a custom application once, | 
| 212 | but was refactored two times after that (<custom-app> -> flib/Site/Request -> org.netfrag.glib/Application/AbstractRequest) | 
| 213 | o org.netfrag.glib for tying all that together | 
| 214 |  | 
| 215 | o nfoweb: "powered by" - page | 
| 216 | o lamp: linux, apache, mysql, php | 
| 217 | o other daemon software: inn, OpenLDAP, OpenSSH, Kerberos 5, sendmail, amavis, Cyrus | 
| 218 | o other software: TWiki, phpWiki, viewcvs, newsportal | 
| 219 | o other languages: bash, perl, python, ruby, etc., etc. | 
| 220 | o make links... | 
| 221 | o include process view??? | 
| 222 | o link to "IntegratesWith"-page: PIMs, Offices | 
| 223 |  | 
| 224 | o Data::Storage and logging via Log::Dispatch - DEEP RECURSION again!!! | 
| 225 |  | 
| 226 | x build content-index of news.netfrag.org | 
| 227 | o mnoGoSearch's news-extension seems to require some more database-tuning  ;-( | 
| 228 | x ./sbin/indexer -a -v 5 -i -u http://www.netfrag.org/webnews/% | 
| 229 | o automate this: | 
| 230 | o cd /usr/local/mnogosearch | 
| 231 | o ./sbin/indexer | 
| 232 |  | 
| 233 | o refactor OEF::Why::Queue | 
| 234 | o Topics | 
| 235 | o ORM (Object Relational Mapper) | 
| 236 | o Data synchronization | 
| 237 | o Object persistence | 
| 238 | o Code passivation / Task control | 
| 239 | o ChangeLog | 
| 240 | o Todo | 
| 241 | o Ideas | 
| 242 |  | 
| 243 | o PEAR | 
| 244 |  | 
| 245 | o LookAt PEAR-1.0? | 
| 246 |  | 
| 247 | o PEAR::XML::RPC | 
| 248 | x remove custom patches | 
| 249 | x re-integrate functionality from these patches at another place | 
| 250 | o enhance patches | 
| 251 | o look at http://cvs.php.net/co.php/pear/XML_RPC/RPC.php | 
| 252 | o look at http://marc.theaimsgroup.com/?l=pear-dev&m=103578377822397&w=2 | 
| 253 | o provide better patch introducing new error-codes and messages for "local errors": | 
| 254 | o "could not connect to remote server, failed to open socket" | 
| 255 | o "could not send data, but socket is open" | 
| 256 |  | 
| 257 | x LookAt PEAR::Log-1.5.3 | 
| 258 | x does it have log-level-constants defined inside itself? yes! | 
| 259 | x re-integrate patches to have timestamp formatted in a different way | 
| 260 |  | 
| 261 | o integrate PEAR::Translation with smarty | 
| 262 | o look at http://pear.php.net/package-info.php?pacid=124&release=1.2.3 | 
| 263 | o look at http://smarty.php.net | 
| 264 |  | 
| 265 | o send patch for PEAR/Log/file.php | 
| 266 |  | 
| 267 | o make patch for PEAR/XML/RPC.php | 
| 268 |  | 
| 269 | o refactor to PEAR::DB - drivers | 
| 270 | o glib/Data/Driver/Proxy.php | 
| 271 | o glib/Data/Driver/RPC/Remote.php | 
| 272 | o the name??? (DB::RPC?, DB::Remote?, DB::Virtual?) | 
| 273 |  | 
| 274 | o PEAR::Auth::Kerberos??? | 
| 275 |  | 
| 276 | o integrate glib/Data/Driver/Proxy with PEAR::Cache | 
| 277 | o use DB::RPC for this! | 
| 278 |  | 
| 279 | o integrate Application::Config with PEAR::Config | 
| 280 |  | 
| 281 | o use PEAR::Tree | 
| 282 | o look at http://opensource.visionp.de/modules/project/tree.php | 
| 283 | o as base data container for "app::menu", "phpHtmlLib::TreeNav" | 
| 284 |  | 
| 285 | o integrate Data::Encode with PEAR::I18N - Internationalization??? | 
| 286 |  | 
| 287 | o prepare patches for pear.php.net | 
| 288 | o configurable timestamp format for PEAR::Log::file | 
| 289 | o no fatal php errors from PEAR::XML::RPC | 
| 290 |  | 
| 291 | x why not PEAR::Config? | 
| 292 | * This class allows for parsing and editing of configuration datasources. | 
| 293 | * Do not use this class only to read datasources because of the overhead | 
| 294 | * it creates to keep track of the configuration structure. | 
| 295 |  | 
| 296 |  | 
| 297 |  | 
| 298 |  | 
| 299 |  | 
| 300 |  | 
| 301 |  | 
| 302 | </pre> | 
| 303 |  | 
| 304 | <hr/> | 
| 305 | $Id: joko_2003-02.html,v 1.17 2003/02/06 01:16:17 joko Exp $ | 
| 306 |  | 
| 307 | </body> | 
| 308 | </html> |