--- trunk/server.pl 2008/06/29 00:17:56 13 +++ trunk/lib/Frey/Server.pm 2008/06/29 12:55:39 19 @@ -1,11 +1,7 @@ -#!/usr/bin/perl +package Frey::Server; -# server of yet unnamed framework - -use warnings; use strict; - -use lib 'lib'; +use warnings; use Continuity; use Continuity::REPL; @@ -23,6 +19,7 @@ port => 16001, path_session => 1, cookie_session => 'sid', + callback => \&main, ); $server->debug_level( 2 ); @@ -35,23 +32,23 @@ my ($req) = @_; my $path = $req->request->url->path; - print STDERR "Path: '$path'\n"; + warn "REQUEST: $path\n"; warn $req->request->header('User_Agent'); #warn dump( $req ); # If this is a request for the pushtream, then give them that if($path =~ /pushstream/) { - pushstream($req); + pushstream($req); } # If they are sending us a message, we give them a thread for that too if($path =~ /sendmessage/) { - send_message($req); + send_message($req); } - # Otherwise, lets give them the base page - send_base_page($req); + # Otherwise, lets give them page + send_page($req); } # Here we accept a connection to the browser, and keep it open. Meanwhile we @@ -93,49 +90,13 @@ # This isn't a pushstream, nor a new message. It is just the main page. We loop # in case they ask for it multiple times :) -sub send_base_page { +sub send_page { my ($req) = @_; while(1) { warn "param = ",dump($req->param); - - my $id = $req->param('id'); -# $id = 1 unless $id =~ m/^\d+$/; - - use Strix::User; - my $user = Strix::User->new( id => $id ); - - if ( ! $user ) { - $req->conn->send_status_line( 500, "user $id" ); - $req->print( "Can't find user with id $id" ); - } else { - $req->print( HTML->view( 'user', $user ) ); - } - -=for later - $req->print(qq{ - - - Chat! - - - - -
- - - - -
-
-
-- no messages yet --
- - - }); -=cut + $req->print( HTML->view( 'status' ) ); $req->next; - Module::Refresh->refresh; } } -