Shoppingmanager/english: Difference between revisions

From VivaLV-Software
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
=Shopping Manager 2.1.2=
[[Image:shoppingmanager_en_110.png]][[Image:shoppingmanager_dark_en_210.png]]


__NOTITLE__
__TOC__
==Description==
This program helps you to manage your shopping list. It is easy to use (even with one hand) but very powerful. You enter items only once. They can be reused each time you plan your shopping tour with just a simple tap. While shopping, another simple tap checks the item that you just put in your cart. When you are paying for your items, you can also do a checkout in the program. Items are sorted automatically to optimize planning and shopping.
You can define shops and categories to choose from for your items. You can also assign alternative (multiple) shops and virtual categories (like templates) to the items. Each item has the properties name, quantity, standard quantity, unit, price, aisle, notes, tax, priority and coupon.
Items can be imported from text files (.csv) or clipboard and exported to the clipboard or as Email. You can also send a nice list by Email or SMS.
The item list can be configured to display more or less details, display text in different colors and font sizes, use complex sorting and more. You can filter the list by shop, category and search in the item names. The cost for your shopping tour is being calculated automatically.
You can define as many databases as you wish and easily switch between them and copy/move items to other databases.
If you know Handyshopper on PalmOS, you should have no problems using Shopping Manager for webOS.
==Basic Usage==
# select the '''All''' mode by tapping on the memo pad
# tap the ball on the left of needed items or create new items with the '''+''' button
# select the '''Needed''' mode by tapping on the shopping cart and go shopping
# tap on items that you put in your cart
# pay
# tap the door button for checkout
==Modes==
===All mode (memo pad icon)===
In All mode, you see all kinds of items (default, needed, checked). This is the mode, where you plan your shopping. The items are sorted by name by default (you can change that). The header info displays the number of needed/visible items and the total price of needed items. You can always filter the view with the shops and/or category selector in the header or by typing some letters.
===Needed mode (shopping cart icon)===
In Needed mode, you see only items that are needed or that you have checked. This is the mode, which you use while shopping. The items are sorted first by category, then by name by default (you can change that). The header info displays checked/visible items and the total price of the items that you have checked. By tapping on the header info, you can switch to the display of total price of needed and checked items. You can always filter the view with the shops and/or category selector in the header or by typing some letters.
==Searching/Filtering==
You can quickly find a specific item, by filtering the list by
* shop (upper left selector)
* category (upper right selector)
* item Name (just type some letters on the keyboard)
This works in both modes (All/Needed).
==Main View==
===Header===
By tapping on the selector in the upper left corner, you open the shop menu. There you can enable filtering on a specific shop or edit shops. '''All Shops''' disables the filter. '''Edit...''' brings you to the Shops View (see below).
By tapping on the selector in the upper right corner, you open the category menu. There you can enable filtering on a specific category or edit categories. '''All Cat.''' disables the filter. '''Edit...''' brings you to the Categories View (see below).
In the middle, you have some statistics about your items. The first line displays the number of needed or checked items and the number of visible items. The second line displays the price of needed items or checked items. The displayed numbers and price depend on the selected mode ('''All''' or '''Needed'''). In '''Needed''' mode, tapping on the statistics switches between 2 variants.
===Item List===
By default, items have a ball on the left. This means, they are not needed. Tapping on that ball switches the item to '''needed''' with the standard quantity of that item.
When the item is needed, a checkbox appears instead of the ball and the item name changes color. Now the item will also be displayed in the '''Needed''' mode. Needed items are being displayed at the top of the list by default (you can change that).
Tapping on the item anywhere (you can change that to left third or checkbox only) in '''Needed''' mode, checks the checkbox, meaning that you have the item in your cart. The item name changes color and all item texts are being stroked through. Items that you have are being displayed between the needed and default items by default (you can change that). Tapping again on the item unchecks it. Tapping on the item while you press on the gesture area edits the item.
If you tap on the checkbox of an item in '''All''' mode, it will be reset back to '''default'''.
On the right, there is a '''i''' symbol. Tapping on that opens the item menu. There you can go to the Edit Item View (see below), quickly set a quantity between 0 and 9 or a custom quantity (which opens a dialog for entering) and copy or move an item. Setting a quantity of 0  automatically switches the item to '''default'''. Setting a quantity of greater than 0, switches the item to '''needed'''.
In the first line, you can see the name of the item and the needed quantity (if the item is needed). In the second line, you can see the priority and the category and shop the item belongs to, the aisle (in []) and if you have a coupon. The third line displays the price for the item and the unit. If the item is needed, you can see the total price (price multiplied by quantity) on the right side. The last line (or lines) display notes for that item, if there are any. All lines (or part of lines) besides the first one can be switched off in the Preferences View (see below).
You can delete items by swiping them to the left or to the right.
===Footer===
In the lower left corner, there is a '''+''' button. Tapping on the button opens the Edit Item View (see below) in new item mode.
Next, there is a button with a door. Tapping on the button does a checkout. You should choose Checkout, when you are done with a shop (you have paid). This switches all checked items of the current shop back to Default. If you are in the Needed mode, the items will disappear and you can (possibly) continue your shopping tour with the next shop.
In the middle, there is a button with a curved arrow. This is the '''Undo''' button. Tapping on the button reverts the last simple changes (check/uncheck/change quantity) you did to the items in the Main View. When you leave the Main View or switch between All or Needed mode, you cannot take back the last changes.
In the lower right corner, there is the mode switch. You can choose '''All''' (memo pad) or '''Needed''' (shopping cartn), which changes the display and behavior of the program. Please see above for more info.
==Menus==
[[Image:shoppingmanager_menu_en_120.png]]
===Edit===
This is the standard webOS edit menu for handling the clipboard.
===Database===
====Manage====
This takes you to the Databases View (see below).
====Select====
Here you can see, what the current database is (has a checkmark) and quickly switch to another.
====Import====
Import always works on the current database. You can import items from a text file or from the clipboard. The requirement is that you have each item on a separate line like this:
Apples;Fruit;Shop2;Kilogram;1.99;2;Only the red ones;3;false;false;3;false;1
Mineral water;Drinks;Shop1;Liter;0.49;6;;1;false;false;1;true;1
Oranges;Fruit;Shop2;Kilogram;2.99;0;;3;false;false;4;false;1
Red wine;Drinks;Shop1;Liter;5.99;0;;2;false;false;2;false;1
The format is:
Name;CategoryName;ShopName;Unit;Price;Quantity;Note;Aisle;Tax1;Tax2;Priority;Coupon;StandardQuantity
You can import new items or update existing items with the Import functionality.
The separator can be configured in Preferences. Only the Name is mandatory. You can leave fields blank (no text between the two ;;). You can omit fields at the end, for example only importing Names. But the order of fields is fixed!
Import will use the current shop and/or category for the imported items. When you choose "All Shops" and/or "All Cat." then the shop and/or category for the imported items will be set automatically. That means, if the import data contains values for the shop and/or category then these values will be taken. If not, in case of an update the old value will remain unchanged or in case of an insert the default value will be used.
Handling of special cases is compatible with Excel. If you want to have the separator char inside a field or a line feed or a quotation mark, then you have to write the complete field in quotation marks and quotation marks inside the field have to be doubled. For example, if you want to import a note field with this content:
this is;some "strange"
text
Then it has to be written like this:
"this is;some ""strange""
text"
If you are importing an item, that already is in the current database and the shop or category in the import data is different than in the database, it will be treated as alternative shop or virtual category. In this case all fields are being ignored that are irrelevant for an alternative shop (everything besides shop, price and aisle) or virtual category (everything besides category).
'''From File:'''
Simply copy a file with a name with ending '''.txt''' or '''.csv''' (for example '''items.txt''') over USB to your webOS device and choose Import in Shopping Manager. Then you select file and the encoding (ISO or UTF-8) and choose the file.
'''From Clipboard:'''
If you have text in the clipboard (for example you exported using a different version of Shopping Manager or you copied the text from an Email or from the Memos application), then you choose Import and Clipboard and paste the content of the Clipboard into the text field and tap on '''Import'''.
=====Import from Handyshopper=====
To import items from Handyshopper (PalmOS), you have 2 possibilities: Items only or most fields.
'''1. Items only'''<br>
* export your Handyshopper list (items only, no optional fields, "-" as separator) to MemoPad
* do a HotSync
* copy the content of the memo from Palm Desktop to an editor (Notepad for example), replace "- " (this is the minus sign plus space) with "" (nothing) and save as somename.txt
* copy that file to your webOS device over USB
* import the list into Shopping Manager (choose ISO encoding, if you used Notepad)
'''2. Most fields'''<br>
Handyshopper's export format is not well structured and is missing some things, for example categories. So, to get most of your data exported, you would have to use an extra tool named [http://www.rmobile.ca/subpages/hs2edit.html HS2Edit]. This Excel extension reads the .pdb file from Handyshopper and lets you create a .csv file. You just have to make sure, that the file meets the specifications (field order) listed above.
====Export====
You can export items to the Clipboard or an Email. You can also choose, if you want to export all items or all needed items of the current shop. The format is described in the Import chapter.
Alternative shops and virtual categories are being exported as lines with most fields empty. Only shop, price and aisle or category are bring written.
===Execute Action===
[[Image:shoppingmanager_action1_en_120.png]][[Image:shoppingmanager_action2_en_120.png]]
Here you can execute an action on multiple items at once. First you should filter the item list as you wish and then you can tap on this menu and choose an action. After choosing the action, you see again the list of previously visible items and then you choose on which of those to invoke the action. Tap on '''Execute''' to execute. See also the chapter on the Pick Items View.
Most actions do have a second option named '''choice''', where you can further configure the action.
====Assign alternative shop====
This action assigns (or unassigns) a shop as alternative shop to multiple items. Choose the shop in the second selector. Items that have the chosen shop as main shop, cannot be assigned. You cannot input price and aisle for the alternative shop here (this can only be done in the Edit Item View). More on alternative shops in the chapter below.
====Assign virtual category====
This action assigns (or unassigns) a category as virtual category to multiple items. Choose the category in the second selector. Items that have the chosen category as main category, cannot be assigned. More on virtual categories in the chapter below.
====Change shop====
This action changes the main shop on multiple items. Choose the shop in the second selector. If the items already have the chosen shop as alternative shop, that will be removed.
====Change category====
This action changes the main category on multiple items. Choose the category in the second selector. If the items already have the chosen category as virtual category, that will be removed.
====Copy to DB====
This action copies multiple items to a different or the same database. Choose the database in the second selector. More on multiple databases in the chapter below.
====Move to DB====
This action moves multiple items to a different database. Choose the database in the second selector. More on multiple databases in the chapter below.
====Delete items====
This action deletes multiple items. The second selector is irrelevant here. Be careful with this action, because deleted items are gone forever.
===Reset Visible Items===
With this menu, you can change all items, that are currently visible to a different state.
* Default: Switches all visible items to Default state
* Need: Switches all visible and not needed items to Need state
* Checked: Switches all visible and needed items to Checked state
===Send List===
You can send a list of items by Email or SMS. You can also choose, if you want to send all items or all needed items of the current shop.
For Email, the columns for the list can be selected in the following screen. For SMS, it's always name and quantity per item.
[[Image:shoppingmanager_sendlist_en_110.png]]
===Preferences===
This opens the Preferences View (see below).
===Help===
This opens the Help View, where you have some basic usage hints, the copyright notice and the possibility to visit the web site or write a mail to support.
===About===
This shows you information about the program.
==Multiple databases==
You can have as many databases as you wish. Each database has its own items, shops, categories and preferences. Initially, there is only the '''Standard''' database. You can see the current database in the database menu ('''DB: Name'''). Tapping on that takes you to the Databases View (see below), where you can switch to another database and also create, delete and clear databases.
You can copy or move items from the current database to another database with the '''i''' menu of an item or with the corresponding Action to do multiple items at once. Alternative shops and virtual categories are also being copied to the destination database. Shops and categories are being created in the destination database, if necessary. If the item already exists in the destination database, the new item will be renamed to '''Itemname - 2''' and so on. The destination database can also be the current database.
==Alternative shops==
An item has always a base shop with price and aisle. You can add multiple alternative shops to each item. For each alternative shop, you can choose to use the base price or aisle or you can define its own price or aisle. When you filter by All Shops in the Main View, the shop with the best price will be displayed for each item.
You can assign alternative shops to an item in the Edit Item View and Alternative Shop View or with the corresponding Action. But the Action can not specify price or aisle for an alternative shop.
==Virtual categories==
An item has always a base category. You can add multiple virtual categories to each item. You can use virtual categories to group items, or you can see it as template. For example, you can have a category "Pizza" and assign it to tomatos, mushrooms, etc. Then, when you plan your shopping and want to buy stuff for Pizza, you filter by Pizza and mark all as needed. Virtual categories will not be displayed in the item details on the Main View. There you will always see the base category.
You can assign virtual categories to an item in the Edit Item View and Virtual Category View or with the corresponding Action.
==Shops View==
[[Image:shoppingmanager_shops_en_120.png]]
Here you can add, edit or delete shops. Tapping on '''+''' adds a new shop. Tapping on '''i''' lets you edit the name and swiping the shop to the left or right deletes the shop.
==Categories View==
[[Image:shoppingmanager_categories_en_120.png]]
Here you can add, edit or delete categories. Tapping on '''+''' adds a new category. Tapping on '''i''' lets you edit the name and swiping the category to the left or right deletes the category.
==Edit Item View==
[[Image:shoppingmanager_edititem_en_120.png]][[Image:shoppingmanager_edititem2_en_210.png]][[Image:shoppingmanager_edititem3_en_210.png]]
You get to the Edit Item View by tapping the '''+''' button on the Main View or the '''i''' symbol for an item and choosing '''Edit item'''.
The following information is editable for an item:
* Name: Unique name of the item.
* Quantity: Current needed quantity of the item. This does not really describe the item, but it is here for convenience.
* Unit: Unit for the quantity. If you use that, you can enter '''Piece''' or '''lbs''' for example. The default is '''Piece'''.
* Price: Price for one unit of the item.
* Standard quantity: This is the initial quantity for the item when you tap on the ball in the Main View.
* Tax 1 applies: Tax 1 (defined in Preferences) applies for this item.
* Tax 2 applies: Tax 2 (defined in Preferences) applies for this item.
* Coupon: You have a coupon for this item.
* Aisle: The aisle, where you find the item in the shop.
* Note: Additional info text, that you want to enter (multi-line).
* Priority: The priority (1-5) of the item. You can define sorting by priority in Preferences.
* Category: Category, in which the item belongs, for example '''Fruit'''.
* Shop: Shop, where you intend to buy the item.
* Alternative shops: List of alternative shops for this item. Tap on a shop to see the Alternative Shop View. Tap on '''+''' to add an alternative shop.
* Virtual categories: List of virtual categories for this item. Tap on a category to see the Virtual Category View. Tap on '''+''' to add a virtual category.
The category and shop selectors also offer to open the category or shop View by choosing '''Edit...'''.
The Edit Item View can be in New or Edit mode, depending how you got there:
* in Edit mode, tapping on '''Done''' alters the item and brings you back to Main View.
* in New mode, tapping on '''Done''' creates the new item and clears the fields (not quantity, category and shop), so you can quickly add another item.
Tapping on '''Revert''' resets your changes in this item.
The standard back swipe alters or creates the item and brings you back to Main View.
With the buttons '''Multi-Assign Alt. Shops''' and '''Multi-Assign Virt. Categories''' you can select/deselect multiple alternative shops/virtual categories for this item at once.
[[Image:shoppingmanager_multishops_en_210.png]][[Image:shoppingmanager_multicategories_en_210.png]]
The usage of these Views is similar to the Pick Items View.
==Number View==
[[Image:shoppingmanager_number_en_111.png]]
The Number View can be reached by selecting '''Custom Quantity''' in the '''i''' menu of an item or by tapping twice on quantity or price in the Edit Item View. You can type in numbers by tapping on screen or by using the keyboard.
==Alternative Shop View==
[[Image:shoppingmanager_alternativeshop_en_120.png]]
You get to the Alternative Shop View by going to the Edit Item View and tapping either on '''+''' or on an existing alternative shop in the list of alternative shops.
You can choose the shop with the selector and you can decide for price and aisle, if you want to use the standard (from the Edit Item View) or if you want to have a different price or aisle for this shop.
Tap on '''Done''' or do a back-swipe when finished. Tap on '''Revert''' to revert your changes.
==Virtual Category View==
[[Image:shoppingmanager_virtualcategory_en_120.png]]
You get to the Virtual Category View by going to the Edit Item View and tapping either on + or on an existing virtual category in the list of virtual categories.
You can choose the category with the selector.
Tap on '''Done''' or do a back-swipe when finished. Tap on '''Revert''' to revert your changes.
==Pick Items View==
[[Image:shoppingmanager_pickitems_en_120.png]]
After choosing an Action from the main menu, you get to the Pick Item View to select the items on which to invoke the Action. You can select/deselect items by tapping on their checkbox or with the '''All''' and '''None''' buttons.
For some actions, selecting an item means invoking the action on them (for example the '''Delete items''' action deletes the selected items). For other actions, also deselecting an item does something (for example the '''Assign alternative shop''' action can assign and unassign a shop).
Tap on the '''Sort''' button to change the sorting. '''Normal''' means sorting like it's currently in the Main View. '''Checked on top''' means moving the selected items to the top, so you can more easily see the selected items.
'''Exec''' executes the action. A back-swipe cancels the action.
==Databases View==
[[Image:shoppingmanager_databases_en_210.png]]
You get to the Databases View by selecting the '''Database->Manage''' menu item in the Main View. Here you see a list of all your databases and the number of items they contain. The current active database has bold text.
Tap on '''+''' to add a new database. Tap on a database to switch to that database. Tap on the '''i''' to rename a database, change its color (for the title text in the Main View) or clear it, which means deleting all items, shops and categories (so please be careful with that).
Swipe a database to the left or right to delete the entire database. You cannot delete the '''Standard''' database.
In the menu, you can delete '''all of your databases''' at once by selecting '''Recreate complete database''', bringing Shopping Manager back to the state of a fresh install. Please be extra careful with that!
Also, if you think your items list has a problem, you can rewrite all items by choosing '''Fix Items''' in the menu. But we advice, that you contact us first, if you think there is a problem.
==Preferences==
The Preferences View can be reached by choosing the corresponding menu entry.
===Tax===
[[Image:shoppingmanager_tax_en_110.png]]
You can enter two global Taxes in percent. Then, for each item, you can select in the Edit Item View if one or both applies.
===Options===
[[Image:shoppingmanager_options1_en_111.png]][[Image:shoppingmanager_options2_en_120.png]]
* Import/Export separator: This character will be used for import and export as field separator.
* Show needed in All mode: If on, the needed items are being display in All mode, otherwise only in Needed mode. If off, then if you mark an item as needed in the All mode, it will disappear.
* Show checked in Needed mode: If on, the checked items are being displayed in Needed mode, otherwise only in All mode. If off, then if you check an item in Needed mode, it will disappear.
* Checkout only visible items: If on, only the currently visible and checked items are being reset to default when doing a checkout. If off, all checked items from the current shop are being reset.
* Keep screen on in Needed mode: If on, the display will stay on always in Needed mode.
* Name entry multi-line: If on, you can enter item names with multiple lines.
* Name wraps: If on, long item names are being wrapped to use more than one line.
* Clear filter on selection: If on, the current name filter is being cleared when you select an item.
* Check item: Defines the area where you can check an item in Needed mode. Available is Complete line, Left third and Checkbox.
* Quantity decimals: Number of decimal places to be displayed for the quantity
===Display for each entry===
[[Image:shoppingmanager_display_en_110.png]]
Here you can switch on or off, what information to display for each entry in the item list:
* Priority
* category
* shop
* Aisle
* Coupon
* Price info (Price, Unit, Total price)
* Note
===Sorting in All mode/Needed mode===
[[Image:shoppingmanager_sorting_en_110.png]]
Here you can define, what sorting criteria should be used first and following for the All and Needed mode. You cn choose between:
* Name
* Category
* Shop
* Aisle
* Priority
* Price
* Note
* Unit
Also, you can enable or disable displaying the needed items separate and the moving of checked items below needed items.
===Colors===
[[Image:shoppingmanager_colors_en_210.png]]
You can choose between various colors for displaying the different parts of the item list:
* Theme: This is the base color theme. It affects everything, that you cannot set explicitly below.
* Name (Default): The name of items in Default state
* Name (Needed): The name of items in Needed state
* Name (Checked): The name of items in Checked state
* Details: category, shop, Aisle, Price, Unit
* Note: The notes of the item
* Ball: The ball on the left of the item
===Font Sizes===
[[Image:shoppingmanager_fonts_en_110.png]]
You can configure the size of the fonts for different parts of the item list:
* Name
* Details: category, shop, Aisle, Price
* Note: The notes of the item
==Database==
The data is being stored on the USB partition of your webOS device in directory '''.app-storage/file_.media.cryptofs.apps.usr.palm.applications.de.vivalv.software.shoppingmanager_0''', in case you want to back it up.
If you don't see '''.app-storage''', you have to enable listing of hidden files for example in Windows Explorer.
In that directory, you'll find a file named for example '''0000000000000060.db'''. This name is created by random and will be different for everyone and for different versions of Shopping Manager.
If you want to transfer this to another version of Shopping Manager, just copy the file to the directory of the other version and rename it, like the existing file is named there. You can copy data between the versions, if the target version number is at least as high as the source version number!
Directory names:
* Full version: '''.app-storage/file_.media.cryptofs.apps.usr.palm.applications.de.vivalv.software.shoppingmanager_0'''
* Demo version: '''.app-storage/file_.media.cryptofs.apps.usr.palm.applications.de.vivalv.software.shoppingmanagerdemo_0'''
* Beta version: '''.app-storage/file_.media.cryptofs.apps.usr.palm.applications.de.vivalv.software.shoppingmanagerbeta_0'''
If you uninstall the program, the data will be deleted by webOS.
==Versions==
There are 3 versions of Shopping Manager:
* Full version: Available in the [http://developer.palm.com/appredirect/?packageid=de.vivalv.software.shoppingmanager App Catalog]
* Demo version: Available in the [http://developer.palm.com/appredirect/?packageid=de.vivalv.software.shoppingmanagerdemo Web Distribution Channel]
* Beta version: Available at [http://admin.precentral.net/homebrew-apps/shopping-manager-beta PreCentral]
Those different versions can be installed side-by-side and do not share data. But you can copy data between the versions with the method mentioned above, if the target version number is at least as high as the source version number. You can also use the import/export feature of Shopping Manager, but with the same restrictions.
==Tips==
===Sending a list to another webOS device===
If you want to send a list of needed items to another person, who also owns a webOS device and has Shopping Manager installed, please follow these steps:
Sender:
* Menu->Database->Export->Needed Items
* Email
* enter the destination mail address and send the mail
Receiver:
* open the mail
* mark the items with the shift key (on the keyboard) and tap, so that all items are selected (yellow)
* Menu->Edit->Copy
* start Shopping Manager
* Menu->Database->Import
* Clipboard
* Menu->Edit->Paste
* Import
===Assigning a new shop to all or many items===
If you added a new shop and want to quickly assign it as alternative shop to lots of items, you can use the corresponding action. First, please make sure that all items are visible by not filtering for anything specific. Then choose '''Execute Action''' from the main menu and then '''Assign alternative shop''' in the first selector and the new shop in the second selector and tap on '''OK'''. In the following View, check all items, that should have the new shop as alternative shop and tap '''Execute'''. You can only assign the shops this way, but if you want to enter different prices or aisles, you have to do it in the Edit Item View (tap on the alternative shop there).
The same applies to adding a new virtual category to many items.
===Assigning all or many shops as alternative shops to a new item===
If you added a new item and want to quickly assign all or many shops as alternative shop to it, you can use the button '''Multi-Assign Alt. Shops''' in the Edit Item View. In the following View, check all shops, that should be an alternative shop for that item and tap '''Execute'''. You can only assign the shops this way, but if you want to enter different prices or aisles, you have to tap on the alternative shop in the list of alternative shops in the Edit Item View.
The same applies to adding many virtual categories to an item.
===Using coupons===
If you have a coupon for something, then you can enter the coupon as item, naming it for example "Milk (coupon). Then enter the value of the coupon as negative price. Optionally enable the coupon option for that item, so the coupon item will display the scissors icon in the list. While shopping, you will have the correct total price including coupon and you will have the coupon item as reminder to show the coupon at the cashier.
===Performance===
The time for loading a database and switching between All and Needed mode depends on the number of items in the database. Rendering of changes to the displayed items depends on the details that you have enabled for the items list. Go to the Preferences View to configure this. For example, you can switch off coupon and priority, if you don't need them.
==Support==
shoppingmanager(at)vivalv.de
==History==
{{shoppingManagerHistory}}
==Copyright==
Copyright (C) 2010 VivaLV Software

Revision as of 06:11, 17 June 2010