Commit Graph

982 Commits

Author SHA1 Message Date
Thomas Casteleyn
42354ba794 Improve secure connection detection (#161)
The previous code broke the setup page when the iTop server is behind a proxy that handles SSL termination.
Now the detection also checks the `HTTP_X_FORWARDED_PROTO` and `HTTP_X_FORWARDED_PROTOCOL` HTTP headers. 
For any other page than the setup, the check is unchanged.

Many thanks @Hipska !
2020-12-16 15:37:48 +01:00
Pierre Goiffon
17cecde604 Fix errors in setup/modelfactory.class.inc.php 2020-12-11 10:49:41 +01:00
Pierre Goiffon
728c09d97d N°3129 Fix compatibility with PHP 8 for \MFElement::ReplaceWith
New method added in PHP 8 : \DOMChildNode::replaceWith with a different signature (both visibility and parameters)
2020-12-11 10:13:10 +01:00
Pierre Goiffon
96e7f57a34 Merge remote-tracking branch 'origin/support/2.7' into develop
# Conflicts:
#	application/ajaxwebpage.class.inc.php
#	application/csvpage.class.inc.php
#	application/itopwebpage.class.inc.php
#	application/webpage.class.inc.php
#	application/xmlpage.class.inc.php
#	core/config.class.inc.php
#	css/css-variables.scss
#	datamodels/2.x/version.xml
#	pages/ajax.document.php
#	pages/ajax.render.php
#	pages/ajax.searchform.php
#	sources/application/TwigBase/Controller/Controller.php
2020-12-10 18:08:11 +01:00
Pierre Goiffon
b03c5232b0 N°3253 Fix setup error message
Thanks @Hipska and @Molkobain !
2020-12-10 10:31:58 +01:00
Pierre Goiffon
c46b046254 N°3253 Fix setup always displaying an error
Woops this was a debug I forgot to change
2020-12-04 18:30:28 +01:00
Pierre Goiffon
70efa37109 N°3253 Fix setup crashing on incompatible PHP versions (#178)
We now have a new setup landing page. The old one is renamed setup/wizard.php

This contains revert for "🐛 Fix setup homepage error with PHP < 7.1.0" (91c6916d86) => it was one of the modifications that caused the setup to crash before this !
2020-12-04 18:28:39 +01:00
Pierre Goiffon
cece15d10c N°3416 Updates after code review
Many thanks @bruno-ds !
* add comments to explain intentions
* fix indentations
2020-12-03 17:45:44 +01:00
Pierre Goiffon
ecebe4ecd5 N°3416 XFrame and cache headers optimizations
* Remove XFrame header set in \WebPage::no_cache : not this method responsability, was confusing :/
* Remove no_cache() calls when already set in page constructor (ajax_page mainly)
* Also calls everywhere the \WebPage::no_cache method instead of setting headers manually
2020-12-02 17:19:05 +01:00
acognet
539fa43503 N°3461 - Setup Broken with Chrome v87 2020-11-30 18:27:25 +01:00
denis.flaven@combodo.com
398b5f446c Protect against empty 'precompiled theme' entry in the XML 2020-11-27 17:57:09 +01:00
Pierre Goiffon
07cc8bf508 N°3436 fix Setup
Was blocked because using iTop 3.0.0 with datamodels/2.x dir : \SetupUtils::GetCompatibleDataModelDir wasn't ok with that :o)
This method is no more present, and we're calling \SetupUtils::GetLatestDataModelDir only
In other words, we're picking the latest datamodel/*.x dir (greatest number)
2020-11-16 17:51:52 +01:00
Pierre Goiffon
c2e31de263 🎨 SetupUtils fix methods modifiers + formatting 2020-11-16 17:39:32 +01:00
Molkobain
448afc640d Internal: Change XML version from 1.8 to 3.0 as it will now follow iTop core version numbering 2020-11-09 19:48:28 +01:00
Molkobain
f2ff5a4e83 N°3203 - Datamodel: Add semantic for image & state attributes Part. II 2020-11-09 15:44:45 +01:00
Molkobain
8954d02796 PHPDoc & warnings suppression 2020-11-04 16:15:17 +01:00
Molkobain
50421f4753 N°3203 - Datamodel: Add semantic for image & state attributes Part. I 2020-11-02 14:51:25 +01:00
Molkobain
b15ed80732 Internal: Replace references to iTop 2.8.0 with iTop 3.0.0 2020-10-14 10:16:49 +02:00
Molkobain
986c08aa81 Merge remote-tracking branch 'origin/develop' into feature/backoffice-full-moon-design 2020-10-14 10:09:14 +02:00
Molkobain
8e6351d346 Internal: Replace references to iTop 2.8.0 with iTop 3.0.0 2020-10-14 10:04:10 +02:00
Molkobain
e35965c065 N°2982 - Move precompiled files to proper module and update XML migration functions 2020-10-14 09:49:21 +02:00
Molkobain
e48d257b00 Merge remote-tracking branch 'origin/develop' into feature/backoffice-full-moon-design
# Conflicts:
#	application/ajaxwebpage.class.inc.php
#	application/csvpage.class.inc.php
#	application/displayblock.class.inc.php
#	application/itopwebpage.class.inc.php
#	application/utils.inc.php
#	application/webpage.class.inc.php
#	application/xmlpage.class.inc.php
#	datamodels/2.x/itop-config-mgmt/datamodel.itop-config-mgmt.xml
#	datamodels/2.x/itop-knownerror-light/datamodel.itop-knownerror-light.xml
#	datamodels/2.x/itop-service-mgmt/datamodel.itop-service-mgmt.xml
#	datamodels/2.x/itop-tickets/datamodel.itop-tickets.xml
#	js/components/breadcrumbs.js
#	pages/navigator.php
#	test/core/DBSearchTest.php
2020-10-07 11:36:15 +02:00
Molkobain
f8129fab74 N°2899 - Setup: Fix "For CryptoEngine ..." mandatory PHP extension introduced in the previous commit 2020-09-30 16:22:35 +02:00
Molkobain
1b2dd04409 N°2899 - Setup: Remove mbstring from optional PHP extensions now that it is mandatory (7d1a61a2f) (Thanks @Hispka !) 2020-09-30 14:38:55 +02:00
odain
20ce42b24b Reintegrate validation tests to ease iTop release management from develop
- N°3053 - Check XML conversion methods
     - N°3059 - Automatically set the documentation URLs
     - N°3052 - Check community modules XML version against latest version
     - N°3054 - Check community modules version against major version
     - N°3062 - setup.css file integrity test
     - N°3060 - Check consistency between the list of modules and installation.xml
     - N°3061 - Automatically check the installation.xml consistency
     - N°3268 Add test to check dictionary files: make sure that the Dict::Add declarations match the file name
2020-09-29 14:43:51 +02:00
odain
bcd41dfe96 Merge branch 'feature/b3217-squash' into develop 2020-09-28 15:08:57 +02:00
Pierre Goiffon
745e4aa424 Merge remote-tracking branch 'origin/develop' into feature/backoffice-full-moon-design
# Conflicts:
#	webservices/import.php
2020-09-18 10:48:34 +02:00
Pierre Goiffon
ed1bb3e93a N°2214 Add PHP check in CLI scripts : 2nd code review with Romain
- fix wrong test in \SetupUtils::CheckPhpAndExtensions
- fix \SetupUtils::CheckGraphviz consumers in WizardStep : do not assume that only one CheckResult is returned... doing a for each loop instead !
- json_encode prb on Windows : pull up default messages from consumers to \SetupUtils::CheckGraphviz (was introduced in 6e754d4fa5)
2020-09-18 10:43:39 +02:00
Pierre Goiffon
b9f9322418 N°2214 Remove type hinting in SetuUtils for compatibility issues
This file needs to be able to run on very old PHP versions !
2020-09-14 11:38:55 +02:00
Pierre Goiffon
4badb90344 N°2214 Cron : remove :void to keep compatibility with PHP < 7.1
see https://www.php.net/manual/fr/migration71.new-features.php#migration71.new-features.void-functions
2020-09-14 11:02:18 +02:00
Pierre Goiffon
f0434f9125 🎨 N°2214 In SetupUtils::Check* methods : replace debug SetupLog calls by CheckResult::TRACE objects
This is the caller responsibility to log using the correct classes !
Also we need to remove this dependency O:)

Modifications:
* reverts e8e259dde9 as SetupPage is no longer called since N°2522 / c4b7be5b6f
* \SetupUtils::Log : remove useless final, add PHPDoc and type hinting to modified methods
* add PHPDoc and type hinting to modified methods
* add \CheckResult::TRACE
* replace SetupLog::Log calls by CheckResult::TRACE
* modify SetupUtils::Check* callers to handle the new TRACE severity
2020-09-11 18:37:30 +02:00
Pierre Goiffon
11f00cc229 N°2214 PHP version check in CLI scripts : remove some checks in CLI, and various improvements
Initial commit : b7136c0b7a

Removed checks : see \SetupUtils::CheckPhpAndExtensions PHPDoc

Other improvements :
* add PhpDoc on new public method \SetupUtils::CheckPhpAndExtensions
* add type hinting and new format on SetupUtils new methods
* refactor CheckResult[] filter method to be more generic
2020-09-10 16:52:47 +02:00
Eric
63f8ec594c N°2847 - Refactor Web Pages classes - Add UIBlockManager to the WebPage 2020-09-09 18:10:06 +02:00
Molkobain
8193ada159 Merge remote-tracking branch 'origin/develop' into feature/backoffice-full-moon-design
# Conflicts:
#	composer.json
#	css/light-grey.scss
#	lib/composer/autoload_classmap.php
#	lib/composer/autoload_static.php
2020-09-08 17:30:32 +02:00
odain
2ff6658a56 Merge branch 'develop' into feature/b3217-2dev 2020-09-08 17:00:41 +02:00
Benjamin Planque
f25cd70e73 datamodel and dictionnaries refactoring/cleanup 2020-09-08 16:36:21 +02:00
Molkobain
7d1a61a2f9 N°2899 - Setup: Add mbstring as mandatory PHP extension 2020-09-08 09:12:43 +02:00
Eric
76fbd3790f N°3123 - Update the list of required PHP extensions 2020-09-02 10:47:42 +02:00
acognet
c4b7be5b6f N°2522 - API : Deprecate SetupPage:log* 2020-08-27 11:17:42 +02:00
odain
9a0d9d2c38 Merge branch 'feature/fast-theme-compilation2' into develop
N°2982 - speedup themes/scss compilation during setup
N°2996 - Remove iTop version from css-variable.scss
2020-08-26 17:59:31 +02:00
Molkobain
7f3c10b69d Merge remote-tracking branch 'origin/develop' into feature/backoffice-full-moon-design 2020-08-26 16:09:23 +02:00
Eric
e8eb6d0e31 N°3249 - N°2957 - Revert one file per class => generate all the classes in the same file: model.<module>.php to address forward declaration of classes 2020-08-24 12:41:49 +02:00
acognet
23c0a67914 N°580 - Autocomplete with namesakes. Complement for select 2020-08-20 16:42:43 +02:00
Eric
87312d4457 N°2969 - Fix relative path of dictionaries 2020-08-20 14:45:43 +02:00
Molkobain
c5b8d3fa72 Merge remote-tracking branch 'origin/develop' into feature/backoffice-full-moon-design
# Conflicts:
#	application/datamodel.application.xml
#	application/itopwebpage.class.inc.php
#	css/light-grey.scss
2020-08-19 10:20:37 +02:00
Eric
c5d265f66b N°3249 - Fix move To Production. Fix compiler code generation broken by N°2957 2020-08-18 14:17:01 +02:00
odain
0b9ba4d053 Merge branch 'feature/release-checklist-2.7' into develop 2020-08-18 10:31:02 +02:00
Pierre Goiffon
71848cb56b Merge branch 'support/2.7' into develop
# Conflicts:
#	.jenkins/bin/tests/phpunit.sh
#	Jenkinsfile
#	core/config.class.inc.php
#	core/dbobjectsearch.class.php
#	core/ormlinkset.class.inc.php
#	datamodels/2.x/combodo-db-tools/dbtools.php
#	dictionaries/nl.dictionary.itop.ui.php
2020-08-17 09:36:43 +02:00
odain-cbd
71b725420a Merge branch 'develop' into feature/fast-theme-compilation2 2020-08-17 00:18:15 +02:00
odain
a538e3c1a2 N°2996 Remove iTop version from css variables
- $version does not exit anymore in css-variables.css. now its value is computed during setup and equals setup timestamp instead.
    - use precompiled files (declared in datamodels XML files) to check if theme compilation is required or not.
    - referenced images in scss files are included in precompiled file signatures just like scss files md5sum.
    - images declared in scss files with v=$version are reloaded automatically on browser side after each theme compilation (see xxx.png?v=timestamp)
    - precompiled files are replaced if theme compilation occurred. this will avoid same time consuming operation at next setup.
    - code cleanup: arrays / variables renamed
2020-08-14 17:03:16 +02:00