[ create a new paste ] login | about

Link: http://codepad.org/9y53mhHd    [ raw code | fork ]

k4st - Plain Text, pasted on Feb 3:

Requirements
    Overview of types:
        Seller
        Buyer
        Location / Map
        Garage Sale
        Garage Sale Rank
        Product
        Product Type
    
    Executable:
        UWOGarage
        Must accept an '-admin' option indicating admin mode.
    
    When the program is opened:
        Ability to quit anytime/where
        Start screen
            Allows user to log into seller/buyer mode
    
    Admin Mode:
        Create Users
            Unique user-id chosen by admin /[0-9a-z]{4}/i, case insensitive
            Password /[a-zA-Z]{3}/, case sensitive, default: 'aaa'
            First Name /[a-zA-Z]{1, 20}/i
            Last Name /[a-zA-Z-]{1, 20}/i
            Phone Number /[0-9]{10}/
            Default start latitude /-?([0-9]{1,3})\.([0-9]{3,6})/
            Default start longitude /-?([0-9]{1,3})\.([0-9]{3,6})/
            Default zoom level, 1 <= zoom-level <= 23, default highest = 18
        Edit users
            Ability to reset password to default
            Can Change 
                first name
                last name
                phone number
                default latitude
                default longitude
                default zoom level
            Can't change:
                user id
        List Users
            Sorted by:
                user id
                first name
                last name
        Delete users
            Remove all associated posted garage sales
            Remove all garage sale rankings
        Add Product Category
            Unique Category Name /[a-zA-Z0-9 ]{1, 50}/
        Delete Category
    
    Seller Mode:
        First log in / When the password has been reset to default:
            Supply default 'aaa' password
            Supply a new password /[a-zA-Z]{3}/
            Update password
        After first log in:
            Three log in attempts, upon failure the program will stop
            
        Add/Edit Garage Sale
            Latitude /-?([0-9]{1,3})\.([0-9]{3,6})/
            Longitude /-?([0-9]{1,3})\.([0-9]{3,6})/
            Address corresponding to latitude/longitude:
                Street /.{1, 50}/
                City or Closest Town /.{1, 20}/
                Province
                Date of the sale
                Time of the sale
                Categories of products offered (cardinality: zero or more)
                Note (optional input), /.{0, 200}/
        Bulk Add/Load Garage Sale
            Option to
                Remove all existing garage sales and start anew with the bulk load file
                Add bulk load sales to existing sales
            File Format (assume one large regexp, order is important):
                /area: -?([0-9]{1,3})\.([0-9]{3,6}) -?([0-9]{1,3})\.([0-9]{3,6})/
                /stre: .{1, 50}/      (truncate if too long)
                /city: .{1, 20}/      (truncate if too long)
                /prov: (AB|BC|MB|NB|NL|NS|ON|PE|QC|SK)/
                /date: ((0?[1-9])|[12][0-9]|3[01])\/((0?[1-9])|10|11|12)\/([12][0-9]{3})/    (day / month / year)
                /time: ((0?[1-9])|1[0-9]|2[0-4]):((0[1-9])|[1-5][1-9])
                
                Formatting error messages (include line number):
                    If lat/long are incorrect / out-of-bounds
                    If the province is incorrectly formatted
                    If the date is incorrectly formatted, in the past
                    If time is incorrectly formatted
                    If there are any blank lines
                    
                Notes
                    Order is important
                    On finding an incorrectly formatted file:
                        Print error message
                            Line, file
                            Allow bulk undo (optional add-in feature, makes sense)
                        
        Delete Garage Sale
        Total Rank
            The average of all rankings of a given seller's garage sales
    
    Buyer Mode:
        First log in / When the password has been reset to default:
            Supply default 'aaa' password
            Supply a new password /[a-zA-Z]{3}/
            Update password
        After first log in:
            Three log in attempts, upon failure the program will stop
        Rank Garage Sale
            Ranking bad(1) <= rank <= excellent(5)
            Max one ranking per sale
            Ranks can be changed/updated
        View Garage Sale
            Search (allows composition)
                Criteria
                    Find sales within a given radius, in kilometers, of a given lat/long
                    User id
                    Date, sales on that date
                    Date Range, sales within the range
                    Category, one or more
                    Ranking
                        Seller ranking (overall average of sales)
                            <=
                            =
                            >=
                        Sale ranking
                            <=
                            =
                            >=
                Results
                    Map showing way-points of all sales
                        Uses default latitude and longitude for the given user
                        Clicking a way-point shows sale info
                            Sales info includes: seller first/last name, phone number
                            Info can be printed
                                Export to HTML and open up IE, if not, the default browser
    
    Themes
        Three available themes
                            
                        
                


Create a new paste based on this one


Comments: