Skip to content

Commit

Permalink
Merge branch 'OpenMage:main' into 1.9.4.x
Browse files Browse the repository at this point in the history
  • Loading branch information
S0FTWEX authored Jul 28, 2024
2 parents ea05968 + aae9232 commit d6a7496
Show file tree
Hide file tree
Showing 13,320 changed files with 226,092 additions and 1,615,781 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
562 changes: 562 additions & 0 deletions .all-contributorsrc

Large diffs are not rendered by default.

45 changes: 45 additions & 0 deletions .ddev/commands/web/openmage-admin
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#!/bin/bash

## ProjectTypes: magento
## Description: Create/Update OpenMage Administrator Account
## Usage: openmage-admin
## Example: ddev openmage-admin

read -r -p "Choose your action for the administrator account [Create/Update]: " ACTION
ACTION=${ACTION,,} # to lower

if [[ "${ACTION}" =~ ^(update|u) || "${ACTION}" =~ ^(create|c) ]]; then
read -r -p "Admin User [admin]: " ADMIN_USER
ADMIN_USER=${ADMIN_USER:-admin}
read -r -p "Admin Firstname [OpenMage]: " ADMIN_FIRSTNAME
ADMIN_FIRSTNAME=${ADMIN_FIRSTNAME:-OpenMage}
read -r -p "Admin Lastname [Administrator]: " ADMIN_LASTNAME
ADMIN_LASTNAME=${ADMIN_LASTNAME:-Administrator}
read -r -p "Admin Email [admin@example.com]: " ADMIN_EMAIL
ADMIN_EMAIL=${ADMIN_EMAIL:-admin@example.com}
read -r -p "Admin Password [veryl0ngpassw0rd]: " ADMIN_PASSWORD
ADMIN_PASSWORD=${ADMIN_PASSWORD:-veryl0ngpassw0rd}
read -r -p "Table Prefix []: " TABLE_PREFIX
TABLE_PREFIX=${TABLE_PREFIX:-}
else
echo "Please run again and choose an action."
exit 1
fi

RANDOM_STRING=$({ tr -dc A-Za-z0-9 </dev/urandom | head -c 32 ; })

if [[ "${ACTION}" =~ ^(update|u) ]]; then
if mysql -u db -h db db -e "UPDATE "${TABLE_PREFIX}"admin_user SET password=CONCAT(MD5('"${RANDOM_STRING}""${ADMIN_PASSWORD}"'),':"${RANDOM_STRING}"') WHERE username='"${ADMIN_USER}"'"; then
echo "If the account "${ADMIN_USER}" exists it has been updated."
else
exit 1
fi
elif [[ "${ACTION}" =~ ^(create|c) ]]; then
if mysql -u db -h db db -e "INSERT INTO "${TABLE_PREFIX}"admin_user (firstname, lastname, email, username, password) VALUES ('"${ADMIN_FIRSTNAME}"', '"${ADMIN_LASTNAME}"', '"${ADMIN_EMAIL}"', '"${ADMIN_USER}"', CONCAT(MD5('"${RANDOM_STRING}""${ADMIN_PASSWORD}"'), ':"${RANDOM_STRING}"'))"; then
mysql -u db -h db db -e "INSERT INTO "${TABLE_PREFIX}"admin_role(parent_id, tree_level, sort_order, role_type, user_id, role_name)
VALUES (1, 2, 0, 'U',(SELECT user_id FROM "${TABLE_PREFIX}"admin_user WHERE username = '"${ADMIN_USER}"'),'"${ADMIN_FIRSTNAME}"')"
echo "The account "$ADMIN_USER" has been created."
else
exit 1
fi
fi
168 changes: 168 additions & 0 deletions .ddev/commands/web/openmage-install
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
#!/bin/bash

## ProjectTypes: magento
## Description: Install OpenMage
## Usage: openmage-install [-d|--default] [-s|--sampledata] [-k|--keep] [-q|--quiet]
## Example: ddev openmage-install -d -s -k
## Flags: [{"Name":"default","Shorthand":"d","Usage":"use default values"},{"Name":"sampledata","Shorthand":"s","Usage":"install sample data"},{"Name":"keep","Shorthand":"k","Usage":"keep sample data package"},{"Name":"quiet","Shorthand":"q","Usage":"silent install with sample data"}]

ROOT="${PWD}"

QUIET_INSTALL_FLAG=''
SAMPLE_DATA_FLAG=''
SAMPLE_DATA_KEEP_FLAG=''
USE_DEFAULT_FLAG=''

while :; do
case ${1:-} in
-d|--default)
USE_DEFAULT_FLAG='true' ;;
-s|--sampledata)
SAMPLE_DATA_FLAG='true' ;;
-k|--keep)
SAMPLE_DATA_KEEP_FLAG='true' ;;
-q|--quiet)
QUIET_INSTALL_FLAG='true'
USE_DEFAULT_FLAG='true'
SAMPLE_DATA_FLAG='true'
;;
--) # End of all options.
shift
break
;;
-?*)
printf 'WARN: Unknown option (ignored): %s\n' "$1" >&2
;;
*) # Default case: No more options, so break out of the loop.
break
esac

shift
done

echo "Enable maintenance mode..."
touch maintenance.flag

LOCALXML="${ROOT}/app/etc/local.xml"
if [ -f "${LOCALXML}" ]; then
if [[ "${QUIET_INSTALL_FLAG}" ]]; then
DELETE='y'
else
read -r -p "OpenMage is already installed. Delete local.xml and drop the database? [y/N] " DELETE
DELETE=${DELETE,,} # to lower
fi

if [[ "${DELETE}" =~ ^(yes|y) ]]; then
mysql -u db -h db -e "DROP SCHEMA IF EXISTS db; CREATE SCHEMA db;";
rm "${LOCALXML}"
else
exit 1
fi
fi

# install sample data
if [[ "${SAMPLE_DATA_FLAG}" ]]; then
INSTALL_SAMPLE_DATA='y'
else
read -r -p "Install Sample Data? [y/N] " INSTALL_SAMPLE_DATA
INSTALL_SAMPLE_DATA=${INSTALL_SAMPLE_DATA,,} # to lower
fi

if [[ $INSTALL_SAMPLE_DATA =~ ^(yes|y) ]]; then
SAMPLE_DATA_URL=https://github.com/Vinai/compressed-magento-sample-data/raw/master/compressed-magento-sample-data-1.9.2.4.tgz
SAMPLE_DATA_DIRECTORY="${ROOT}/.ddev/.sampleData"
SAMPLE_DATA_FILE=sample_data.tgz

if [[ ! -d "${SAMPLE_DATA_DIRECTORY}" ]]; then
echo "Creating Sample Data directory..."
mkdir -p "${SAMPLE_DATA_DIRECTORY}"
fi

cd "${SAMPLE_DATA_DIRECTORY}" || exit
if [[ ! -f "${SAMPLE_DATA_DIRECTORY}/${SAMPLE_DATA_FILE}" ]]; then
echo "Downloading Sample Data..."
wget "${SAMPLE_DATA_URL}" -O "${SAMPLE_DATA_FILE}"
fi

echo "Uncompressing Sample Data..."
tar xf "${SAMPLE_DATA_FILE}"

echo "Copying Sample Data into the OpenMage directory..."
cp -r magento-sample-data-1.9.2.4/media/* "${ROOT}/media/"
cp -r magento-sample-data-1.9.2.4/skin/* "${ROOT}/skin/"

echo "Clearing var/cache..."
rm -rf "${ROOT}/var/cache/"*

echo "Importing Sample Data into the database..."
mysql -u db -h db db < "${SAMPLE_DATA_DIRECTORY}/magento-sample-data-1.9.2.4/magento_sample_data_for_1.9.2.4.sql"

# remove sample data
if [[ "${SAMPLE_DATA_KEEP_FLAG}" ]]; then
# shellcheck disable=SC2046
rm -rf magento-sample-data-1.9.2.4/
else
cd "${ROOT}" || exit
rm -rf "${SAMPLE_DATA_DIRECTORY}"
fi
fi

cd "${ROOT}" || exit

if [[ "${USE_DEFAULT_FLAG}" ]]; then
ADMIN_USER='admin'
ADMIN_FIRSTNAME='OpenMage'
ADMIN_LASTNAME='Administrator'
ADMIN_EMAIL='admin@example.com'
ADMIN_PASSWORD='veryl0ngpassw0rd'
if [[ "${SAMPLE_DATA_FLAG}" ]]; then
TABLE_PREFIX=''
else
TABLE_PREFIX='om_'
fi
else
read -r -p "Admin User [admin]: " ADMIN_USER
ADMIN_USER=${ADMIN_USER:-admin}
read -r -p "Admin Firstname [OpenMage]: " ADMIN_FIRSTNAME
ADMIN_FIRSTNAME=${ADMIN_FIRSTNAME:-OpenMage}
read -r -p "Admin Lastname [Administrator]: " ADMIN_LASTNAME
ADMIN_LASTNAME=${ADMIN_LASTNAME:-Administrator}
read -r -p "Admin Email [admin@example.com]: " ADMIN_EMAIL
ADMIN_EMAIL=${ADMIN_EMAIL:-admin@example.com}
read -r -p "Admin Password [veryl0ngpassw0rd]: " ADMIN_PASSWORD
ADMIN_PASSWORD=${ADMIN_PASSWORD:-veryl0ngpassw0rd}
if [[ $INSTALL_SAMPLE_DATA =~ ^(yes|y) ]]; then
TABLE_PREFIX=''
else
read -r -e -i 'om_' -p "Table Prefix [om_]: " TABLE_PREFIX
fi
fi

php -f install.php -- \
--license_agreement_accepted 'yes' \
--locale 'en_US' \
--timezone 'America/New_York' \
--db_host 'db' \
--db_name 'db' \
--db_user 'db' \
--db_pass 'db' \
--db_prefix "${TABLE_PREFIX}" \
--url "${DDEV_PRIMARY_URL}" \
--use_rewrites 'yes' \
--use_secure 'yes' \
--secure_base_url "${DDEV_PRIMARY_URL}" \
--use_secure_admin 'yes' \
--admin_username "${ADMIN_USER}" \
--admin_lastname "${ADMIN_LASTNAME}" \
--admin_firstname "${ADMIN_FIRSTNAME}" \
--admin_email "${ADMIN_EMAIL}" \
--admin_password "${ADMIN_PASSWORD}" \
--session_save 'files' \
--admin_frontname 'admin' \
--backend_frontname 'admin' \
--default_currency 'USD' \
--enable_charts 'yes' \
--skip_url_validation 'yes'

echo "Disable maintenance mode..."
rm maintenance.flag
7 changes: 7 additions & 0 deletions .ddev/commands/web/php-cs-fixer
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash

## Description: run PHP-CS-Fixer
## Usage: php-cs-fixer
## Example: ddev php-cs-fixer <path-to-files>

php vendor/bin/php-cs-fixer fix "$@"
7 changes: 7 additions & 0 deletions .ddev/commands/web/phpcbf
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash

## Description: run PHPCodeBeautifier
## Usage: phpcbf
## Example: ddev phpcbf <path-to-files>

php vendor/bin/phpcbf -s -p --report=full,source,summary "$@"
7 changes: 7 additions & 0 deletions .ddev/commands/web/phpcs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash

## Description: run PHPCodeSniffer
## Usage: phpcs
## Example: ddev phpcs <path-to-files>

php vendor/bin/phpcs -s -p --report=full,summary "$@"
7 changes: 7 additions & 0 deletions .ddev/commands/web/phpmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash

## Description: run PHPMD
## Usage: phpmd
## Example: ddev phpmd <path-to-files>

php vendor/bin/phpmd "$@" text .phpmd.dist.xml
7 changes: 7 additions & 0 deletions .ddev/commands/web/phpstan
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash

## Description: run PHPStan
## Usage: phpstan
## Example: ddev phpstan <path-to-files>

XDEBUG_MODE=off php vendor/bin/phpstan analyze "$@"
8 changes: 8 additions & 0 deletions .ddev/commands/web/rector
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/bash

## Description: run rector
## Usage: rector
## Example: ddev rector <path-to-files>

cp -n vendor/sreichel/openmage-rector/rector.php rector.php
php vendor/bin/rector process "$@"
7 changes: 7 additions & 0 deletions .ddev/commands/web/vendor-patches
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash

## Description: create Vendor Patches
## Usage: vendor-patches
## Example: ddev vendor-patches

php vendor/bin/vendor-patches generate
1 change: 1 addition & 0 deletions .ddev/web-build/openmage.cron
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* * * * * /var/www/html/cron.sh
37 changes: 37 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Make packagist / composer download smaller
/.ddev export-ignore
/.github export-ignore
/dev export-ignore
/docs export-ignore

/.all-contributorsrc export-ignore
/.gitattributes export-ignore
/.gitignore export-ignore
/.gitpod.yml export-ignore

/.php-cs-fixer.dist.php export-ignore
/.phpcs.ecg.xml.dist export-ignore
/.phpcs.php.xml.dist export-ignore
/.phpcs.xml.dist export-ignore
/.phpmd.dist.xml export-ignore
/phpstan.dist.baseline.neon export-ignore
/phpstan.dist.issues.neon export-ignore
/phpstan.dist.neon export-ignore

/README.md export-ignore

# Enforce checkout with linux lf consistent over all platforms
*.html text eol=lf
*.css text eol=lf
*.js text eol=lf
*.json text eol=lf
*.php text eol=lf
*.md text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.xml text eol=lf
*.sh text eol=lf
*.sql text eol=lf
*.svg text eol=lf
*.txt text eol=lf
*.phtml text eol=lf
2 changes: 2 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@

open_collective: openmage
8 changes: 8 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,11 @@
- [ ] Pull request has a meaningful description of its purpose
- [ ] All commits are accompanied by meaningful commit messages
- [ ] All automated tests passed successfully (all builds are green)
- [ ] Add yourself to contributors list
<!---
Install: `yarn add --dev all-contributors-cli`
Add yourself: `yarn all-contributors add @YOUR_NAME <types>`
This updates `.all-contributorsrc, README.md` and commits this changes automatically
contribution types: code, doc, design
See other contributions type at https://allcontributors.org/docs/en/emoji-key
-->
3 changes: 2 additions & 1 deletion SECURITY.md → .github/SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ We will keep the details of your security vulnerability report private and only

| OpenMage LTS Tag | Magento Version | Branch | Supported |
| -------------------- | ----------------- | ---------------- | ------------------ |
| ~19.4.3 | 1.9.4.5 | 1.9.4.x | :white_check_mark: |
| ~20.0.4 | 1.9.4.5 | 20.0 | :white_check_mark: |
| ~19.4.8 | 1.9.4.5 | 1.9.4.x | :white_check_mark: |
| - | <= 1.9.4.4 | multiple | :x: |

## Reporting a Vulnerability
Expand Down
Loading

0 comments on commit d6a7496

Please sign in to comment.