<?php
//  All of the documentation and software included in the PHP Climate
//  Release is copyrighted by Sebastien Windal
//
//  Copyright 2002
//  Sebastien Windal.  All rights reserved.
//
//  Redistribution and use in source and binary forms, with or without
//  modification, are permitted provided that the following conditions are met:
//  1. Redistributions of source code must retain the above copyright notice,
//     this list of conditions and the following disclaimer.
//  2. Redistributions in binary form must reproduce the above copyright
//     notice, this list of conditions and the following disclaimer in the
//     documentation and/or other materials provided with the distribution.
//  3. All advertising materials mentioning features or use of this software
//     must display the following acknowledgement:
//     This product includes software developed by Sebastien Windal and their
//     contributors.
//  4. Neither my name nor the names of its contributors may be used to
//     endorse or promote products derived from this software without
//     specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
//  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
//  ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
//  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
//  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
//  SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
//  CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
//  LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
//  OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
//  SUCH DAMAGE.
//

//This static class provides support routines to deal with
//zip codes or city ID's.

class zip
{

    
//A full name follow the following pattern: "NAME:ZIP",
    //Extract the zip code from it.
    
function get_zip($fullname)
    {
        return 
substr($fullname05);
    }

    
//if only a ZIP code is provided as a name, use it.
    //If a full name is passed ("NAME:ZIP"), get the name
    //and return it.
    
function get_name_or_zip($fullname)
    {
        if (
ereg("([0-9]+):(.*)"$fullname$regs))
            return 
$regs[2];
        else
            return 
zip::get_zip($fullname);
    }

    
//Compute an string that will be used to pass a city name and
    //zip as parameter from a php page to another.
    
function city_to_url($zip$name)
    {
        echo 
base64_encode(serialize($zip ":" $name));
    }
}
?>