Show
Ignore:
Timestamp:
07/27/08 23:28:53 (4 years ago)
Author:
Anselm Lingnau <anselm@…>
Branch:
default
Message:

Treat addresses "modulo capitalisation" when retrieving from the database.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lib/Lancelot/DB.pm

    r225 r240  
    11261126        unless UNIVERSAL::isa($address, "Email::Address"); 
    11271127 
    1128     my($cmd) = q{SELECT id FROM subscribers WHERE local || '@' || domain = ?}; 
     1128    my($cmd) = q{SELECT id FROM subscribers WHERE LOWER(local || '@' || domain) = LOWER(?)}; 
    11291129    $ref = $self->{dbh}->selectrow_arrayref($cmd, {}, $address->address); 
    11301130    unless ($ref) { 
     
    11401140            # Delete the address 
    11411141            $self->{dbh}->begin_work; 
    1142             $self->{dbh}->do("DELETE FROM confirmations WHERE address = ?", 
     1142            $self->{dbh}->do("DELETE FROM confirmations WHERE LOWER(address) = LOWER(?)", 
    11431143                             {}, $address->address) or $result = 0; 
    11441144            if ($result) { 
     
    12331233    my ($hash) = $self->{dbh}->selectrow_hashref(<<"", {}, $address->address); 
    12341234      SELECT * FROM subscribers 
    1235           WHERE local || '\@' || domain = ? 
     1235          WHERE LOWER(local || '\@' || domain) = LOWER(?) 
     1236 
     1237    return {} unless defined $hash; 
    12361238 
    12371239    my (%result);