v2.4.10 Release Notes
V2.4.9 to V2.4.10
Update:
- Added support for Offline mode to be mixed with Online UUIDs
Copy and paste the contents of:
- api
Restart Donation Store:
service donationstore restart
V2.4.8 to V2.4.9
Fixes
- Fixed 2FA not working on iOS
- Fixed password not being able to be changed properly
- Fixed customer updating username if changed with Mojang
- Fixed user limit bug if no period provided
- Fixed issue where price was being added wrong if there was "Choose Server to Execute From" was involved
- Fixed issue with the "Servers to execute package on" would be the full list of servers, not just the ones linked to the package
Copy and paste the contents of:
- controlpanel
- other_modules/DonationStoreIPNHandler
- store
Restart Donation Store:
service donationstore restart
V2.4.7 to V2.4.8
Copy and paste the contents of:
- store
- languages
- other_modules/DonationStoreIPNHandler
- templates/store/default/base.html
Restart Donation Store:
service donationstore restart
V2.4.6 to V2.4.7
Copy and paste the contents of:
- store
- controlpanel
- languages
- other_modules/DonationStoreIPNHandler
- templates/edit-package.html
- templates/emails/new-support-reply.html
- templates/store/default/checkout.html
- templates/store/default/modules/top-customer.html
Restart Donation Store:
service donationstore restart
V2.4.5 to V2.4.6
Copy and paste the contents of:
- store
- controlpanel
- other_modules
- templates/email/new-support-reply.html
- templates/store/default/base.html
- templates/store/default/category.html
- templates/store/default/checkout.html
Apply Migrations (Update DB)
source /home/donationstore/env/bin/activate
cd /home/donationstore/env
python3 manage.py migrate
Restart Donation Store:
service donationstore restart
V2.4.4 to V2.4.5
Copy and paste the contents of:
- ipn
- other_modules
- store
- templates/store/default/checkout.html
Restart Donation Store:
service donationstore restart
V2.4.3 to V2.4.4
Copy and paste the contents of:
- api
- controlpanel
- templates/store/default/nav.html
Restart Donation Store:
service donationstore restart
V2.4.2 to V2.4.3
Copy and paste the contents of:
- store
- templates/store/default/checkout.html
Restart Donation Store:
service donationstore restart
V2.4.1 to V2.4.2
Copy and paste the contents of:
- store
- templates/emails
Restart Donation Store:
service donationstore restart
V2.4 to V2.4.1
Copy and paste the contents of:
- api
- other_modules
- store
Restart Donation Store:
service donationstore restart
V2.4 Release Notes
V2.4 marks quite a large update as Donation Store has been updated from Python 2.7 and Django 1.11 to Python 3.8 and Django 3.0.6 respectively. Because of this, it is advised that you read the upgrade instructions carefully as there quite a few things that need to be changed. The upgrade process should remain quite simple. It's advised that you upgrade as soon as possible
Changelog
- Updated to Python 3.8 and Django 3.0.6
- Stop non super users from being able to delete super users.
- Loyalty Rewards Setting Gift Card Current Balance Properly
- Added "Include Global Commnds" and "Exclude Package Commmands" when adding a manual payment
- Language Auto Detection from listed files in /languages
- Fixed docs links
- Fixed module spelling mistakes
- Added ability to change from email in SMTP information
- Fixed certain group permissions that were having issues and fixed issue where the same perm was listed.
- Fixed package gifting so that only the packages being gifted have the giftee's UUID, the others that aren't being gifted don't have it
- Fixed currency issues
- Added Category slug so you can go to yourdomain.com/yourcategory, instead of a number/ID
- Fixed issue where the packages weren't being sorted properly by price if selected in category
- Fixed permissions so that if theres more than one existing it will pick one instead of throwing an error
- Fixed permissions for fraud permissions. They fall under "Chargeback Case" Permissions
- Made it so that System Logs can now be viewed through the Control Panel instead of through the database
- Fixed issue where ticket replies could be sent by both staff and customers with an empty body
- Added permissions for viewing statistics
- Fixed issue with Coupons and Gift Cards being added to the Webhook request incorrectly
- Fixed issue where Coupons and Gift Cards stay in your cart after the payment is made
- Fixed issue where the redeem limit per coupon per user wasn't working
- Fixed issue where the expiry of a coupon for the total number of redeems wasn't working
- Fixed issue where allowing a coupon on a certain basket wasn't working
- Fixed issue where start date on coupon wasn't working
- Fixed issue where minimum basket amount wasn't working
- Completely overhauled how gift cards are handled at checkout. Originally it involved taking the money from the card first and then letting the payment continue. However this was problematic as if the payment was abandoned the user would still have money taken from them
- The money from the gift card is only taken after the payment has completed and extra error handling and notifications have been added to stop Gift Cards from being used simultaneously/being abused
- Made Gift Cards deletable and editable
- Re-implemented Stripe to be inline with SCA
- Fixed refund handling on Stripe
- Added chargeback evidence auto generation (PDF) for Disputes on Stripe and Chargebacks on PayPal
- Made Stripe evidence be automatically submittable to Stripe from the Control Panel
Upgrading to V2.4 (From Any Version)
You must manually upgrade, you cannot use the setup script for this
Step 1: Delete the Old Virtual Environment
The virtual environment is what stores the Python version for Donation Store and it's dependencies. With Python 3, there is a built in tool for creating a virtual environment, so let's delete the old one.
In the following folder:
/home/donationstore/envDelete the following folders:
- bin
- local
- include
- lib
- share
- static/assets
Step 2: Install Python 3.8
Donation Store used to use Python 2.7, meaning you could run anything using the python
command. However, Python 3 uses the python3
command. Most Ubuntu servers have Python 3 installed in some form, to check simply run:
python3
If it is installed, and the version states 3.8.x you can skip this step. If not, continue below:
sudo apt-get install python3.8 python3.8-venv python3.8-dev
Now we need to set the default Python version to 3.8
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 2
Now we need to make sure that Python 3.8 is set. Run the python3 command again:
python3
Step 3: Recreate the Virtual Environment
Run the following command to recreate the virtual environment
python3 -m venv /home/donationstore/env
Step 4: Replace new Application Files
Drag and drop the contents of the following files (all of the files, make sure to overwrite) into your servers respetive folders EXCLUDING THE SETTINGS.PY FILE IN DonationStoreV2. DO NOT OVERWRITE THAT
- api
- controlpanel
- DonationStoreV2 EXCLUDING YOU SETTINGS.PY FILE
- install
- ipn
- languages
- other_modules
- static/assets
- store
- templates DONT OVERWRITE YOUR STORE IF ITS CUSTOM
Step 5: Install new Dependencies
You need to now install the new dependcies into your virtual environment. Take the new requirements.txt file from the downloaded files in the /setup directory and place it into home and navigate to there.
source /home/donationstore/env/bin/activate
pip3 install wheel
pip3 install -r requirements.txt
Step 6: Change Database Driver
As of Python 3, the old MySQL-python driver is no longer supported. If you are using MySQL, you'll have to install the new driver using:
pip3 install mysqlclient
Step 7: Migrate new Table
While you environment is still activated from the previous step, navigate to the following directory and run the following command
cd /home/donationstore/env
python3 manage.py migrate
Step 8: Collect Static Files
You need to now collect some static files that were added in this update and choose 'yes' when asked if toy want to overwrite current files.
cd /home/donationstore/env
python3 manage.py collectstatic
Step 9: Protect Evidence Directory
Because the evidence files that are generated on chargeback are in the static files directory, we need to ensure that they are protected from external access and are only accessible internally by the app to users who are logged in and have the correct permissions.
To do so we need to edit or Nginx configuration and add a location block under the current static location block.
nano /etc/nginx/sites-available/DonationStore
Add the following, under the already existing location /static
block.
location /static/evidence {
internal;
alias /home/donationstore/env/static/evidence;
}
Step 10: Restart Services
Now you just need to restart Nginx and Donation Store
service nginx restart
service donationstore restart
Step 11: Stripe
If you had Stripe setup before installing the V2.4 update, please delete the gateway and re add it because it needs to add some features to your Stripe account.
Step 12: Update SMTP From Information
Donation Store now uses the SMTP from email in your Application Settings page to send emails. You need add your SMTP from email here