Skip to content

Commit

Permalink
Merge branch 'opencart:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
thebodzio authored Feb 7, 2024
2 parents 2a8ed1b + 59e1303 commit dfed143
Show file tree
Hide file tree
Showing 3,746 changed files with 161,803 additions and 59,847 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
7 changes: 0 additions & 7 deletions .gitattributes

This file was deleted.

63 changes: 63 additions & 0 deletions .github/workflows/Lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Lint

on:
push:
branches:
- master
pull_request:
types: [opened, synchronize]

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
tests:
runs-on: ubuntu-latest
strategy:
matrix:
php: ['7.4', '8.0', '8.1', '8.2', '8.3']
steps:
- name: Checkout
uses: actions/checkout@v2

- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
tools: composer:v2, cs2pr

- name: Lint
run: |
error=0
for file in $(find upload -type f -name "*.php" ! -path 'upload/system/storage/vendor/*'); do
php -l -n $file | grep -v "No syntax errors detected" && error=1
done
if [ $error -eq 1 ]; then
echo "Syntax errors were found."
exit 1
else
echo "No syntax errors were detected."
fi
- name: Cache dependencies
uses: actions/cache@v3
with:
path: |
~/.cache/composer/files
./.cache
./.php-cs-fixer.cache
key: ${{ matrix.php }}-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ matrix.php }}-

- name: PHPStan
run: |
composer require --dev phpstan/phpstan 1.10.55
./system/storage/vendor/bin/phpstan analyze --no-progress
- name: Code style
if: matrix.php == '8.3'
run: |
composer require --dev friendsofphp/php-cs-fixer v3.46.0
./system/storage/vendor/bin/php-cs-fixer fix --dry-run --diff --ansi || true
./system/storage/vendor/bin/php-cs-fixer fix --dry-run --format=checkstyle | cs2pr
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -42,3 +42,6 @@
/upload/.idea/*
/.idea/*
/.DS_Store
/.cache
/.php-cs-fixer.cache
/tools
187 changes: 187 additions & 0 deletions .php-cs-fixer.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
<?php
/*
* This document has been generated with
* https://mlocati.github.io/php-cs-fixer-configurator/#version:3.41.1|configurator
* you can change this configuration by importing this file.
*/
$config = new PhpCsFixer\Config();
return $config
->setRiskyAllowed(true)
->setIndent("\t")
->setRules([
'@PER-CS2.0:risky' => true,
'@PER-CS2.0' => true,
'@DoctrineAnnotation' => true,
'@PHPUnit100Migration:risky' => true,
'@PHP74Migration' => true,
'@PHP74Migration:risky' => true,
'align_multiline_comment' => true,
'array_indentation' => true,
'array_push' => true,
'array_syntax' => true,
'assign_null_coalescing_to_coalesce_equal' => true,
'attribute_empty_parentheses' => true,
'backtick_to_shell_exec' => true,
'binary_operator_spaces' => ['default' => 'single_space','operators' => ['=' => 'at_least_single_space','=>' => 'align_single_space_minimal']],
'blank_line_after_namespace' => false,
'blank_line_after_opening_tag' => false,
'blank_line_before_statement' => ['statements' => ['declare','return','throw','try']],
'blank_lines_before_namespace' => false,
'braces_position' => ['classes_opening_brace' => 'same_line','functions_opening_brace' => 'same_line'],
'cast_spaces' => ['space' => 'none'],
'class_attributes_separation' => ['elements' => ['method' => 'one']],
'class_reference_name_casing' => true,
'clean_namespace' => true,
'combine_nested_dirname' => true,
'comment_to_phpdoc' => true,
'concat_space' => ['spacing' => 'one'],
'date_time_create_from_format_call' => true,
'declare_parentheses' => true,
'declare_strict_types' => false,
'dir_constant' => true,
'echo_tag_syntax' => true,
'empty_loop_body' => true,
'empty_loop_condition' => true,
'ereg_to_preg' => true,
'error_suppression' => true,
'escape_implicit_backslashes' => true,
'explicit_indirect_variable' => true,
'explicit_string_variable' => true,
'fopen_flag_order' => true,
'fopen_flags' => ['b_mode' => false],
'function_declaration' => ['closure_function_spacing' => 'none'],
'function_to_constant' => true,
'general_phpdoc_annotation_remove' => true,
'general_phpdoc_tag_rename' => true,
'heredoc_indentation' => true,
'heredoc_to_nowdoc' => true,
'implode_call' => true,
'increment_style' => ['style' => 'post'],
'integer_literal_case' => true,
'is_null' => true,
'lambda_not_used_import' => true,
'linebreak_after_opening_tag' => true,
'list_syntax' => true,
'logical_operators' => true,
'long_to_shorthand_operator' => true,
'magic_constant_casing' => true,
'magic_method_casing' => true,
'method_chaining_indentation' => true,
'modernize_types_casting' => true,
'multiline_comment_opening_closing' => true,
'multiline_whitespace_before_semicolons' => true,
'native_function_casing' => true,
'native_type_declaration_casing' => true,
'no_alias_functions' => true,
'no_alias_language_construct_call' => true,
'no_alternative_syntax' => true,
'no_binary_string' => true,
'no_blank_lines_after_phpdoc' => true,
'no_empty_comment' => true,
'no_empty_phpdoc' => true,
'no_empty_statement' => true,
'no_extra_blank_lines' => true,
'no_homoglyph_names' => true,
'no_leading_namespace_whitespace' => true,
'no_mixed_echo_print' => true,
'no_multiline_whitespace_around_double_arrow' => true,
'no_null_property_initialization' => true,
'no_php4_constructor' => true,
'no_short_bool_cast' => true,
'no_singleline_whitespace_before_semicolons' => true,
'no_spaces_around_offset' => true,
'no_trailing_comma_in_singleline' => true,
'no_unneeded_braces' => true,
'no_unneeded_control_parentheses' => true,
'no_unneeded_final_method' => true,
'no_unneeded_import_alias' => true,
'no_unset_cast' => true,
'no_unset_on_property' => true,
'no_unused_imports' => true,
'no_useless_nullsafe_operator' => true,
'no_useless_return' => true,
'no_useless_sprintf' => true,
'no_whitespace_before_comma_in_array' => true,
'non_printable_character' => true,
'normalize_index_brace' => true,
'nullable_type_declaration' => true,
'nullable_type_declaration_for_default_null_value' => true,
'object_operator_without_whitespace' => true,
'operator_linebreak' => true,
'ordered_imports' => ['sort_algorithm' => 'alpha'],
'ordered_interfaces' => true,
'ordered_traits' => true,
'ordered_types' => true,
'php_unit_construct' => true,
'php_unit_data_provider_name' => true,
'php_unit_data_provider_return_type' => true,
'php_unit_set_up_tear_down_visibility' => true,
'php_unit_strict' => true,
'php_unit_test_annotation' => true,
'php_unit_test_case_static_method_calls' => true,
'phpdoc_add_missing_param_annotation' => ['only_untyped' => false],
'phpdoc_align' => true,
'phpdoc_annotation_without_dot' => true,
'phpdoc_indent' => true,
'phpdoc_inline_tag_normalizer' => true,
'phpdoc_line_span' => true,
'phpdoc_no_access' => true,
'phpdoc_no_alias_tag' => true,
'phpdoc_no_useless_inheritdoc' => true,
'phpdoc_order' => true,
'phpdoc_order_by_value' => true,
'phpdoc_param_order' => true,
'phpdoc_return_self_reference' => true,
'phpdoc_scalar' => true,
'phpdoc_separation' => true,
'phpdoc_single_line_var_spacing' => true,
'phpdoc_tag_casing' => true,
'phpdoc_tag_type' => true,
'phpdoc_to_comment' => true,
'phpdoc_trim' => true,
'phpdoc_trim_consecutive_blank_line_separation' => true,
'phpdoc_types' => true,
'phpdoc_types_order' => ['null_adjustment' => 'always_last'],
'phpdoc_var_annotation_correct_order' => true,
'phpdoc_var_without_name' => true,
'pow_to_exponentiation' => true,
'random_api_migration' => true,
'regular_callable_call' => true,
'return_assignment' => true,
'return_to_yield_from' => true,
'self_accessor' => true,
'self_static_accessor' => true,
'semicolon_after_instruction' => true,
'set_type_to_cast' => true,
'simple_to_complex_string_variable' => true,
'simplified_if_return' => true,
'single_line_comment_style' => true,
'single_line_throw' => true,
'single_space_around_construct' => true,
'space_after_semicolon' => true,
'standardize_increment' => true,
'standardize_not_equals' => true,
'string_length_to_empty' => true,
'string_line_ending' => true,
'switch_continue_to_break' => true,
'ternary_to_elvis_operator' => true,
'trailing_comma_in_multiline' => false,
'trim_array_spaces' => true,
'type_declaration_spaces' => true,
'types_spaces' => true,
'unary_operator_spaces' => true,
'use_arrow_functions' => true,
'void_return' => true,
'whitespace_after_comma_in_array' => true,
'yield_from_array_to_yields' => true,
])
->setFinder(PhpCsFixer\Finder::create()
->in(__DIR__ . '/upload/')
->exclude([
__DIR__ . '/upload/system/storage/vendor/',
])
// ->append([
// 'file-to-include',
// ])
)
;
49 changes: 48 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,52 @@
# OpenCart change log

## [v4.0.2.2] (Release date: 18.04.2023)

https://github.com/opencart/opencart/releases/tag/4.0.2.2

## [v4.0.2.0] (Release date: 18.04.2023)

https://github.com/opencart/opencart/releases/tag/4.0.2.0

#### Changes

* Works with PHP 8.2
* Changed the route to use . instead of using | for compatibility with some payment gateways
* Payment methods need to be updated:

```
$method_data = [];
if ($status) {
$method_data = [
'code' => 'bank_transfer',
'title' => $this->language->get('heading_title'),
'sort_order' => $this->config->get('payment_bank_transfer_sor[UPGRADE.md](UPGRADE.md)t_order')
];
}
```


has changed to:

```
$method_data = [];
if ($status) {
$option_data['bank_transfer'] = [
'code' => 'bank_transfer.bank_transfer',
'name' => $this->language->get('heading_title')
];
$method_data = [
'code' => 'bank_transfer',
'name' => $this->language->get('heading_title'),
'option' => $option_data,
'sort_order' => $this->config->get('payment_bank_transfer_sort_order')
];
}
```

## [v4.0.1.0] (Release date: 15.08.2022)

https://github.com/opencart/opencart/releases/tag/4.0.1.0
Expand Down Expand Up @@ -32,7 +79,7 @@ https://github.com/opencart/opencart/releases/tag/3.0.3.3

https://github.com/opencart/opencart/releases/tag/3.0.3.3

## [3.0.3.1] (Release date: 07.01.2019)
## [3.0.3.1] (Release date: 07.01.2019)[UPGRADE.md](UPGRADE.md)

https://github.com/opencart/opencart/releases/tag/3.0.3.1

Expand Down
67 changes: 67 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
FROM php:8.2.11-apache

ARG DOWNLOAD_URL
ARG FOLDER


ENV DIR_OPENCART='/var/www/html/'
ENV DIR_STORAGE='/storage/'
ENV DIR_CACHE=${DIR_STORAGE}'cache/'
ENV DIR_DOWNLOAD=${DIR_STORAGE}'download/'
ENV DIR_LOGS=${DIR_STORAGE}'logs/'
ENV DIR_SESSION=${DIR_STORAGE}'session/'
ENV DIR_UPLOAD=${DIR_STORAGE}'upload/'
ENV DIR_IMAGE=${DIR_OPENCART}'image/'


RUN apt-get clean && apt-get update && apt-get install unzip

RUN apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libzip-dev \
&& docker-php-ext-configure gd --with-freetype --with-jpeg\
&& docker-php-ext-install -j$(nproc) gd \
&& docker-php-ext-install zip && && docker-php-ext-enable zip\
&& docker-php-ext-enable mysqli

RUN apt-get install -y vim

RUN mkdir /storage && mkdir /opencart

RUN if [ -z "$DOWNLOAD_URL" ]; then \
curl -Lo /tmp/opencart.zip $(sh -c 'curl -s https://api.github.com/repos/opencart/opencart/releases/latest | grep "browser_download_url" | cut -d : -f 2,3 | tr -d \"'); \
else \
curl -Lo /tmp/opencart.zip ${DOWNLOAD_URL}; \
fi

RUN unzip /tmp/opencart.zip -d /tmp/opencart;

RUN mv /tmp/opencart/$(if [ -n "$FOLDER" ]; then echo $FOLDER; else unzip -l /tmp/opencart.zip | awk '{print $4}' | grep -E 'opencart-[a-z0-9.]+/upload/$'; fi)* ${DIR_OPENCART};

RUN rm -rf /tmp/opencart.zip && rm -rf /tmp/opencart && rm -rf ${DIR_OPENCART}install;

RUN mv ${DIR_OPENCART}system/storage/* /storage
COPY configs ${DIR_OPENCART}
COPY php.ini ${PHP_INI_DIR}

RUN a2enmod rewrite

RUN chown -R www-data:www-data ${DIR_STORAGE}
RUN chmod -R 555 ${DIR_OPENCART}
RUN chmod -R 666 ${DIR_STORAGE}
RUN chmod 555 ${DIR_STORAGE}
RUN chmod -R 555 ${DIR_STORAGE}vendor
RUN chmod 755 ${DIR_LOGS}
RUN chmod -R 644 ${DIR_LOGS}*

RUN chown -R www-data:www-data ${DIR_IMAGE}
RUN chmod -R 744 ${DIR_IMAGE}
RUN chmod -R 755 ${DIR_CACHE}

RUN chmod -R 666 ${DIR_DOWNLOAD}
RUN chmod -R 666 ${DIR_SESSION}
RUN chmod -R 666 ${DIR_UPLOAD}

CMD ["apache2-foreground"]
Loading

0 comments on commit dfed143

Please sign in to comment.