Giter VIP home page Giter VIP logo

m2's People

Contributors

dmitrii-fediuk avatar rizalishan avatar socks415 avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Forkers

claudioxu

m2's Issues

Implement an endpoint to return product quantities

We would like a separate endpoint to begin checking inventory quantity.
We would need a route we can ping several times a day that we can use to sync the inventory quentity of our initial ingestion.
On this route the only thing we would need returned is the productID, it's variantIDs and their respective quantity

something like https://somesite.com/jumagext/response/inventory

type InventorySync struct {
    Products []Product
}
type Product struct {
    ProductID string
    Variants []Variant
}
type Variant struct {
    VariantID string
    Quantity int64
}

We would only want records for Products where the product and at least one of its variants are active.
We don't want to include products that have been disabled or have only disabled variants

upwork.com/messages/rooms/room_e6b2d182b68bdb5e9bf343521534b1b6/story_e7340cdf1250931f4162be71fc2429d4

Provide an ability to filter the `jumagext/response/catalog` response by a concrete product

My other request is for a small new feature.
Can you add the ability to pass the catalog API endpoint a specific productID or name and only get back that product?
Mostly for debugging purposes.
An example https://somesite.com/jumagext/response/catalog?productID=akdjfa or https://somesite.com/jumagext/response/catalog?name=kadjfadkf.
Or if it makes it easier just make a new route entirely for this that works too

upwork.com/messages/rooms/room_e6b2d182b68bdb5e9bf343521534b1b6/story_ef2eded44e8026a793c5b3208ffd31d4

Critical Security Vulnerability (DB Credential Exposure)

The code introduced on March 6th (Justuno\M2\Config\Backend\Debug) can submit production database credentials over a potentially unsecured connection to a static email address that could be compromised (also increasing the likeliness of being compromised as it makes for an interesting target for hackers). This code doesn't belong in a production environment and must be removed from official releases to avoid compromising all Magento applications using this extension that intentionally or accidentally triggers this functionality.

The «Generate Token» button has stopped working

Can you confirm whether or not the plugin is supposed to have a button to autogenerate the api key in the admin after installation?
It was my understanding this was how the plugin functioned but we are having a user that is not seeing that button or having an api key generated for them at all, the api key field is just blank and there is no button.
If this is not a feature can you please update the plugin to allow it.
Otherwise if this is a bug if you could let me know what you need i will get it for you to assist with debugging

upwork.com/messages/rooms/room_e6b2d182b68bdb5e9bf343521534b1b6/story_d4a6e3602c04c5f87338d3f480fffbb9

Make the module multi-store aware

Currently if a magento instance has more than one store the feeds pull from all the stores products/orders/inventory.
Also, the js embed code gets put on all stores.
I'm thinking that we need to update the magento app settings page to allow entry of Justuno Account ID and create an api key per store.
That way depending on the api key used, it will fetch the relevant records.

upwork.com/messages/rooms/room_e6b2d182b68bdb5e9bf343521534b1b6/story_feffb4cd7a84520a12633788293f8e81

Respond to the `/justuno/service-worker.js` request with the provided JavaScript

upwork.com/messages/rooms/room_e6b2d182b68bdb5e9bf343521534b1b6/story_5b53d035f300a4c8532b0072e9b96680

We need both apps to automatically create a route to www.sitedomain.com/app/justuno/service-worker.js
Here's the file that needs to be made available at that route

self.addEventListener('push', function (event) {
    console.log('Push message!', event.data.text());
    const payload = JSON.parse(event.data.text());

    event.waitUntil(
        self.registration.showNotification(payload.title, {
            body: payload.body,
            requireInteraction: payload.requireInteraction,
            icon: payload.icon,
            image: payload.image,
            data: {
                link: payload.link
            }
        }));
});

self.addEventListener('notificationclick', function (event) {
    console.log('Notification click: tag', event.notification.tag);
    event.notification.close();
    if (event.notification.data.link) event.waitUntil(clients.openWindow(event.notification.data.link));
});

«Products of type `configurable` do not have a quantity»

We are having an issue with the Magento 2 plugin with one of our clients.
Upon hitting page 15 of the catalog route the Magento 2 plugin responds with a message object rather than an array of products.
This is hindering the ingestion process.
I believe we need to account for configurable products.
I would think having a configurable product is fine as that would fit in nicely to our Product->Child Variants schema,
but given the nature of configurable products there may be issues having them as variants since CP depend on a list of variants themselves.
Can you look into exactly what is causing this issue please and we can go from there?

Screen Shot 2020-11-12 at 11 39 30 AM

upwork.com/messages/rooms/room_e6b2d182b68bdb5e9bf343521534b1b6/story_0fd2ed095b0fec15a3568c7fcbb52b6d

The Boolean values of `Option<X>` attributes should be converted to the «true» / «false» strings

upwork.com/messages/rooms/room_e6b2d182b68bdb5e9bf343521534b1b6/story_2c2ab18f862fafad86bcec6dbb764fad

One of our new clients can't finish their ingestion because one of their ProductVariants has an option with a bool value instead of a string, so when ingesting the data fails at destructuring.
We would just need the plugin to force any values for those options to strings and that should fix it.
Here is an example of a products variants that cause this:

"Variants": [
    {
        "ID": "102232",
        "InventoryQuantity": 0,
        "MSRP": 58,
        "SalePrice": 58,
        "SKU": "CLeader1502-Clear-Clear-62",
        "Title": "Leader T-Zone Basic Package-Clear-Clear-62",
        "Option1": "Clear",
        "Option2": "Clear",
        "Option3": false
    }
]

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.