Git Product home page Git Product logo

oc-shop-plugin's People

Contributors

gpasztor87 avatar scottbedard avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

dheia

oc-shop-plugin's Issues

CSRF token not sent for category filters

Steps to reproduce

  1. Enable CSRF protection
  2. Create a category with a filter

Expected result
The category and filter should be created

Actual result
An error of Invalid security token.

Options can be created without values

Steps to reproduce

  • Create an option with a deleted value
  • Click save

Expected result
A validation error should be thrown

Actual result
The option is created with no values

Blocks #42

Images

This might be an abuse of GitHub images, but worse things have happened.
oc-shop-plugin

Saved product options are not aware of their IDs

This bug is caused by the option component not being aware of the IDs of newly created options. The easiest solution should be to reload the form whenever save is clicked, but a better solution would be to just reload the formwidget.

Steps to reproduce

  1. Create a product with a new option
  2. Save the product
  3. Click save again

Expected result
The product should be saved with one option.

Actual result
The product is saved with duplicate options.

Can't log into demo site

When logging into the backend for the demo site, the following error message is flashed:

Unexpected type of array, should attribute "value_data" be jsonable?

Improve navigation

Leaving this here as a note to self. Before rolling this plugin out to the marketplace, make sure we are not creating a situation where the backend can be inaccessible.

See octobercms/october#1180 for more info.

Tabbing between fields in the options popup doesn't work as expected

Reproduction example 1

  1. Open the options popup
  2. Press tab down to the values field
  3. Press shift + tab

Expected result
The focus should return to the placeholder

Actual result
Nothing happens

Reproduction example 2

  1. Enter a couple of values
  2. Focus a value and press tab / shift+tab

Expected result
The focus should move to next / previous input

Actual result
Focus jumps to the surrounding anchor tags

Discounts and dynamic pricing

Situations in which prices need to be calculated

  • Categories are reordered in bulk
  • Categories are reordered individually
  • Categories are deleted in bulk
  • Category is deleted
  • Discount is created
  • Discount is saved
  • Discount is deleted
  • Product is created
  • Product is saved
  • Product is moved into a discounted category
  • Product is moved out of a discounted category

Clean up category reordering

There is a bunch of lingering code from the original reordering library. Go back in and clean up any events that don't need to be emitted, and remove the extra dependency.

Cannot delete option values

Steps to reproduce

  • Create an option with some values
  • Open the option and delete a value
  • Save the product

Expected result
The value should be deleted

Actual result
The value persists

First release

The plan is to create the absolute bare minimum of necessary features, get it to the marketplace, and then improve it from there. The following is a list of features expected to be in the first release (0.1).

  • Products that can belong to categories
  • Options / inventory management for products
  • Interchangeable payment and shipping drivers

Synchronize categories and products

Situation in which categories need to be synchronized with their inherited products

  • Categories are reordered in bulk
  • A category's parent_id is changed from category form
  • Product category relationship is synced

Deleted values need to be purged on form save

Steps to reproduce

  1. Create an option with two values
  2. Delete one of the values
  3. Save the form

Expected result
Upon opening the option form again, the deleted value should be removed

Actual result
The deleted value persists

Blocks #42

API endpoints for SPA themes

API endpoints needed

  • Categories (read)
  • Category (read)
  • Cart (create, read, update)
  • Order (create, read)
  • Product (read)

Make javascript translate function match php api

Just a small readability improvement, leaving this here as a note to self more than anything...

// current api
trans('bedard.shop.foo.bar.baz', lang);

// future api
trans('bedard.shop::foo.bar.baz');

Unique key collision when creating product in multiple categories

When a product is inherited into a category it is already in, it causes a key collision.

Steps to reproduce

  1. Create a category structure Parent > Child
  2. Create a product in both Parent and Child

Expected result
The product should be created and exist in both categories

Actual result
The create fails because the parent/child ids must be unique.

Proposed solution
Include the is_inherited column in the unique key.

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.