[Yapcom-commit] rev 114 - in yapcom/trunk: . db lib/YAPC templates

[prev] [thread] [next] [lurker] [Date index for 2003/12/9]

From: svn
Subject: [Yapcom-commit] rev 114 - in yapcom/trunk: . db lib/YAPC templates
Date: 17:35 on 09 Dec 2003
Author: jon
Date: 2003-12-09 17:35:34 +0200 (Tue, 09 Dec 2003)
New Revision: 114

Modified:
   yapcom/trunk/README
   yapcom/trunk/db/db.sql
   yapcom/trunk/lib/YAPC/Organizer.pm
   yapcom/trunk/lib/YAPC/Person.pm
   yapcom/trunk/templates/person.tmpl
   yapcom/trunk/templates/personal_info.tmpl
   yapcom/trunk/templates/presentations.tmpl
   yapcom/trunk/templates/registration.tmpl
Log:
added fields to db - YOU MUST SEE README FOR DETAILS

Modified: yapcom/trunk/README
===================================================================
--- yapcom/trunk/README	2003-12-09 11:34:00 UTC (rev 113)
+++ yapcom/trunk/README	2003-12-09 15:35:34 UTC (rev 114)
@@ -107,8 +107,19 @@
       in the navigation bar seem to be correct.
     - Improve the interface of the administrators: Show all the proposals
 
+      2003.12.09
+    - Added fax, cell and hide to database. Existing databases will need to add these fields
+      Updated code and templates to support these fields.
 
+      To update database:
 
+	echo '.dump' | sqlite yapc.db > out
+        vi out [ add fields to tables matching db.sql, and to all rows in correct location ]
+        my yapc.db yapc.db.bak; sqlite yapc.db < out
+
+      You do not need to stop/restart the web server.
+
+
 0.09  2003.11.27
     - create XML compilant HTML pages
     - enable logged in users to change their proposals 

Modified: yapcom/trunk/db/db.sql
===================================================================
--- yapcom/trunk/db/db.sql	2003-12-09 11:34:00 UTC (rev 113)
+++ yapcom/trunk/db/db.sql	2003-12-09 15:35:34 UTC (rev 114)
@@ -13,11 +13,14 @@
              street   VARCHAR(30),
              zip      VARCHAR(10),
              phone    VARCHAR(20),
+             cell     VARCHAR(20),
+             fax      VARCHAR(20),
              pauseid  VARCHAR(20),
              url      VARCHAR(100),
              mongers  VARCHAR(100),
              bio      BLOB,
              photo    VARCHAR(1),
+             hide     VARCHAR(1),
              other    VARCHAR(10000)
 ) TYPE=INNODB;
 

Modified: yapcom/trunk/lib/YAPC/Organizer.pm
===================================================================
--- yapcom/trunk/lib/YAPC/Organizer.pm	2003-12-09 11:34:00 UTC (rev 113)
+++ yapcom/trunk/lib/YAPC/Organizer.pm	2003-12-09 15:35:34 UTC (rev 114)
@@ -67,8 +67,10 @@
       return $self->prerun_mode($page);
    }
 
+#   my $id = 1;
+   my $id;
    if (grep {$_ eq $page} (@user_pages, @admin_pages)) {
-      if (my $id = $self->is_logged_in) {
+      if ($id = $self->is_logged_in) {
          if (grep {$_ eq $page} @user_pages) {
             $self->prerun_mode($page);
          }
@@ -86,7 +88,7 @@
          $self->param('yapcom_next_page' => $page) if $page ne 'logout';
          $self->prerun_mode('login');
       }
-      return;
+     return;
    }
 
    unless (-f "$skins_dir/$page.tmpl" or -f "$templates_dir/$page.tmpl") {
@@ -348,7 +350,7 @@
       @people = YAPC::Person->retrieve_all;
    }
    else {
-      @people = YAPC::Person->search(acked => 1, {order_by => 'fname'});
+      @people = YAPC::Person->search(acked => 1, hide => 0, {order_by => 'fname'});
    }
 
    foreach my $p (@people) {
@@ -671,7 +673,7 @@
    my $id = $self->is_logged_in;
    my ($person) = YAPC::Person->search(id => $id);
 
-   my @fields = qw(fname lname phone company country state city street zip pauseid url mongers bio);
+   my @fields = qw(fname lname phone fax cell company country state city street zip pauseid url mongers bio hide);
 
    my $t = $self->_server_page('personal_info');
    if (not $q->param('submit')) {
@@ -689,6 +691,7 @@
    foreach my $f (@fields) {
       $args{$f} = $q->param($f) || '';
    }
+   $args{hide} = (exists $args{hide} and $args{hide}) ? 1 : 0;
 
    if ($args{fname} and $args{lname} and $args{phone}) {
       $person->set($_ => $args{$_}) foreach @fields;
@@ -746,10 +749,11 @@
    return $self->send_message('no_such_person') if not $q->param('id');
    my $p;
 
-   # for administrators get back everyone, for non admins only validated people
-   my %search = (id => $q->param('id'));
+   # for administrators get back everyone, for non admins only validated, unhidden people
+   my %search = (hide => 0, id => $q->param('id'));
    if (not $admin) {
       $search{acked} = 1;
+      delete $search{hide};
    }
    eval {($p) = YAPC::Person->search(%search);};
    return $self->send_message('no_such_person') if not $p;

Modified: yapcom/trunk/lib/YAPC/Person.pm
===================================================================
--- yapcom/trunk/lib/YAPC/Person.pm	2003-12-09 11:34:00 UTC (rev 113)
+++ yapcom/trunk/lib/YAPC/Person.pm	2003-12-09 15:35:34 UTC (rev 114)
@@ -8,6 +8,7 @@
 __PACKAGE__->set_up_table('people');
 __PACKAGE__->set_sql(total     => qq{SELECT COUNT(*) total FROM people});
 __PACKAGE__->set_sql(validated => qq{SELECT COUNT(*) validated FROM people WHERE acked=1});
+__PACKAGE__->set_sql(hidden    => qq{SELECT COUNT(*) hidden FROM people WHERE hide=1});
 
 sub new {
    my $self = shift;
@@ -21,7 +22,7 @@
    throw YAPC::Error("No Last Name provided\n")  if not $arg{lname};
    throw YAPC::Error("No Phone provided\n")      if not $arg{phone};
 
-   my @valid_args = qw(fname lname phone email password company pauseid url mongers bio);
+   my @valid_args = qw(fname lname phone fax cell email password company pauseid url mongers bio hide);
 
    if (   not defined $arg{email}
        or $arg{email} !~ /^[\w\d+=@.-]{5,}$/
@@ -31,12 +32,14 @@
       throw YAPC::Error(
                         "Bad e-mail given\n");
    }
+
    if (    $arg{password}
        and $arg{password2}
        and $arg{password} eq $arg{password2})
    {
       my %passed_args;
       @passed_args{@valid_args} = @arg{@valid_args};
+      $passed_args{hide} = (exists $arg{hide} and $arg{hide}) ? 1 : 0;
       __PACKAGE__->create(\%passed_args);    # could be $self->   also
    }
    else {

Modified: yapcom/trunk/templates/person.tmpl
===================================================================
--- yapcom/trunk/templates/person.tmpl	2003-12-09 11:34:00 UTC (rev 113)
+++ yapcom/trunk/templates/person.tmpl	2003-12-09 15:35:34 UTC (rev 114)
@@ -34,6 +34,8 @@
 <tr><td>Company:</td><td><TMPL_VAR NAME="company"></td></tr>
 <tr><td>Email:</td><td><a href="mailto:<TMPL_VAR NAME="email">"><TMPL_VAR NAME="email"></a></td>
 <tr><td>Phone:</td><td><TMPL_VAR NAME="phone"></td></tr>
+<tr><td>Cellphone:</td><td><TMPL_VAR NAME="cell"></td></tr>
+<tr><td>Fax:</td><td><TMPL_VAR NAME="fax"></td></tr>
 </table>
 Proposals:
 <table border="1">

Modified: yapcom/trunk/templates/personal_info.tmpl
===================================================================
--- yapcom/trunk/templates/personal_info.tmpl	2003-12-09 11:34:00 UTC (rev 113)
+++ yapcom/trunk/templates/personal_info.tmpl	2003-12-09 15:35:34 UTC (rev 114)
@@ -10,11 +10,14 @@
 <tr><td>First Name:</td><td><input size="40" name="fname" value="<TMPL_VAR NAME="fname">" /> *</td></tr>
 <tr><td>Last Name:</td><td><input size="40" name="lname" value="<TMPL_VAR NAME="lname">" /> *</td></tr>
 <tr><td>Phone:</td><td><input  size="40" name="phone" value="<TMPL_VAR NAME="phone">" /> *</td></tr>
+<tr><td>Cellphone:</td><td><input  size="40" name="cell" value="<TMPL_VAR NAME="cell">" /></td></tr>
+<tr><td>Fax:</td><td><input  size="40" name="fax" value="<TMPL_VAR NAME="fax">" /></td></tr>
 <tr><td>Company:</td><td><input  size="40" name="company" value="<TMPL_VAR NAME="company">" /></td></tr>
 <tr><td>PAUSE ID:</td><td><input size="40"  name="pauseid" value="<TMPL_VAR NAME="pauseid">" /></td></tr>
 <tr><td>Home page:</td><td><input  size="40" name="url" value="<TMPL_VAR NAME="url">" /></td></tr>
 <tr><td>Mongers Group:</td><td><input size="40"  name="mongers" value="<TMPL_VAR NAME="mongers">" /></td></tr>
 <tr><td>Bio:</td><td><textarea cols="40" rows="10" name="bio"><TMPL_VAR NAME="bio"></textarea></td></tr>
+<tr><td align="right">Hidden:</td><td><input type="checkbox" name="hide" <TMPL_IF NAME="hide">checked="checked"</TMPL_IF> /></td></tr>
 <tr><td>&nbsp;</td><td><input type="submit" name="submitbtn" value="Register" /></td></tr>
 </table>
 </form>

Modified: yapcom/trunk/templates/presentations.tmpl
===================================================================
--- yapcom/trunk/templates/presentations.tmpl	2003-12-09 11:34:00 UTC (rev 113)
+++ yapcom/trunk/templates/presentations.tmpl	2003-12-09 15:35:34 UTC (rev 114)
@@ -4,10 +4,10 @@
 
 If you would like to give a presentation you have to
 <ol>
-<li> <a href="./registration.html">Register</a> on the web site </li>
-<li> <a href="./validation.html">Validate</a> your e-mail address (you get a code in e-mail after registration) </li>
-<li> <a href="./login.html">Login</a> </li>
-<li> <a href="./proposal.html">Submit a presentation</a> abstract: (title, 5-20 lines of text, length 5-90 min, language: English/Hebrew)<br />
+<li> <a href="<TMPL_VAR NAME="cgi_path">/registration.html">Register</a> on the web site </li>
+<li> <a href="<TMPL_VAR NAME="cgi_path">/validation.html">Validate</a> your e-mail address (you get a code in e-mail after registration) </li>
+<li> <a href="<TMPL_VAR NAME="cgi_path">/login.html">Login</a> </li>
+<li> <a href="<TMPL_VAR NAME="cgi_path">/proposal.html">Submit a presentation</a> abstract: (title, 5-20 lines of text, length 5-90 min, language: English/Hebrew)<br />
      You'll see a link to the submission page once you logged in. </li>
 </ol>
 People who give presentations at least 30 minues long (that is exluding lightning talks) can come to the

Modified: yapcom/trunk/templates/registration.tmpl
===================================================================
--- yapcom/trunk/templates/registration.tmpl	2003-12-09 11:34:00 UTC (rev 113)
+++ yapcom/trunk/templates/registration.tmpl	2003-12-09 15:35:34 UTC (rev 114)
@@ -15,6 +15,8 @@
 <tr><td>Last Name:</td><td><input size="40" name="lname" value="<TMPL_VAR NAME="lname">" /> *</td></tr>
 <tr><td>Email:</td><td><input  size="40" name="email" value="<TMPL_VAR NAME="email">" /> *</td></tr>
 <tr><td>Phone:</td><td><input  size="40" name="phone" value="<TMPL_VAR NAME="phone">" /> *</td></tr>
+<tr><td>Cellphone:</td><td><input  size="40" name="cell" value="<TMPL_VAR NAME="cell">" /></td></tr>
+<tr><td>Fax:</td><td><input  size="40" name="fax" value="<TMPL_VAR NAME="fax">" /></td></tr>
 <tr><td>Password:</td><td><input  size="40" name="password" type="password" /> *</td></tr>
 <tr><td>Retype Password:</td><td><input  size="40" name="password2" type="password" /> *</td></tr>
 <tr><td>Company:</td><td><input  size="40" name="company" value="<TMPL_VAR NAME="company">" /></td></tr>
@@ -22,6 +24,7 @@
 <tr><td>Home page:</td><td><input  size="40" name="url" value="<TMPL_VAR NAME="url">" /></td></tr>
 <tr><td>Mongers Group:</td><td><input size="40"  name="mongers" value="<TMPL_VAR NAME="mongers">" /></td></tr>
 <tr><td>Bio:</td><td><textarea cols="40" rows="10" name="bio"><TMPL_VAR NAME="bio"></textarea></td></tr>
+<tr><td align="right">Hidden:</td><td><input type="checkbox" name="hide" <TMPL_IF NAME="hide">checked="checked"</TMPL_IF> /></td></tr>
 <tr><td>&nbsp;</td><td><input type="submit" name="submitbtn" value="Register" /></td></tr>
 </table>
 </form>

Generated at 12:05 on 10 Dec 2003 by mariachi 0.51