Giter Club home page Giter Club logo

addons's Introduction

Arastta™

Gitter Crowdin Code Climate

Arastta is the next generation of Open Source eCommerce software built with modern technologies such as Symfony, Bootstrap, jQuery, Swift Mailer, RESTful API etc.

  • Home - The house of Arastta
  • Blog - Get the latest news
  • Ideas - Share your ideas
  • Forum - Join the community
  • Tutorials - Learn more about Arastta

Requirements

Installation

  • Install Composer
  • Download the repository and unzip into your server
  • Open and point your command line to the directory you unzipped Arastta
  • Run the following command: 'composer install'
  • Finally, go to the Arastta folder via your browser

Contributing

Fork the repository, make the code changes then submit a pull request.

Please, be very clear on your commit messages and pull requests, empty pull request messages may be rejected without reason.

Your code standards should match the Arastta coding standards. We use an automated code scanner to check for most basic mistakes - if the test fails your pull request will be rejected.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Versioning

Arastta is maintained by using the Semantic Versioning Specification (SemVer).

License

Arastta is released under the GPLv3 license.

addons's People

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

addons's Issues

Disable Functions -> Products module support

The new products module isn't supported by 'Disable Functions'.

The functions can be disabled directly in each module use yes, but it's more logical to disable them globally together with the rest of the displays.

TRPOS

New Turkish payment method.

Türkiye Bankaları Ödeme methodu.

UPS shipping method update

Add error handling in the event UPS servers return invalid XML (which occasionally does happen). If XML is invalid return boolean false

CURLOPT_SSL_VERIFYHOST should have value 2

In the Klarna modules CURLOPT_SSL_VERIFYHOST is set to 1, which shouldn't be used in production, and anyhow the support for value 1 was removed in cURL 7.28.1 - so checkout will fail on most up to date servers.

I tried to make a PR, but there is something messing up the files, even if it's done online or offline, so please just change it directly in those files/lines:

https://github.com/arastta/addons/blob/master/Payments/klarna/upload/catalog/controller/payment/klarna_account.php#L519

https://github.com/arastta/addons/blob/master/Payments/klarna/upload/catalog/controller/payment/klarna_invoice.php#L391

It should read curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);

Stripe - Blank "confirm order" page (500 Internal Server Error)

For more info look at https://arastta.org/forum/stripe-blank-confirm-order-page

Quote Hackasacka: https://arastta.org/forum/stripe-blank-confirm-order-page#reply-3326

We have also noticed an error for particular orders when the calculations of products including any taxes and shipping which create the total order value used by Stripe "$order_info['total']" are not an integer when multiplied by 100 to give the decimal pennies required for transfer to Stripe.

Here is an example:-

"PHP Fatal error: Uncaught exception 'Stripe\Error\InvalidRequest' with message 'Invalid integer: 1658.8' in /public_html/system/library/stripe-php/ApiRequestor.php:108 from API request 'req_v9Uipdc8Gz9kKd'

Here is an example of a product price that will give a 500 Internal Server Error:-

Product Price $8.59 (this is calculated by (5.49 * 1.2) + 2 - actually 6.588 + 2 = 8.588)
Sub-Total: $5.49 (price entered for product)
Flat Shipping Rate: $5.00 (value given to shipping)
Eco Tax (-2.00): $4.00 (calculated by 2 + 2 for product and shipping in this example)
VAT (20%): $2.10 (calculated by (5.49 * 0.2) + (5.0 * 0.2) vat on product and shipping)
Total: $16.59 (actually 16.588 rounded to 16.59)

This is with Arastta ver 1.6.1 default currency, shipping and taxes, so a default install and any product given a price of $5.59 should error if the tax for VAT is 20% (or any price that when multiplied by the tax has more than 2 decimal places of accuracy.

There is a possibility that errors due to decimal fractions being converted to binary leave remainders too. It depends on weather they convert exactly or not i.e. 0.5 base ten is 0.1 base 2 (computers have to work in base 2 only and convert back to the nearest decimal place if not exact). 0.75 is 0.11 (0.5 + 0.25).

Found my Texas Instruments calculater gets it wrong too for example 644245094.4 x 2 = 1288508189 (obviously it is 1288490188.8 or at least you can see that the fractional part 0.4 x 2 = 0.8 so the calculate has to be wrong?)

Just like 1/3 is 0.333333...

As the location of the stripe.php making this calculation is here:-
/public_html/catalog/controller/payment/stripe.php

Modify line 71 from:-
'amount' => $order_info['total'] * 100,
to
'amount' => (int) $order_info['total'] * 100,

to fix this issue and correctly round up the value in this case.

Disable Functions

You can disable / enable Compare, Wishlist, Affiliates and Reward Points of your Arastta store easily. Just install this extension and navigate to Settings to enable/disable Arastta options.

Download File Here

PayPal Express addon stripping option value

In four places in the code this is used:

$option['option_value']

Whereas getProducts is actually supplying:

$option['value']

The PayPal Express addon's version of this variable is what is stored in the final order details which means it is impossible to tell what option was selected without doing DB several queries by hand.

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.