Author: ranger
Date: Wed May 10 08:43:55 2006
New Revision: 11

URL: 
<http://svn.finkproject.org/websvn/listing.php?sc=1&rev=11&repname=user%3a+ranger>
Log:
charset, language

Added:
    trunk/phenomenon/lib/Phenomenon/Charset/
    trunk/phenomenon/lib/Phenomenon/Charset.pm
    trunk/phenomenon/lib/Phenomenon/Charset/Manager.pm
    trunk/phenomenon/lib/Phenomenon/HitCharsetMap.pm
    trunk/phenomenon/lib/Phenomenon/HitLanguageMap.pm
    trunk/phenomenon/lib/Phenomenon/Language/
    trunk/phenomenon/lib/Phenomenon/Language.pm
    trunk/phenomenon/lib/Phenomenon/Language/Manager.pm
Modified:
    trunk/phenomenon/index.html
    trunk/phenomenon/js/phenomenon.js
    trunk/phenomenon/lib/Phenomenon/Apache.pm
    trunk/phenomenon/lib/Phenomenon/Hit.pm

Modified: trunk/phenomenon/index.html
URL: 
<http://svn.finkproject.org/websvn/diff.php?path=/trunk/phenomenon/index.html&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/index.html (original)
+++ trunk/phenomenon/index.html Wed May 10 08:43:55 2006
@@ -9,7 +9,7 @@
   <meta name="keywords" content="foo bar" />
  </head>
  <body>
-  <script type="text/javascript" src="js/fvlogger/logger.js"></script>
+  <!-- <script type="text/javascript" src="js/fvlogger/logger.js"></script> -->
   <a href="index.html">foo</a>
 
   <div id="fvlogger">

Modified: trunk/phenomenon/js/phenomenon.js
URL: 
<http://svn.finkproject.org/websvn/diff.php?path=/trunk/phenomenon/js/phenomenon.js&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/js/phenomenon.js (original)
+++ trunk/phenomenon/js/phenomenon.js Wed May 10 08:43:55 2006
@@ -1,40 +1,34 @@
-function log_debug(message) { if (debug) { debug(message) } }
-function log_info(message) { if (info) { info(message) } }
-function log_warn(message) { if (warn) { warn(message) } }
-function log_error(message) { if (error) { error(message) } }
-function log_fatal(message) { if (fatal) { fatal(message) } }
-
 function Phenomenon(idname)
 {
-       log_info("Phenomenon() instantiated");
+       //info("Phenomenon() instantiated");
        if (!idname)
                idname = "phenomenon";
 
        this.injectImg = function()
        {
-               log_debug("injectImg called")
+               //debug("injectImg called")
                if (document.getElementById && document.getElementById(idname))
                {
                        document.getElementById(idname).innerHTML = 
this.getImg();
                }
                else
                {
-                       log_error("couldn't find the stats element!");
+                       //error("couldn't find the " + idname + " element!");
                }
        }
 
        this.getImg = function()
        {
-               log_debug("getImg() called");
+               //debug("getImg() called");
                var retArray = this.getData();
                var retval = "<img src=\"/phenomenon/image.gif?" + 
serialize(retArray) + "\" width=\"1\" height=\"1\" alt=\"\" />";
-               log_info(retval);
+               //info(retval);
                return retval;
        }
 
        this.getData = function()
        {
-               log_debug("getData() called");
+               //debug("getData() called");
                var data = new Array();
 
                var items = new Array(new PageInfo(), new BrowserInfo(), new 
MetaInfo());
@@ -45,7 +39,7 @@
                        var itemAsArray = item.asArray();
                        var classname = getObjectClass(item);
 
-                       log_debug("class name = " + classname);
+                       //debug("class name = " + classname);
 
                        for (var key in itemAsArray)
                        {
@@ -154,19 +148,19 @@
 
        if( typeof( window.innerWidth ) == 'number' )
        {
-               log_debug("non-IE");
+               //debug("non-IE");
                this.setWidth(window.innerWidth);
                this.setHeight(window.innerHeight);
        }
        else if( document.documentElement && ( 
document.documentElement.clientWidth || document.documentElement.clientHeight ) 
)
        {
-               log_debug("IE 6+ in standards-compliant mode");
+               //debug("IE 6+ in standards-compliant mode");
                this.setWidth(document.documentElement.clientWidth);
                this.setHeight(document.documentElement.clientHeight);
        }
        else if( document.body && ( document.body.clientWidth || 
document.body.clientHeight ) )
        {
-               log_debug("IE 4 compatible");
+               //debug("IE 4 compatible");
                this.setWidth(document.body.clientWidth);
                this.setHeight(document.body.clientHeight);
        }

Modified: trunk/phenomenon/lib/Phenomenon/Apache.pm
URL: 
<http://svn.finkproject.org/websvn/diff.php?path=/trunk/phenomenon/lib/Phenomenon/Apache.pm&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/lib/Phenomenon/Apache.pm (original)
+++ trunk/phenomenon/lib/Phenomenon/Apache.pm Wed May 10 08:43:55 2006
@@ -41,11 +41,17 @@
                close ($handle);
        }
 
-       my @keywords;
+       my (@keywords, @languages, @charsets);
 
        if (exists $args{'MetaInfo.keywords'}) {
                @keywords = map { { keyword => $_ } } split(/\s+/, 
$args{'MetaInfo.keywords'});
        }
+
+       my ($langs) = split(/;/, $ENV{'HTTP_ACCEPT_LANGUAGE'});
+       @languages = map { { language => $_ } } split(/,/, $langs);
+
+       my ($charsets) = split(/;/, $ENV{'HTTP_ACCEPT_CHARSET'});
+       @charsets = map { { charset => $_ } } split(/,/, $charsets);
 
        $db->begin_work;
 
@@ -64,27 +70,28 @@
                referrer => $args{'PageInfo.referrer'},
                user_agent => $ENV{'HTTP_USER_AGENT'},
                remote_addr => $ENV{'REMOTE_ADDR'},
-               language => $ENV{'HTTP_ACCEPT_LANGUAGE'},
                browser_width => $args{'BrowserInfo.width'},
                browser_height => $args{'BrowserInfo.height'},
                keywords => [EMAIL PROTECTED],
+               languages => [EMAIL PROTECTED],
+               charsets => [EMAIL PROTECTED],
        );
        $hit->save;
 
-       print STDERR Dumper([EMAIL PROTECTED]), "\n";
+       #print STDERR Dumper([EMAIL PROTECTED]), "\n";
 
        $db->commit;
 
-       print STDERR "== cookies ==\n";
-       print STDERR Dumper(\%cookies), "\n";
-
-       print STDERR "== arguments ==\n";
-       print STDERR Dumper(\%args), "\n";
-
-       print STDERR "== environment ==\n";
-       for my $key (sort keys %ENV) {
-               print STDERR "$key = $ENV{$key}\n";
-       }
+#      print STDERR "== cookies ==\n";
+#      print STDERR Dumper(\%cookies), "\n";
+#
+#      print STDERR "== arguments ==\n";
+#      print STDERR Dumper(\%args), "\n";
+#
+#      print STDERR "== environment ==\n";
+#      for my $key (sort keys %ENV) {
+#              print STDERR "$key = $ENV{$key}\n";
+#      }
 
        return 0;
 }

Added: trunk/phenomenon/lib/Phenomenon/Charset.pm
URL: 
<http://svn.finkproject.org/websvn/filedetails.php?path=/trunk/phenomenon/lib/Phenomenon/Charset.pm&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/lib/Phenomenon/Charset.pm (added)
+++ trunk/phenomenon/lib/Phenomenon/Charset.pm Wed May 10 08:43:55 2006
@@ -1,0 +1,18 @@
+package Phenomenon::Charset;
+
+use Apache::Reload;
+
+use base qw(Phenomenon::DB::Object);
+use Phenomenon::DB;
+use Phenomenon::Util;
+
+__PACKAGE__->meta->table('charsets');
+__PACKAGE__->meta->columns
+(
+       id       => { type => 'serial', primary_key => 1, not_null => 1 },
+       charset  => { type => 'text' },
+);
+__PACKAGE__->meta->add_unique_key('charset');
+__PACKAGE__->meta->initialize;
+
+1;

Added: trunk/phenomenon/lib/Phenomenon/Charset/Manager.pm
URL: 
<http://svn.finkproject.org/websvn/filedetails.php?path=/trunk/phenomenon/lib/Phenomenon/Charset/Manager.pm&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/lib/Phenomenon/Charset/Manager.pm (added)
+++ trunk/phenomenon/lib/Phenomenon/Charset/Manager.pm Wed May 10 08:43:55 2006
@@ -1,0 +1,8 @@
+package Phenomenon::Charset::Manager;
+
+use Apache::Reload;
+
+use Phenomenon::DB;
+use base qw(Rose::DB::Object::Manager);
+
+1;

Modified: trunk/phenomenon/lib/Phenomenon/Hit.pm
URL: 
<http://svn.finkproject.org/websvn/diff.php?path=/trunk/phenomenon/lib/Phenomenon/Hit.pm&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/lib/Phenomenon/Hit.pm (original)
+++ trunk/phenomenon/lib/Phenomenon/Hit.pm Wed May 10 08:43:55 2006
@@ -5,7 +5,11 @@
 use base qw(Phenomenon::DB::Object);
 use Phenomenon::DB;
 use Phenomenon::HitKeywordMap;
+use Phenomenon::HitLanguageMap;
+use Phenomenon::HitCharsetMap;
 use Phenomenon::Keyword;
+use Phenomenon::Language;
+use Phenomenon::Charset;
 
 __PACKAGE__->meta->table('hits');
 __PACKAGE__->meta->columns
@@ -15,7 +19,6 @@
        referrer       => { type => 'text' },
        user_agent     => { type => 'text' },
        remote_addr    => { type => 'text' },
-       language       => { type => 'text' },
        browser_width  => { type => 'int' },
        browser_height => { type => 'int' },
        visitor_id     => { type => 'int' },
@@ -37,6 +40,20 @@
                map_from  => 'hit',
                map_to    => 'keyword',
        },
+       languages =>
+       {
+               type      => 'many to many',
+               map_class => 'Phenomenon::HitLanguageMap',
+               map_from  => 'hit',
+               map_to    => 'language',
+       },
+       charsets =>
+       {
+               type      => 'many to many',
+               map_class => 'Phenomenon::HitCharsetMap',
+               map_from  => 'hit',
+               map_to    => 'charset',
+       },
 );
 __PACKAGE__->meta->initialize;
 

Added: trunk/phenomenon/lib/Phenomenon/HitCharsetMap.pm
URL: 
<http://svn.finkproject.org/websvn/filedetails.php?path=/trunk/phenomenon/lib/Phenomenon/HitCharsetMap.pm&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/lib/Phenomenon/HitCharsetMap.pm (added)
+++ trunk/phenomenon/lib/Phenomenon/HitCharsetMap.pm Wed May 10 08:43:55 2006
@@ -1,0 +1,32 @@
+package Phenomenon::HitCharsetMap;
+
+use Apache::Reload;
+
+use base qw(Phenomenon::DB::Object);
+
+use Phenomenon::Hit;
+use Phenomenon::Charset;
+
+__PACKAGE__->meta->table('hit_charset_map');
+__PACKAGE__->meta->columns
+(
+       hit_id     => { type => 'int', not_null => 1 },
+       charset_id => { type => 'int', not_null => 1 },
+);
+__PACKAGE__->meta->primary_key_columns('hit_id', 'charset_id');
+__PACKAGE__->meta->foreign_keys
+(
+       hit =>
+       {
+               class => 'Phenomenon::Hit',
+               key_columns => { hit_id => 'id' },
+       },
+       charset =>
+       {
+               class => 'Phenomenon::Charset',
+               key_columns => { charset_id => 'id' },
+       },
+);
+__PACKAGE__->meta->initialize;
+
+1;

Added: trunk/phenomenon/lib/Phenomenon/HitLanguageMap.pm
URL: 
<http://svn.finkproject.org/websvn/filedetails.php?path=/trunk/phenomenon/lib/Phenomenon/HitLanguageMap.pm&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/lib/Phenomenon/HitLanguageMap.pm (added)
+++ trunk/phenomenon/lib/Phenomenon/HitLanguageMap.pm Wed May 10 08:43:55 2006
@@ -1,0 +1,32 @@
+package Phenomenon::HitLanguageMap;
+
+use Apache::Reload;
+
+use base qw(Phenomenon::DB::Object);
+
+use Phenomenon::Hit;
+use Phenomenon::Language;
+
+__PACKAGE__->meta->table('hit_language_map');
+__PACKAGE__->meta->columns
+(
+       hit_id     => { type => 'int', not_null => 1 },
+       language_id => { type => 'int', not_null => 1 },
+);
+__PACKAGE__->meta->primary_key_columns('hit_id', 'language_id');
+__PACKAGE__->meta->foreign_keys
+(
+       hit =>
+       {
+               class => 'Phenomenon::Hit',
+               key_columns => { hit_id => 'id' },
+       },
+       language =>
+       {
+               class => 'Phenomenon::Language',
+               key_columns => { language_id => 'id' },
+       },
+);
+__PACKAGE__->meta->initialize;
+
+1;

Added: trunk/phenomenon/lib/Phenomenon/Language.pm
URL: 
<http://svn.finkproject.org/websvn/filedetails.php?path=/trunk/phenomenon/lib/Phenomenon/Language.pm&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/lib/Phenomenon/Language.pm (added)
+++ trunk/phenomenon/lib/Phenomenon/Language.pm Wed May 10 08:43:55 2006
@@ -1,0 +1,18 @@
+package Phenomenon::Language;
+
+use Apache::Reload;
+
+use base qw(Phenomenon::DB::Object);
+use Phenomenon::DB;
+use Phenomenon::Util;
+
+__PACKAGE__->meta->table('languages');
+__PACKAGE__->meta->columns
+(
+       id       => { type => 'serial', primary_key => 1, not_null => 1 },
+       language => { type => 'text' },
+);
+__PACKAGE__->meta->add_unique_key('language');
+__PACKAGE__->meta->initialize;
+
+1;

Added: trunk/phenomenon/lib/Phenomenon/Language/Manager.pm
URL: 
<http://svn.finkproject.org/websvn/filedetails.php?path=/trunk/phenomenon/lib/Phenomenon/Language/Manager.pm&rev=11&repname=user%3a+ranger>
==============================================================================
--- trunk/phenomenon/lib/Phenomenon/Language/Manager.pm (added)
+++ trunk/phenomenon/lib/Phenomenon/Language/Manager.pm Wed May 10 08:43:55 2006
@@ -1,0 +1,8 @@
+package Phenomenon::Language::Manager;
+
+use Apache::Reload;
+
+use Phenomenon::DB;
+use base qw(Rose::DB::Object::Manager);
+
+1;



_______________________________________________
Fink-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fink-commits

Reply via email to