Code Monkey home page Code Monkey logo

e-additives.web's People

Contributors

patilan avatar petarov avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

patrickford

e-additives.web's Issues

Categories - When there is request to invalid category ID site stops

Configuration:

  1. OS - Windows 8 x64;
  2. Browser:
    2.1) Chrome 29.0.1547.76 m;
    2.2) Firefox 24;
    2.3) Internet Explorer - 10;
  3. Location - sandbox.

Steps to reproduce:

  1. Go to "Category list" menu and open any of menus listed.
  2. New screen will be opened with short description of the category.
  3. Generated link will looks like this - http://sandbox.e-additiv.es/#categories/4
  4. Now get that link and modify it to something non-existing.
    4.1) In my case - http://sandbox.e-additiv.es/#categories/41

Expected result:

  1. Warning message should displays to ensure user that there is no such category ID.

Actual result:

  1. Preloader shows, but nothing happen.

Single additive info page - date/time are not well formatted

Configuration:

  1. OS - Windows 8 x64;
  2. Browser:
    2.1) Chrome 29.0.1547.76 m;
    2.2) Firefox 24;
    2.3) Internet Explorer - 10;
  3. Location - sandbox.
  4. Build 45.

Steps to reproduce:

  1. Go to any existing additive info page. In my case it was additive with ID = 102;
  2. Take a look at time/date under the title.

Expected result:

  1. Time and date should be displayed properly;

Actual result:

  1. Date/time shows a little messy. We need additional formatting.

Attachments:

  1. Please take a look at the screenshot
    display time date

Localization (l10n)

Requirements

  • The web UI must detect user's location/browser locale and set the localization automatically, .i.e, set BG when browser is in Bulgarian language. Default is always EN.
  • Selected localization must be saved/remembered in user's browser local storage. When the user opens the web app again using the same browser installation the language she used the last time must be selected.
  • All web pages must be localized in English and Bulgarian (except Privacy and Terms of Use).
  • When searching and displaying additives and categories info the selected by user language (locale) must be taken into account.

MS01-Req: Home (index) page

This is the first default page to open. It displays a big search box with the E-additives logo on top.

  • Search box. A search box must be placed where the user can search for additives by typing additive Number, e.g., E101, 101, E101a, 101a. or by typing the Name of the additive, e.g., Sodium.
  • When the user clicks on the search icon or presses Enter while on focus, a new page should open which must then display the additives found.
  • If no additives are found an error message should be displayed on the page that opens after the users clicks the search button.
  • The search box should display a list of suggestions, maximum 7, based on what the user types into the box - name or code. The suggestions should contain both name and code of the additives.
  • Search must be case insensitive

de-DE browser locale breaks functionality

Browsers with language set to something other than en or bg cannot display any additive or categories data. That's because the server only recognizes en or bg.

bug-2013-10-08_1451

The webapp needs to fall back to en if it encounters an unsupported browser language.

Additives - Search include dates too

Configuration:

  1. OS - Windows 8 x64;
  2. Browser:
    2.1) Chrome 29.0.1547.76 m;
    2.2) Firefox 24;
  3. Location - sandbox.
  1. Build 64.

Steps to reproduce:

  1. Go to "Explore" and search for specific criteria "11:15";

Expected result:

  1. There is no additive with ID 11:15 or containing this string in it's name/body.

Actual result:

  1. All additives shows;

Reason:

  1. Search takes all data available in the additive as criteria.
    My personal opinion is that this criteria is not mandatory to be.
    I propose to remove is from the search.

MS01-Req: Additives list page

A list of additives must be displayed when users clicks on Explore -> Additives.

  • Additives must be displayed in a responsive table. We should use the [Footable]- (https://github.com/bradvin/FooTable) implementation for this. Demos.

  • Each additive must be selectable -> checkbox

  • A select all checkbox must be available. All items must be selected/de-selected using this checkbox.

  • Additive code, name and last updated datetime must be shown in the table.

  • last updated - time must be shown in the timezone of the user.

  • Clicking on the code of the additive sends the user to additive info page (Issue #4)

  • Show 25 items per page by default

    ...More in comments :)

Browser locale is not recognized

The webapp must read the supported browser language/locale settings, i.e., en-US or bg-BG. The webapp language must by default be set according to the browser language.

Only when users explicitly changes the language via the Language option, the webapp will save the user language into the browser's localStorage. When users open the webapp again the localStorage saved language must be used.

MS01-Req: Page Header

Page header. Contains project name and menu items positioned from Left to Right.

1 Must contain project Logo icon. The logo is clickable. If the user clicks it she must be redirected to the Index/Main page.
2 Must contain Menu items. Items are positioned after the Project Name
2.1 Explore
2.1.1 Additives
2.1.2 Categories
2.2. Language
2.2.1 EN
2.2.2 BG

SEO: Make site crawlable

e-additiv.es is an AJAX based web app. This means it is not quite friendly to googlebot and (probably) other inders/crawler bots as well. There is this and this documents by google that explains how to optimize AJAX apps. We have to implement the hints specified there.

Build script

A build.sh script must be created that copies only the required files and scripts to the build folder. The contents of this folder will be the ready-to-be-deployed project.

  • 1. Script must copy only scripts, images, css, templates and index.html files used in the web page. No text files, tests, etc. needless files.
  • 2. Script must automatically add the google analytics urchin code in index.html file.
  • 3. Script must minify javascript and css files (all that are not already minified).
  • 4. Script must add build number to the index.html. Build number is appended (with the bust param) to each script loaded by the app, e.g., /web/js/api.js?bust=1380026706548
  • 5. Build number must be visible on the page footer.
  • 6. Build on our sandbox server with each github commit!

Site does not load on IE10

Styles and HTML seem to be loaded but nothing else. Probably a javascript error that must be checked.

MS01-Req: Breadcrumbs

Add Breadcrumbs to enable easier navigation between pages.

  • Breadcrumbs should be available on each page except service pages (Issue #7)
  • The user should be able to go back by clicking on the specified breadcrumb

Additives visualization is too slow

When users go to #additives page it takes a looooooooong time until the additives are displayed. This is caused mainly by the footable plugin that prepare and formats the data as responsive table.

Solution would b e not to display all additives but separate them in categories. By default E100-199 range will be shown and the rest of the ranges would be selectable via Tab UI component.

MS01-Req: Service pages

Add the following non-interactive pages and respective links to them:

  • FAQ page - Contains project Frequently Asked Questions. Link to FAQ available below the Search bar on Home page and in the page footer.
  • Terms of Use - In page footer
  • Privacy - In page footer

Design - "Explore menu" don't collapse when user click on any link

Configuration:

  1. OS - Windows 8 x64;
  2. Browser:
    2.1) Chrome 29.0.1547.76 m;
    2.2) Firefox 24;
    2.3) Internet Explorer - 10;
  3. Location - sandbox.
  4. Build 45.

Steps to reproduce:

  1. Click on "Explore" menu;
  2. Now click on any link. In my case I open additives list / categories list, collapse menu, click on any additive/category.

Expected result:

  1. After clicking on a any link menu should collapse. Now it collapse only when user lose focus, but don't click on any link.

Actual result:

  1. Menu "Explore" is still collapsed.

MS01-Req: Page Footer

Page footer. Contains copyright info, terms of use and links. Must look like the footer of last.fm

Here is a draft of what the footer should contain.

Find out more Goodies ...
Contact us Apps
Contribute
Blog Developer API

[Icon] English Bulgarian

[Vexelon Logo] © 2013 Vexelon.NET Services. All rights reserved. | [Terms of Use], [Privacy Policy]

MS01-Req: Categories list page

A list of additives categories must be displayed when users clicks on Explore -> Categories

  • Categories must be displayed in a responsive table. See Issue #10
  • Category name, amount of additives and last updated datetime columns must be shown in the table.
  • last updated - time must be shown in the timezone of the user.
  • Clicking on the name of the category sends the user to category info page

Comments on additives pages

Users should be able to comment on additives and categories. Instead of forging our own comments functionality we can use what Disqus provides.

This change should be rolled out in a 0.9.x release.

MS01-Req: Ajax 'wait' animation

Ajax wait animation must be displayed when switching between pages.

This is needed because each page is a separate template that is dynamically loaded by the web ui client from the partials folder.

MS01-Req: Single additive info page

This page displays all information about single additive found/selected.

Show tabular type of formatted data with additive infos:

Code 101a
Name Riboflavin-5'-Phosphate
Function food coloring (yellow-orange)
Warnings No data
Status No data
Safe for vegetarians No data
Foods Found in many foods for babies and young children as well as jams, milk products and ...
Details Consists mainly of the monosodium salt of the 5'-monophosphate ester of ribofla ...

The Foods and Details texts may be quite large. Thus, it is better to put them in separate sections.

No data - must be displayed when we get no result for that additive property from the server.

Explicit statement that IE7 and IE8 are not supported

At the moment we can only (somehow) test IE10 and occasionally IE9. Anything less than that would currently be considered not supported. The webapp must detect if user's browser is something less than IE9 and hit him with a warning message. :)

Additives - When there is request to invalid additive ID site shows empty filter box and table

Configuration:

  1. OS - Windows 8 x64;
  2. Browser:
    2.1) Chrome 29.0.1547.76 m;
    2.2) Firefox 24;
  3. Location - sandbox.

Steps to reproduce:

  1. Enter non existing value (in my case 1234) in the search box and click the blue search button.
  2. Additives page loads an empty table with empty filter box with no way to filter/search in it.

Expected result:

  1. Search box should show the searched item. in order for the user to correct his entered search value.

or Get a message on the home page that this item does not exist.

Actual result:

  1. Additives page shows empty search box and no way to filter the existing additives or change what the user is searching for.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.