Você está na página 1de 4

CLASSIFIED ADS features

-----------
Depending of the category, the ads fields will change, so ads_type will permit
to define types of ads that can be assigned then to categories. If a
category has not a defined type, it will take the one of the nearest parent
that have one.
When a category has subcategories, the user will not be able to add ads in
that intermediate category.
Each display templates will contain all the values of the ads, so the
designer can choose to change something.
Like we can see in 'type', we will have at least three kind of list
(normal, detail, thumbnail) and the ability to add other if needed.
The listing will be compound of the list_*_tpl where all the list entries
(list_*_entry_tpl) will be concatenated and put in.
If the category has the adult flag, we need to ask the user if he is an
adult and store this information in the session (if he is an adult).
When listing ads, the user will be able to sort them by every field. But
remember to always sort premium ads fisrt (in fact use type
sort_importance).
Validation function will be the function that check fields validity and if
not valid will return an error message array.
It's important that function like for example list(), that will take get
parameters to display the right type of list, the page of some category
will be generally called from show() as part of the whole page generation
can also be called directly from ajax(). So that same function could be
a first time be called with a new page and in a second time use ajax to
only refresh that element.
- cat_types
id
adult 0, 1
number_by_page
search_simple_tpl
search_advanced_tpl
insert_tpl
edit_tpl
show_tpl
list_normal_tpl
list_normal_entry_tpl
list_detail_tpl
list_detail_entry_tpl
list_thumbnail_tpl
list_thumbnail_entry_tpl
validation_function
- cats
id
father_id
cat_type_id
name
- type
id
name
description
number_of_images
video 0, 1
number_of_days
sort_importance
price
- ads:
id
type_id
user_id
cat_id
lang_id
date
end_date
title
description
url
city_id
phone
email
- users
id
first_name
last_name
email
birtday
...
- country
id
name
- region
id
name
- city
id
name
- car_marque
id
name
- bike_marque
id
name
Ajax ready:
Each major function to display things must be easily calable by an ajax
call to refresh only a part of the page.
{"Class::function(param|param2)"|ajax:"div_id"}
=>
"url/ajax.php?call=Class::function(param|param2)
And there must be a list of calable functions.
Pay interface
Multi language
Lang stored in session (lang to view the site)
Lang stored in ads
Country stored in session
Email validation
Email reminder
Interface to contact users without seeing their email
Ask question to ads (questions appears when they receive an answer)
Captcha
Nice URL rewriting: /category/subcategory/subsubcategory/adsid_adsname.html
(and call back in template to generate them)
RSS with different criterias:
- last
- type
- category_id
- user_id
- easy to query every possible DB criteria
Insert ads section
------------------
1)
Page that permit to select the type of ad with description and prices
2)
Page to insert the add.
Ajax to choose category/subcat/... (select menus will appear and disappear)
Ajax that make the right insert template appears depending of the category choos
ed.
Ajax when choosing country/region/city
3)
Images insertion.
Smarty template example (show.html)
-----------------------
{"title"|translate}
{$ads.title}<br />
{$ads.description}<br />
{if $ads.images}
{foreach from=$ads.images item=image}
{$image|thumb:"100x100"}
{/foreach}
{/if}
Admin interface
---------------
Futur features
--------------
words filtering
phone number filtering
Interface for professionnals
Video ads with webcam (or movie upload)
email when some ads appear
translate ads

Você também pode gostar