1
0
mirror of https://github.com/e107inc/e107.git synced 2025-04-11 08:06:49 +02:00

506 Commits

Author SHA1 Message Date
Jimako
fa62e89a5f #5176 "ip" text box 45 characters
CLOSES #5176
2024-01-30 13:14:11 -06:00
camer0n
dbb9c74727 Closes #5171 Social trackers updated 2024-01-19 13:23:01 -08:00
camer0n
cab361e76c Fixes #5160 Social plugin XURL updates. 2023-12-19 15:18:23 -08:00
camer0n
63d3c075c3 Issue #5120 Use static methods. 2023-12-18 14:38:04 -08:00
camer0n
ab5f0fb911 Fixes #5156 Static URL issue. 2023-12-18 12:21:49 -08:00
camer0n
b970aec7aa Issue #4501 Reinitialize db_verify after plugin installation. 2023-12-07 14:11:23 -08:00
camer0n
fc59e8211f Issue #4501 TBD 2023-12-06 16:12:27 -08:00
camer0n
c5333137ac Issue #4501 TBD 2023-12-06 16:04:11 -08:00
camer0n
2328cb4e6e Issue #4501 Modified Charset lookup. 2023-12-06 15:27:26 -08:00
camer0n
d14d47aa65 Issue #4501 Improve test. 2023-12-06 13:14:35 -08:00
camer0n
f71661336b Issue #4501 Improve test. 2023-12-06 13:11:35 -08:00
camer0n
3d000c8dc3 Issue #4501 - Improve verification and cron table engine. 2023-12-05 16:05:56 -08:00
camer0n
84fe29cf12 Issue #4501 - PHP 8.3 compatibility. 2023-12-05 07:56:56 -08:00
Nick Liu
688ebdfea8
fix(#5131): Accurate resource open check when using log file handle
Fixes: https://github.com/e107inc/e107/issues/5131
2023-12-03 21:20:43 -06:00
camer0n
af7eadb7aa Closes #5133 Admin-UI Search enhancements. Tests added. 2023-12-03 12:41:14 -08:00
camer0n
dbcc26544a Issue #5120 - Reworked as object for increased flexibility. Some tweaking still to be done. 2023-11-29 16:08:14 -08:00
camer0n
2055720f6b Issue #5120 - Work in progress. Subject to change. 2023-11-29 10:17:52 -08:00
Cameron
951b09d112
Merge pull request #4508 from Deltik/fix/4501
Issue #4501 Migrate database charset to utf8mb4 and storage engine to InnoDB
2023-11-28 15:24:42 -08:00
camer0n
ea8a814ab4 Extra tests and minor cleanup for PHP 8.3. 2023-11-28 12:18:09 -08:00
camer0n
ab64f0f7bf Issue #5119 setFavicon() method added. 2023-11-28 12:18:08 -08:00
camer0n
9461602e43 Issue #5114 class conflict handling. 2023-11-24 10:44:00 -08:00
camer0n
56edcd53ee Issue #5114 - Prevent override class conflict. 2023-11-24 09:35:17 -08:00
camer0n
afd72ff7cb Closes #5112 New method setMetaTitle() 2023-11-22 12:18:23 -08:00
camer0n
6b7aa7c6d9 Fixes #4056 - plugin menu detection path limits. 2023-11-18 08:19:48 -08:00
camer0n
1744d1fc11 jQuery 3 updated to v3.7.1
Jquery-UI updated to v1.13.2
2023-11-17 16:56:11 -08:00
camer0n
34ba78023c Closes #4969, Fixes #5008, Fixes #4498 - FontAwesome6 support. 2023-11-17 11:18:23 -08:00
camer0n
da024d8a8d Remove test path 2023-11-13 13:24:30 -08:00
camer0n
75eb350c69 date tests. 2023-11-13 09:01:41 -08:00
camer0n
bfb515f2b5 Fixes #5096 - Cron timezone issue. eShims::strftime issue. CronParser test added. 2023-11-03 15:07:41 -07:00
camer0n
f037d6e688 Issue #5079 - Avoid division by zero. 2023-11-01 10:43:54 -07:00
camer0n
faa2f8ad34 Fixes #5093 - True/False labels on <select> options. 2023-11-01 08:07:30 -07:00
camer0n
fb98771b82 Fixes #5092 - Removed example code with error and added new example. Minor cleanup of class. 2023-10-31 12:34:28 -07:00
camer0n
6d632320a6 Issue #5079 PHP Warning. 2023-10-30 07:28:14 -07:00
camer0n
c419d402d7 Issue #4919 - Add support for quick custom email template without separate file. 2023-10-27 11:03:46 -07:00
camer0n
dd9c011fdd Closes #4804 - Conversion of diacritics in name2id() 2023-09-28 09:36:31 -07:00
camer0n
26f393b7ab Issue #5083 - Inline editor order fix for userclasses etc. 2023-09-25 10:07:48 -07:00
Nick Liu
dd36fbd51d
Unify logic of e_user_model::checkAdminPerms() and getperms()
Along with extensive documentation, `getperms()` is now deprecated and
its replacements now have first-class support:
* `e_user_model::checkAdminPerms()` and `getperms()` both use
  `e_userperms::simulateHasAdminPerms()`.
* `e_user_model::checkPluginAdminPerms()` and `getperms('P', …, …)`
  both use `e_userperms::simulateHasPluginAdminPerms()`.

----

Partially reverts: https://github.com/e107inc/e107/commit/44526b43

Reverts: https://github.com/e107inc/e107/commit/001799cb

Fixes: https://github.com/e107inc/e107/issues/5064
2023-09-09 12:03:14 +02:00
camer0n
44526b435c Issue #5064 - Draft fix for user impersonation (getperms()) 2023-09-08 14:18:06 -07:00
camer0n
9aa8de4f7d Issue GHSA-92fr-7h4f-22pp 2023-08-22 13:28:10 -07:00
camer0n
9949a297f6 HybridAuth upgrade v3.9.0 => v3.10.0 2023-08-22 12:10:30 -07:00
Nick Liu
b623868756
db_verify::getIndex(): Support index_col_name optional parts
In the MariaDB `CREATE TABLE` [`index_definition`](https://mariadb.com/kb/en/create-table/#index-definitions),
 the `index_col_name` could have an optional length and a sort order:

```
index_definition:
    {INDEX|KEY} [index_name] [index_type] (index_col_name,...) [index_option] ...
  {{{|}}} {FULLTEXT|SPATIAL} [INDEX|KEY] [index_name] (index_col_name,...) [index_option] ...
  {{{|}}} [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,...) [index_option] ...
  {{{|}}} [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,...) [index_option] ...
  {{{|}}} [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...) reference_definition

index_col_name:
    col_name [(length)] [ASC | DESC]

index_type:
    USING {BTREE | HASH | RTREE}

index_option:
    [ KEY_BLOCK_SIZE [=] value
  {{{|}}} index_type
  {{{|}}} WITH PARSER parser_name
  {{{|}}} COMMENT 'string'
  {{{|}}} CLUSTERING={YES| NO} ]
  [ IGNORED | NOT IGNORED ]

reference_definition:
    REFERENCES tbl_name (index_col_name,...)
      [MATCH FULL | MATCH PARTIAL | MATCH SIMPLE]
      [ON DELETE reference_option]
      [ON UPDATE reference_option]

reference_option:
    RESTRICT | CASCADE | SET NULL | NO ACTION
```

`db_verify::getIndex()` didn't handle this possibility, leading to a
database validity check failure despite the index actually existing.

Fixes: https://github.com/e107inc/e107/issues/5054
2023-08-17 17:27:26 +02:00
Nick Liu
3c571a884e
#5060: [PHP 8.3] Fix get_class() deprecations
Fixes: https://github.com/e107inc/e107/pull/5060
2023-08-14 18:05:02 +02:00
Nick Liu
b893cba9b6
CI: Fix acceptance test setup failure
Should fix this SaltStack error:

```
[ERROR   ] Command '/opt/saltstack/salt/salt-pip' failed with return code: 1
[ERROR   ] stdout: Collecting mysqlclient
  Downloading mysqlclient-2.2.0.tar.gz (89 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 89.5/89.5 kB 10.5 MB/s eta 0:00:00
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'error'
[ERROR   ] stderr:   error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [24 lines of output]
      /bin/sh: 1: pkg-config: not found
      /bin/sh: 1: pkg-config: not found
      Trying pkg-config --exists mysqlclient
      Command 'pkg-config --exists mysqlclient' returned non-zero exit status 127.
      Trying pkg-config --exists mariadb
      Command 'pkg-config --exists mariadb' returned non-zero exit status 127.
      Traceback (most recent call last):
        File "/opt/saltstack/salt/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 351, in <module>
          main()
        File "/opt/saltstack/salt/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 333, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/opt/saltstack/salt/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
        File "/tmp/pip-build-env-8d1ymhy3/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 341, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=['wheel'])
        File "/tmp/pip-build-env-8d1ymhy3/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 323, in _get_build_requires
          self.run_setup()
        File "/tmp/pip-build-env-8d1ymhy3/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 338, in run_setup
          exec(code, locals())
        File "<string>", line 154, in <module>
        File "<string>", line 48, in get_config_posix
        File "<string>", line 27, in find_package_name
      Exception: Can not find valid pkg-config name.
      Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
[ERROR   ] retcode: 1
[ERROR   ] Failed to install packages: mysqlclient. Error: Collecting mysqlclient
  Downloading mysqlclient-2.2.0.tar.gz (89 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 89.5/89.5 kB 10.5 MB/s eta 0:00:00
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'error'   error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [24 lines of output]
      /bin/sh: 1: pkg-config: not found
      /bin/sh: 1: pkg-config: not found
      Trying pkg-config --exists mysqlclient
      Command 'pkg-config --exists mysqlclient' returned non-zero exit status 127.
      Trying pkg-config --exists mariadb
      Command 'pkg-config --exists mariadb' returned non-zero exit status 127.
      Traceback (most recent call last):
        File "/opt/saltstack/salt/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 351, in <module>
          main()
        File "/opt/saltstack/salt/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 333, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/opt/saltstack/salt/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
        File "/tmp/pip-build-env-8d1ymhy3/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 341, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=['wheel'])
        File "/tmp/pip-build-env-8d1ymhy3/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 323, in _get_build_requires
          self.run_setup()
        File "/tmp/pip-build-env-8d1ymhy3/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 338, in run_setup
          exec(code, locals())
        File "<string>", line 154, in <module>
        File "<string>", line 48, in get_config_posix
        File "<string>", line 27, in find_package_name
      Exception: Can not find valid pkg-config name.
      Specify MYSQLCLIENT_CFLAGS and MYSQLCLIENT_LDFLAGS env vars manually
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
[ERROR   ] State 'mysql_user.present' was not found in SLS 'e107-dev'
Reason: 'mysql_user' __virtual__ returned False: mysql module could not be loaded

[ERROR   ] State 'mysql_user.present' was not found in SLS 'e107-dev'
Reason: 'mysql_user' __virtual__ returned False: mysql module could not be loaded

[ERROR   ] State 'mysql_database.present' was not found in SLS 'e107-dev'
Reason: 'mysql_database' __virtual__ returned False: mysql module could not be loaded
```
2023-06-22 20:46:10 -05:00
camer0n
4cc9d8b085 Updated vendor packages:
hybridauth/hybridauth (v3.8.2 => v3.9.0)
ifsnop/mysqldump-php (v2.9 => v2.12)
guzzlehttp/psr7 (1.9.0 => 1.9.1)
matthiasmullie/minify (1.3.70 => 1.3.71)
phpmailer/phpmailer (v6.7.1 => v6.8.0)
2023-06-22 09:47:35 -07:00
Cameron
c2bc635774 Fixes #5005 GET values containing arrays are no longer corrupted. 2023-06-06 15:46:50 -07:00
dependabot[bot]
50bbc0018a
Bump guzzlehttp/psr7 from 2.4.3 to 2.5.0 in /e107_tests
Bumps [guzzlehttp/psr7](https://github.com/guzzle/psr7) from 2.4.3 to 2.5.0.
- [Release notes](https://github.com/guzzle/psr7/releases)
- [Changelog](https://github.com/guzzle/psr7/blob/2.5/CHANGELOG.md)
- [Commits](https://github.com/guzzle/psr7/compare/2.4.3...2.5.0)

---
updated-dependencies:
- dependency-name: guzzlehttp/psr7
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-19 20:45:04 +00:00
Cameron
c3517641e0 Fontawesome updated to 5.15.4
Bootswatch updated to 5.2.3 in Bootstrap5 theme and fontawesome loading switched to css. (instead of js)
2023-04-12 15:32:48 -07:00
Nick Liu
1d1f4d08e0
Add tests for news plugin category links 2023-02-20 12:13:34 +01:00
Nick Liu
432395c12e
Tests: Helper\E107Base: Use more reliable check for Composer 2 format
Issue reported in Gitter:
https://matrix.to/#/!srhnCKlMgxFeuSPXPb:gitter.im/$nGHXf-miT7JsA2U-Mgr7_SDuINfSYjuHulMgfuvPNdg?via=gitter.im

Tester reported this error:

```
In E107Base.php line 103:

  First parameter must either be an object or the name of an existing class
```
2023-02-16 15:57:20 +01:00
Cameron
f5096ae47d Closes #4978 - {NEWS_MODIFIED} shortcode added. 2023-02-11 09:09:16 -08:00