From e9d2257d73f87e359dcb1f31135535fdfc02926b Mon Sep 17 00:00:00 2001 From: Tim van den Boom Date: Fri, 2 Jan 2026 20:52:43 +0100 Subject: [PATCH] Initial commit --- actions/apply-settings.php | 22 + actions/bridge-editor.php | 131 + actions/connection-test.php | 5 + actions/extract-programs.php | 1182 ++++ actions/inventory.php | 138 + actions/program-editor.php | 140 + actions/save-settings.php | 16 + alt/actions/connection-test.php | 5 + alt/index.php | 32 + alt/pagecontent/index.php | 24 + alt/pagecontent/start.php | 339 ++ alt/python/plug-check.py | 144 + alt/script.js | 117 + alt/stecker.php | 120 + alt/style.css | 241 + .../DB_InfraGo_logo_red_black_100px_rgb.svg | 77 + alt/vendor/fonts/LexendDeca-Bold.ttf | Bin 0 -> 78764 bytes alt/vendor/fonts/LexendDeca-Medium.ttf | Bin 0 -> 78828 bytes alt/vendor/icons/electric-plug-icon.svg | 1 + alt/vendor/icons/fiber-cable-icon.svg | 1 + alt/vendor/icons/play.svg | 1 + alt/vendor/jquery.min.js | 2 + db-test/defaults.php | 75 + db-test/index.php | 97 + db-test/test.db | Bin 0 -> 147456 bytes errorcodes.php | 2 + functions.php | 198 + index.php | 38 + pagecontent/bridge-editor.php | 410 ++ pagecontent/cable-check.php | 13 + pagecontent/database-search.php | 322 ++ pagecontent/export.php | 220 + pagecontent/index.php | 15 + pagecontent/inventory.php | 18 + pagecontent/plug-select.php | 1 + pagecontent/program-editor.php | 230 + pagecontent/selfcheck.php | 131 + pagecontent/start-cable.php | 122 + pagecontent/start.php | 625 +++ pagecontent/stecker.php | 124 + pagecontent/system.php | 139 + pagecontent/temp.json | 0 python/.plug-check.py.swp | Bin 0 -> 1024 bytes python/.selfcheck.py.swp | Bin 0 -> 1024 bytes python/cable-check.py | 230 + python/observer-full.py | 219 + python/observer.py | 127 + python/plug-check.py | 165 + python/plug-check_external-pulldown.py | 75 + python/plug-check_internal-pullup.py | 53 + python/selfcheck.py | 219 + python/test.py | 53 + reset.php | 364 ++ script.js | 502 ++ settings.json | 1 + stecker.php | 124 + style3.css | 553 ++ temp.csv | 8 + temp.json | 1 + temp.xlsx | Bin 0 -> 87525 bytes .../DB_InfraGo_logo_red_black_100px_rgb.svg | 77 + vendor/composer/composer.json | 5 + vendor/composer/composer.lock | 600 ++ vendor/composer/composer.phar | Bin 0 -> 3116618 bytes vendor/composer/vendor/autoload.php | 22 + .../composer/vendor/composer/ClassLoader.php | 579 ++ .../vendor/composer/InstalledVersions.php | 396 ++ vendor/composer/vendor/composer/LICENSE | 21 + .../vendor/composer/autoload_classmap.php | 10 + .../vendor/composer/autoload_namespaces.php | 9 + .../vendor/composer/autoload_psr4.php | 17 + .../vendor/composer/autoload_real.php | 38 + .../vendor/composer/autoload_static.php | 81 + .../composer/vendor/composer/installed.json | 614 +++ vendor/composer/vendor/composer/installed.php | 104 + vendor/composer/vendor/composer/pcre/LICENSE | 19 + .../composer/vendor/composer/pcre/README.md | 189 + .../vendor/composer/pcre/composer.json | 54 + .../vendor/composer/pcre/extension.neon | 22 + .../composer/pcre/src/MatchAllResult.php | 46 + .../pcre/src/MatchAllStrictGroupsResult.php | 46 + .../pcre/src/MatchAllWithOffsetsResult.php | 48 + .../vendor/composer/pcre/src/MatchResult.php | 39 + .../pcre/src/MatchStrictGroupsResult.php | 39 + .../pcre/src/MatchWithOffsetsResult.php | 41 + .../src/PHPStan/InvalidRegexPatternRule.php | 142 + .../pcre/src/PHPStan/PregMatchFlags.php | 70 + .../PregMatchParameterOutTypeExtension.php | 65 + .../PregMatchTypeSpecifyingExtension.php | 119 + ...regReplaceCallbackClosureTypeExtension.php | 91 + .../PHPStan/UnsafeStrictGroupsCallRule.php | 112 + .../composer/pcre/src/PcreException.php | 55 + .../vendor/composer/pcre/src/Preg.php | 430 ++ .../vendor/composer/pcre/src/Regex.php | 176 + .../composer/pcre/src/ReplaceResult.php | 43 + .../pcre/src/UnexpectedNullMatchException.php | 20 + .../vendor/composer/platform_check.php | 29 + .../maennchen/zipstream-php/.editorconfig | 22 + .../maennchen/zipstream-php/.gitattributes | 6 + .../zipstream-php/.github/CODE_OF_CONDUCT.md | 132 + .../zipstream-php/.github/CONTRIBUTING.md | 139 + .../zipstream-php/.github/FUNDING.yml | 1 + .../.github/ISSUE_TEMPLATE/BUG.yml | 71 + .../.github/ISSUE_TEMPLATE/FEATURE.yml | 11 + .../.github/PULL_REQUEST_TEMPLATE.md | 6 + .../PULL_REQUEST_TEMPLATE/FAILING_TEST.md | 13 + .../.github/PULL_REQUEST_TEMPLATE/FIX.md | 13 + .../PULL_REQUEST_TEMPLATE/IMPROVEMENT.md | 9 + .../PULL_REQUEST_TEMPLATE/NEW_FEATURE.md | 9 + .../zipstream-php/.github/SECURITY.md | 22 + .../zipstream-php/.github/dependabot.yml | 15 + .../zipstream-php/.github/scorecard.yml | 14 + .../.github/workflows/branch_main.yml | 24 + .../.github/workflows/part_dependabot.yml | 30 + .../.github/workflows/part_docs.yml | 51 + .../.github/workflows/part_release.yml | 94 + .../.github/workflows/part_test.yml | 181 + .../zipstream-php/.github/workflows/pr.yml | 50 + .../.github/workflows/scorecard.yml | 78 + .../.github/workflows/tag-beta.yml | 29 + .../.github/workflows/tag-stable.yml | 55 + .../vendor/maennchen/zipstream-php/.gitignore | 12 + .../maennchen/zipstream-php/.phive/phars.xml | 4 + .../zipstream-php/.php-cs-fixer.dist.php | 73 + .../.phpdoc/template/base.html.twig | 15 + .../maennchen/zipstream-php/.tool-versions | 1 + .../vendor/maennchen/zipstream-php/LICENSE | 24 + .../vendor/maennchen/zipstream-php/README.md | 157 + .../maennchen/zipstream-php/composer.json | 93 + .../zipstream-php/guides/ContentLength.rst | 47 + .../zipstream-php/guides/FlySystem.rst | 34 + .../maennchen/zipstream-php/guides/Nginx.rst | 16 + .../zipstream-php/guides/Options.rst | 66 + .../zipstream-php/guides/PSR7Streams.rst | 21 + .../zipstream-php/guides/StreamOutput.rst | 39 + .../zipstream-php/guides/Symfony.rst | 130 + .../zipstream-php/guides/Varnish.rst | 22 + .../maennchen/zipstream-php/guides/index.rst | 126 + .../maennchen/zipstream-php/phpdoc.dist.xml | 39 + .../maennchen/zipstream-php/phpunit.xml.dist | 15 + .../vendor/maennchen/zipstream-php/psalm.xml | 25 + .../src/CentralDirectoryFileHeader.php | 52 + .../zipstream-php/src/CompressionMethod.php | 106 + .../zipstream-php/src/DataDescriptor.php | 26 + .../src/EndOfCentralDirectory.php | 35 + .../maennchen/zipstream-php/src/Exception.php | 7 + .../Exception/DosTimeOverflowException.php | 23 + .../src/Exception/FileNotFoundException.php | 22 + .../Exception/FileNotReadableException.php | 22 + .../Exception/FileSizeIncorrectException.php | 23 + .../src/Exception/OverflowException.php | 21 + .../src/Exception/ResourceActionException.php | 29 + .../SimulationFileUnknownException.php | 19 + .../Exception/StreamNotReadableException.php | 21 + .../Exception/StreamNotSeekableException.php | 22 + .../maennchen/zipstream-php/src/File.php | 430 ++ .../src/GeneralPurposeBitFlag.php | 89 + .../zipstream-php/src/LocalFileHeader.php | 40 + .../zipstream-php/src/OperationMode.php | 35 + .../maennchen/zipstream-php/src/PackField.php | 56 + .../maennchen/zipstream-php/src/Time.php | 39 + .../maennchen/zipstream-php/src/Version.php | 12 + .../src/Zip64/DataDescriptor.php | 28 + .../src/Zip64/EndOfCentralDirectory.php | 43 + .../Zip64/EndOfCentralDirectoryLocator.php | 29 + .../Zip64/ExtendedInformationExtraField.php | 45 + .../maennchen/zipstream-php/src/ZipStream.php | 871 +++ .../src/Zs/ExtendedInformationExtraField.php | 23 + .../zipstream-php/test/Assertions.php | 49 + .../test/CentralDirectoryFileHeaderTest.php | 60 + .../zipstream-php/test/DataDescriptorTest.php | 26 + .../test/EndOfCentralDirectoryTest.php | 35 + .../zipstream-php/test/EndlessCycleStream.php | 104 + .../test/FaultInjectionResource.php | 141 + .../test/LocalFileHeaderTest.php | 47 + .../zipstream-php/test/PackFieldTest.php | 42 + .../zipstream-php/test/ResourceStream.php | 159 + .../maennchen/zipstream-php/test/Tempfile.php | 42 + .../maennchen/zipstream-php/test/TimeTest.php | 44 + .../maennchen/zipstream-php/test/Util.php | 127 + .../test/Zip64/DataDescriptorTest.php | 28 + .../EndOfCentralDirectoryLocatorTest.php | 28 + .../test/Zip64/EndOfCentralDirectoryTest.php | 41 + .../ExtendedInformationExtraFieldTest.php | 42 + .../zipstream-php/test/ZipStreamTest.php | 1216 ++++ .../Zs/ExtendedInformationExtraFieldTest.php | 22 + .../zipstream-php/test/bootstrap.php | 7 + .../complex/.github/workflows/main.yml | 153 + .../vendor/markbaker/complex/README.md | 173 + .../markbaker/complex/classes/src/Complex.php | 388 ++ .../complex/classes/src/Exception.php | 13 + .../complex/classes/src/Functions.php | 823 +++ .../complex/classes/src/Operations.php | 210 + .../vendor/markbaker/complex/composer.json | 40 + .../complex/examples/complexTest.php | 154 + .../complex/examples/testFunctions.php | 52 + .../complex/examples/testOperations.php | 35 + .../vendor/markbaker/complex/license.md | 25 + .../matrix/.github/workflows/main.yaml | 124 + .../vendor/markbaker/matrix/README.md | 215 + .../vendor/markbaker/matrix/buildPhar.php | 62 + .../markbaker/matrix/classes/src/Builder.php | 70 + .../src/Decomposition/Decomposition.php | 27 + .../matrix/classes/src/Decomposition/LU.php | 260 + .../matrix/classes/src/Decomposition/QR.php | 191 + .../matrix/classes/src/Div0Exception.php | 13 + .../matrix/classes/src/Exception.php | 13 + .../matrix/classes/src/Functions.php | 376 ++ .../markbaker/matrix/classes/src/Matrix.php | 423 ++ .../matrix/classes/src/Operations.php | 157 + .../matrix/classes/src/Operators/Addition.php | 68 + .../classes/src/Operators/DirectSum.php | 64 + .../matrix/classes/src/Operators/Division.php | 35 + .../classes/src/Operators/Multiplication.php | 86 + .../matrix/classes/src/Operators/Operator.php | 78 + .../classes/src/Operators/Subtraction.php | 68 + .../vendor/markbaker/matrix/composer.json | 52 + .../vendor/markbaker/matrix/examples/test.php | 33 + .../markbaker/matrix/infection.json.dist | 17 + .../vendor/markbaker/matrix/license.md | 25 + .../vendor/markbaker/matrix/phpstan.neon | 6 + .../phpoffice/phpspreadsheet/CHANGELOG.md | 2004 +++++++ .../phpoffice/phpspreadsheet/CONTRIBUTING.md | 49 + .../vendor/phpoffice/phpspreadsheet/LICENSE | 21 + .../vendor/phpoffice/phpspreadsheet/README.md | 70 + .../phpoffice/phpspreadsheet/composer.json | 123 + .../Calculation/ArrayEnabled.php | 134 + .../Calculation/BinaryComparison.php | 141 + .../Calculation/Calculation.php | 2848 ++++++++++ .../Calculation/CalculationBase.php | 72 + .../Calculation/CalculationLocale.php | 424 ++ .../PhpSpreadsheet/Calculation/Category.php | 22 + .../Calculation/Database/DAverage.php | 44 + .../Calculation/Database/DCount.php | 45 + .../Calculation/Database/DCountA.php | 44 + .../Calculation/Database/DGet.php | 50 + .../Calculation/Database/DMax.php | 45 + .../Calculation/Database/DMin.php | 45 + .../Calculation/Database/DProduct.php | 44 + .../Calculation/Database/DStDev.php | 45 + .../Calculation/Database/DStDevP.php | 45 + .../Calculation/Database/DSum.php | 44 + .../Calculation/Database/DVar.php | 47 + .../Calculation/Database/DVarP.php | 47 + .../Calculation/Database/DatabaseAbstract.php | 228 + .../Calculation/DateTimeExcel/Constants.php | 38 + .../Calculation/DateTimeExcel/Current.php | 60 + .../Calculation/DateTimeExcel/Date.php | 179 + .../Calculation/DateTimeExcel/DateParts.php | 154 + .../Calculation/DateTimeExcel/DateValue.php | 176 + .../Calculation/DateTimeExcel/Days.php | 62 + .../Calculation/DateTimeExcel/Days360.php | 118 + .../Calculation/DateTimeExcel/Difference.php | 153 + .../Calculation/DateTimeExcel/Helpers.php | 307 ++ .../Calculation/DateTimeExcel/Month.php | 104 + .../Calculation/DateTimeExcel/NetworkDays.php | 119 + .../Calculation/DateTimeExcel/Time.php | 130 + .../Calculation/DateTimeExcel/TimeParts.php | 135 + .../Calculation/DateTimeExcel/TimeValue.php | 97 + .../Calculation/DateTimeExcel/Week.php | 274 + .../Calculation/DateTimeExcel/WorkDay.php | 206 + .../Calculation/DateTimeExcel/YearFrac.php | 124 + .../Engine/ArrayArgumentHelper.php | 218 + .../Engine/ArrayArgumentProcessor.php | 176 + .../Calculation/Engine/BranchPruner.php | 201 + .../Engine/CyclicReferenceStack.php | 65 + .../Calculation/Engine/FormattedNumber.php | 139 + .../Calculation/Engine/Logger.php | 126 + .../Calculation/Engine/Operands/Operand.php | 11 + .../Engine/Operands/StructuredReference.php | 363 ++ .../Calculation/Engineering/BesselI.php | 141 + .../Calculation/Engineering/BesselJ.php | 176 + .../Calculation/Engineering/BesselK.php | 130 + .../Calculation/Engineering/BesselY.php | 137 + .../Calculation/Engineering/BitWise.php | 247 + .../Calculation/Engineering/Compare.php | 82 + .../Calculation/Engineering/Complex.php | 120 + .../Engineering/ComplexFunctions.php | 592 ++ .../Engineering/ComplexOperations.php | 128 + .../Calculation/Engineering/Constants.php | 11 + .../Calculation/Engineering/ConvertBase.php | 70 + .../Calculation/Engineering/ConvertBinary.php | 163 + .../Engineering/ConvertDecimal.php | 213 + .../Calculation/Engineering/ConvertHex.php | 175 + .../Calculation/Engineering/ConvertOctal.php | 174 + .../Calculation/Engineering/ConvertUOM.php | 686 +++ .../Engineering/EngineeringValidations.php | 27 + .../Calculation/Engineering/Erf.php | 109 + .../Calculation/Engineering/ErfC.php | 77 + .../PhpSpreadsheet/Calculation/Exception.php | 22 + .../Calculation/ExceptionHandler.php | 24 + .../Calculation/Financial/Amortization.php | 217 + .../CashFlow/CashFlowValidations.php | 41 + .../Financial/CashFlow/Constant/Periodic.php | 195 + .../CashFlow/Constant/Periodic/Cumulative.php | 138 + .../CashFlow/Constant/Periodic/Interest.php | 213 + .../Periodic/InterestAndPrincipal.php | 44 + .../CashFlow/Constant/Periodic/Payments.php | 116 + .../Calculation/Financial/CashFlow/Single.php | 107 + .../CashFlow/Variable/NonPeriodic.php | 324 ++ .../Financial/CashFlow/Variable/Periodic.php | 164 + .../Calculation/Financial/Constants.php | 19 + .../Calculation/Financial/Coupons.php | 407 ++ .../Calculation/Financial/Depreciation.php | 265 + .../Calculation/Financial/Dollar.php | 131 + .../Financial/FinancialValidations.php | 122 + .../Calculation/Financial/Helpers.php | 61 + .../Calculation/Financial/InterestRate.php | 71 + .../Financial/Securities/AccruedInterest.php | 152 + .../Financial/Securities/Price.php | 284 + .../Financial/Securities/Rates.php | 135 + .../Securities/SecurityValidations.php | 32 + .../Financial/Securities/Yields.php | 154 + .../Calculation/Financial/TreasuryBill.php | 146 + .../Calculation/FormulaParser.php | 616 +++ .../Calculation/FormulaToken.php | 131 + .../Calculation/FunctionArray.php | 2682 +++++++++ .../PhpSpreadsheet/Calculation/Functions.php | 363 ++ .../Calculation/Information/ErrorValue.php | 72 + .../Calculation/Information/ExcelError.php | 167 + .../Calculation/Information/Value.php | 318 ++ .../Internal/ExcelArrayPseudoFunctions.php | 104 + .../Calculation/Internal/MakeMatrix.php | 16 + .../Calculation/Internal/WildcardMatch.php | 39 + .../Calculation/Logical/Boolean.php | 36 + .../Calculation/Logical/Conditional.php | 211 + .../Calculation/Logical/Operations.php | 167 + .../Calculation/LookupRef/Address.php | 126 + .../Calculation/LookupRef/ChooseRowsEtc.php | 251 + .../Calculation/LookupRef/ExcelMatch.php | 261 + .../Calculation/LookupRef/Filter.php | 95 + .../Calculation/LookupRef/Formula.php | 44 + .../Calculation/LookupRef/HLookup.php | 130 + .../Calculation/LookupRef/Helpers.php | 75 + .../Calculation/LookupRef/Hstack.php | 48 + .../Calculation/LookupRef/Hyperlink.php | 47 + .../Calculation/LookupRef/Indirect.php | 130 + .../Calculation/LookupRef/Lookup.php | 122 + .../Calculation/LookupRef/LookupBase.php | 67 + .../LookupRef/LookupRefValidations.php | 34 + .../Calculation/LookupRef/Matrix.php | 169 + .../Calculation/LookupRef/Offset.php | 165 + .../LookupRef/RowColumnInformation.php | 210 + .../Calculation/LookupRef/Selection.php | 51 + .../Calculation/LookupRef/Sort.php | 352 ++ .../Calculation/LookupRef/TorowTocol.php | 94 + .../Calculation/LookupRef/Unique.php | 164 + .../Calculation/LookupRef/VLookup.php | 128 + .../Calculation/LookupRef/Vstack.php | 42 + .../Calculation/MathTrig/Absolute.php | 37 + .../Calculation/MathTrig/Angle.php | 63 + .../Calculation/MathTrig/Arabic.php | 97 + .../Calculation/MathTrig/Base.php | 65 + .../Calculation/MathTrig/Ceiling.php | 192 + .../Calculation/MathTrig/Combinations.php | 103 + .../Calculation/MathTrig/Exp.php | 37 + .../Calculation/MathTrig/Factorial.php | 128 + .../Calculation/MathTrig/Floor.php | 224 + .../Calculation/MathTrig/Gcd.php | 65 + .../Calculation/MathTrig/Helpers.php | 111 + .../Calculation/MathTrig/IntClass.php | 40 + .../Calculation/MathTrig/Lcm.php | 119 + .../Calculation/MathTrig/Logarithms.php | 102 + .../Calculation/MathTrig/MatrixFunctions.php | 179 + .../Calculation/MathTrig/Operations.php | 155 + .../Calculation/MathTrig/Random.php | 97 + .../Calculation/MathTrig/Roman.php | 846 +++ .../Calculation/MathTrig/Round.php | 236 + .../Calculation/MathTrig/SeriesSum.php | 53 + .../Calculation/MathTrig/Sign.php | 38 + .../Calculation/MathTrig/Sqrt.php | 64 + .../Calculation/MathTrig/Subtotal.php | 139 + .../Calculation/MathTrig/Sum.php | 115 + .../Calculation/MathTrig/SumSquares.php | 143 + .../Calculation/MathTrig/Trig/Cosecant.php | 64 + .../Calculation/MathTrig/Trig/Cosine.php | 116 + .../Calculation/MathTrig/Trig/Cotangent.php | 118 + .../Calculation/MathTrig/Trig/Secant.php | 64 + .../Calculation/MathTrig/Trig/Sine.php | 116 + .../Calculation/MathTrig/Trig/Tangent.php | 160 + .../Calculation/MathTrig/Trunc.php | 36 + .../Calculation/Statistical/AggregateBase.php | 59 + .../Calculation/Statistical/Averages.php | 272 + .../Calculation/Statistical/Averages/Mean.php | 126 + .../Calculation/Statistical/Conditional.php | 355 ++ .../Calculation/Statistical/Confidence.php | 54 + .../Calculation/Statistical/Counts.php | 96 + .../Calculation/Statistical/Deviations.php | 138 + .../Statistical/Distributions/Beta.php | 279 + .../Statistical/Distributions/Binomial.php | 231 + .../Statistical/Distributions/ChiSquared.php | 332 ++ .../Distributions/DistributionValidations.php | 21 + .../Statistical/Distributions/Exponential.php | 54 + .../Statistical/Distributions/F.php | 63 + .../Statistical/Distributions/Fisher.php | 72 + .../Statistical/Distributions/Gamma.php | 148 + .../Statistical/Distributions/GammaBase.php | 382 ++ .../Distributions/HyperGeometric.php | 75 + .../Statistical/Distributions/LogNormal.php | 139 + .../Distributions/NewtonRaphson.php | 68 + .../Statistical/Distributions/Normal.php | 184 + .../Statistical/Distributions/Poisson.php | 66 + .../Distributions/StandardNormal.php | 158 + .../Statistical/Distributions/StudentT.php | 132 + .../Statistical/Distributions/Weibull.php | 57 + .../Calculation/Statistical/MaxMinBase.php | 17 + .../Calculation/Statistical/Maximum.php | 87 + .../Calculation/Statistical/Minimum.php | 87 + .../Calculation/Statistical/Percentiles.php | 215 + .../Calculation/Statistical/Permutations.php | 100 + .../Calculation/Statistical/Size.php | 101 + .../Statistical/StandardDeviations.php | 89 + .../Calculation/Statistical/Standardize.php | 49 + .../Statistical/StatisticalValidations.php | 36 + .../Calculation/Statistical/Trends.php | 438 ++ .../Calculation/Statistical/VarianceBase.php | 28 + .../Calculation/Statistical/Variances.php | 186 + .../Calculation/TextData/CaseConvert.php | 90 + .../Calculation/TextData/CharacterConvert.php | 93 + .../Calculation/TextData/Concatenate.php | 207 + .../Calculation/TextData/Extract.php | 290 + .../Calculation/TextData/Format.php | 328 ++ .../Calculation/TextData/Helpers.php | 93 + .../Calculation/TextData/Replace.php | 116 + .../Calculation/TextData/Search.php | 97 + .../Calculation/TextData/Text.php | 250 + .../Calculation/TextData/Trim.php | 50 + .../Calculation/Token/Stack.php | 126 + .../Calculation/Web/Service.php | 73 + .../Calculation/locale/Translations.xlsx | Bin 0 -> 140431 bytes .../Calculation/locale/bg/config | 24 + .../Calculation/locale/bg/functions | 409 ++ .../Calculation/locale/cs/config | 20 + .../Calculation/locale/cs/functions | 520 ++ .../Calculation/locale/da/config | 20 + .../Calculation/locale/da/functions | 538 ++ .../Calculation/locale/de/config | 20 + .../Calculation/locale/de/functions | 534 ++ .../Calculation/locale/en/uk/config | 24 + .../Calculation/locale/es/config | 20 + .../Calculation/locale/es/functions | 538 ++ .../Calculation/locale/fi/config | 20 + .../Calculation/locale/fi/functions | 538 ++ .../Calculation/locale/fr/config | 20 + .../Calculation/locale/fr/functions | 525 ++ .../Calculation/locale/hu/config | 20 + .../Calculation/locale/hu/functions | 538 ++ .../Calculation/locale/it/config | 20 + .../Calculation/locale/it/functions | 537 ++ .../Calculation/locale/nb/config | 20 + .../Calculation/locale/nb/functions | 539 ++ .../Calculation/locale/nl/config | 20 + .../Calculation/locale/nl/functions | 537 ++ .../Calculation/locale/pl/config | 20 + .../Calculation/locale/pl/functions | 536 ++ .../Calculation/locale/pt/br/config | 20 + .../Calculation/locale/pt/br/functions | 528 ++ .../Calculation/locale/pt/config | 20 + .../Calculation/locale/pt/functions | 538 ++ .../Calculation/locale/ru/config | 20 + .../Calculation/locale/ru/functions | 555 ++ .../Calculation/locale/sv/config | 20 + .../Calculation/locale/sv/functions | 533 ++ .../Calculation/locale/tr/config | 20 + .../Calculation/locale/tr/functions | 537 ++ .../src/PhpSpreadsheet/Cell/AddressHelper.php | 175 + .../src/PhpSpreadsheet/Cell/AddressRange.php | 27 + .../Cell/AdvancedValueBinder.php | 212 + .../src/PhpSpreadsheet/Cell/Cell.php | 1007 ++++ .../src/PhpSpreadsheet/Cell/CellAddress.php | 149 + .../src/PhpSpreadsheet/Cell/CellRange.php | 134 + .../src/PhpSpreadsheet/Cell/ColumnRange.php | 125 + .../src/PhpSpreadsheet/Cell/Coordinate.php | 753 +++ .../src/PhpSpreadsheet/Cell/DataType.php | 92 + .../PhpSpreadsheet/Cell/DataValidation.php | 399 ++ .../src/PhpSpreadsheet/Cell/DataValidator.php | 143 + .../Cell/DefaultValueBinder.php | 125 + .../src/PhpSpreadsheet/Cell/Hyperlink.php | 96 + .../src/PhpSpreadsheet/Cell/IValueBinder.php | 14 + .../src/PhpSpreadsheet/Cell/IgnoredErrors.php | 76 + .../src/PhpSpreadsheet/Cell/RowRange.php | 94 + .../PhpSpreadsheet/Cell/StringValueBinder.php | 135 + .../PhpSpreadsheet/CellReferenceHelper.php | 178 + .../src/PhpSpreadsheet/Chart/Axis.php | 344 ++ .../src/PhpSpreadsheet/Chart/AxisText.php | 63 + .../src/PhpSpreadsheet/Chart/Chart.php | 785 +++ .../src/PhpSpreadsheet/Chart/ChartColor.php | 161 + .../src/PhpSpreadsheet/Chart/DataSeries.php | 408 ++ .../PhpSpreadsheet/Chart/DataSeriesValues.php | 585 ++ .../src/PhpSpreadsheet/Chart/Exception.php | 9 + .../src/PhpSpreadsheet/Chart/GridLines.php | 13 + .../src/PhpSpreadsheet/Chart/Layout.php | 536 ++ .../src/PhpSpreadsheet/Chart/Legend.php | 174 + .../src/PhpSpreadsheet/Chart/PlotArea.php | 210 + .../src/PhpSpreadsheet/Chart/Properties.php | 933 ++++ .../Chart/Renderer/IRenderer.php | 22 + .../PhpSpreadsheet/Chart/Renderer/JpGraph.php | 40 + .../Chart/Renderer/JpGraphRendererBase.php | 886 +++ .../Chart/Renderer/MtJpGraphRenderer.php | 38 + .../Chart/Renderer/PHP Charting Libraries.txt | 23 + .../src/PhpSpreadsheet/Chart/Title.php | 177 + .../src/PhpSpreadsheet/Chart/TrendLine.php | 217 + .../src/PhpSpreadsheet/Collection/Cells.php | 481 ++ .../Collection/CellsFactory.php | 20 + .../Collection/Memory/SimpleCache1.php | 87 + .../Collection/Memory/SimpleCache3.php | 80 + .../src/PhpSpreadsheet/Comment.php | 358 ++ .../src/PhpSpreadsheet/DefinedName.php | 269 + .../PhpSpreadsheet/Document/Properties.php | 509 ++ .../src/PhpSpreadsheet/Document/Security.php | 140 + .../src/PhpSpreadsheet/Exception.php | 9 + .../src/PhpSpreadsheet/HashTable.php | 175 + .../src/PhpSpreadsheet/Helper/Dimension.php | 105 + .../src/PhpSpreadsheet/Helper/Downloader.php | 102 + .../src/PhpSpreadsheet/Helper/Handler.php | 45 + .../src/PhpSpreadsheet/Helper/Html.php | 871 +++ .../src/PhpSpreadsheet/Helper/Sample.php | 300 + .../src/PhpSpreadsheet/Helper/Size.php | 45 + .../src/PhpSpreadsheet/Helper/TextGrid.php | 178 + .../src/PhpSpreadsheet/IComparable.php | 13 + .../src/PhpSpreadsheet/IOFactory.php | 252 + .../src/PhpSpreadsheet/NamedFormula.php | 45 + .../src/PhpSpreadsheet/NamedRange.php | 56 + .../src/PhpSpreadsheet/Reader/BaseReader.php | 299 + .../src/PhpSpreadsheet/Reader/Csv.php | 762 +++ .../PhpSpreadsheet/Reader/Csv/Delimiter.php | 144 + .../Reader/DefaultReadFilter.php | 18 + .../src/PhpSpreadsheet/Reader/Exception.php | 9 + .../src/PhpSpreadsheet/Reader/Gnumeric.php | 620 +++ .../Reader/Gnumeric/PageSetup.php | 153 + .../Reader/Gnumeric/Properties.php | 159 + .../PhpSpreadsheet/Reader/Gnumeric/Styles.php | 295 + .../src/PhpSpreadsheet/Reader/Html.php | 1291 +++++ .../src/PhpSpreadsheet/Reader/IReadFilter.php | 15 + .../src/PhpSpreadsheet/Reader/IReader.php | 166 + .../src/PhpSpreadsheet/Reader/Ods.php | 1094 ++++ .../PhpSpreadsheet/Reader/Ods/AutoFilter.php | 45 + .../PhpSpreadsheet/Reader/Ods/BaseLoader.php | 21 + .../Reader/Ods/DefinedNames.php | 70 + .../Reader/Ods/FormulaTranslator.php | 127 + .../Reader/Ods/PageSettings.php | 176 + .../PhpSpreadsheet/Reader/Ods/Properties.php | 141 + .../Reader/Security/XmlScanner.php | 117 + .../src/PhpSpreadsheet/Reader/Slk.php | 586 ++ .../src/PhpSpreadsheet/Reader/Xls.php | 4885 +++++++++++++++++ .../src/PhpSpreadsheet/Reader/Xls/Biff5.php | 71 + .../src/PhpSpreadsheet/Reader/Xls/Biff8.php | 371 ++ .../src/PhpSpreadsheet/Reader/Xls/Color.php | 29 + .../PhpSpreadsheet/Reader/Xls/Color/BIFF5.php | 75 + .../PhpSpreadsheet/Reader/Xls/Color/BIFF8.php | 75 + .../Reader/Xls/Color/BuiltIn.php | 31 + .../Reader/Xls/ConditionalFormatting.php | 345 ++ .../Reader/Xls/DataValidationHelper.php | 219 + .../PhpSpreadsheet/Reader/Xls/ErrorCode.php | 24 + .../src/PhpSpreadsheet/Reader/Xls/Escher.php | 607 ++ .../Reader/Xls/ListFunctions.php | 163 + .../Reader/Xls/LoadSpreadsheet.php | 686 +++ .../src/PhpSpreadsheet/Reader/Xls/MD5.php | 198 + .../PhpSpreadsheet/Reader/Xls/Mappings.php | 271 + .../src/PhpSpreadsheet/Reader/Xls/RC4.php | 59 + .../Reader/Xls/Style/Border.php | 33 + .../Reader/Xls/Style/CellAlignment.php | 50 + .../Reader/Xls/Style/CellFont.php | 39 + .../Reader/Xls/Style/FillPattern.php | 42 + .../src/PhpSpreadsheet/Reader/XlsBase.php | 405 ++ .../src/PhpSpreadsheet/Reader/Xlsx.php | 2572 +++++++++ .../PhpSpreadsheet/Reader/Xlsx/AutoFilter.php | 163 + .../Reader/Xlsx/BaseParserClass.php | 21 + .../src/PhpSpreadsheet/Reader/Xlsx/Chart.php | 1605 ++++++ .../Reader/Xlsx/ColumnAndRowAttributes.php | 229 + .../Reader/Xlsx/ConditionalStyles.php | 366 ++ .../Reader/Xlsx/DataValidations.php | 58 + .../PhpSpreadsheet/Reader/Xlsx/Hyperlinks.php | 63 + .../PhpSpreadsheet/Reader/Xlsx/Namespaces.php | 124 + .../PhpSpreadsheet/Reader/Xlsx/PageSetup.php | 181 + .../PhpSpreadsheet/Reader/Xlsx/Properties.php | 98 + .../Reader/Xlsx/SharedFormula.php | 26 + .../Reader/Xlsx/SheetViewOptions.php | 139 + .../PhpSpreadsheet/Reader/Xlsx/SheetViews.php | 199 + .../src/PhpSpreadsheet/Reader/Xlsx/Styles.php | 558 ++ .../Reader/Xlsx/TableReader.php | 137 + .../src/PhpSpreadsheet/Reader/Xlsx/Theme.php | 64 + .../Reader/Xlsx/WorkbookView.php | 142 + .../src/PhpSpreadsheet/Reader/Xml.php | 729 +++ .../Reader/Xml/DataValidations.php | 178 + .../Reader/Xml/PageSettings.php | 134 + .../PhpSpreadsheet/Reader/Xml/Properties.php | 158 + .../src/PhpSpreadsheet/Reader/Xml/Style.php | 115 + .../Reader/Xml/Style/Alignment.php | 63 + .../Reader/Xml/Style/Border.php | 114 + .../PhpSpreadsheet/Reader/Xml/Style/Fill.php | 61 + .../PhpSpreadsheet/Reader/Xml/Style/Font.php | 91 + .../Reader/Xml/Style/NumberFormat.php | 34 + .../Reader/Xml/Style/StyleBase.php | 31 + .../src/PhpSpreadsheet/ReferenceHelper.php | 1283 +++++ .../PhpSpreadsheet/RichText/ITextElement.php | 34 + .../src/PhpSpreadsheet/RichText/RichText.php | 164 + .../src/PhpSpreadsheet/RichText/Run.php | 71 + .../PhpSpreadsheet/RichText/TextElement.php | 69 + .../src/PhpSpreadsheet/Settings.php | 155 + .../src/PhpSpreadsheet/Shared/CodePage.php | 115 + .../src/PhpSpreadsheet/Shared/Date.php | 559 ++ .../src/PhpSpreadsheet/Shared/Drawing.php | 152 + .../src/PhpSpreadsheet/Shared/Escher.php | 48 + .../Shared/Escher/DgContainer.php | 60 + .../Escher/DgContainer/SpgrContainer.php | 76 + .../DgContainer/SpgrContainer/SpContainer.php | 304 + .../Shared/Escher/DggContainer.php | 148 + .../Escher/DggContainer/BstoreContainer.php | 32 + .../DggContainer/BstoreContainer/BSE.php | 81 + .../DggContainer/BstoreContainer/BSE/Blip.php | 50 + .../src/PhpSpreadsheet/Shared/File.php | 195 + .../src/PhpSpreadsheet/Shared/Font.php | 719 +++ .../src/PhpSpreadsheet/Shared/IntOrFloat.php | 17 + .../src/PhpSpreadsheet/Shared/OLE.php | 564 ++ .../Shared/OLE/ChainedBlockStream.php | 197 + .../src/PhpSpreadsheet/Shared/OLE/PPS.php | 211 + .../PhpSpreadsheet/Shared/OLE/PPS/File.php | 62 + .../PhpSpreadsheet/Shared/OLE/PPS/Root.php | 406 ++ .../src/PhpSpreadsheet/Shared/OLERead.php | 314 ++ .../PhpSpreadsheet/Shared/PasswordHasher.php | 106 + .../PhpSpreadsheet/Shared/StringHelper.php | 725 +++ .../src/PhpSpreadsheet/Shared/TimeZone.php | 75 + .../PhpSpreadsheet/Shared/Trend/BestFit.php | 429 ++ .../Shared/Trend/ExponentialBestFit.php | 108 + .../Shared/Trend/LinearBestFit.php | 75 + .../Shared/Trend/LogarithmicBestFit.php | 80 + .../Shared/Trend/PolynomialBestFit.php | 220 + .../Shared/Trend/PowerBestFit.php | 98 + .../src/PhpSpreadsheet/Shared/Trend/Trend.php | 132 + .../src/PhpSpreadsheet/Shared/XMLWriter.php | 96 + .../src/PhpSpreadsheet/Shared/Xls.php | 275 + .../src/PhpSpreadsheet/Spreadsheet.php | 1804 ++++++ .../src/PhpSpreadsheet/Style/Alignment.php | 546 ++ .../src/PhpSpreadsheet/Style/Border.php | 228 + .../src/PhpSpreadsheet/Style/Borders.php | 378 ++ .../src/PhpSpreadsheet/Style/Color.php | 478 ++ .../src/PhpSpreadsheet/Style/Conditional.php | 359 ++ .../ConditionalFormatting/CellMatcher.php | 297 + .../CellStyleAssessor.php | 65 + .../ConditionalColorScale.php | 268 + .../ConditionalDataBar.php | 76 + .../ConditionalDataBarExtension.php | 239 + .../ConditionalFormatValueObject.php | 55 + .../ConditionalFormattingRuleExtension.php | 214 + .../ConditionalFormatting/StyleMerger.php | 90 + .../Style/ConditionalFormatting/Wizard.php | 66 + .../ConditionalFormatting/Wizard/Blanks.php | 95 + .../Wizard/CellValue.php | 187 + .../Wizard/DateValue.php | 109 + .../Wizard/Duplicates.php | 74 + .../ConditionalFormatting/Wizard/Errors.php | 91 + .../Wizard/Expression.php | 70 + .../Wizard/TextValue.php | 164 + .../Wizard/WizardAbstract.php | 183 + .../Wizard/WizardInterface.php | 25 + .../src/PhpSpreadsheet/Style/Fill.php | 326 ++ .../src/PhpSpreadsheet/Style/Font.php | 886 +++ .../src/PhpSpreadsheet/Style/NumberFormat.php | 526 ++ .../Style/NumberFormat/BaseFormatter.php | 25 + .../Style/NumberFormat/DateFormatter.php | 215 + .../Style/NumberFormat/Formatter.php | 224 + .../Style/NumberFormat/FractionFormatter.php | 70 + .../Style/NumberFormat/NumberFormatter.php | 327 ++ .../NumberFormat/PercentageFormatter.php | 48 + .../Style/NumberFormat/Wizard/Accounting.php | 50 + .../Style/NumberFormat/Wizard/Currency.php | 10 + .../NumberFormat/Wizard/CurrencyBase.php | 236 + .../NumberFormat/Wizard/CurrencyNegative.php | 35 + .../Style/NumberFormat/Wizard/Date.php | 125 + .../Style/NumberFormat/Wizard/DateTime.php | 46 + .../NumberFormat/Wizard/DateTimeWizard.php | 51 + .../Style/NumberFormat/Wizard/Duration.php | 153 + .../Style/NumberFormat/Wizard/Locale.php | 39 + .../Style/NumberFormat/Wizard/Number.php | 57 + .../Style/NumberFormat/Wizard/NumberBase.php | 81 + .../Style/NumberFormat/Wizard/Percentage.php | 40 + .../Style/NumberFormat/Wizard/Scientific.php | 33 + .../Style/NumberFormat/Wizard/Time.php | 105 + .../Style/NumberFormat/Wizard/Wizard.php | 8 + .../src/PhpSpreadsheet/Style/Protection.php | 189 + .../src/PhpSpreadsheet/Style/RgbTint.php | 172 + .../src/PhpSpreadsheet/Style/Style.php | 751 +++ .../src/PhpSpreadsheet/Style/Supervisor.php | 166 + .../src/PhpSpreadsheet/Theme.php | 303 + .../PhpSpreadsheet/Worksheet/AutoFilter.php | 1107 ++++ .../Worksheet/AutoFilter/Column.php | 381 ++ .../Worksheet/AutoFilter/Column/Rule.php | 405 ++ .../src/PhpSpreadsheet/Worksheet/AutoFit.php | 49 + .../PhpSpreadsheet/Worksheet/BaseDrawing.php | 575 ++ .../PhpSpreadsheet/Worksheet/CellIterator.php | 85 + .../src/PhpSpreadsheet/Worksheet/Column.php | 110 + .../Worksheet/ColumnCellIterator.php | 198 + .../Worksheet/ColumnDimension.php | 131 + .../Worksheet/ColumnIterator.php | 165 + .../PhpSpreadsheet/Worksheet/Dimension.php | 124 + .../src/PhpSpreadsheet/Worksheet/Drawing.php | 249 + .../Worksheet/Drawing/Shadow.php | 247 + .../PhpSpreadsheet/Worksheet/HeaderFooter.php | 426 ++ .../Worksheet/HeaderFooterDrawing.php | 24 + .../src/PhpSpreadsheet/Worksheet/Iterator.php | 70 + .../Worksheet/MemoryDrawing.php | 338 ++ .../PhpSpreadsheet/Worksheet/PageBreak.php | 57 + .../PhpSpreadsheet/Worksheet/PageMargins.php | 193 + .../PhpSpreadsheet/Worksheet/PageSetup.php | 824 +++ .../src/PhpSpreadsheet/Worksheet/Pane.php | 48 + .../Worksheet/ProtectedRange.php | 45 + .../PhpSpreadsheet/Worksheet/Protection.php | 474 ++ .../src/PhpSpreadsheet/Worksheet/Row.php | 110 + .../Worksheet/RowCellIterator.php | 188 + .../PhpSpreadsheet/Worksheet/RowDimension.php | 110 + .../PhpSpreadsheet/Worksheet/RowIterator.php | 155 + .../PhpSpreadsheet/Worksheet/SheetView.php | 199 + .../src/PhpSpreadsheet/Worksheet/Table.php | 593 ++ .../PhpSpreadsheet/Worksheet/Table/Column.php | 240 + .../Worksheet/Table/TableDxfsStyle.php | 170 + .../Worksheet/Table/TableStyle.php | 254 + .../PhpSpreadsheet/Worksheet/Validations.php | 128 + .../PhpSpreadsheet/Worksheet/Worksheet.php | 3986 ++++++++++++++ .../src/PhpSpreadsheet/Writer/BaseWriter.php | 179 + .../src/PhpSpreadsheet/Writer/Csv.php | 372 ++ .../src/PhpSpreadsheet/Writer/Exception.php | 9 + .../src/PhpSpreadsheet/Writer/Html.php | 2218 ++++++++ .../src/PhpSpreadsheet/Writer/IWriter.php | 87 + .../src/PhpSpreadsheet/Writer/Ods.php | 159 + .../PhpSpreadsheet/Writer/Ods/AutoFilters.php | 57 + .../Writer/Ods/Cell/Comment.php | 45 + .../PhpSpreadsheet/Writer/Ods/Cell/Style.php | 342 ++ .../src/PhpSpreadsheet/Writer/Ods/Content.php | 357 ++ .../src/PhpSpreadsheet/Writer/Ods/Formula.php | 139 + .../src/PhpSpreadsheet/Writer/Ods/Meta.php | 122 + .../src/PhpSpreadsheet/Writer/Ods/MetaInf.php | 60 + .../PhpSpreadsheet/Writer/Ods/Mimetype.php | 16 + .../Writer/Ods/NamedExpressions.php | 138 + .../PhpSpreadsheet/Writer/Ods/Settings.php | 153 + .../src/PhpSpreadsheet/Writer/Ods/Styles.php | 74 + .../PhpSpreadsheet/Writer/Ods/Thumbnails.php | 16 + .../PhpSpreadsheet/Writer/Ods/WriterPart.php | 31 + .../src/PhpSpreadsheet/Writer/Pdf.php | 229 + .../src/PhpSpreadsheet/Writer/Pdf/Dompdf.php | 58 + .../src/PhpSpreadsheet/Writer/Pdf/Mpdf.php | 96 + .../src/PhpSpreadsheet/Writer/Pdf/Tcpdf.php | 98 + .../src/PhpSpreadsheet/Writer/Xls.php | 916 ++++ .../PhpSpreadsheet/Writer/Xls/BIFFwriter.php | 212 + .../Writer/Xls/CellDataValidation.php | 78 + .../Writer/Xls/ConditionalHelper.php | 60 + .../PhpSpreadsheet/Writer/Xls/ErrorCode.php | 28 + .../src/PhpSpreadsheet/Writer/Xls/Escher.php | 507 ++ .../src/PhpSpreadsheet/Writer/Xls/Font.php | 133 + .../src/PhpSpreadsheet/Writer/Xls/Parser.php | 1677 ++++++ .../Writer/Xls/Style/CellAlignment.php | 59 + .../Writer/Xls/Style/CellBorder.php | 40 + .../Writer/Xls/Style/CellFill.php | 46 + .../PhpSpreadsheet/Writer/Xls/Workbook.php | 1166 ++++ .../PhpSpreadsheet/Writer/Xls/Worksheet.php | 3262 +++++++++++ .../src/PhpSpreadsheet/Writer/Xls/Xf.php | 374 ++ .../src/PhpSpreadsheet/Writer/Xlsx.php | 810 +++ .../PhpSpreadsheet/Writer/Xlsx/AutoFilter.php | 125 + .../src/PhpSpreadsheet/Writer/Xlsx/Chart.php | 1937 +++++++ .../PhpSpreadsheet/Writer/Xlsx/Comments.php | 253 + .../Writer/Xlsx/ContentTypes.php | 292 + .../Writer/Xlsx/DefinedNames.php | 243 + .../PhpSpreadsheet/Writer/Xlsx/DocProps.php | 250 + .../PhpSpreadsheet/Writer/Xlsx/Drawing.php | 595 ++ .../Writer/Xlsx/FunctionPrefix.php | 233 + .../PhpSpreadsheet/Writer/Xlsx/Metadata.php | 129 + .../src/PhpSpreadsheet/Writer/Xlsx/Rels.php | 526 ++ .../PhpSpreadsheet/Writer/Xlsx/RelsRibbon.php | 47 + .../PhpSpreadsheet/Writer/Xlsx/RelsVBA.php | 40 + .../Writer/Xlsx/StringTable.php | 344 ++ .../src/PhpSpreadsheet/Writer/Xlsx/Style.php | 702 +++ .../src/PhpSpreadsheet/Writer/Xlsx/Table.php | 115 + .../src/PhpSpreadsheet/Writer/Xlsx/Theme.php | 744 +++ .../PhpSpreadsheet/Writer/Xlsx/Workbook.php | 219 + .../PhpSpreadsheet/Writer/Xlsx/Worksheet.php | 1784 ++++++ .../PhpSpreadsheet/Writer/Xlsx/WriterPart.php | 29 + .../src/PhpSpreadsheet/Writer/ZipStream0.php | 17 + .../src/PhpSpreadsheet/Writer/ZipStream2.php | 27 + .../src/PhpSpreadsheet/Writer/ZipStream3.php | 21 + .../vendor/psr/http-client/CHANGELOG.md | 31 + .../composer/vendor/psr/http-client/LICENSE | 19 + .../composer/vendor/psr/http-client/README.md | 12 + .../vendor/psr/http-client/composer.json | 30 + .../src/ClientExceptionInterface.php | 10 + .../psr/http-client/src/ClientInterface.php | 20 + .../src/NetworkExceptionInterface.php | 24 + .../src/RequestExceptionInterface.php | 24 + .../composer/vendor/psr/http-factory/LICENSE | 21 + .../vendor/psr/http-factory/README.md | 12 + .../vendor/psr/http-factory/composer.json | 38 + .../src/RequestFactoryInterface.php | 18 + .../src/ResponseFactoryInterface.php | 18 + .../src/ServerRequestFactoryInterface.php | 24 + .../src/StreamFactoryInterface.php | 45 + .../src/UploadedFileFactoryInterface.php | 34 + .../http-factory/src/UriFactoryInterface.php | 17 + .../vendor/psr/http-message/CHANGELOG.md | 36 + .../composer/vendor/psr/http-message/LICENSE | 19 + .../vendor/psr/http-message/README.md | 16 + .../vendor/psr/http-message/composer.json | 26 + .../psr/http-message/docs/PSR7-Interfaces.md | 130 + .../psr/http-message/docs/PSR7-Usage.md | 159 + .../psr/http-message/src/MessageInterface.php | 187 + .../psr/http-message/src/RequestInterface.php | 130 + .../http-message/src/ResponseInterface.php | 68 + .../src/ServerRequestInterface.php | 261 + .../psr/http-message/src/StreamInterface.php | 158 + .../src/UploadedFileInterface.php | 123 + .../psr/http-message/src/UriInterface.php | 324 ++ .../vendor/psr/simple-cache/.editorconfig | 12 + .../vendor/psr/simple-cache/LICENSE.md | 21 + .../vendor/psr/simple-cache/README.md | 8 + .../vendor/psr/simple-cache/composer.json | 25 + .../psr/simple-cache/src/CacheException.php | 10 + .../psr/simple-cache/src/CacheInterface.php | 114 + .../src/InvalidArgumentException.php | 13 + vendor/fonts/LexendDeca-Bold.ttf | Bin 0 -> 78764 bytes vendor/fonts/LexendDeca-Medium.ttf | Bin 0 -> 78828 bytes vendor/icons/arrow-down-tag.svg | 1 + vendor/icons/bridge3d.svg | 1 + vendor/icons/check.svg | 1 + vendor/icons/clock-rotate-right.svg | 1 + vendor/icons/cpu.svg | 1 + vendor/icons/data-transfer-both.svg | 1 + vendor/icons/database-solid.svg | 1 + vendor/icons/download.svg | 1 + vendor/icons/ecg-monitoring-icon.svg | 1 + vendor/icons/edit-pencil.svg | 1 + vendor/icons/electric-plug-icon.svg | 1 + vendor/icons/fiber-cable-icon.svg | 1 + vendor/icons/floppy-disk.svg | 1 + vendor/icons/history-icon.svg | 1 + vendor/icons/info-circle.svg | 1 + vendor/icons/load.gif | Bin 0 -> 59186 bytes vendor/icons/map-pin.svg | 1 + vendor/icons/monitoring-system-icon.svg | 1 + vendor/icons/nav-arrow-left.svg | 1 + vendor/icons/network-solid.svg | 1 + vendor/icons/network.svg | 1 + vendor/icons/page-edit.svg | 1 + vendor/icons/page.svg | 1 + vendor/icons/play.svg | 1 + vendor/icons/plug-type-a.svg | 1 + vendor/icons/plug-type-l.svg | 1 + vendor/icons/plus.svg | 1 + .../icons/product-delivery-tracking-icon.svg | 1 + vendor/icons/restart.svg | 1 + vendor/icons/share-line-icon.svg | 1 + vendor/icons/stecker.svg | 74 + vendor/icons/system-shut.svg | 1 + vendor/icons/trash.svg | 1 + vendor/icons/wifi.svg | 1 + vendor/icons/xmark.svg | 1 + vendor/jquery.min.js | 2 + 854 files changed, 164132 insertions(+) create mode 100644 actions/apply-settings.php create mode 100644 actions/bridge-editor.php create mode 100644 actions/connection-test.php create mode 100644 actions/extract-programs.php create mode 100644 actions/inventory.php create mode 100644 actions/program-editor.php create mode 100644 actions/save-settings.php create mode 100644 alt/actions/connection-test.php create mode 100644 alt/index.php create mode 100644 alt/pagecontent/index.php create mode 100644 alt/pagecontent/start.php create mode 100644 alt/python/plug-check.py create mode 100644 alt/script.js create mode 100644 alt/stecker.php create mode 100644 alt/style.css create mode 100644 alt/vendor/DB_InfraGo_logo_red_black_100px_rgb.svg create mode 100644 alt/vendor/fonts/LexendDeca-Bold.ttf create mode 100644 alt/vendor/fonts/LexendDeca-Medium.ttf create mode 100644 alt/vendor/icons/electric-plug-icon.svg create mode 100644 alt/vendor/icons/fiber-cable-icon.svg create mode 100644 alt/vendor/icons/play.svg create mode 100644 alt/vendor/jquery.min.js create mode 100644 db-test/defaults.php create mode 100755 db-test/index.php create mode 100644 db-test/test.db create mode 100644 errorcodes.php create mode 100644 functions.php create mode 100644 index.php create mode 100755 pagecontent/bridge-editor.php create mode 100755 pagecontent/cable-check.php create mode 100755 pagecontent/database-search.php create mode 100755 pagecontent/export.php create mode 100755 pagecontent/index.php create mode 100755 pagecontent/inventory.php create mode 100755 pagecontent/plug-select.php create mode 100755 pagecontent/program-editor.php create mode 100755 pagecontent/selfcheck.php create mode 100755 pagecontent/start-cable.php create mode 100755 pagecontent/start.php create mode 100755 pagecontent/stecker.php create mode 100755 pagecontent/system.php create mode 100755 pagecontent/temp.json create mode 100644 python/.plug-check.py.swp create mode 100644 python/.selfcheck.py.swp create mode 100644 python/cable-check.py create mode 100644 python/observer-full.py create mode 100644 python/observer.py create mode 100644 python/plug-check.py create mode 100644 python/plug-check_external-pulldown.py create mode 100644 python/plug-check_internal-pullup.py create mode 100644 python/selfcheck.py create mode 100644 python/test.py create mode 100644 reset.php create mode 100644 script.js create mode 100644 settings.json create mode 100644 stecker.php create mode 100644 style3.css create mode 100644 temp.csv create mode 100644 temp.json create mode 100644 temp.xlsx create mode 100644 vendor/DB_InfraGo_logo_red_black_100px_rgb.svg create mode 100644 vendor/composer/composer.json create mode 100644 vendor/composer/composer.lock create mode 100755 vendor/composer/composer.phar create mode 100644 vendor/composer/vendor/autoload.php create mode 100644 vendor/composer/vendor/composer/ClassLoader.php create mode 100644 vendor/composer/vendor/composer/InstalledVersions.php create mode 100644 vendor/composer/vendor/composer/LICENSE create mode 100644 vendor/composer/vendor/composer/autoload_classmap.php create mode 100644 vendor/composer/vendor/composer/autoload_namespaces.php create mode 100644 vendor/composer/vendor/composer/autoload_psr4.php create mode 100644 vendor/composer/vendor/composer/autoload_real.php create mode 100644 vendor/composer/vendor/composer/autoload_static.php create mode 100644 vendor/composer/vendor/composer/installed.json create mode 100644 vendor/composer/vendor/composer/installed.php create mode 100644 vendor/composer/vendor/composer/pcre/LICENSE create mode 100644 vendor/composer/vendor/composer/pcre/README.md create mode 100644 vendor/composer/vendor/composer/pcre/composer.json create mode 100644 vendor/composer/vendor/composer/pcre/extension.neon create mode 100644 vendor/composer/vendor/composer/pcre/src/MatchAllResult.php create mode 100644 vendor/composer/vendor/composer/pcre/src/MatchAllStrictGroupsResult.php create mode 100644 vendor/composer/vendor/composer/pcre/src/MatchAllWithOffsetsResult.php create mode 100644 vendor/composer/vendor/composer/pcre/src/MatchResult.php create mode 100644 vendor/composer/vendor/composer/pcre/src/MatchStrictGroupsResult.php create mode 100644 vendor/composer/vendor/composer/pcre/src/MatchWithOffsetsResult.php create mode 100644 vendor/composer/vendor/composer/pcre/src/PHPStan/InvalidRegexPatternRule.php create mode 100644 vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchFlags.php create mode 100644 vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchParameterOutTypeExtension.php create mode 100644 vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchTypeSpecifyingExtension.php create mode 100644 vendor/composer/vendor/composer/pcre/src/PHPStan/PregReplaceCallbackClosureTypeExtension.php create mode 100644 vendor/composer/vendor/composer/pcre/src/PHPStan/UnsafeStrictGroupsCallRule.php create mode 100644 vendor/composer/vendor/composer/pcre/src/PcreException.php create mode 100644 vendor/composer/vendor/composer/pcre/src/Preg.php create mode 100644 vendor/composer/vendor/composer/pcre/src/Regex.php create mode 100644 vendor/composer/vendor/composer/pcre/src/ReplaceResult.php create mode 100644 vendor/composer/vendor/composer/pcre/src/UnexpectedNullMatchException.php create mode 100644 vendor/composer/vendor/composer/platform_check.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.editorconfig create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.gitattributes create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/CODE_OF_CONDUCT.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/CONTRIBUTING.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/FUNDING.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/BUG.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/FEATURE.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FAILING_TEST.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FIX.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/IMPROVEMENT.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/NEW_FEATURE.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/SECURITY.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/dependabot.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/scorecard.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/branch_main.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_dependabot.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_docs.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_release.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_test.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/pr.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/scorecard.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/tag-beta.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/tag-stable.yml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.gitignore create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.phive/phars.xml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.php-cs-fixer.dist.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.phpdoc/template/base.html.twig create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/.tool-versions create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/LICENSE create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/README.md create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/composer.json create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/ContentLength.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/FlySystem.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/Nginx.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/Options.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/PSR7Streams.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/StreamOutput.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/Symfony.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/Varnish.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/guides/index.rst create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/phpdoc.dist.xml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/phpunit.xml.dist create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/psalm.xml create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/CentralDirectoryFileHeader.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/CompressionMethod.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/DataDescriptor.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/EndOfCentralDirectory.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/DosTimeOverflowException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/FileNotFoundException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/FileNotReadableException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/FileSizeIncorrectException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/OverflowException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/ResourceActionException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/SimulationFileUnknownException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/StreamNotReadableException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Exception/StreamNotSeekableException.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/File.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/GeneralPurposeBitFlag.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/LocalFileHeader.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/OperationMode.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/PackField.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Time.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Version.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Zip64/DataDescriptor.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Zip64/EndOfCentralDirectory.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Zip64/EndOfCentralDirectoryLocator.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Zip64/ExtendedInformationExtraField.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/ZipStream.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/src/Zs/ExtendedInformationExtraField.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/Assertions.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/CentralDirectoryFileHeaderTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/DataDescriptorTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/EndOfCentralDirectoryTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/EndlessCycleStream.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/FaultInjectionResource.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/LocalFileHeaderTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/PackFieldTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/ResourceStream.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/Tempfile.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/TimeTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/Util.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/Zip64/DataDescriptorTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryLocatorTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/Zip64/EndOfCentralDirectoryTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/Zip64/ExtendedInformationExtraFieldTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/ZipStreamTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/Zs/ExtendedInformationExtraFieldTest.php create mode 100644 vendor/composer/vendor/maennchen/zipstream-php/test/bootstrap.php create mode 100644 vendor/composer/vendor/markbaker/complex/.github/workflows/main.yml create mode 100644 vendor/composer/vendor/markbaker/complex/README.md create mode 100644 vendor/composer/vendor/markbaker/complex/classes/src/Complex.php create mode 100644 vendor/composer/vendor/markbaker/complex/classes/src/Exception.php create mode 100644 vendor/composer/vendor/markbaker/complex/classes/src/Functions.php create mode 100644 vendor/composer/vendor/markbaker/complex/classes/src/Operations.php create mode 100644 vendor/composer/vendor/markbaker/complex/composer.json create mode 100644 vendor/composer/vendor/markbaker/complex/examples/complexTest.php create mode 100644 vendor/composer/vendor/markbaker/complex/examples/testFunctions.php create mode 100644 vendor/composer/vendor/markbaker/complex/examples/testOperations.php create mode 100644 vendor/composer/vendor/markbaker/complex/license.md create mode 100644 vendor/composer/vendor/markbaker/matrix/.github/workflows/main.yaml create mode 100644 vendor/composer/vendor/markbaker/matrix/README.md create mode 100644 vendor/composer/vendor/markbaker/matrix/buildPhar.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Builder.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Decomposition/Decomposition.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Decomposition/LU.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Decomposition/QR.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Div0Exception.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Exception.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Functions.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Matrix.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Operations.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Operators/Addition.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Operators/DirectSum.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Operators/Division.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Operators/Multiplication.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Operators/Operator.php create mode 100644 vendor/composer/vendor/markbaker/matrix/classes/src/Operators/Subtraction.php create mode 100644 vendor/composer/vendor/markbaker/matrix/composer.json create mode 100644 vendor/composer/vendor/markbaker/matrix/examples/test.php create mode 100644 vendor/composer/vendor/markbaker/matrix/infection.json.dist create mode 100644 vendor/composer/vendor/markbaker/matrix/license.md create mode 100644 vendor/composer/vendor/markbaker/matrix/phpstan.neon create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/CHANGELOG.md create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/CONTRIBUTING.md create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/LICENSE create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/README.md create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/composer.json create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/ArrayEnabled.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/BinaryComparison.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Calculation.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/CalculationBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/CalculationLocale.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Category.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DAverage.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DCount.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DCountA.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DGet.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DMax.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DMin.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DProduct.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DStDev.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DStDevP.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DSum.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DVar.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DVarP.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Database/DatabaseAbstract.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Constants.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Current.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Date.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/DateParts.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/DateValue.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Days.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Days360.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Difference.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Helpers.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Month.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/NetworkDays.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Time.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/TimeParts.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/TimeValue.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/Week.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/WorkDay.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/DateTimeExcel/YearFrac.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engine/ArrayArgumentHelper.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engine/ArrayArgumentProcessor.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engine/BranchPruner.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engine/CyclicReferenceStack.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engine/FormattedNumber.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engine/Logger.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engine/Operands/Operand.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engine/Operands/StructuredReference.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/BesselI.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/BesselJ.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/BesselK.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/BesselY.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/BitWise.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/Compare.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/Complex.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ComplexFunctions.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ComplexOperations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/Constants.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ConvertBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ConvertBinary.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ConvertDecimal.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ConvertHex.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ConvertOctal.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ConvertUOM.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/EngineeringValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/Erf.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering/ErfC.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Exception.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/ExceptionHandler.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Amortization.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/CashFlowValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/Constant/Periodic.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/Constant/Periodic/Cumulative.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/Constant/Periodic/Interest.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/Constant/Periodic/InterestAndPrincipal.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/Constant/Periodic/Payments.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/Single.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/Variable/NonPeriodic.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/CashFlow/Variable/Periodic.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Constants.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Coupons.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Depreciation.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Dollar.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/FinancialValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Helpers.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/InterestRate.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Securities/AccruedInterest.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Securities/Price.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Securities/Rates.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Securities/SecurityValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/Securities/Yields.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Financial/TreasuryBill.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/FormulaParser.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/FormulaToken.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/FunctionArray.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Functions.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Information/ErrorValue.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Information/ExcelError.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Information/Value.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Internal/ExcelArrayPseudoFunctions.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Internal/MakeMatrix.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Internal/WildcardMatch.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Logical/Boolean.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Logical/Conditional.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Logical/Operations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Address.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/ChooseRowsEtc.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/ExcelMatch.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Filter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Formula.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/HLookup.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Helpers.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Hstack.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Hyperlink.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Indirect.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Lookup.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/LookupBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/LookupRefValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Matrix.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Offset.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/RowColumnInformation.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Selection.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Sort.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/TorowTocol.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Unique.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/VLookup.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/LookupRef/Vstack.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Absolute.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Angle.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Arabic.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Base.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Ceiling.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Combinations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Exp.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Factorial.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Floor.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Gcd.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Helpers.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/IntClass.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Lcm.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Logarithms.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/MatrixFunctions.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Operations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Random.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Roman.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Round.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/SeriesSum.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Sign.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Sqrt.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Subtotal.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Sum.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/SumSquares.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Trig/Cosecant.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Trig/Cosine.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Trig/Cotangent.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Trig/Secant.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Trig/Sine.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Trig/Tangent.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/MathTrig/Trunc.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/AggregateBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Averages.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Averages/Mean.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Conditional.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Confidence.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Counts.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Deviations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/Beta.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/Binomial.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/ChiSquared.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/DistributionValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/Exponential.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/F.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/Fisher.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/Gamma.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/GammaBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/HyperGeometric.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/LogNormal.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/NewtonRaphson.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/Normal.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/Poisson.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/StandardNormal.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/StudentT.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Distributions/Weibull.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/MaxMinBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Maximum.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Minimum.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Percentiles.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Permutations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Size.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/StandardDeviations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Standardize.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/StatisticalValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Trends.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/VarianceBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical/Variances.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/CaseConvert.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/CharacterConvert.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/Concatenate.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/Extract.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/Format.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/Helpers.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/Replace.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/Search.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/Text.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/TextData/Trim.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Token/Stack.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Web/Service.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/Translations.xlsx create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/bg/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/bg/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/cs/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/cs/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/da/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/da/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/de/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/de/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/en/uk/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/es/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/es/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/fi/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/fi/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/fr/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/fr/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/hu/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/hu/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/it/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/it/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/nb/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/nb/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/nl/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/nl/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/pl/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/pl/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/pt/br/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/pt/br/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/pt/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/pt/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/ru/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/ru/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/sv/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/sv/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/tr/config create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/locale/tr/functions create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/AddressHelper.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/AddressRange.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/AdvancedValueBinder.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/Cell.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/CellAddress.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/CellRange.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/ColumnRange.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/Coordinate.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/DataType.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/DataValidation.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/DataValidator.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/DefaultValueBinder.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/Hyperlink.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/IValueBinder.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/IgnoredErrors.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/RowRange.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Cell/StringValueBinder.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/CellReferenceHelper.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Axis.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/AxisText.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Chart.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/ChartColor.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/DataSeries.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/DataSeriesValues.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Exception.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/GridLines.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Layout.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Legend.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/PlotArea.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Properties.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Renderer/IRenderer.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Renderer/JpGraph.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Renderer/JpGraphRendererBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Renderer/MtJpGraphRenderer.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Renderer/PHP Charting Libraries.txt create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/Title.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Chart/TrendLine.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Collection/Cells.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Collection/CellsFactory.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Collection/Memory/SimpleCache1.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Collection/Memory/SimpleCache3.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Comment.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/DefinedName.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Document/Properties.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Document/Security.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Exception.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/HashTable.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Helper/Dimension.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Helper/Downloader.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Helper/Handler.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Helper/Html.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Helper/Sample.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Helper/Size.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Helper/TextGrid.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/IComparable.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/IOFactory.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/NamedFormula.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/NamedRange.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/BaseReader.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Csv.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Csv/Delimiter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/DefaultReadFilter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Exception.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Gnumeric.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Gnumeric/PageSetup.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Gnumeric/Properties.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Gnumeric/Styles.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Html.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/IReadFilter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/IReader.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Ods.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Ods/AutoFilter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Ods/BaseLoader.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Ods/DefinedNames.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Ods/FormulaTranslator.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Ods/PageSettings.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Ods/Properties.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Security/XmlScanner.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Slk.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Biff5.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Biff8.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Color.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Color/BIFF5.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Color/BIFF8.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Color/BuiltIn.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/ConditionalFormatting.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/DataValidationHelper.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/ErrorCode.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Escher.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/ListFunctions.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/LoadSpreadsheet.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/MD5.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Mappings.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/RC4.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Style/Border.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Style/CellAlignment.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Style/CellFont.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xls/Style/FillPattern.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/XlsBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/AutoFilter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/BaseParserClass.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/Chart.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/ColumnAndRowAttributes.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/ConditionalStyles.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/DataValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/Hyperlinks.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/Namespaces.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/PageSetup.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/Properties.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/SharedFormula.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/SheetViewOptions.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/SheetViews.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/Styles.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/TableReader.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/Theme.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xlsx/WorkbookView.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/DataValidations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/PageSettings.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/Properties.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/Style.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/Style/Alignment.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/Style/Border.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/Style/Fill.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/Style/Font.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/Style/NumberFormat.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Xml/Style/StyleBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/ReferenceHelper.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/RichText/ITextElement.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/RichText/RichText.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/RichText/Run.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/RichText/TextElement.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Settings.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/CodePage.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Date.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Drawing.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Escher.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Escher/DgContainer.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Escher/DgContainer/SpgrContainer.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Escher/DgContainer/SpgrContainer/SpContainer.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Escher/DggContainer.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Escher/DggContainer/BstoreContainer.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Escher/DggContainer/BstoreContainer/BSE.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Escher/DggContainer/BstoreContainer/BSE/Blip.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/File.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Font.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/IntOrFloat.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/OLE.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/OLE/ChainedBlockStream.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/OLE/PPS.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/OLE/PPS/File.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/OLE/PPS/Root.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/OLERead.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/PasswordHasher.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/StringHelper.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/TimeZone.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Trend/BestFit.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Trend/ExponentialBestFit.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Trend/LinearBestFit.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Trend/LogarithmicBestFit.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Trend/PolynomialBestFit.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Trend/PowerBestFit.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Trend/Trend.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/XMLWriter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/Xls.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Spreadsheet.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Alignment.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Border.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Borders.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Color.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Conditional.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/CellMatcher.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/CellStyleAssessor.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/ConditionalColorScale.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/ConditionalDataBar.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/ConditionalDataBarExtension.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/ConditionalFormatValueObject.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/ConditionalFormattingRuleExtension.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/StyleMerger.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/Blanks.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/CellValue.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/DateValue.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/Duplicates.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/Errors.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/Expression.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/TextValue.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/WizardAbstract.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/ConditionalFormatting/Wizard/WizardInterface.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Fill.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Font.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/BaseFormatter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/DateFormatter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Formatter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/FractionFormatter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/NumberFormatter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/PercentageFormatter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Accounting.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Currency.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/CurrencyBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/CurrencyNegative.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Date.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/DateTime.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/DateTimeWizard.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Duration.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Locale.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Number.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/NumberBase.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Percentage.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Scientific.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Time.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/NumberFormat/Wizard/Wizard.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Protection.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/RgbTint.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Style.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Style/Supervisor.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Theme.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/AutoFilter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/AutoFilter/Column.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/AutoFilter/Column/Rule.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/AutoFit.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/BaseDrawing.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/CellIterator.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Column.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/ColumnCellIterator.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/ColumnDimension.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/ColumnIterator.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Dimension.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Drawing.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Drawing/Shadow.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/HeaderFooter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/HeaderFooterDrawing.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Iterator.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/MemoryDrawing.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/PageBreak.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/PageMargins.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/PageSetup.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Pane.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/ProtectedRange.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Protection.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Row.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/RowCellIterator.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/RowDimension.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/RowIterator.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/SheetView.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Table.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Table/Column.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Table/TableDxfsStyle.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Table/TableStyle.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Validations.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Worksheet/Worksheet.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/BaseWriter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Csv.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Exception.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Html.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/IWriter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/AutoFilters.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Cell/Comment.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Cell/Style.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Content.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Formula.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Meta.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/MetaInf.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Mimetype.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/NamedExpressions.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Settings.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Styles.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/Thumbnails.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Ods/WriterPart.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Pdf.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Pdf/Dompdf.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Pdf/Mpdf.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Pdf/Tcpdf.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/BIFFwriter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/CellDataValidation.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/ConditionalHelper.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/ErrorCode.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Escher.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Font.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Parser.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Style/CellAlignment.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Style/CellBorder.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Style/CellFill.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Workbook.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Worksheet.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xls/Xf.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/AutoFilter.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Chart.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Comments.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/ContentTypes.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/DefinedNames.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/DocProps.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Drawing.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/FunctionPrefix.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Metadata.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Rels.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/RelsRibbon.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/RelsVBA.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/StringTable.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Style.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Table.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Theme.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Workbook.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/Worksheet.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/WriterPart.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/ZipStream0.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/ZipStream2.php create mode 100644 vendor/composer/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/ZipStream3.php create mode 100644 vendor/composer/vendor/psr/http-client/CHANGELOG.md create mode 100644 vendor/composer/vendor/psr/http-client/LICENSE create mode 100644 vendor/composer/vendor/psr/http-client/README.md create mode 100644 vendor/composer/vendor/psr/http-client/composer.json create mode 100644 vendor/composer/vendor/psr/http-client/src/ClientExceptionInterface.php create mode 100644 vendor/composer/vendor/psr/http-client/src/ClientInterface.php create mode 100644 vendor/composer/vendor/psr/http-client/src/NetworkExceptionInterface.php create mode 100644 vendor/composer/vendor/psr/http-client/src/RequestExceptionInterface.php create mode 100644 vendor/composer/vendor/psr/http-factory/LICENSE create mode 100644 vendor/composer/vendor/psr/http-factory/README.md create mode 100644 vendor/composer/vendor/psr/http-factory/composer.json create mode 100644 vendor/composer/vendor/psr/http-factory/src/RequestFactoryInterface.php create mode 100644 vendor/composer/vendor/psr/http-factory/src/ResponseFactoryInterface.php create mode 100644 vendor/composer/vendor/psr/http-factory/src/ServerRequestFactoryInterface.php create mode 100644 vendor/composer/vendor/psr/http-factory/src/StreamFactoryInterface.php create mode 100644 vendor/composer/vendor/psr/http-factory/src/UploadedFileFactoryInterface.php create mode 100644 vendor/composer/vendor/psr/http-factory/src/UriFactoryInterface.php create mode 100644 vendor/composer/vendor/psr/http-message/CHANGELOG.md create mode 100644 vendor/composer/vendor/psr/http-message/LICENSE create mode 100644 vendor/composer/vendor/psr/http-message/README.md create mode 100644 vendor/composer/vendor/psr/http-message/composer.json create mode 100644 vendor/composer/vendor/psr/http-message/docs/PSR7-Interfaces.md create mode 100644 vendor/composer/vendor/psr/http-message/docs/PSR7-Usage.md create mode 100644 vendor/composer/vendor/psr/http-message/src/MessageInterface.php create mode 100644 vendor/composer/vendor/psr/http-message/src/RequestInterface.php create mode 100644 vendor/composer/vendor/psr/http-message/src/ResponseInterface.php create mode 100644 vendor/composer/vendor/psr/http-message/src/ServerRequestInterface.php create mode 100644 vendor/composer/vendor/psr/http-message/src/StreamInterface.php create mode 100644 vendor/composer/vendor/psr/http-message/src/UploadedFileInterface.php create mode 100644 vendor/composer/vendor/psr/http-message/src/UriInterface.php create mode 100644 vendor/composer/vendor/psr/simple-cache/.editorconfig create mode 100644 vendor/composer/vendor/psr/simple-cache/LICENSE.md create mode 100644 vendor/composer/vendor/psr/simple-cache/README.md create mode 100644 vendor/composer/vendor/psr/simple-cache/composer.json create mode 100644 vendor/composer/vendor/psr/simple-cache/src/CacheException.php create mode 100644 vendor/composer/vendor/psr/simple-cache/src/CacheInterface.php create mode 100644 vendor/composer/vendor/psr/simple-cache/src/InvalidArgumentException.php create mode 100644 vendor/fonts/LexendDeca-Bold.ttf create mode 100644 vendor/fonts/LexendDeca-Medium.ttf create mode 100644 vendor/icons/arrow-down-tag.svg create mode 100644 vendor/icons/bridge3d.svg create mode 100644 vendor/icons/check.svg create mode 100644 vendor/icons/clock-rotate-right.svg create mode 100644 vendor/icons/cpu.svg create mode 100644 vendor/icons/data-transfer-both.svg create mode 100644 vendor/icons/database-solid.svg create mode 100644 vendor/icons/download.svg create mode 100644 vendor/icons/ecg-monitoring-icon.svg create mode 100644 vendor/icons/edit-pencil.svg create mode 100644 vendor/icons/electric-plug-icon.svg create mode 100644 vendor/icons/fiber-cable-icon.svg create mode 100644 vendor/icons/floppy-disk.svg create mode 100644 vendor/icons/history-icon.svg create mode 100644 vendor/icons/info-circle.svg create mode 100644 vendor/icons/load.gif create mode 100644 vendor/icons/map-pin.svg create mode 100644 vendor/icons/monitoring-system-icon.svg create mode 100644 vendor/icons/nav-arrow-left.svg create mode 100644 vendor/icons/network-solid.svg create mode 100644 vendor/icons/network.svg create mode 100644 vendor/icons/page-edit.svg create mode 100644 vendor/icons/page.svg create mode 100644 vendor/icons/play.svg create mode 100644 vendor/icons/plug-type-a.svg create mode 100644 vendor/icons/plug-type-l.svg create mode 100644 vendor/icons/plus.svg create mode 100644 vendor/icons/product-delivery-tracking-icon.svg create mode 100644 vendor/icons/restart.svg create mode 100644 vendor/icons/share-line-icon.svg create mode 100644 vendor/icons/stecker.svg create mode 100644 vendor/icons/system-shut.svg create mode 100644 vendor/icons/trash.svg create mode 100644 vendor/icons/wifi.svg create mode 100644 vendor/icons/xmark.svg create mode 100644 vendor/jquery.min.js diff --git a/actions/apply-settings.php b/actions/apply-settings.php new file mode 100644 index 0000000..b88206f --- /dev/null +++ b/actions/apply-settings.php @@ -0,0 +1,22 @@ + diff --git a/actions/bridge-editor.php b/actions/bridge-editor.php new file mode 100644 index 0000000..3cb07a1 --- /dev/null +++ b/actions/bridge-editor.php @@ -0,0 +1,131 @@ +exec(" DELETE FROM nodes WHERE required_by = '" . $bridge_name . "' and plug_id = '" . $plug . "'; "); + + foreach($nodes as $node) { + $from = $node[0]; + $to = $node[1]; + $db->exec(" INSERT INTO nodes (required_by, node_from, node_to, plug_id) VALUES ('" . $bridge_name . "', '" . $from . "', '" . $to . "', '" . $plug . "'); "); + } + + $message[0] = true; + $message[1] = "Die Änderungen für die Brücke $bridgeName wurden gespeichert!"; + $message = json_encode($message); + print ($message); + die(); + + + break; + + case "add": + + // Eingabedaten + $bridgeName = $bridgeName; + $nodes = json_decode($meta, true); + $name = $nodes["name"]; + $nodes = $nodes["pins"]; + + cleanPinsArray($nodes); // Dies stellt sicher, dass Javscript valide Werte bringt und die Datenbank nicht verunreinigt wird. + + // sicherstellen, dass Werte gesetzt sind + if (empty($nodes) || empty($name)) + { + $message[0] = false; + $message[1] = "Es wurden keine Änderungen gespeichert, da Parameter fehlten."; + $message = json_encode($message); + print ($message); + die(); + } + + + + $result = $db->query("SELECT COUNT(*) as anzahl FROM bridges WHERE id = '" . $name . "';"); + $row = $result->fetchArray(SQLITE3_ASSOC); + $number = $row['anzahl']; + + if($number > 0) { + $message[0] = false; + $message[1] = "Es gibt bereits eine Brücke, die " . $name . " heißt. Bitte einen anderen Namen wählen oder die andere Brücke " . $name . " löschen/bearbeiten. Stellen Sie zudem sicher, dass Sie den korrekten Steckertypen verwenden."; + $message = json_encode($message); + print ($message); + die(); + } + + $db->exec(" INSERT INTO bridges (plug_id, id) VALUES (" . $plug . ", '" . $name . "'); "); + + foreach($nodes as $node) { + $from = $node[0]; + $to = $node[1]; + $db->exec(" INSERT INTO nodes (required_by, node_from, node_to, plug_id) VALUES ('" . $name . "', '" . $from . "', '" . $to . "', '" . $plug . "'); "); + } + + $message[0] = true; + $message[1] = "Die Brücke $name wurde angelegt!"; + $message = json_encode($message); + print ($message); + die(); + break; + + case "remove": + + $bridge_name = $meta; + + $db->exec(" DELETE FROM nodes WHERE required_by = '" . $bridge_name . "' and plug_id = '" . $plug . "'; "); + $db->exec(" DELETE FROM bridges WHERE id = '" . $bridge_name . "' and plug_id = '" . $plug . "'; "); + + $message[0] = true; + $message[1] = "Die Brücke $bridge_name wurde nun gelöscht."; + $message = json_encode($message); + print ($message); + die(); + + break; + +} + diff --git a/actions/connection-test.php b/actions/connection-test.php new file mode 100644 index 0000000..8736d2f --- /dev/null +++ b/actions/connection-test.php @@ -0,0 +1,5 @@ + diff --git a/actions/extract-programs.php b/actions/extract-programs.php new file mode 100644 index 0000000..66a325c --- /dev/null +++ b/actions/extract-programs.php @@ -0,0 +1,1182 @@ + $item['bridges'], + // Die Program-ID in ein Array einzelner Zeichen aufteilen + "programID" => str_split($item['id']), + "programDescription" => $item['descr'] + ]; + + // 4. Die neue Struktur in einen JSON-String umwandeln und in einer Variable speichern + // JSON_UNESCAPED_UNICODE sorgt für die korrekte Darstellung von Umlauten. + $formattedJson = json_encode($outputData, JSON_UNESCAPED_UNICODE); + + $meta = $formattedJson; + + + echo $meta; + + + + +$meta = json_decode($meta, true); +$bridges = $meta["bridges"]; +$programID = $meta["programID"]; +$programDescription = $meta["programDescription"]; + + + + +$result = $db->query("SELECT COUNT(*) as anzahl FROM program_id_bits WHERE +position = 0 AND value = '" . $programID[0] . "' AND +position = 1 AND value = '" . $programID[1] . "' AND +position = 2 AND value = '" . $programID[2] . "' AND +position = 3 AND value = '" . $programID[3] . "' AND +position = 4 AND value = '" . $programID[4] . "' +;"); + +$row = $result->fetchArray(SQLITE3_ASSOC); +$number = $row['anzahl']; + +if($number > 0) { + $message[0] = false; + $message[1] = "Diese Programm-ID existiert unter dem aktuell gewählten Stecker bereits. Bitte anderen Namen wählen oder den Stecker wechseln."; + $message = json_encode($message); + print($message); + die(); +} + +$db->exec(" INSERT INTO programs (plug_id, program_description) VALUES ('" . $plug . "', '" . $programDescription . "'); "); + +$program_id = $db->lastInsertRowID(); +foreach($bridges as $bridge) { + $db->exec(" INSERT INTO program_bridge_relation (program_id, bridge_id, plug_id) VALUES ('" . $program_id . "', '" . $bridge . "', '" . $plug . "'); "); +} + +for($i=0; $i<=4; $i++) { + $db->exec(" INSERT INTO program_id_bits (value, position, program_id) VALUES ('" . $programID[$i] . "', '" . $i . "', '" . $program_id . "'); "); +} + + +} + + + diff --git a/actions/inventory.php b/actions/inventory.php new file mode 100644 index 0000000..580d246 --- /dev/null +++ b/actions/inventory.php @@ -0,0 +1,138 @@ +exec(" DELETE FROM measurement_nodes WHERE required_by = '" . $meta . "'; "); + $db->exec(" DELETE FROM measurement_program_id_bits WHERE measurement_id = '" . $meta . "'; "); + $db->exec(" DELETE FROM measurements WHERE id = '" . $meta . "'; "); + + + $message[0] = true; + $message[1] = "Die Messung wurde gelöscht."; + $message = json_encode($message); + print($message); + die(); + + + + break; + + + case "add": + + $meta = json_decode($meta, true); + + if(empty($meta["programCache"]) || empty($_SESSION["bridges"]) || empty($meta['name'])) { + $message[0] = false; + $message[1] = "Es gab einen Fehler beim Speichern!"; + $message = json_encode($message); + print($message); + die(); + } + + + $db->exec("INSERT INTO places (plug_id, name) VALUES (" . $plug . ", '" . $meta["name"]. "'); "); + + $newdata["plugID"] = $plug; + $newdata["place"] = $placeID; + $newdata["programID"] = $meta["programCache"]; + $bridges_original = $_SESSION["bridges"]; + $newdata["special"] = $meta["special"]; + $bridges_hidden = json_decode(urldecode($meta["bridges-hidden"])); + $newdata["timestamp"] = time(); + + + + // $bridges_result = $bridges_original - $bridges_hidden + $bridges_original; + $bridges_hidden; + + + + // Hilfsfunktion: vergleicht zwei Arrays inhaltlich, unabhängig von String/Int + function arrays_are_equal($a, $b) { + return ((string)$a[0] === (string)$b[0]) && ((string)$a[1] === (string)$b[1]); + } + + // Ergebnisarray initialisieren + $bridges_result = []; + + // Für jedes Originalelement prüfen, ob es in hidden vorkommt + foreach ($bridges_original as $orig) { + $found = false; + foreach ($bridges_hidden as $hidden) { + if (arrays_are_equal($orig, $hidden)) { + $found = true; + break; + } + } + if (!$found) { + $bridges_result[] = $orig; + } + } + + + $newdata["bridges"] = $bridges_result; + + + + + $db->exec("INSERT INTO measurements (place_name, comment, timestamp) VALUES ('" . $meta["name"] . "', '" . $meta["special"] . "', " . time() . ");"); + + $measurement_id = $db->lastInsertRowID(); + + $i = 0; + foreach($meta["programCache"] as $program_id_char) { + $db->exec("INSERT INTO measurement_program_id_bits (value, position, measurement_id) VALUES ('" . $program_id_char . "', '" . $i. "', '" . $measurement_id . "'); "); + $i++; + } + + foreach($newdata["bridges"] as $bridge) { + $db->exec("INSERT INTO measurement_nodes (required_by, node_from, node_to) VALUES (" . $measurement_id . ", '" . $bridge[0]. "', '" . $bridge[1] . "'); "); + } + + + + $message[0] = true; + $message[1] = "Die Messung wurde am Ort '" . $meta['name'] . "' gespeichert!"; + $message = json_encode($message); + print($message); + die(); + break; +} diff --git a/actions/program-editor.php b/actions/program-editor.php new file mode 100644 index 0000000..1cfc71b --- /dev/null +++ b/actions/program-editor.php @@ -0,0 +1,140 @@ +query("SELECT COUNT(*) as anzahl FROM program_id_bits WHERE + position = 0 AND value = '" . $programID[0] . "' AND + position = 1 AND value = '" . $programID[1] . "' AND + position = 2 AND value = '" . $programID[2] . "' AND + position = 3 AND value = '" . $programID[3] . "' AND + position = 4 AND value = '" . $programID[4] . "' + ;"); + + $row = $result->fetchArray(SQLITE3_ASSOC); + $number = $row['anzahl']; + + if($number > 0) { + $message[0] = false; + $message[1] = "Diese Programm-ID existiert unter dem aktuell gewählten Stecker bereits. Bitte anderen Namen wählen oder den Stecker wechseln."; + $message = json_encode($message); + print($message); + die(); + } + + $db->exec(" INSERT INTO programs (plug_id, program_description) VALUES ('" . $plug . "', '" . $programDescription . "'); "); + + $program_id = $db->lastInsertRowID(); + foreach($bridges as $bridge) { + $db->exec(" INSERT INTO program_bridge_relation (program_id, bridge_id, plug_id) VALUES ('" . $program_id . "', '" . $bridge . "', '" . $plug . "'); "); + } + + for($i=0; $i<=4; $i++) { + $db->exec(" INSERT INTO program_id_bits (value, position, program_id) VALUES ('" . $programID[$i] . "', '" . $i . "', '" . $program_id . "'); "); + } + + $message[0] = true; + $message[1] = 'Das Programm wurde als
+ ' . $programID[0] . '' . $programID[1] . '' . $programID[2] . '' . $programID[3] . '' . $programID[4] . ' + +
gespeichert!'; + $message = json_encode($message); + print($message); + die(); + + break; + case "edit": + + $meta = json_decode(urldecode($meta),true); + $bridges = $meta["bridges"]; + $programDescription = $meta["programDescription"]; + + if(empty($bridges) || empty($programDescription)) { + $message[0] = false; + $message[1] = "Es wurden keine Änderungen gespeichert."; + $message = json_encode($message); + print($message); + die(); + } + + $db->exec(" UPDATE programs set program_description = '" . $programDescription . "' WHERE id = '" . $programID . "' AND plug_id = '" . $plug . "'; "); + $db->exec(" DELETE FROM program_bridge_relation WHERE program_id = '" . $programID . "' and plug_id = '" . $plug . "'; "); + + foreach($bridges as $bridge) { + $db->exec(" INSERT INTO program_bridge_relation (program_id, bridge_id, plug_id) VALUES ('" . $programID . "', '" . $bridge . "', '" . $plug . "'); "); + } + + $message[0] = true; + $message[1] = 'Die Änderungen an
'; + + $program_identifiers = $db->query("SELECT * FROM program_id_bits WHERE program_id = '" . $programID . "';"); + + while ($program_identifier = $program_identifiers->fetchArray(SQLITE3_ASSOC)) { + $message[1] .= '' . $program_identifier["value"] . ''; + } + + $message[1] .= '
wurden gespeichert!'; + + $message = json_encode($message); + print($message); + die(); + + break; + case "remove": + $programID = $meta; + + // Überprüfen, ob die Struktur korrekt ist + if (!isset($meta)) { + $message[0] = false; + $message[1] = "Es gab einen Fehler bei der Datenübermittlung."; + $message = json_encode($message); + print($message); + die(); + } + + // Hier wichtig! Beim Löschvorgang muss die referenzielle Integrität gewahrt werden! Erst die Fremdschlüssel löschen, dann die Tabelle mit dem Primärschlüssel! + + $db->exec(" DELETE FROM program_bridge_relation WHERE program_id = '" . $meta . "' and plug_id = '" . $plug . "'; "); + $db->exec(" DELETE FROM program_id_bits WHERE program_id = '" . $meta . "'; "); + $db->exec(" DELETE FROM programs WHERE id = '" . $meta . "' and plug_id = '" . $plug . "'; "); + + + $message[0] = true; + $message[1] = "Das Programm wurde nun gelöscht."; + $message = json_encode($message); + print ($message); + die(); + + + break; + + +} diff --git a/actions/save-settings.php b/actions/save-settings.php new file mode 100644 index 0000000..6fd333c --- /dev/null +++ b/actions/save-settings.php @@ -0,0 +1,16 @@ + diff --git a/alt/actions/connection-test.php b/alt/actions/connection-test.php new file mode 100644 index 0000000..8736d2f --- /dev/null +++ b/alt/actions/connection-test.php @@ -0,0 +1,5 @@ + diff --git a/alt/index.php b/alt/index.php new file mode 100644 index 0000000..3d4275c --- /dev/null +++ b/alt/index.php @@ -0,0 +1,32 @@ + + + + + + + +
+ + + +
+ +
+
+ + diff --git a/alt/pagecontent/index.php b/alt/pagecontent/index.php new file mode 100644 index 0000000..9322141 --- /dev/null +++ b/alt/pagecontent/index.php @@ -0,0 +1,24 @@ + +
Federleiste prüfen
+
+

Automatische Erkennung

+Verbinden Sie den zu messenden Stecker mit dem Gerät. Vermeiden Sie Bewegungen während der Messung. + +
Jetzt prüfen
+ + diff --git a/alt/pagecontent/start.php b/alt/pagecontent/start.php new file mode 100644 index 0000000..1e701f5 --- /dev/null +++ b/alt/pagecontent/start.php @@ -0,0 +1,339 @@ + "30", + "B" => "20", + "C" => "10", + "D" => "39", + "E" => "29", + "F" => "19", + "G" => "38", + "H" => "28", + "I" => "18", + "J" => "37", + "K" => "27", + "L" => "17", + "M" => "36", + "N" => "26", + "O" => "16", + "P" => "35", + "Q" => "25", + "R" => "15", + "S" => "34", + "T" => "24", + "U" => "14", + "V" => "33", + "W" => "23", + "X" => "13", + "Y" => "32", + "Z" => "22", + "AA" => "12", + "AB" => "31", + "AC" => "21", + "AD" => "11" +]; + +function translateArray($inputArray, $translationMap) { + return array_map(function($subArray) use ($translationMap) { + return array_map(function($item) use ($translationMap) { + return $translationMap[$item] ?? $item; // Falls kein Mapping existiert, bleibt das Original erhalten + }, $subArray); + }, $inputArray); +} + + + +flush(); + + +?> + + + +
+
+ Initialisieren +
+
+ Prüfung 1/2 +
+ +
+ Prüfung 2/2 +
+ +
+ + + + + + + +
+
+ Initialisieren +
+
+ Prüfung 1/2 +
+ +
+ Prüfung 2/2 +
+ +
+ + + + + + +
+
+ Initialisieren +
+
+ Prüfung 1/2 (x) +
+ +
+ Prüfung 2/2 +
+ +
+ + + + + + + +
Ergebnis
+
+
+

Gesamtergebnis

+
+

Einzelbrücken

+
+
+ +
+ + +
+ + + +
+
+ Initialisieren +
+
+ Prüfung 1/2 +
+ +
+ Prüfung 2/2 +
+
+

Es gab einen Fehler bei der Messung!
Messung 1 und Messung 2 lieferten keine übereinstimmenden Ergebnisse.
Bitte prüfen Sie, ob alle Steckverbindungen fest sitzen und vermeiden Sie Bewegungen, welche die Messung beeinträchtigen können.
Stellen Sie sicher, dass keine der Verbindungen gegen Erde kurzgeschlossen ist, da dies die Messung beeinträchtigt.
Erwägen Sie, eine erneute Messung zurchzuführen.

+
+

Ergebnis Messung 1:

+ + +

Ergebnis Messung 2:

+ + +
Zurück
+ + + + + diff --git a/alt/python/plug-check.py b/alt/python/plug-check.py new file mode 100644 index 0000000..4904e25 --- /dev/null +++ b/alt/python/plug-check.py @@ -0,0 +1,144 @@ +import smbus +import time +import json + +# Adressen der beiden MCP23017 Chips +AusgangRechts = 0x20 # Ausgang rechte Hälfte +AusgangLinks = 0x21 # Ausgang linke Hälfte +EingangRechts = 0x24 # Eingang rechte Hälfte +EingangLinks = 0x23 # Eingang linke Hälfte + +# Register-Adressen für den MCP23017 +IODIRA = 0x00 # Eingang / Ausgang A +IODIRB = 0x01 # Eingang / Ausgang B +GPIOA = 0x12 # GPIO A +GPIOB = 0x13 # GPIO B + +# Initialisiere den I2C Bus +bus = smbus.SMBus(1) + +RechtsA_ausgang = ["Z", "AA", "W", "AB", "AC", "AD", "AE", "AF"] +RechtsB_ausgang = ["Q", "U", "V", "T", "S", "R", "Y", "X"] + +RechtsA_eingang = ["R", "T", "V", "X", "Z", "AB", "AD", "AE"] +RechtsB_eingang = ["Q", "S", "W", "U", "AA", "Y", "AC", "AF"] + +LinksA_ausgang = ["C", "D", "E", "J", "F", "G", "H", "I"] +LinksB_ausgang = ["A", "B", "P", "O", "K", "L", "M", "N"] + +LinksA_eingang = ["B", "D", "F", "H", "J", "K", "M", "I"] +LinksB_eingang = ["A", "C", "E", "G", "L", "N", "O", "P"] + + +array = [] + +def default(): + adressen = [AusgangRechts, AusgangLinks, EingangRechts, EingangLinks] + + # Schleife für alle Registeradressen (0x00 bis 0x15) + for register in range(0x00, 0x16): + for adresse in adressen: + bus.write_byte_data(adresse, register, 0x00) + +# Konfiguriere alle Pins auf Chip 1 als Ausgang (A und B) +def configure_chip1_as_output(): + bus.write_byte_data(AusgangRechts, IODIRA, 0x00) # Setze alle Pins von A als Ausgang + bus.write_byte_data(AusgangRechts, IODIRB, 0x00) # Setze alle Pins von B als Ausgang + + bus.write_byte_data(AusgangLinks, IODIRA, 0x00) # Setze alle Pins von A als Ausgang + bus.write_byte_data(AusgangLinks, IODIRB, 0x00) # Setze alle Pins von B als Ausgang + +# Konfiguriere alle Pins auf Chip 2 als Eingang (A und B) +def configure_chip2_as_input(): + bus.write_byte_data(EingangRechts, IODIRA, 0xFF) # Setze alle Pins von A als Eingang + bus.write_byte_data(EingangRechts, IODIRB, 0xFF) # Setze alle Pins von B als Eingang + + bus.write_byte_data(EingangLinks, IODIRA, 0xFF) # Setze alle Pins von A als Eingang + bus.write_byte_data(EingangLinks, IODIRB, 0xFF) # Setze alle Pins von B als Eingang + + +# Hauptprogramm +def main(): + default() + time.sleep(0.5) + configure_chip1_as_output() + configure_chip2_as_input() + + # Teste alle Pins auf Chip 1 (A0-A7, B0-B7) + for pin in range(32): # 0 bis 31 + #print(f"Setze Pin {pin} auf HIGH auf Chip 1") + + + bus.write_byte_data(AusgangRechts, GPIOA, 0x00) + bus.write_byte_data(AusgangRechts, GPIOB, 0x00) + + bus.write_byte_data(AusgangLinks, GPIOA, 0x00) + bus.write_byte_data(AusgangLinks, GPIOB, 0x00) + + + if pin < 16: + # Setze den gewählten Pin auf HIGH + if pin < 8: # Pins A0-A7 + bus.write_byte_data(AusgangRechts, GPIOA, 1 << pin) + aktuellAn = RechtsA_ausgang[pin] + else: # Pins B0-B7 + bus.write_byte_data(AusgangRechts, GPIOB, 1 << (pin - 8)) + aktuellAn = RechtsB_ausgang[pin - 8] + else: + # Setze den gewählten Pin auf HIGH + if pin < 24: # Pins A0-A7 + bus.write_byte_data(AusgangLinks, GPIOA, 1 << pin - 16) + aktuellAn = LinksA_ausgang[pin - 16] + else: # Pins B0-B7 + bus.write_byte_data(AusgangLinks, GPIOB, 1 << (pin - 24)) + aktuellAn = LinksB_ausgang[pin - 24] + + #print("====================" + aktuellAn + "==========================") + + time.sleep(0.02) # Kurze Pause, damit die Änderung sichtbar wird + + Wert_Rechts_A = bus.read_byte_data(EingangRechts, GPIOA) + Wert_Links_A = bus.read_byte_data(EingangLinks, GPIOA) + + Wert_Rechts_B = bus.read_byte_data(EingangRechts, GPIOB) + Wert_Links_B = bus.read_byte_data(EingangLinks, GPIOB) + + + + for j in range(8): # Lese 4*8=32 Pins + bitmaske = 1 << j # Erstelle eine Maske: 1, 2, 4, 8, 16, ... + + Bit_Rechts_A = bool(Wert_Rechts_A & bitmaske) # Isoliere das entsprechende Bit + Bit_Links_A = bool(Wert_Links_A & bitmaske) # Isoliere das entsprechende Bit + Bit_Rechts_B = bool(Wert_Rechts_B & bitmaske) # Isoliere das entsprechende Bit + Bit_Links_B = bool(Wert_Links_B & bitmaske) # Isoliere das entsprechende Bit + + if Bit_Rechts_A == True: + if aktuellAn != RechtsA_eingang[j]: + array.append([aktuellAn ,RechtsA_eingang[j]]) + #print("Gefunden: " + RechtsA_eingang[j]) + + if Bit_Links_A == True: + if aktuellAn != LinksA_eingang[j]: + array.append([aktuellAn ,LinksA_eingang[j]]) + #print("Gefunden: " + LinksA_eingang[j]) + + if Bit_Rechts_B == True: + if aktuellAn != RechtsB_eingang[j]: + array.append([aktuellAn ,RechtsB_eingang[j]]) + #print("Gefunden: " + RechtsB_eingang[j]) + + if Bit_Links_B == True: + if aktuellAn != LinksB_eingang[j]: + array.append([aktuellAn ,LinksB_eingang[j]]) + #print("Gefunden: " + LinksB_eingang[j]) + + + + + json_output = json.dumps(array) + print(json_output) + +if __name__ == "__main__": + main() + diff --git a/alt/script.js b/alt/script.js new file mode 100644 index 0000000..83a1aae --- /dev/null +++ b/alt/script.js @@ -0,0 +1,117 @@ +function pageload(view, meta) { // Funktion zum Laden des Inhalts + + secondaryNavigation("close"); // Schließe das Stecker-Menü + page = window.location.hash.substr(1); // Hole die aufzurufende Seite über den URL-Hash (#xy) + + + $.ajax({ + url: "pagecontent/" + page + ".php?view=" + view + "&meta=" + meta, // Pfad der zu ladenden Seite aufbauen + success: function(result){ // Abfrage erfolgreich + $("#content").html(result); + $("div.navigation>div").removeClass("active"); // Alle Buttons inaktiv + $("#" + page).addClass("active"); // Button mit Klasse "page" wird aktiv geschaltet (im Menü) + }}); +} + + + + + +function checkConnection(last) { // Verbindunsstatus überwachen // Last ist der letzte gemessene Netzwerkzustand + $.ajax({ + url: "actions/connection-test.php?a=" + Date.now(), // verändere idr URL leicht, damit der Server nicht cached + timeout: 5000, // maximale Wartezeit sind 5 Sekunden; alles darüber wird als zu unzuverlässig angesehen + error: function(jqXHR, textStatus, errorThrown) { // Wenn ein Fehler bei der Anfrage auftritt (z.B. Netzwerkprobleme) + + $(".navigation-footer").html('
Keine Verbindung'); + console.error("Fehler bei der Anfrage:", textStatus, errorThrown); + + if (last != 1) { // letzter Zustand war "online" // Vermeiden von ständigen Nachrichten + message("Keine Verbindung"); // Werfe eine Nachricht + } + + setTimeout(function() { // nächste Prüfung in 5 Sekunden + checkConnection(1); // der Status offline wird mit übertragen + }, 5000); + }, + success: function(data) { // Verbindung iO + setTimeout(function() { // nächste Prüfung in 5 Sekunden + checkConnection(); + }, 5000); + + if (data == 'true') { // der Rückgabewert ist true, alles IO + $(".navigation-footer").html('
Verbunden'); + if (last == 1) { // war der letzte Status noch "offline", wird der Nutzer benachrichtigt + message("Verbindung wiederhergestellt!"); + } + } else { // außergewöhnlicher Fehler, aber möglich + message("Keine Verbindung"); // Verbindung dennoch unbrauchbar, wenn keine Daten geladen werden + $(".navigation-footer").html('
Keine Verbindung'); + } + } + }); +} + + +function secondaryNavigation(animation, content) { + + + + + if (animation == "open") { + + + $.get("pagecontent/plug-select.php", { + + + }, + function(data, status) { + if (status == "success") { + if (data != 'false') { + $("#navigation-secondary").css("left", "250px"); + $(".navigation-header").attr("onclick", "secondaryNavigation('close','plug-select')"); + setTimeout(function() { + $("#navigation-secondary").html(data); + console.log(data); + }, 200); + } else { + window.location.href = "#"; + + alert("Die Inhalte konnten nicht abgerufen werden. Vergewissern Sie sich, dass Sie mit dem WLAN-Netzwerk verbunden sind und laden Sie bei Bedarf die Seite neu."); + } + } + + }); + + + + } else { + $("#navigation-secondary").css("left", "-250px"); + $(".navigation-header").attr("onclick", "secondaryNavigation('open','plug-select')"); + } + +} + +function message(content) { + $("#message-box").html(content); + $("#message-box").css("display", "block"); + setTimeout(function() { + $("#message-box").css("transform", "translateY(0)"); + }, 50); + setTimeout(function() { + setTimeout(function() { + $("#message-box").css("display", "none"); + }, 500); + $("#message-box").css("transform", "translateY(calc(100% + 5px))"); + }, 3000); + +} + + + + +$(window).bind('beforeunload', function() { + $("#warning").css("display", "block"); + return 'Are you sure you want to leave?'; + +}); \ No newline at end of file diff --git a/alt/stecker.php b/alt/stecker.php new file mode 100644 index 0000000..2682fc0 --- /dev/null +++ b/alt/stecker.php @@ -0,0 +1,120 @@ +'; +?> + + + + + + + 30 + + 10 + + 31 + + 11 + + + + + + + + + + + + + + + + + + [70, 68], + 20 => [70, 44], + 30 => [70, 20], + 11 => [405, 68], + 12 => [370, 68], + 13 => [335, 68], + 14 => [300, 68], + 15 => [265, 68], + 16 => [230, 68], + 17 => [195, 68], + 18 => [160, 68], + 19 => [125, 68], + 21 => [405, 44], + 22 => [370, 44], + 23 => [335, 44], + 24 => [300, 44], + 25 => [265, 44], + 26 => [220, 44], + 27 => [185, 44], + 28 => [150, 44], + 29 => [115, 44], + 31 => [405, 20], + 32 => [370, 20], + 33 => [335, 20], + 34 => [300, 20], + 35 => [265, 20], + 36 => [230, 20], + 37 => [195, 20], + 38 => [160, 20], + 39 => [125, 20], + ]; + + foreach ($pin_coordinates as $coordinates) { + echo ''; + } + + if (empty($_GET['data'])) { + print ""; + die(); + } + +$inputArray = json_decode($_GET['data'], true); // JSON in ein PHP-Array umwandeln + + // Neues Array mit übersetzten Koordinaten + $translatedArray = array_map(function ($pair) use ($pin_coordinates) { + return [ + $pin_coordinates[$pair[0]], // Übersetze den ersten Wert + $pin_coordinates[$pair[1]], // Übersetze den zweiten Wert + ]; + }, $inputArray); + + $colors = ["#1a5fb4", "#26a269", "#e5a50a", "#c64600", "#a51d2d", "#613583", "#63452c", "#3d3846"]; + + // Schleife durch das übersetzte Array + $colorNumber = 0; + foreach ($translatedArray as $line) { + $point1 = $line[0]; // Erster Punkt [x, y] + $point2 = $line[1]; // Zweiter Punkt [x, y] + + $point1x = $point1[0] + 10; + $point1y = $point1[1] + 5; + $point2x = $point2[0] + 10; + $point2y = $point2[1] + 5; + + // Ausgabe eines Pfades (Linie zwischen zwei Punkten) + echo ''; + + $colorNumber++; + if ($colorNumber > 7) { + $colorNumber = 0; + } + } + ?> + \ No newline at end of file diff --git a/alt/style.css b/alt/style.css new file mode 100644 index 0000000..25069a4 --- /dev/null +++ b/alt/style.css @@ -0,0 +1,241 @@ +@font-face { + font-family: LexendDecaBold; + src: url(/vendor/fonts/LexendDeca-Bold.ttf); +} +@font-face { + font-family: LexendDecaMedium; + src: url(/vendor/fonts/LexendDeca-Medium.ttf); +} + body { + height: 100%; + + width: 100%; + padding: 20px; + margin: 0; + box-sizing: border-box; + font-family: LexendDecaBold; + font-weight: light; + color: #2e3436; + } + div.main { + width: 100%; + max-width: 900px; + height: auto; + border-radius: 15px; + overflow: hidden; + margin: 0 auto; + border: 5px solid #c3c3c3; + position: relative; + } + div.navigation { + width: 250px; + height: 600px; + background-color: #ebebeb; + float: left; + display: inline-block; + position: relative; + z-index: 501; + } + div.navigation.secondary { + position: absolute; + left: -250px; + top: 0; + overflow-y: auto; + z-index: 500; + transition-duration: .6s; + width: 500px; + backdrop-filter: blur(10px); + background-color: #ebebeb8c; + + } + div.navigation.secondary img { + width: 100px !important; + } + div.navigation>div, div.save-button { + padding: 5px; + margin: 10px; + line-height: 30px; + transition-duration: .4s; + cursor: pointer; + border-radius: 10px; + } + div.navigation>div:hover,div.navigation>div.active,div.navigation-footer,div.navigation-header,div.save-button:hover { + background-color: #d2d2d2; + } + div.navigation div.navigation-header { + text-align: center; + } + div.navigation div.navigation-header>div { + background-color: #fff; + border-radius: 0 0 7px 7px; + color: grey; + line-height: 20px; + font-size: 12px; + } + div.navigation>div>img:not(.infrago-logo),div.content div.save-button>img { + width: 30px; + max-height: 30px; + margin-right:20px; + vertical-align:middle; + filter: contrast(0.3); + } + div.navigation>div>img.infrago-logo { + width: 100%; + display:block; + margin-top: 15px; + } + div.content { + width: calc(100% - 250px); + float: right; + display: inline-block; + padding: 15px 20px; + height: 600px; + box-sizing: border-box; + overflow-y: auto; + text-align: center; + } + + div.content div.content-header { + text-align: center; + line-height: 30px; + padding: 0; + margin-bottom: 20px; + display: block; + font-size: 2em; + margin-block-start: 0.67em; + margin-block-end: 0.67em; + margin-inline-start: 0px; + margin-inline-end: 0px; + font-weight: bold; + unicode-bidi: isolate; + } + + div.content img { + width: 100%; + margin: 0 auto; + display: block; + } + div.navigation-footer { + position: absolute; + bottom:0; + width: calc(100% - 40px); + padding: 10px !important; + cursor: auto !important; + } + div.connection-indicator { + height: 15px; + width: 15px; + border-radius: 100%; + float: left; + vertical-align:middle; + margin: 7.5px; + } + div.connection-indicator.true { + background-color: #2ec27e; + } + div.connection-indicator.unknown { + background-color: #f6d32d; + } + div.connection-indicator.false { + background-color: #ed333b; + } + + + +div.save-button img { + display: inline-block; +} +div.save-button { + background-color: #ebebeb +} + +::-webkit-scrollbar { + width: 5px; +} + +/* Track */ +::-webkit-scrollbar-track { + background: #ebebeb; +} + +/* Handle */ +::-webkit-scrollbar-thumb, ::-webkit-scrollbar-thumb:hover { + background: #d2d2d2; +} + + +div.toggle-switch { + width: 100%; + height: 50px; + margin-bottom: 10px; + display: flex; +} +div.toggle-switch div { + display: inline-block; +} +div.toggle-switch div:nth-child(1), div.toggle-switch div:nth-child(3) { + width: 39%; +} +div.toggle-switch div:nth-child(2) { + width: 20%; + padding: 10px; +} + + +.switch { + position: relative; + display: inline-block; + width: 100%; + height: 34px; + +} + +.switch input { + opacity: 0; + width: 0; + height: 0; +} + +.slider { + position: absolute; + cursor: pointer; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: #ccc; + -webkit-transition: .4s; + transition: .4s; + border-radius: 25px; +} + +.slider:before { + position: absolute; + content: ""; + height: 26px; + width: 26px; + left: 4px; + bottom: 4px; + background-color: white; + -webkit-transition: .4s; + transition: .4s; + border-radius: 100%; +} + +/* Rounded sliders */ +.slider.round { + border-radius: 34px; +} + +.slider.round:before { + border-radius: 50%; +} + +table.simple-devider th,table.simple-devider td { + padding: 15px; + +} +table.simple-devider * { + margin: 0; + vertical-align: top; +} diff --git a/alt/vendor/DB_InfraGo_logo_red_black_100px_rgb.svg b/alt/vendor/DB_InfraGo_logo_red_black_100px_rgb.svg new file mode 100644 index 0000000..484167f --- /dev/null +++ b/alt/vendor/DB_InfraGo_logo_red_black_100px_rgb.svg @@ -0,0 +1,77 @@ + \ No newline at end of file diff --git a/alt/vendor/fonts/LexendDeca-Bold.ttf b/alt/vendor/fonts/LexendDeca-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..49c0bb73b4a15b5add18b5049bc00cdc70951c95 GIT binary patch literal 78764 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 Gul^sqa|1sB literal 0 HcmV?d00001 diff --git a/alt/vendor/fonts/LexendDeca-Medium.ttf b/alt/vendor/fonts/LexendDeca-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ffd9b9baa5d86ce1c75613a87361d81c285dc9c1 GIT binary patch literal 78828 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�!U=3~!vt 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¯S2~596jk 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 E7k035l>h($ literal 0 HcmV?d00001 diff --git a/alt/vendor/icons/electric-plug-icon.svg b/alt/vendor/icons/electric-plug-icon.svg new file mode 100644 index 0000000..ca62634 --- /dev/null +++ b/alt/vendor/icons/electric-plug-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/alt/vendor/icons/fiber-cable-icon.svg b/alt/vendor/icons/fiber-cable-icon.svg new file mode 100644 index 0000000..aaacc4a --- /dev/null +++ b/alt/vendor/icons/fiber-cable-icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/alt/vendor/icons/play.svg b/alt/vendor/icons/play.svg new file mode 100644 index 0000000..d40e7d6 --- /dev/null +++ b/alt/vendor/icons/play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/alt/vendor/jquery.min.js b/alt/vendor/jquery.min.js new file mode 100644 index 0000000..a1c07fd --- /dev/null +++ b/alt/vendor/jquery.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0 diff --git a/db-test/index.php b/db-test/index.php new file mode 100755 index 0000000..8337367 --- /dev/null +++ b/db-test/index.php @@ -0,0 +1,97 @@ +exec('CREATE TABLE "bridges" ( + "plug_id" INTEGER, + "id" INTEGER UNIQUE, + PRIMARY KEY("id"), + FOREIGN KEY("plug_id") REFERENCES "plugs"("id") +)'); + +$db->exec('CREATE TABLE "measurement_nodes" ( + "required_by" INTEGER, + "node_from" INTEGER, + "node_to" INTEGER, + UNIQUE("required_by","node_from","node_to"), + FOREIGN KEY("required_by") REFERENCES "" +)'); + +$db->exec('CREATE TABLE "measurement_program_id_bits" ( + "value" TEXT, + "position" INTEGER, + "measurement_id" INTEGER, + UNIQUE("position","measurement_id"), + FOREIGN KEY("measurement_id") REFERENCES "" +)'); + +$db->exec('CREATE TABLE "measurements" ( + "id" INTEGER UNIQUE, + "place_name" TEXT, + "comment" TEXT, + "timestamp" INTEGER, + PRIMARY KEY("id" AUTOINCREMENT), + FOREIGN KEY("place_name") REFERENCES "" +)'); + +$db->exec('CREATE TABLE "nodes" ( + "plug_id" INTEGER, + "required_by" INTEGER, + "node_from" INTEGER, + "node_to" INTEGER, + UNIQUE("plug_id","required_by","node_from","node_to"), + FOREIGN KEY("required_by") REFERENCES "bridges"("id") +)'); + +$db->exec('CREATE TABLE "places" ( + "plug_id" INTEGER, + "name" TEXT UNIQUE, + PRIMARY KEY("name"), + FOREIGN KEY("plug_id") REFERENCES "plugs"("id") +)'); + +$db->exec('CREATE TABLE "plugs" ( + "id" INTEGER UNIQUE, + "name" TEXT, + "char_number" INTEGER, + PRIMARY KEY("id") +)'); + +$db->exec('CREATE TABLE "program_bridge_relation" ( + "program_id" INTEGER, + "bridge_id" INTEGER, + "plug_id" INTEGER, + UNIQUE("program_id","bridge_id","plug_id"), + FOREIGN KEY("bridge_id") REFERENCES "bridges"("id"), + FOREIGN KEY("plug_id") REFERENCES "plugs"("id"), + FOREIGN KEY("program_id") REFERENCES "programs"("id") +)'); + +$db->exec('CREATE TABLE "program_id_bits" ( + "value" TEXT, + "position" INTEGER, + "program_id" INTEGER, + UNIQUE("position","program_id"), + FOREIGN KEY("program_id") REFERENCES "programs"("id") +)'); + + +$db->exec('CREATE TABLE "programs" ( + "id" INTEGER UNIQUE, + "plug_id" INTEGER, + "program_description" TEXT, + PRIMARY KEY("id"), + FOREIGN KEY("plug_id") REFERENCES "plugs"("id") +)'); + +*/ + + +$db->exec('DELETE FROM "places" WHERE 1'); + + + +?> diff --git a/db-test/test.db b/db-test/test.db new file mode 100644 index 0000000000000000000000000000000000000000..0b74b0fcf51f96881ea03aee9c023d0c98707e9a GIT binary patch literal 147456 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 VYg^nc7f#t0cgwnBxLek

Fehlercodes:

+
GruppeBeschreibung

Eine einzelne Prüfung betreffend

00Fehlerfrei
01Brücke angeblich erkannt, vom redundanten Multiplexer jedoch nicht bestätigt (ungleichen Pin betreffend)
02Unterschiedliche Ergebnisse: Prüfer misst LOW, Redundanz misst HIGH
03Unterschiedliche Ergebnisse: Prüfer misst HIGH, Redundanz misst LOW
04Prüfspannung angeblich gesetzt, von der Redundanz jedoch nicht bestätigt

Die gesamte Prüfung betreffend

10Fehlerfrei
11Ein/mehrere Multiplexer nicht ansprechbar, i2c ordnungsgemäß gestartet
12i2c-Bus nicht startfähig, keine Kommunikation möglich
13Fehlerursache nicht weiter spezifizierbar
\ No newline at end of file diff --git a/functions.php b/functions.php new file mode 100644 index 0000000..2d3fcdf --- /dev/null +++ b/functions.php @@ -0,0 +1,198 @@ + Steckerpin, gilt für Programmsteckerprüfung) +$translationMap = [ + "0" => "18", + "1" => "19", + "2" => "20", + "3" => "21", + "4" => "22", + "5" => "23", + "6" => "24", + "7" => "25", + "8" => "10", + "9" => "11", + "10" => "12", + "11" => "13", + "12" => "14", + "13" => "15", + "14" => "16", + "15" => "17", + "16" => "34", + "17" => "35", + "18" => "36", + "19" => "37", + "20" => "38", + "21" => "39", + "22" => "40", + "23" => "41", + "24" => "26", + "25" => "27", + "26" => "28", + "27" => "29", + "28" => "30", + "29" => "31", + "30" => "32", + "31" => "33" +]; + +//Übsersetzungstabelle (Intern -> Steckerpin, gilt für Spurkabelprüfung) +$translationMap2 = [ + "0" => "25", + "1" => "24", + "2" => "23", + "3" => "22", + "4" => "21", + "5" => "20", + "6" => "19", + "7" => "18", + "8" => "17", + "9" => "16", + "10" => "15", + "11" => "14", + "12" => "13", + "13" => "12", + "14" => "11", + "15" => "10", + "16" => "41", + "17" => "40", + "18" => "39", + "19" => "38", + "20" => "37", + "21" => "36", + "22" => "35", + "23" => "34", + "24" => "33", + "25" => "32", + "26" => "31", + "27" => "30", + "28" => "29", + "29" => "28", + "30" => "27", + "31" => "26" +]; + +// Diese Funktion übersetzt die interne Pin-Bezeichnung in die des Herstellers gem. translationMap +// weil die Hardware der Spurkabelprüfer anders verschaltet ist, als die des Programmsetckerprüfers, wird nach zwei Übersetzungstabellen bei der Spurkabelprüfung gearbeitet +// nodes[0] wird gem Standardtabelle gehandhabt, nodes[1] nach translationMap2 - unsauber, aber nur durhc Software lösbar +function translateArray($inputArray, $translationMap, $translationMap2 = null) { + return array_map(function($subArray) use ($translationMap, $translationMap2) { + $map1 = $translationMap; + $map2 = $translationMap2 ?? $translationMap; // Wenn keine zweite Map, nimm die erste + return [ + $map1[$subArray[0]] ?? $subArray[0], + $map2[$subArray[1]] ?? $subArray[1] + ]; + }, $inputArray); +} + +function measurementsDiffer($bridges1, $bridges2) { + //Isoliere die Brücken + $bridges1 = array_map(function($entry) { + return $entry[0]; + }, $bridges1); + + $bridges2 = array_map(function($entry) { + return $entry[0]; + }, $bridges2); + + //Zeichne die Steckergrafik + $url1 = "../stecker.php?data=" . urlencode(json_encode(translateArray($bridges1, $translationMap))); + $url2 = "../stecker.php?data=" . urlencode(json_encode(translateArray($bridges2, $translationMap))); + + + + + ?> +

+ Es gab einen Fehler bei der Messung!
Messung 1 und Messung 2 lieferten keine übereinstimmenden Ergebnisse.
Bitte prüfen Sie, ob alle Steckverbindungen fest sitzen und vermeiden Sie Bewegungen, welche die Messung beeinträchtigen können.
Stellen Sie sicher, dass keine der Verbindungen gegen Erde kurzgeschlossen ist, da dies die Messung beeinträchtigt.
Erwägen Sie, eine erneute Messung durchzuführen. +

+
+

Ergebnis Messung 1:

+ + +

Ergebnis Messung 2:

+ + +
Zurück
+ + +

Eine oder mehrere Prüfungen versagten. Vollständige Fehlerausgabe:

+ + + + "; + } + ?> + +
Brücke vonnachAufgetretene Fehler" . $bridge[0][0] . "" . $bridge[0][1] . "" . $bridge[1] . "
+
+

Fehlercodes:

+ + i+1, letzter -> erster) + $completeEdges = []; + $numNodes = count($nodes); + for ($i = 0; $i < $numNodes; $i++) { + $from = $nodes[$i]; + $to = $nodes[($i + 1) % $numNodes]; // Kreis schließen + $completeEdges[] = [$from, $to]; + } + + return $completeEdges; +} + +$edges = [[0,1], [2,0]]; +$result = completeCycleEdges($edges); + +print_r($result); + + + + + + +*/ + + +?> diff --git a/index.php b/index.php new file mode 100644 index 0000000..9829b84 --- /dev/null +++ b/index.php @@ -0,0 +1,38 @@ + + + + + + + + +
+ + + +
+ + +
+
+ + diff --git a/pagecontent/bridge-editor.php b/pagecontent/bridge-editor.php new file mode 100755 index 0000000..bfd095f --- /dev/null +++ b/pagecontent/bridge-editor.php @@ -0,0 +1,410 @@ + +
Brücken-Editor - Neu anlegen
+
+ + + + + + + + +
'; // Hier folgt die eigentliche Bearbeitungs-Fläche + + + $pinTable_row = 0; + foreach ($nodes as $nodeItem) { // Anzahl an Gesamt-Brücken-Elementen (Dies ist Wichtig, da appliedPinRowNumber ein Funktionsparameter ist, damit JS weiß, an welcher Stelle ein neues Element mit welchem Index erstellt werden muss!) + $pinTable_row++; + } + $appliedPinRowNumber = $pinTable_row; + + // im Folgenden die Eingabefelder anzeigen (mit aufsteigender ID) + $pinTable_row = 0; + foreach ($nodes as $nodeItem) { + echo ' +
+ ' . $nodeItem[0] . ' + + ' . $nodeItem[1] . ' + +
'; + $pinTable_row++; + } + ?> + +
+ + + + +
Speichern
+ + +
Brücken-Editor - Bearbeiten
+
+ query(" + SELECT * FROM bridges WHERE plug_id = '" . $plug . "' AND id = '" . $meta . "'; + "); + $result = $result->fetchArray(SQLITE3_ASSOC); + + // Skelettstruktur: Die "Row" sorgt hier für das typische Layout, insbesodere für die Darstellung der Brückennummer + ?> +
+ + ' . $result["id"] . ' +
'); // Brückennummer + + $nodes_url = []; + + $nodes = $db->query(" + SELECT node_from,node_to + FROM nodes WHERE required_by = '". $result['id'] ."'; + "); + + while ($node = $nodes->fetchArray(SQLITE3_ASSOC)) { + $nodes_url[] = [$node['node_from'], $node['node_to']]; + } + + $url = '../stecker.php?data=' . urlencode(json_encode($nodes_url)); // URL parsen + $nodes = $nodes_url; // die Nodes speichern (hier stecken alle Daten drin) + + ?> +
+ + + + + + +
'; // Hier folgt die eigentliche Bearbeitungs-Fläche + + $pinTable_row = 0; + foreach ($nodes as $nodeItem) { // Anzahl an Gesamt-Brücken-Elementen (Dies ist Wichtig, da appliedPinRowNumber ein Funktionsparameter ist, damit JS weiß, an welcher Stelle ein neues Element mit welchem Index erstellt werden muss!) + $pinTable_row++; + } + $appliedPinRowNumber = $pinTable_row; + + // im Folgenden die Eingabefelder anzeigen (mit aufsteigender ID) + $pinTable_row = 0; + foreach ($nodes as $nodeItem) { + echo ' +
+ ' . $nodeItem[0] . ' + + ' . $nodeItem[1] . ' + +
'; + $pinTable_row++; + } + ?> + +
+ + +
Brücken-Editor - Übersicht
+
+ +
+
+ query("SELECT * FROM bridges WHERE plug_id = '" . $plug . "';"); + while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + + ?> +
+ + ' . $row['id'] . ' +
'); + + $nodes_url = []; + + $nodes = $db->query(" + SELECT node_from,node_to + FROM nodes WHERE required_by = ". $row['id'] ."; + "); + + while ($node = $nodes->fetchArray(SQLITE3_ASSOC)) { + $nodes_url[] = [$node['node_from'], $node['node_to']]; + } + + $url = '../stecker.php?data=' . urlencode(json_encode($nodes_url)); // URL parsen + print(''); + print(' +
+ + +
+ '); + ?> +
+ query("SELECT COUNT(*) as anzahl FROM bridges WHERE plug_id = '" . $plug . "';"); + $row = $result->fetchArray(SQLITE3_ASSOC); + $number = $row['anzahl']; + + if($number <= 0) { + print("

Es sind keine Brücken für diesen Stecker gespeichert.
Eventuell muss ein anderer Stecker gewählt werden.

"); + } + ?> +
+ +
Spurkabel prüfen
+
+

Automatische Erkennung

+Verbinden Sie die Enden des Spurkabels mit dem Gerät. Vermeiden Sie Bewegungen während der Messung. + +
Jetzt prüfen
+ + diff --git a/pagecontent/database-search.php b/pagecontent/database-search.php new file mode 100755 index 0000000..da79194 --- /dev/null +++ b/pagecontent/database-search.php @@ -0,0 +1,322 @@ + +
+ query(" SELECT * FROM places WHERE name LIKE '%" . strtolower($meta) . "%' "); + + while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + + // Wenn die suche leer ist, sollen auch keine Ergebnisse kommen (siehe Vorschläge ignorieren) + if($meta == "") { + return; + } + + ?> +
'); search('results');"> + +
+ +
+ Vorschläge ignorieren +
+ + +
+ query(" + + SELECT + m.id AS measurement_id, + m.comment AS comment, + m.timestamp AS timestamp, + m.place_name AS place_name, + b.value AS bit_value, + b.position AS bit_position + FROM + measurements m + JOIN places p ON p.name = m.place_name + JOIN measurement_program_id_bits b ON b.measurement_id = m.id + ORDER BY m.id + + "); + + /* + Ausgabe sieht z.B. so aus: + + | measurement_id | comment | timestamp | place_name | bit_value | bit_position | + | -------------- | ------- | --------- | ------------ | --------- | ------------ | + | 1 | xyz.. | 34535454 | Dudweiler Df | S | 0 | + | 1 | xyz.. | 34535454 | Dudweiler Df | - | 1 | + | 1 | xyz.. | 34535454 | Dudweiler Df | 4 | 2 | + | 1 | xyz.. | 34535454 | Dudweiler Df | - | 3 | + | 1 | xyz.. | 34535454 | Dudweiler Df | - | 4 | + | 7 | abc.. | 48548574 | Mannheim Hbf | A | 0 | + | 7 | abc.. | 48548574 | Mannheim Hbf | 6 | 1 | + | 7 | abc.. | 48548574 | Mannheim Hbf | 4 | 2 | + | 7 | abc.. | 48548574 | Mannheim Hbf | - | 3 | + | 7 | abc.. | 48548574 | Mannheim Hbf | S | 4 | + + */ + + // Die Datenbank wird als dreifach indexiertes Array gespeichert + $database_db = []; + while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + $database_db[$row["place_name"]][$row["measurement_id"]]["program_id_bits"][$row["bit_position"]] = $row["bit_value"]; + $database_db[$row["place_name"]][$row["measurement_id"]]["comment"] = $row["comment"]; + $database_db[$row["place_name"]][$row["measurement_id"]]["timestamp"] = $row["timestamp"]; + } + + /* + + $database_db + └── $row["place_name"] + └── $row["measurement_id"] + ├── "program_id_bits" + │ └── $row["bit_position"] + │ └── $row["bit_value"] + ├── "program_id_string" + │ └── implode('', $bits) + ├── "comment" + │ └── $row["comment"] + └── "timestamp" + └── $row["timestamp"] + + */ + + // speichere die Bits als String, damit diese einfacher durchsuchbar sind + foreach ($database_db as $place => $entries) { + foreach ($entries as $index => $info) { + $bits = $info['program_id_bits']; + $database_db[$place][$index]['program_id_string'] = implode('', $bits); + } + } + + // durchsuche nach der Query im Programm-ID-String + foreach($database_db as $place_name => $measurements) { + $found = false; + foreach ($measurements as $measurement_id => $measurement) { + if(str_contains(strtolower($measurement["program_id_string"]), strtolower($meta))) { + $found = true; + } + } + if($found != true) { + continue; + } + ?> + +
+ + +        + +
+ $measurement) { + + if(!str_contains(strtolower($measurement["program_id_string"]), strtolower($meta))) { + continue; + } + + print(' +
+
+ '); + + + $i = 0; + foreach($measurement["program_id_bits"] as $programIDChar) { + echo '' . $programIDChar . ''; + $i++; + } + + print(' + +
+
+
+ ' . date("d.m.Y H:i:s", $measurement["timestamp"]) . ' +
'); + + ?> + +
+ +
+ + +
'); + + if(!empty($measurement["comment"])) { + + print(' +
+ '); + echo $measurement["comment"]; + print(' +
'); + } + } + ?> +
+
+ query(" + + SELECT + m.id AS measurement_id, + m.comment AS comment, + m.timestamp AS timestamp, + m.place_name AS place_name, + b.value AS bit_value, + b.position AS bit_position + FROM + measurements m + JOIN places p ON p.name = m.place_name + JOIN measurement_program_id_bits b ON b.measurement_id = m.id + ORDER BY m.id + + "); + + // Die Datenbank wird als dreifach indexiertes Array gespeichert + $database_db = []; + while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + $database_db[$row["place_name"]][$row["measurement_id"]]["program_id_bits"][$row["bit_position"]] = $row["bit_value"]; + $database_db[$row["place_name"]][$row["measurement_id"]]["comment"] = $row["comment"]; + $database_db[$row["place_name"]][$row["measurement_id"]]["timestamp"] = $row["timestamp"]; + } + + /* + + $database_db + └── $row["place_name"] + └── $row["measurement_id"] + ├── "program_id_bits" + │ └── $row["bit_position"] + │ └── $row["bit_value"] + ├── "program_id_string" + │ └── implode('', $bits) + ├── "comment" + │ └── $row["comment"] + └── "timestamp" + └── $row["timestamp"] + + */ + + foreach($database_db as $place_name => $measurements) { + + + + ?> + +
+ [] + + + query(" + + SELECT + m.id AS measurement_id, + m.comment AS comment, + m.timestamp AS timestamp, + m.place_name AS place_name, + b.value AS bit_value, + b.position AS bit_position, + n.node_from AS node_from, + n.node_to AS node_to + FROM + measurements m + JOIN places p ON p.name = m.place_name + JOIN measurement_program_id_bits b ON b.measurement_id = m.id + JOIN measurement_nodes n ON n.required_by = m.id + +"); + +/* +Ausgabe sieht z.B. so aus: + +| measurement_id | comment | timestamp | place_name | bit_value | bit_position | node_from | node_to | +| -------------- | ------- | --------- | ------------ | --------- | ------------ | --------- | ------- | +| 1 | xyz.. | 34535454 | Dudweiler Df | S | 0 | 20 | 28 | +| 1 | xyz.. | 34535454 | Dudweiler Df | S | 0 | 28 | 30 | +| 1 | xyz.. | 34535454 | Dudweiler Df | - | 1 | 20 | 28 | +| 1 | xyz.. | 34535454 | Dudweiler Df | - | 1 | 28 | 30 | +| 1 | xyz.. | 34535454 | Dudweiler Df | 4 | 2 | 20 | 28 | +| 1 | xyz.. | 34535454 | Dudweiler Df | 4 | 2 | 28 | 30 | +| 1 | xyz.. | 34535454 | Dudweiler Df | - | 3 | 20 | 28 | +| 1 | xyz.. | 34535454 | Dudweiler Df | - | 3 | 28 | 30 | +| 1 | xyz.. | 34535454 | Dudweiler Df | - | 4 | 20 | 28 | +| 1 | xyz.. | 34535454 | Dudweiler Df | - | 4 | 28 | 30 | + +*/ + + +// Die Datenbank wird als dreifach indexiertes Array gespeichert +$database_db = []; +while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + $id = $row["measurement_id"]; + + // Basisdaten setzen (überschreiben macht nichts) + $database_db[$id]["comment"] = $row["comment"]; + $database_db[$id]["timestamp"] = $row["timestamp"]; + $database_db[$id]["place_name"] = $row["place_name"]; + + // Programmbits: nur setzen, wenn nicht schon vorhanden + if (!isset($database_db[$id]["program_id_bits"][$row["bit_position"]])) { + $database_db[$id]["program_id_bits"][$row["bit_position"]] = $row["bit_value"]; + } + + // Nodes: nur hinzufügen, wenn noch nicht vorhanden + $node_pair = [$row["node_from"], $row["node_to"]]; + if ( + !isset($database_db[$id]["nodes"]) || + !in_array($node_pair, $database_db[$id]["nodes"]) + ) { + $database_db[$id]["nodes"][] = $node_pair; + } +} + + +// Ersetzen der $database_db[$id]["nodes"] zu einem String +$bitLength = 5; +$placeholder = '?'; +foreach ($database_db as $index => $row) { + $programIdBits = isset($row['program_id_bits']) ? $row['program_id_bits'] : []; + $programIdString = ''; + + // Baue ein Array mit fester Länge ($bitLength), fülle fehlende Positionen mit Platzhalter + for ($i = 0; $i < $bitLength; $i++) { + $programIdString .= isset($programIdBits[$i]) ? $programIdBits[$i] : $placeholder; + } + + $database_db[$index]['program_id_string'] = $programIdString; +} + + + + +// $list ist die CSV-Datei + +//$list[] = array("Gemessen am / um", "Stw-Name / Ort" ,"Erkannte Brücken (Pin-zu-Pin)", "(automatisch) ermittelte Programm-Nummer", "Freitext-Besonderheiten"); + + + +// gehe jeden Datenwankeintrag durch +foreach($database_db as $database_entry) { + // leere dne node_string zu Beginn + $node_string = ""; + // erstelle einen Brücken-String, der erweitert wird + foreach($database_entry["nodes"] as $node) { + $node_string .= $node[0] . "<->" . $node[1] . ", "; + } + + $imagePath = 'http://localhost/stecker.php?data=' . urlencode(json_encode($database_entry["nodes"])); // URL parsen + + // Schreibe ins Array + $list[] = array(date('d.m.Y H:i:s',$database_entry["timestamp"]), $database_entry["place_name"] ,$node_string, $database_entry["program_id_string"], $database_entry["comment"], $imagePath); +} + + + +function svgUrlToPngViaRsvg(string $svgUrl, string $outputPath): bool { + $svgData = file_get_contents($svgUrl); + if ($svgData === false) return false; + + $tempSvg = '../tmp/stecker_' . uniqid() . '.svg'; + file_put_contents($tempSvg, $svgData); + + + $cmd = escapeshellcmd("rsvg-convert -o " . escapeshellarg($outputPath) . " " . escapeshellarg($tempSvg)); + $result = shell_exec($cmd); + + unlink($tempSvg); + + return file_exists($outputPath); +} + + + + + +require '../vendor/composer/vendor/autoload.php'; + +use PhpOffice\PhpSpreadsheet\Spreadsheet; +use PhpOffice\PhpSpreadsheet\Writer\Xlsx; +use PhpOffice\PhpSpreadsheet\Worksheet\Drawing; + + + +// Neue Excel-Datei erzeugen +$spreadsheet = new Spreadsheet(); +$sheet = $spreadsheet->getActiveSheet(); + +// Spaltenüberschriften +$sheet->setCellValue('A1', 'Zeitstempel'); +$sheet->setCellValue('B1', 'Ort'); +$sheet->setCellValue('C1', 'Brücken'); +$sheet->setCellValue('D1', 'Programmbezeichnung'); +$sheet->setCellValue('E1', 'Notizen'); + +// Durch das Array iterieren und Daten + Bild einfügen +$row = 2; // Start in Zeile 2 +foreach ($list as $entry) { + [$timestamp,$place,$bridges,$program_number, $extra, $imagePath] = $entry; + + // Namen einfügen + $sheet->setCellValue("A$row", $timestamp); + $sheet->setCellValue("B$row", $place); + $sheet->setCellValue("C$row", $bridges); + $sheet->setCellValue("D$row", $program_number); + $sheet->setCellValue("E$row", $extra); + + + + + + $svgUrl = $imagePath; + $tmpPng = '../tmp/stecker_' . uniqid() . '.png'; + + // Bild einfügen, wenn Datei existiert + if (svgUrlToPngViaRsvg($svgUrl, $tmpPng)) { + $drawing = new Drawing(); + $drawing->setPath($tmpPng); + $drawing->setCoordinates("F$row"); + $drawing->setHeight(80); + $sheet->getRowDimension($row)->setRowHeight(80 * 0.75); + $drawing->setWorksheet($sheet); + } else { + $sheet->setCellValue("F$row", 'Bildkonvertierung fehlgeschlagen'); + } + + $row++; +} + +// Spaltenbreite anpassen +$sheet->getColumnDimension('A')->setAutoSize(true); +$sheet->getColumnDimension('B')->setWidth(20); // Platz fürs Bild + +// Datei speichern +$writer = new Xlsx($spreadsheet); +$writer->save('../temp.xlsx'); + +shell_exec("rm ../tmp/*"); + + +?> + +
Export - Fertig
+
+

+ Ihr Datenexport ist fertig vorbereitet. +

+
Herunterladen
+ + diff --git a/pagecontent/index.php b/pagecontent/index.php new file mode 100755 index 0000000..27462df --- /dev/null +++ b/pagecontent/index.php @@ -0,0 +1,15 @@ + +
Federleiste prüfen
+
+

Automatische Erkennung

+Verbinden Sie den zu messenden Stecker mit dem Gerät. Vermeiden Sie Bewegungen während der Messung. + +
Jetzt prüfen
+ + diff --git a/pagecontent/inventory.php b/pagecontent/inventory.php new file mode 100755 index 0000000..b9d11d1 --- /dev/null +++ b/pagecontent/inventory.php @@ -0,0 +1,18 @@ + + +
Bestand
+
+ +
+
+
+ +
+ +
+
+
+ diff --git a/pagecontent/plug-select.php b/pagecontent/plug-select.php new file mode 100755 index 0000000..fad6cef --- /dev/null +++ b/pagecontent/plug-select.php @@ -0,0 +1 @@ +Aktuell werden keine verschiedenen Steckerarten unterstützt. \ No newline at end of file diff --git a/pagecontent/program-editor.php b/pagecontent/program-editor.php new file mode 100755 index 0000000..d91e913 --- /dev/null +++ b/pagecontent/program-editor.php @@ -0,0 +1,230 @@ + +
Programm-Editor - Übersicht
+
+ +
+
+ query("SELECT * FROM programs WHERE plug_id = '" . $plug . "';"); + while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + $results = true; + ?> +
+ + '); + // Stelle die einzelnen Programmziffern dar + $program_identifiers = $db->query("SELECT * FROM program_id_bits WHERE program_id = '" . $row['id'] . "';"); + + while ($program_identifier = $program_identifiers->fetchArray(SQLITE3_ASSOC)) { + echo '' . $program_identifier["value"] . ''; + } + print(' + +
'); + + // Die erforderlichen Brücken werden aus der Datenbank geholt (via program_bridge_relation) + $bridges_url = []; + $bridges = $db->query("SELECT * FROM program_bridge_relation WHERE program_id = '" . $row['id'] . "';"); + + while ($bridge = $bridges->fetchArray(SQLITE3_ASSOC)) { + $bridges_url[] = $bridge["bridge_id"]; + } + + $url = '../stecker.php?translate=true&data=' . urlencode(json_encode($bridges_url)); // URL parsen; Modus: Programmanzeige + + print(''); + // Aktionsmenü (mit hässlichem Inline-Code) + print(' +
+ + +
+ '); + ?> +
+ +
+ Es sind keine Programme für diesen Stecker gespeichert.
Eventuell muss ein anderer Stecker gewählt werden.

"); + } + + break; + + // Neues Hinzufügen eines Programms + case "add": + + $meta = json_decode(urldecode($meta), true); + ?> +
Programm-Editor - Neu anlegen
+ +
+

Zugehörige Brücken

+ Wählen Sie die Brücken, welche von diesem Programm gefordert werden + +
+ query("SELECT COUNT(*) as anzahl FROM bridges WHERE plug_id = '" . $plug . "';"); + $row = $result->fetchArray(SQLITE3_ASSOC); + $results_full = $row['anzahl']; + + $count = 0; + + // Holen der Ergebnisse + $result = $db->query("SELECT * FROM bridges WHERE plug_id = '" . $plug . "';"); + + // Zeigt ein horizonales Auswhl-Menü an, das alle Brücken als auswahl bietet + while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + ?> + + +
+
+

Name für dieses Programm

+ + Hinweis: Der Name kann aus Sicherheitsgründen im Nachhinein nicht mehr geändert werden. Bei dieser Stellwerksart ist die ID fünfstellig
Ein '-' kennzeichnet ein "Don't-Care". Darüber hinaus sind nur Großbuchstaben und Zahlen zugelassen +
+
+ + + + + +
+
+

Beschreibung für dieses Programm

+ +
+
Speichern
+ + +
Programm-Editor - Bearbeiten
+ query("SELECT * FROM program_bridge_relation WHERE program_id = '" . $meta . "';"); + + while ($bridge = $bridges->fetchArray(SQLITE3_ASSOC)) { + + $bridges_url[] = $bridge["bridge_id"]; + + } + + $url = '../stecker.php?translate=true&data=' . urlencode(json_encode($bridges_url)); // URL parsen + + print(''); + + + + ?> + +
+

Zugehörige Brücken

+ Wählen Sie die Brücken, welche von diesem Programm gefordert werden + +
+ + query("SELECT COUNT(*) as anzahl FROM bridges WHERE plug_id = '" . $plug . "';"); + + $number_bridges = $number_bridges->fetchArray(SQLITE3_ASSOC); + $number_bridges = $number_bridges['anzahl']; + $number_joined = 0; + + // Hole zunächst ALLE Brücken aus der DB + $bridges = $db->query("SELECT * FROM bridges WHERE plug_id = '" . $plug . "';"); + + while ($bridge = $bridges->fetchArray(SQLITE3_ASSOC)) { + + // schaue nun, ob diese Brücke Teil des Programms ist + $bridges_contained = $db->query("SELECT COUNT(*) as anzahl FROM program_bridge_relation WHERE plug_id = '" . $plug . "' and bridge_id = '" . $bridge["id"] . "' and program_id = '" . $meta . "';"); + + $row = $bridges_contained->fetchArray(SQLITE3_ASSOC); + $number = $row['anzahl']; + + // Die Anzahl gibt Aufschlus darüber, ob Brücke von Programm gefordert ist -> wenn schon vorhanden, markiere diese Brücke schon vor ("checked"-Attribut) + ?> + + +
+
+

Name für dieses Programm

+ Darf auf Sicherheitsgründen nicht mehr geändert werden + +
+ query("SELECT * FROM program_id_bits WHERE program_id = '" . $meta . "' ORDER BY position;"); + while ($program_identifier = $program_identifiers->fetchArray(SQLITE3_ASSOC)) { + echo ''; + } + + // Vorausgefüllte Programmbezeichnung + $description = ($row = $db->querySingle("SELECT program_description FROM programs WHERE id = '$meta' and plug_id = '$plug'", true)) ? $row['program_description'] : null; + + ?> +
+
+

Beschreibung für dieses Programm

+ +
+
Speichern
+ + +

+ Die Prüfung konnte nicht abgeschlossen werden. Fehler +

+ + +
Selbstdiagnose - Ergebnisse
+
+ + + +
+

Detailansicht

+

Der Pin der jeweiligen Spalte wird eingeschaltet; Pins, welche einen Eingang registrieren, werden in der entsprechenden Zeile grün dargestellt.

+ + + "; + for ($j = 0; $j <= 32; $j++) { + $index = $j - 1; + if ($index == -1) { + echo ""; + } else { + echo ""; + } + } + echo ""; + + // Matrix + for ($i = 0; $i <= 31; $i++) { + echo ""; + echo ""; + + for ($j = 0; $j <= 31; $j++) { + $search = [$j, $i]; + if (in_array($search, $bridges)) { + echo ""; + } else { + echo ""; + } + } + echo ""; + } + ?> +
$index
$i-
+
+ Erklärung:
+ Jede Verbindung darf nur einmal aufgeführt sein. Gibt es Doppelungen, so besteht eine unzulässige Verbindung zu einem anderen Pin. + Kann sich ein Pin nicht selbst auslesen, so weist dies auf einen internen Kabelbruch oder ein defektes Bauteil hin. + Ist der Fehler spiegelsymmetrisch (z.B. 10-20 und 20-10), deutet dies auf einen Kurzschluss im System hin. + Tritt der Fehler nur einseitig auf, ist ein Bauteil defekt.

"); + ?> + +
+ Zurück +
+ + +
Selbstdiagnose
+ +

Sollten während Messungen Fehler aufgetreten sein, kann hier eine interne Diagnose durchgeführt werden. Dabei wird jeder "Pin" einmalig als Ausgang gesetzt und gleichzeitig der Wert ausgelesen. Nur, wenn der Pin selbst gelesen werden kann und keine unzulässigen Verbindungen zu anderen Pins bestehen, wird die Prüfung erfolgreich abgeschlossen.

+
+

Bitte trennen Sie zuvor alle Verbindungen, sodass sich das Gerät im Leerlauf befindet. Angeschlossene Kabel und Stecker verfälschen das Ergebnis!

+
+ +
+ Selbstdiagnose ausführen +
+ diff --git a/pagecontent/start-cable.php b/pagecontent/start-cable.php new file mode 100755 index 0000000..2659f19 --- /dev/null +++ b/pagecontent/start-cable.php @@ -0,0 +1,122 @@ + +

+ Die Prüfung konnte nicht abgeschlossen werden. Fehler +

+ 2. Fehlerfall +//es wäre schon sehr eigenartig, wenn verschiedene Fehlercodes nacheinander ausgespuckt würden (Wackelkontakt?) +if($bridges1 !== $bridges2) { + + measurementsDiffer($bridges1, $bridges2); + +} + +// Isoliere die Brücken und speichere sie als $bridges (hiermit wird später alles weitere verarbeitet) +$bridges = array_map(function($entry) { + return $entry[0]; +}, $bridges1); + +//Isoliere die Fehlercodes der ersten Messung; da Messungen identisch reicht erste Messung +$errors = array_filter($bridges1, function($entry) { + return $entry[1] !== 0; +}); + +//Wenn Fehlerspeicher gefüllt: Ausgabe und Abbruch +if (!empty($errors)) { + + measurementsContainErrors($bridges1); + +} + +// ---------- +//Ab hier wird die Logik geprüft, die Messung ist bis hierhin äußerlich in Ordnung +// ---------- + + +$bridges = translateArray($bridges, $translationMap, $translationMap2); + +$cleaned_output = []; +$errors = []; + +$ok = true; + +// iteriere durch die Messung und prüfe, ob stets gilt [[20,20],[22,22]] +//wenn nein: Kurzschluss ($errors) +foreach($bridges as $bridge) { + if($bridge[0] == $bridge[1]) { + $cleaned_output[] = $bridge[0]; + } + else { + $ok = false; + $errors[] = $bridge; + } +} + + +//Haupt-Steckergrafik +$url = 'stecker.php?mode=fill&data=' . urlencode(json_encode($cleaned_output)); + +?> + +
Ergebnis
+
+

Vollständigkeit

+

Die folgende Grafik zeigt Ihnen, auf welchen Adern eine durchgängige Verbindung erkannt wurde. Nur, wenn alle Pins grün gefüllt sind, ist das Spurkabel in Ordnung!

+ + + + + + +

Unzulässigkeiten

+

Die folgende Grafik zeigt Ihnen, auf welchen Adern eine Verbindung zu einer anderen Ader erkannt wurde. Ist die Grafik leer, sind alle Adern korrekt isoliert.

+ +

+ Es wurde mindestens ein Kurzschluss gefunden! +

+ + + + + +
Zurück
+ diff --git a/pagecontent/start.php b/pagecontent/start.php new file mode 100755 index 0000000..9ac01f7 --- /dev/null +++ b/pagecontent/start.php @@ -0,0 +1,625 @@ + +

+ Die Prüfung konnte nicht abgeschlossen werden. Fehler +

+ 2. Fehlerfall +//es wäre schon sehr eigenartig, wenn verschiedene Fehlercodes nacheinander ausgespuckt würden (Wackelkontakt?) +if($bridges1 !== $bridges2) { + + measurementsDiffer($bridges1, $bridges2); + +} + +// Isoliere die Brücken und speichere sie als $bridges (hiermit wird später alles weitere verarbeitet) +$bridges = array_map(function($entry) { + return $entry[0]; +}, $bridges1); + +//Isoliere die Fehlercodes der ersten Messung; da Messungen identisch reicht erste Messung +$errors = array_filter($bridges1, function($entry) { + return $entry[1] !== 0; +}); + +//Wenn Fehlerspeicher gefüllt: Ausgabe und Abbruch +if (!empty($errors)) { + + measurementsContainErrors($bridges1); + +} + +// ---------- +//Ab hier wird die Logik geprüft, die Messung ist bis hierhin äußerlich in Ordnung +// ---------- + + +//Hier wird jetzt geprüft, dass jede Messung bidirektional aufgenommen wurde, also 10<>20 UND 20<>10 +$doubles = []; // Array zur Verfolgung von Doppelungen +$errors = []; // Array für fehlende Doppelungen + +// Untersuche die einzelnen aufgenommenen Messpaare +foreach ($bridges as $pair) { + // Jedes Paar MUSS aus zwei Elementen bestehen + if (count($pair) !== 2) { + $errors[] = $pair; // speichere diesen fehlerhaften Eintrag + continue; + } + // Sortiere die Paare, um [23,14] und [14,23] gleich zu behandeln + sort($pair); + // Setze dieses Paar als "Index", um es gleich wieder zu finden + $key = implode("-", $pair); + // Prüfe, ob dieser Eintrag schon einmal da war + if (isset($doubles[$key])) { + $doubles[$key]++; // Verbindung erneut gefunden + } + else { + $doubles[$key] = 1; // Erstmaliges Auftreten + } +} +// Überprüfe, ob jede Verbindung genau zweimal vorhanden ist +foreach ($doubles as $key => $count) { + if ($count !== 2) { + $errors[] = $key; + } +} + +// Abbruch bei fehlenden Doppelungen +if (!empty($errors)) { + echo "Die Messung wurde zwar erfolgreich abgeschlossen, die Messergebnisse überzeugten jedoch nicht.
Es ist notwendig, dass Kabelbrücken aus beiden Richtungen erkannt werden.
Erwägen Sie, eine erneute Messung durchzuführen. Sollte der Fehler erneut auftreten, ist ein interner Defekt des Prüfgeräts wahrscheinlich.

Die folgende(n) Kabelbrücke(n) konnte(n) nur one-way gemessen werden:
"; + print_r($errors); + + ?> +
Zurück
+ + +
Ergebnis
+
+
+

Gesamtergebnis

+
+ +
+
+

Einzelbrücken

+
+
+
+ +
+ +
+

Identifizierte Brücken

+query(" + SELECT + b.id AS bridge_id, + n.node_from, + n.node_to + FROM + bridges b + JOIN + nodes n ON b.id = n.required_by + ORDER BY + b.id +"); + + +/* +Ausgabe sieht z.B. so aus: + +| bridge_id | node_from | node_to | +| --------- | --------- | ------- | +| 1 | 20 | 30 | +| 1 | 13 | 17 | +| 2 | 10 | 15 | + +*/ + +//die DB-ausgbe wird als indexiertes Array gespeichert, um einfacher durchsucht werden zu können +$bridges_db = []; +while ($row = $nodes->fetchArray(SQLITE3_ASSOC)) { + //Die Bridge-ID ist der Index, die geforderten Brücken werden im Standardformat eingefügt, z.B.: 1 => [[20,30],[13,17]] + $bridge_id = $row['bridge_id']; + $bridges_db[$bridge_id][] = [$row['node_from'], $row['node_to']]; +} + +//Vergleiche Datenbank mit gemessenen Werten +//iteriere durch alle Datenabnk-Brücken +foreach($bridges_db as $bridge_db => $required_nodes) { + $satisfied = true; + //iteriere durch alle von einer Brücke geforderten Node-Paare + foreach($required_nodes as $required_nodes_pairs) { + $innerMatch = 0; + // vergleiche die aktuelle Datenbank-Node mit allen gemessenen Nodes (+überkreuz) + for($i=0;$i<$measurement_result_number;$i++) { + if(($required_nodes_pairs[0] == $measurement_result[$i][0] && $required_nodes_pairs[1] == $measurement_result[$i][1] )||($required_nodes_pairs[1] == $measurement_result[$i][0] && $required_nodes_pairs[0] == $measurement_result[$i][1])){ + // innerhalb der Node-zu-Node-Verbidnung wurde die Bedingung erfüllt + $innerMatch = 1; + } + } + if($innerMatch != 1) { + // An dieser Stelle wird satisfied direkt negiert, da mind. eine Abhängigkeit, die in der Datenbank gefordert ist, nicht gefunden wurde + $satisfied = false; + } + } + // Kommen alle Nodes vor, wird die Brücke mit ihrem entsprechenden Namen dargestellt + if($satisfied == true) { + //Brücke vollständig enthalten -> speichern für später (Programm-Erkennung) + $identified_bridges[] = $bridge_db; + + //Erinnerung: es gilt bridge_db=>bridges_db + $url = '../stecker.php?data=' . urlencode(json_encode($bridges_db[$bridge_db])); // URL parsen + ?> +
+ ' . $bridge_db . '
'); + print(''); + ?> +
+ query(" + SELECT + p.id AS program_id, + p.program_description, + b.id AS bridge_id, + r.plug_id + FROM + program_bridge_relation r + JOIN programs p ON p.id = r.program_id + JOIN bridges b ON b.id = r.bridge_id + WHERE r.plug_id = '" . $plug . "' +"); + + +/* +Ausgabe sieht z.B. so aus: + +| program_id | program_description | bridge_id | +| ---------- | ------------------- | --------- | +| 1 | Weiche, die... | 1 | +| 2 | Gs, die... | 1 | +| 2 | Gs, die... | 10 | + +*/ + + +$bridges_db = []; +while ($row = $programs->fetchArray(SQLITE3_ASSOC)) { + // Gleiches vorgehen wie bei den Brücken: Programm-ID ist Index, Brücken sind Inhalt (2 => [1,10]) + $program_id = $row['program_id']; + $programs_db[$program_id][] = $row['bridge_id']; + $program_descriptions[$program_id] = $row['program_description']; +} + + +//Ist eine Stelle der Kennung des Programmsteckers zwischendrin doppelt beschrieben woren, wird idse Variable wahr +$double_program_identifier = false; + + +?> +
+

Identifizierte Programme

+
+ $required_bridges) { + + if(!empty($identified_bridges)) { //Abscicherung, sonst würde ein leeres Programm immer als vollständig enthalten markiert werden + $ok = 1; + } + else { + $ok = 0; + } + + // Iteriere durch alle geforderten Brücken + foreach ($required_bridges as $bridge_id) { + // sollte sich eine Programmbrücke nicht unter den identifizierten Messwerte befinden -> ok=0 + if (!in_array($bridge_id, $identified_bridges)) { + $ok = 0; + } + } + + // Programm ist mit allen Brücken vollständig vertreten + if($ok == 1) { + + ?> +
+
+ + query("SELECT * FROM program_id_bits WHERE program_id = '" . $program_db . "' ORDER BY position;"); + + while ($program_identifier = $program_identifiers->fetchArray(SQLITE3_ASSOC)) { + echo '' . $program_identifier["value"] . ''; + if($program_identifier["value"] != "" && $program_identifier["value"] != "-") { // wenn noch nicht anders beschrieben oder leer -> Einfügen in großen "Gesamtspeicher" für später + if($program_cache[$program_identifier["position"]] == "?") { + $program_cache[$program_identifier["position"]] = $program_identifier["value"]; + } + else { + // Wenn Stelle schon gesetzt war -> Warnung speichern + $double_program_identifier = true; + } + } + $i++; + } + ?> + +
+ '); + + ?> + +
+
+ + + +
+ +
+ +
+

Kennungs-Nummer

+
+
+
+ + ' . $cacheChar . ''; + if($cacheChar == "?") { + $ok = 0; + } + } + ?> + +
+
+
+ +

+ Wichtiger Hinweis: Es sind nicht alle Stellen der Kennungsnummer definiert. Dies deutet darauf hin, dass möglicherweise nicht alle Programme des Steckers korrekt erkannt wurden. Andererseits kann auch die Programm-Datenbank unvollständig sein, sodass eine Erkennung nicht möglich ist.
Betrachten Sie daher das Ergebnis mit Vorsicht! +

+ +

+ Wichtiger Hinweis: Im Laufe der Programmabgleiche wurde versucht, eine Stelle der Gesamtkennungsnummer zu übeschreiben, da diese bereits durch ein vorheriges Programm festgelegt wurde. Details dazu finden Sie unter "Indentifizierte Programme". Bitte gleichen Sie die Spalten ab, ob eine doppelte Stellendefinition vorliegt!
Betrachten Sie daher das Ergebnis mit Vorsicht! +

+ +
+

Identische Messungen

+
+ + query(" + SELECT + m.id AS measurement_id, + m.comment AS comment, + m.timestamp AS timestamp, + m.place_name AS place_name, + n.node_from AS node_from, + n.node_to AS node_to + FROM + measurements m + JOIN places p ON p.name = m.place_name + JOIN measurement_nodes n ON m.id = n.required_by + ORDER BY m.id + "); + + /* + Ausgabe sieht z.B. so aus: + + | measurement_id | comment | timestamp | place_name | node_from | node_to | + | -------------- | ------- | ---------- | -------------------- | --------- | ------- | + | 1 | abc | 1753357680 | Mannheim-Waldhof Wf | 20 | 26 | + | 1 | abc | 1753357680 | Mannheim-Waldhof Wf | 13 | 16 | + | 1 | abc | 1753357680 | Mannheim-Waldhof Wf | 30 | 35 | + | 2 | def | 1753357548 | Dudweiler Df | 30 | 35 | + | 2 | def | 1753357548 | Dudweiler Df | 10 | 12 | + + */ + + // Auch hier werden alle Messungen erstmal komplex indexiert (also zwei ineinander indexierte Arrays): measurement_id=>(nodes=>[[30,35],[10,12]], place_name, timestamp, comment) + $measurements_db = []; + while ($row = $measurement_nodes_db->fetchArray(SQLITE3_ASSOC)) { + $measurement_id = $row['measurement_id']; + $measurements_db[$measurement_id]['nodes'][] = [$row['node_from'],$row['node_to']]; + $measurements_db[$measurement_id]['place_name'] = $row['place_name']; + $measurements_db[$measurement_id]['timestamp'] = $row['timestamp']; + $measurements_db[$measurement_id]['comment'] = $row['comment']; + } + + //Indikator, dass alle Brücken gefunden wurden + $ok = 0; + + foreach ($measurements_db as $measurement_db) { + $satisfied = true; + + foreach ($measurement_result as $bridge_measure) { + $found = false; + + foreach ($measurement_db["nodes"] as $measurement_db_node) { + // Prüfe, ob Brücke identisch (+ überkreuz) + if ( + ($bridge_measure[0] == $measurement_db_node[0] && $bridge_measure[1] == $measurement_db_node[1]) || + ($bridge_measure[0] == $measurement_db_node[1] && $bridge_measure[1] == $measurement_db_node[0]) + ) { + $found = true; // Brücke gefunden + break; // Nächste Brücke prüfen + } + } + + if (!$found) { + // Diese Brücke nicht in DB gefunden -> Messung nicht erfüllt + $satisfied = false; + break; // weitere Brücken prüfen sinnlos + } + } + + if ($satisfied) { + $ok = 1; + + ?> +
+ + + + + + + + + + + +
+
+
+
+ + + " . date('d.m.Y H:i:s',$measurement_db["timestamp"]) . ""; + ?> + +
+
+
+
+
+ +
+ + +

Keine bekannt.

+ + +
+ +

Anpassen der Ergebnisse

+ + + + + + + + + + + + + + + + + + + +
+

Kennungs-Nr.

+
+
+ + + + + +
+
+

Sekundärbrücken abwählen

+
+
+ + + + + + + + + + +
+
+ +
+

Besonderheiten

+
+ +
+ +
+

Speichern unter...?

+ +
+ +
+ + + +
+
+

+ Die dargestellten Vorschläge befinden sich bereits in der Datenbank. Geben Sie einen Ort sein, der noch nicht in der Datenbank vorhanden ist, so wird dieser automatisch erstellt +

+ +
+ +
Zurück
+ + diff --git a/pagecontent/stecker.php b/pagecontent/stecker.php new file mode 100755 index 0000000..0dd4abe --- /dev/null +++ b/pagecontent/stecker.php @@ -0,0 +1,124 @@ +'; +?> + + + + + + + 30 + 10 + 31 + 11 + + + + + + + + + + + + + + + + + + + [70, 68], 20 => [70, 44], 30 => [70, 20], + 11 => [405, 68], 12 => [370, 68], 13 => [335, 68], 14 => [300, 68], + 15 => [265, 68], 16 => [230, 68], 17 => [195, 68], 18 => [160, 68], 19 => [125, 68], + 21 => [405, 44], 22 => [370, 44], 23 => [335, 44], 24 => [300, 44], + 25 => [265, 44], 26 => [220, 44], 27 => [185, 44], 28 => [150, 44], 29 => [115, 44], + 31 => [405, 20], 32 => [370, 20], 33 => [335, 20], 34 => [300, 20], + 35 => [265, 20], 36 => [230, 20], 37 => [195, 20], 38 => [160, 20], 39 => [125, 20], + ]; + + // Rechtecke einfärben, wenn "fill"-Modus aktiv ist + if ($_GET["mode"] == "fill") { + $data = $_GET["data"]; + $data = json_decode(urldecode($data), true); + + foreach ($pin_coordinates as $key => $coordinates) { + $fill = in_array($key, $data) ? "green" : "red"; + echo ''; + } + } else { + // Nur Umrisse + foreach ($pin_coordinates as $coordinates) { + echo ''; + } + } + + // SVG frühzeitig beenden, wenn kein Data vorhanden oder im fill-Modus + if (empty($_GET['data']) || $_GET["mode"] == "fill") { + print ""; + die(); + } + + // Brückenverbindungen übersetzen, falls aktiviert + if ($_GET["translate"] == "true") { + $db = new SQLite3('db-test/test.db'); + $data = json_decode($_GET["data"], true); + $plug = json_decode(file_get_contents("settings.json"), true)["plug"]; + $nodes_raw = []; + + foreach ($data as $bridge) { + $nodes = $db->query("SELECT node_from, node_to FROM nodes WHERE required_by = " . $bridge); + while ($node = $nodes->fetchArray(SQLITE3_ASSOC)) { + $nodes_raw[] = [$node['node_from'], $node['node_to']]; + } + } + $inputArray = $nodes_raw; + } else { + $inputArray = json_decode($_GET['data'], true); + } + + // Koordinaten übersetzen + $translatedArray = array_map(function ($pair) use ($pin_coordinates) { + return [ + $pin_coordinates[$pair[0]], + $pin_coordinates[$pair[1]], + ]; + }, $inputArray); + + $colors = ["#1a5fb4", "#26a269", "#e5a50a", "#c64600", "#a51d2d", "#613583", "#63452c", "#3d3846"]; + + // Linien ausgeben + $colorNumber = 0; + foreach ($translatedArray as $line) { + $point1 = $line[0]; + $point2 = $line[1]; + + $point1x = $point1[0] + 10; + $point1y = $point1[1] + 5; + $point2x = $point2[0] + 10; + $point2y = $point2[1] + 5; + + echo ''; + + $colorNumber = ($colorNumber + 1) % count($colors); + } + ?> + diff --git a/pagecontent/system.php b/pagecontent/system.php new file mode 100755 index 0000000..6c4fb15 --- /dev/null +++ b/pagecontent/system.php @@ -0,0 +1,139 @@ + +
System-Aktionen
+
+
Herunterfahren
+
Neu starten
+
Systeminfo
+
WLAN-/DHCP-Konfig anzeigen
+
Selbstdiagnose
+ + +
System-Aktionen: Sys-Info
+
+ +

Kernel-Version:

+ $output"; + ?> + +

Betriebssystem:

+ $output"; + ?> + +

System-Uptime:

+ $output"; + ?> + +

Letzter Boot:

+ $output"; + ?> + +

CPU-Infos:

+ $output"; + ?> + +

Arbeitsspeicher:

+ $output"; + ?> + +

Speicherplatz:

+ $output"; + ?> + +

Python-Version:

+ $output"; + ?> + +

Top 5 Prozesse nach CPU-Auslastung:

+ $output"; + ?> + +

CPU-Temperatur:

+ $output"; + ?> +

System-Uhrzeit (PHP):

+ " . strftime("%A, %e. %B %Y %H:%M:%S") . ""; + + + break; + case "wifi": + ?> +
System-Aktionen: WLAN/DHCP
+
+

Netzwerkverbindungen:

+ $output"; + ?> +

Verbundene Geräte:

+ $output"; + ?> +

Netzwerkschnittstellen:

+ $output"; + ?> +

Ifconfig:

+ $output"; + break; + case "reboot": + ?> +
System-Aktionen: Neustart
+
+ +

Das Prüfgerät wird nun neu gestartet. Die Verbindung wird in Kürze getrennt.

+

Stellen Sie sicher, dass Sie sich im Anschluss wieder mit dem Geräte-WLAN verbinden.

+ &1'); + echo "------- Fehlerprotokoll nach dieser Zeile -------
$output"; + break; + case "shutdown": + ?> +
System-Aktionen: Herunterfahren
+
+ +

Das Prüfgerät wird nun heruntergefahren. Die Verbindung wird in Kürze getrennt.

+

Auf Wiedersehen!

+ &1'); + echo "------- Fehlerprotokoll nach dieser Zeile -------
$output"; + break; +} diff --git a/pagecontent/temp.json b/pagecontent/temp.json new file mode 100755 index 0000000..e69de29 diff --git a/python/.plug-check.py.swp b/python/.plug-check.py.swp new file mode 100644 index 0000000000000000000000000000000000000000..dee90ad0c61964af8331d8f59232d8666023ade1 GIT binary patch literal 1024 zcmYc?$V<%2S1{KzVn6}wm>C#~OHz}wQ;Q0UN>kHPi%_IdI7NxY1xcwzMU@4aDB|dx cf}GNH-Q*0Qp?U?C=#r!S(GVC70lJ3(0EP7vJ^%m! literal 0 HcmV?d00001 diff --git a/python/.selfcheck.py.swp b/python/.selfcheck.py.swp new file mode 100644 index 0000000000000000000000000000000000000000..7134580abec1c1dc3d2e42d798c845fb81ee6afa GIT binary patch literal 1024 zcmYc?$V<%2S1{KzVn6}&Sr{0KOHz}wQ;Q0UN>kHPi%_IdI7NxY1xcwzMU@4aDB|dx e;?$h9>>>Es konnte vom pruefer1_A_value der Wert {format(pruefer1_A_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom pruefer1_B_value der Wert {format(pruefer1_B_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom pruefer2_A_value der Wert {format(pruefer2_A_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom pruefer2_B_value der Wert {format(pruefer2_B_value, '08b')} festgetsellt werden") + + #print(f"------>>>>Es konnte vom observer1_A_value der Wert {format(observer1_A_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom observer1_B_value der Wert {format(observer1_B_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom observer2_A_value der Wert {format(observer2_A_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom observer2_B_value der Wert {format(observer2_B_value, '08b')} festgetsellt werden") + + #print(f"------>>>>Es konnte vom spurkabel1_A_value der Wert {format(spurkabel1_A_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom spurkabel1_B_value der Wert {format(spurkabel1_B_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom spurkabel2_A_value der Wert {format(spurkabel2_A_value, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom spurkabel2_B_value der Wert {format(spurkabel2_B_value, '08b')} festgetsellt werden") + + #print("===========================================================================") + + + for j in range(8): # Verarbeite 4*8=32 Pins + Jeweils 32 Observer- und Spurkabel-Daten + bitmaske = 1 << j # Erstelle eine Maske: 1, 2, 4, 8, 16, ... + + pruefer1_A_value_bit = bool(pruefer1_A_value & bitmaske) + pruefer1_B_value_bit = bool(pruefer1_B_value & bitmaske) + pruefer2_A_value_bit = bool(pruefer2_A_value & bitmaske) + pruefer2_B_value_bit = bool(pruefer2_B_value & bitmaske) + + observer1_A_value_bit = bool(observer1_A_value & bitmaske) + observer1_B_value_bit = bool(observer1_B_value & bitmaske) + observer2_A_value_bit = bool(observer2_A_value & bitmaske) + observer2_B_value_bit = bool(observer2_B_value & bitmaske) + + spurkabel1_A_value_bit = bool(spurkabel1_A_value & bitmaske) + spurkabel1_B_value_bit = bool(spurkabel1_B_value & bitmaske) + spurkabel2_A_value_bit = bool(spurkabel2_A_value & bitmaske) + spurkabel2_B_value_bit = bool(spurkabel2_B_value & bitmaske) + + + + i = j + + + + if spurkabel1_A_value_bit == False: + data.append([[pin ,i],0]) + + if pruefer1_A_value_bit == False and observer1_A_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer1_A_value_bit == True and observer1_A_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + + i = j + 8 + + + if spurkabel1_B_value_bit == False: + data.append([[pin ,i],0]) + + if pruefer1_B_value_bit == False and observer1_B_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer1_B_value_bit == True and observer1_B_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + + i = j + 16 + + + if spurkabel2_A_value_bit == False: + data.append([[pin ,i],0]) + + if pruefer2_A_value_bit == False and observer2_A_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer2_A_value_bit == True and observer2_A_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + + i = j + 24 + + if spurkabel2_B_value_bit == False: + data.append([[pin ,i],0]) + + if pruefer2_B_value_bit == False and observer2_B_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer2_B_value_bit == True and observer2_B_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + logs["errorcode"] = 10 + +if __name__ == "__main__": + try: + main() + except: + logs["errorcode"] = 13 + array["logs"] = logs + array["data"] = data + json_output = json.dumps(array) + print(json_output) + + + + diff --git a/python/observer-full.py b/python/observer-full.py new file mode 100644 index 0000000..2709889 --- /dev/null +++ b/python/observer-full.py @@ -0,0 +1,219 @@ +import smbus +import time +import json +import sys + +pruefer1 = 0x20 +pruefer2 = 0x21 +observer1 = 0x22 +observer2 = 0x23 + +adressen = [pruefer1, pruefer2, observer1, observer2] + +IODIRA = 0x00 # Eingang / Ausgang A +IODIRB = 0x01 # Eingang / Ausgang B +GPPUA = 0x0C # Eingang / Ausgang A +GPPUB = 0x0D # Eingang / Ausgang B +GPIOA = 0x12 # GPIO A +GPIOB = 0x13 # GPIO B + +array = {} +logs = {} +data = [] + + +try: + # Initialisiere den I2C Bus + bus = smbus.SMBus(1) +except: + logs["errorcode"] = 12 + array["logs"] = logs + json_output = json.dumps(array) + print(json_output) + sys.exit(0) + +def default(): + + #Schleife für alle Registeradressen (0x00 bis 0x15) + for register in range(0x00, 0x16): + for adresse in adressen: + #print("Setze " + str(adresse) + " in Register " + str(register) + " auf Wert 0x00") + bus.write_byte_data(adresse, register, 0x00) + + + #print("Hallo! Es wird damit begonnen, alle Register zurpckzusetzen...") + #Aktiviere alle Pullups und setze alle als Eingang + time.sleep(0.05) + for adresse in adressen: + bus.write_byte_data(adresse, IODIRA, 0xFF) + bus.write_byte_data(adresse, GPPUA, 0xFF) + bus.write_byte_data(adresse, IODIRB, 0xFF) + bus.write_byte_data(adresse, GPPUB, 0xFF) + + #print("============= Reset erfolgreich! =============") + +def main(): + try: + default() + except: + logs["errorcode"] = 11 + return + time.sleep(0.05) + for pin in range(32): # 0 bis 31 + aktuellAn = pin + + for adresse in adressen: + bus.write_byte_data(adresse, IODIRA, 0xFF) + bus.write_byte_data(adresse, GPPUA, 0xFF) + bus.write_byte_data(adresse, IODIRB, 0xFF) + bus.write_byte_data(adresse, GPPUB, 0xFF) + + time.sleep(0.05) + + if pin < 16: + # Setze den gewählten Pin auf HIGH + if pin < 8: # Pins A0-A7 + + wert = 0xFF & ~(1 << pin) # Alle Bits auf 1, außer das eine gewünschte auf 0 + + bus.write_byte_data(pruefer1, GPPUA, wert) + bus.write_byte_data(pruefer1, IODIRA, wert) + bus.write_byte_data(pruefer1, GPIOA, 0x00) + + else: # Pins B0-B7 + wert = 0xFF & ~(1 << pin - 8) # Alle Bits auf 1, außer das eine gewünschte auf 0 + + bus.write_byte_data(pruefer1, GPPUB, wert) + bus.write_byte_data(pruefer1, IODIRB, wert) + bus.write_byte_data(pruefer1, GPIOB, 0x00) + else: + # Setze den gewählten Pin auf HIGH + if pin < 24: # Pins A0-A7 + wert = 0xFF & ~(1 << pin - 16) # Alle Bits auf 1, außer das eine gewünschte auf 0 + + bus.write_byte_data(pruefer2, GPPUA, wert) + bus.write_byte_data(pruefer2, IODIRA, wert) + bus.write_byte_data(pruefer2, GPIOA, 0x00) + else: # Pins B0-B7 + wert = 0xFF & ~(1 << pin - 24) # Alle Bits auf 1, außer das eine gewünschte auf 0 + + bus.write_byte_data(pruefer2, GPPUB, wert) + bus.write_byte_data(pruefer2, IODIRB, wert) + bus.write_byte_data(pruefer2, GPIOB, 0x00) + + time.sleep(0.05) + + ##print(f"i2cget -y 1 0x20 0x12") + pruefer1_A_value = bus.read_byte_data(pruefer1, GPIOA) + pruefer1_B_value = bus.read_byte_data(pruefer1, GPIOB) + pruefer2_A_value = bus.read_byte_data(pruefer2, GPIOA) + pruefer2_B_value = bus.read_byte_data(pruefer2, GPIOB) + + observer1_A_value = bus.read_byte_data(observer1, GPIOA) + observer1_B_value = bus.read_byte_data(observer1, GPIOB) + observer2_A_value = bus.read_byte_data(observer2, GPIOA) + observer2_B_value = bus.read_byte_data(observer2, GPIOB) + + #print(f"------>>>>Es konnte vom Pruefer der Wert {format(Wert_pruefer, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom Observer der Wert {format(Wert_observer, '08b')} festgetsellt werden") + + + for j in range(8): # Verarbeite 4*8=32 Pins + Jeweils 32 Observer-Daten + bitmaske = 1 << j # Erstelle eine Maske: 1, 2, 4, 8, 16, ... + + pruefer1_A_value_bit = bool(pruefer1_A_value & bitmaske) + pruefer1_B_value_bit = bool(pruefer1_B_value & bitmaske) + pruefer2_A_value_bit = bool(pruefer2_A_value & bitmaske) + pruefer2_B_value_bit = bool(pruefer2_B_value & bitmaske) + + observer1_A_value_bit = bool(observer1_A_value & bitmaske) + observer1_B_value_bit = bool(observer1_B_value & bitmaske) + observer2_A_value_bit = bool(observer2_A_value & bitmaske) + observer2_B_value_bit = bool(observer2_B_value & bitmaske) + + + + i = j + + if pruefer1_A_value_bit == False and i != pin: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if observer1_A_value_bit == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,i],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,i],1]) + if pruefer1_A_value_bit == False and observer1_A_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer1_A_value_bit == True and observer1_A_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + + i = j + 8 + + if pruefer1_B_value_bit == False and i != pin: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if observer1_B_value_bit == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,i],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,i],1]) + if pruefer1_B_value_bit == False and observer1_B_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer1_B_value_bit == True and observer1_B_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + i = j + 16 + + if pruefer2_A_value_bit == False and i != pin: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if observer2_A_value_bit == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,i],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,i],1]) + if pruefer2_A_value_bit == False and observer2_A_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer2_A_value_bit == True and observer2_A_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + i = j + 24 + + if pruefer2_B_value_bit == False and i != pin: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if observer2_B_value_bit == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,i],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,i],1]) + if pruefer2_B_value_bit == False and observer2_B_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer2_B_value_bit == True and observer2_B_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + logs["errorcode"] = 10 + +if __name__ == "__main__": + try: + main() + except: + logs["errorcode"] = 13 + array["logs"] = logs + array["data"] = data + json_output = json.dumps(array) + print(json_output) + + + + diff --git a/python/observer.py b/python/observer.py new file mode 100644 index 0000000..534410e --- /dev/null +++ b/python/observer.py @@ -0,0 +1,127 @@ +import smbus +import time +import json +import sys + +pruefer = 0x20 +observer = 0x22 + + +IODIRA = 0x00 # Eingang / Ausgang A +IODIRB = 0x01 # Eingang / Ausgang B +GPPUA = 0x0C # Eingang / Ausgang A +GPPUB = 0x0D # Eingang / Ausgang B +GPIOA = 0x12 # GPIO A +GPIOB = 0x13 # GPIO B + +array = {} +logs = {} +data = [] + + +try: + # Initialisiere den I2C Bus + bus = smbus.SMBus(1) +except: + logs["errorcode"] = 12 + array["logs"] = logs + json_output = json.dumps(array) + print(json_output) + sys.exit(0) + + + + + +def default(): + #adressen = [pruefer] + + # Schleife für alle Registeradressen (0x00 bis 0x15) + #for register in range(0x00, 0x16): + # for adresse in adressen: + # time.sleep(0.05) + # #print("Setze " + str(adresse) + " in Register " + str(register) + " auf Wert 0x00") + # bus.write_byte_data(adresse, register, 0x00) + + + #print("Hallo! Es wird damit begonnen, alle Register zurpckzusetzen...") + time.sleep(0.05) + bus.write_byte_data(pruefer, IODIRA, 0xFF) + bus.write_byte_data(observer, IODIRA, 0xFF) + + bus.write_byte_data(pruefer, GPPUA, 0xFF) + bus.write_byte_data(observer, GPPUA, 0xFF) + #print("============= Reset erfolgreich! =============") + +def main(): + try: + default() + except: + logs["errorcode"] = 11 + return + time.sleep(0.05) + for pin in range(8): # 0 bis 7 + wert = 0xFF & ~(1 << pin) # Alle Bits auf 1, außer das eine gewünschte auf 0 + #print("======== Setze Pin " + str(pin) + " auf den Wert " + format(wert, '08b')); + + + bus.write_byte_data(pruefer, GPPUA, wert) + bus.write_byte_data(pruefer, IODIRA, wert) # Setze einzeln als Ausgang 111011111 usw... + bus.write_byte_data(pruefer, GPIOA, 0x00) # Deaktiviere alle pins (es reagiert sowieso nur der Ausgang, dh keine Bitmaske erforderlich) 00000000 usw.. + + time.sleep(0.05) + + ##print(f"i2cget -y 1 0x20 0x12") + Wert_pruefer = bus.read_byte_data(pruefer, GPIOA) + Wert_observer = bus.read_byte_data(observer, GPIOA) + + #print(f"------>>>>Es konnte vom Pruefer der Wert {format(Wert_pruefer, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom Observer der Wert {format(Wert_observer, '08b')} festgetsellt werden") + + ok = 0 + + for j in range(8): # Lese 4*8=32 Pins + bitmaske = 1 << j # Erstelle eine Maske: 1, 2, 4, 8, 16, ... + + Bit_pruefer = bool(Wert_pruefer & bitmaske) + Bit_observer = bool(Wert_observer & bitmaske) + + if Bit_observer == False: # Prüfe, ob aktueller Pin wirklich 0 sein darf + if j == pin: + ok = 1 + if Bit_pruefer == False and j != pin: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if Bit_observer == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,j],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,j],1]) + if Bit_pruefer == False and Bit_observer == True: + data.append([[pin ,j],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if Bit_pruefer == True and Bit_observer == False: + data.append([[pin ,j],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + + + if ok != 1: + #print("Fehler beim Aufruf von Pin " + str(pin) + "! Es konnte nicht bestätigt werden, dass dieser Pin tatsächlich LOW ist!"); + data.append([[pin ,"???"],4]) + + logs["errorcode"] = 10 + +if __name__ == "__main__": + try: + main() + except: + logs["errorcode"] = 13 + array["logs"] = logs + array["data"] = data + json_output = json.dumps(array) + print(json_output) + + + + diff --git a/python/plug-check.py b/python/plug-check.py new file mode 100644 index 0000000..453ab60 --- /dev/null +++ b/python/plug-check.py @@ -0,0 +1,165 @@ +import smbus +import time +import json + +# Adressen der beiden MCP23017 Chips +AusgangRechts = 0x20 # Ausgang rechte Hälfte +AusgangLinks = 0x21 # Ausgang linke Hälfte +EingangRechts = 0x24 # Eingang rechte Hälfte +EingangLinks = 0x23 # Eingang linke Hälfte + +# Register-Adressen für den MCP23017 +IODIRA = 0x00 # Eingang / Ausgang A +IODIRB = 0x01 # Eingang / Ausgang B +GPIOA = 0x12 # GPIO A +GPIOB = 0x13 # GPIO B + +# Initialisiere den I2C Bus +bus = smbus.SMBus(1) + +RechtsA_ausgang = ["Z", "AA", "W", "AB", "AC", "AD", "AE", "AF"] +RechtsB_ausgang = ["Q", "U", "V", "T", "S", "R", "Y", "X"] + +RechtsA_eingang = ["R", "T", "V", "X", "Z", "AB", "AD", "AE"] +RechtsB_eingang = ["Q", "S", "W", "U", "AA", "Y", "AC", "AF"] + +LinksA_ausgang = ["C", "D", "E", "J", "F", "G", "H", "I"] +LinksB_ausgang = ["A", "B", "P", "O", "K", "L", "M", "N"] + +LinksA_eingang = ["B", "D", "F", "H", "J", "K", "M", "I"] +LinksB_eingang = ["A", "C", "E", "G", "L", "N", "O", "P"] + + +array = [] + +def default(): + adressen = [AusgangRechts, AusgangLinks, EingangRechts, EingangLinks] + + # Schleife für alle Registeradressen (0x00 bis 0x15) + for register in range(0x00, 0x16): + for adresse in adressen: + time.sleep(0.05) + print("Setze " + str(adresse) + " in Register " + str(register) + " auf Wert 0x00") + bus.write_byte_data(adresse, register, 0x00) + +# Konfiguriere alle Pins auf Chip 1 als Ausgang (A und B) +def configure_chip1_as_output(): + bus.write_byte_data(AusgangRechts, IODIRA, 0x00) # Setze alle Pins von A als Ausgang + bus.write_byte_data(AusgangRechts, IODIRB, 0x00) # Setze alle Pins von B als Ausgang + + bus.write_byte_data(AusgangLinks, IODIRA, 0x00) # Setze alle Pins von A als Ausgang + bus.write_byte_data(AusgangLinks, IODIRB, 0x00) # Setze alle Pins von B als Ausgang + +# Konfiguriere alle Pins auf Chip 2 als Eingang (A und B) +def configure_chip2_as_input(): + bus.write_byte_data(EingangRechts, IODIRA, 0xFF) # Setze alle Pins von A als Eingang + bus.write_byte_data(EingangRechts, IODIRB, 0xFF) # Setze alle Pins von B als Eingang + + bus.write_byte_data(EingangLinks, IODIRA, 0xFF) # Setze alle Pins von A als Eingang + bus.write_byte_data(EingangLinks, IODIRB, 0xFF) # Setze alle Pins von B als Eingang + + +# Hauptprogramm +def main(): + default() + time.sleep(0.05) + configure_chip1_as_output() + time.sleep(0.05) + configure_chip2_as_input() + + # Teste alle Pins auf Chip 1 (A0-A7, B0-B7) + for pin in range(32): # 0 bis 31 + #print(f"Setze Pin {pin} auf HIGH auf Chip 1") + + + + print("setze AusgangRechts GPIOA") + bus.write_byte_data(AusgangRechts, GPIOA, 0x00) + print("setze AusgangRechts GPIOB") + bus.write_byte_data(AusgangRechts, GPIOB, 0x00) + + print("setze AusgangLinks GPIOA") + bus.write_byte_data(AusgangLinks, GPIOA, 0x00) + print("setze AusgangLinks GPIOB") + bus.write_byte_data(AusgangLinks, GPIOB, 0x00) + + + if pin < 16: + # Setze den gewählten Pin auf HIGH + if pin < 8: # Pins A0-A7 + print("setze RechtsA_ausgang" + RechtsA_ausgang[pin]) + bus.write_byte_data(AusgangRechts, GPIOA, 1 << pin) + + aktuellAn = RechtsA_ausgang[pin] + else: # Pins B0-B7 + print("setze RechtsB_ausgang" + RechtsB_ausgang[pin-8]) + bus.write_byte_data(AusgangRechts, GPIOB, 1 << (pin - 8)) + aktuellAn = RechtsB_ausgang[pin - 8] + else: + # Setze den gewählten Pin auf HIGH + if pin < 24: # Pins A0-A7 + print("setze LinksA_ausgang" + LinksA_ausgang[pin-16]) + bus.write_byte_data(AusgangLinks, GPIOA, 1 << pin - 16) + aktuellAn = LinksA_ausgang[pin - 16] + else: # Pins B0-B7 + print("setze LinksB_ausgang" + LinksB_ausgang[pin-24]) + bus.write_byte_data(AusgangLinks, GPIOB, 1 << (pin - 24)) + aktuellAn = LinksB_ausgang[pin - 24] + + print("====================" + aktuellAn + "==========================") + + time.sleep(0.2) # Kurze Pause, damit die Änderung sichtbar wird + + print("Lese Wert_Rechts_A") + Wert_Rechts_A = bus.read_byte_data(EingangRechts, GPIOA) + print(Wert_Rechts_A) + print("Lese Wert_Links_A") + Wert_Links_A = bus.read_byte_data(EingangLinks, GPIOA) + print(Wert_Links_A) + + print("Lese Wert_Rechts_B") + Wert_Rechts_B = bus.read_byte_data(EingangRechts, GPIOB) + print(Wert_Rechts_B) + print("Lese Wert_Links_B") + Wert_Links_B = bus.read_byte_data(EingangLinks, GPIOB) + print(Wert_Links_B) + + + + for j in range(8): # Lese 4*8=32 Pins + bitmaske = 1 << j # Erstelle eine Maske: 1, 2, 4, 8, 16, ... + + Bit_Rechts_A = bool(Wert_Rechts_A & bitmaske) # Isoliere das entsprechende Bit + Bit_Links_A = bool(Wert_Links_A & bitmaske) # Isoliere das entsprechende Bit + Bit_Rechts_B = bool(Wert_Rechts_B & bitmaske) # Isoliere das entsprechende Bit + Bit_Links_B = bool(Wert_Links_B & bitmaske) # Isoliere das entsprechende Bit + + if Bit_Rechts_A == True: + if aktuellAn != RechtsA_eingang[j]: + array.append([aktuellAn ,RechtsA_eingang[j]]) + print("Gefunden: " + RechtsA_eingang[j]) + + if Bit_Links_A == True: + if aktuellAn != LinksA_eingang[j]: + array.append([aktuellAn ,LinksA_eingang[j]]) + print("Gefunden: " + LinksA_eingang[j]) + + if Bit_Rechts_B == True: + if aktuellAn != RechtsB_eingang[j]: + array.append([aktuellAn ,RechtsB_eingang[j]]) + print("Gefunden: " + RechtsB_eingang[j]) + + if Bit_Links_B == True: + if aktuellAn != LinksB_eingang[j]: + array.append([aktuellAn ,LinksB_eingang[j]]) + print("Gefunden: " + LinksB_eingang[j]) + + + + + json_output = json.dumps(array) + print(json_output) + +if __name__ == "__main__": + main() + diff --git a/python/plug-check_external-pulldown.py b/python/plug-check_external-pulldown.py new file mode 100644 index 0000000..5afed45 --- /dev/null +++ b/python/plug-check_external-pulldown.py @@ -0,0 +1,75 @@ +import smbus +import time +import json + +# Adressen der beiden MCP23017 Chips +MP = 0x20 # Ausgang rechte Hälfte + + +# Register-Adressen für den MCP23017 +IODIRA = 0x00 # Eingang / Ausgang A +IODIRB = 0x01 # Eingang / Ausgang B +GPIOA = 0x12 # GPIO A +GPIOB = 0x13 # GPIO B + +# Initialisiere den I2C Bus +bus = smbus.SMBus(1) + + +def default(): + # Schleife für alle Registeradressen (0x00 bis 0x15) + for register in range(0x00, 0x16): + bus.write_byte_data(MP, register, 0x00) + +# Konfiguriere alle Pins auf Chip 1 als Ausgang (A und B) +def configure_chip1_as_output(): + bus.write_byte_data(MP, IODIRA, 0x00) # Setze alle Pins von A als Ausgang + bus.write_byte_data(MP, IODIRB, 0x00) # Setze alle Pins von B als Ausgang + + + +# Hauptprogramm +def main(): + default() + time.sleep(0.5) + configure_chip1_as_output() + + # Teste alle Pins auf Chip 1 (A0-A7, B0-B7) + for pin in range(32): # 0 bis 31 + #print(f"Setze Pin {pin} auf HIGH auf Chip 1") + + + bus.write_byte_data(MP, GPIOA, 0x00) + + + if pin < 16: + # Setze den gewählten Pin auf HIGH + if pin < 8: # Pins A0- + + bus.write_byte_data(MP, IODIRA, ~(1 << pin)) + + bus.write_byte_data(MP, GPIOA, 1 << pin) + + + print("====================" + str(pin) + "==========================") + + time.sleep(0.2) # Kurze Pause, damit die Änderung sichtbar wird + + wert = bus.read_byte_data(MP, GPIOA) + + + + for j in range(8): # Lese 4*8=32 Pins + bitmaske = 1 << j # Erstelle eine Maske: 1, 2, 4, 8, 16, ... + + wert_bitweise = bool(wert & bitmaske) # Isoliere das entsprechende Bit + + + if wert_bitweise == True: + print("Gefunden: " + str(j)) + + + +if __name__ == "__main__": + main() + diff --git a/python/plug-check_internal-pullup.py b/python/plug-check_internal-pullup.py new file mode 100644 index 0000000..08441c4 --- /dev/null +++ b/python/plug-check_internal-pullup.py @@ -0,0 +1,53 @@ +import smbus +import time +import json + +# Adressen der beiden MCP23017 Chips +MP = 0x20 # Ausgang rechte Hälfte + + +# Register-Adressen für den MCP23017 +IODIRA = 0x00 # Eingang / Ausgang A +IODIRB = 0x01 # Eingang / Ausgang B +GPIOA = 0x12 # GPIO A +GPIOB = 0x13 # GPIO B + +PULLUPA = 0x0C +PULLUPB = 0x0D + +# Initialisiere den I2C Bus +bus = smbus.SMBus(1) + +# Hauptprogramm +def main(): + time.sleep(0.5) + + for pin in range(8): + + + bus.write_byte_data(MP, IODIRA, ~(1 << pin)) + time.sleep(0.02) + bus.write_byte_data(MP, PULLUPA, ~(1 << pin)) + time.sleep(0.02) + + bus.write_byte_data(MP, GPIOA, ~(1 << pin)) + time.sleep(0.02) + + + print("====================" + str(pin) + "==========================") + + wert = bus.read_byte_data(MP, GPIOA) + + for j in range(8): # Lese 4*8=32 Pins + bitmaske = 1 << j + + wert_bitweise = bool(wert & bitmaske) + + if wert_bitweise == False and j != pin: + print(str(j)) + + time.sleep(0.02) # Kurze Pause, damit die Änderung sichtbar wird + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/python/selfcheck.py b/python/selfcheck.py new file mode 100644 index 0000000..0c07a99 --- /dev/null +++ b/python/selfcheck.py @@ -0,0 +1,219 @@ +import smbus +import time +import json +import sys + +pruefer1 = 0x20 +pruefer2 = 0x21 +observer1 = 0x22 +observer2 = 0x23 + +adressen = [pruefer1, pruefer2, observer1, observer2] + +IODIRA = 0x00 # Eingang / Ausgang A +IODIRB = 0x01 # Eingang / Ausgang B +GPPUA = 0x0C # Eingang / Ausgang A +GPPUB = 0x0D # Eingang / Ausgang B +GPIOA = 0x12 # GPIO A +GPIOB = 0x13 # GPIO B + +array = {} +logs = {} +data = [] + + +try: + # Initialisiere den I2C Bus + bus = smbus.SMBus(1) +except: + logs["errorcode"] = 12 + array["logs"] = logs + json_output = json.dumps(array) + print(json_output) + sys.exit(0) + +def default(): + + #Schleife für alle Registeradressen (0x00 bis 0x15) + for register in range(0x00, 0x16): + for adresse in adressen: + #print("Setze " + str(adresse) + " in Register " + str(register) + " auf Wert 0x00") + bus.write_byte_data(adresse, register, 0x00) + + + #print("Hallo! Es wird damit begonnen, alle Register zurpckzusetzen...") + #Aktiviere alle Pullups und setze alle als Eingang + time.sleep(0.05) + for adresse in adressen: + bus.write_byte_data(adresse, IODIRA, 0xFF) + bus.write_byte_data(adresse, GPPUA, 0xFF) + bus.write_byte_data(adresse, IODIRB, 0xFF) + bus.write_byte_data(adresse, GPPUB, 0xFF) + + #print("============= Reset erfolgreich! =============") + +def main(): + try: + default() + except: + logs["errorcode"] = 11 + return + time.sleep(0.05) + for pin in range(32): # 0 bis 31 + aktuellAn = pin + + for adresse in adressen: + bus.write_byte_data(adresse, IODIRA, 0xFF) + bus.write_byte_data(adresse, GPPUA, 0xFF) + bus.write_byte_data(adresse, IODIRB, 0xFF) + bus.write_byte_data(adresse, GPPUB, 0xFF) + + time.sleep(0.05) + + if pin < 16: + # Setze den gewählten Pin auf HIGH + if pin < 8: # Pins A0-A7 + + wert = 0xFF & ~(1 << pin) # Alle Bits auf 1, außer das eine gewünschte auf 0 + + bus.write_byte_data(pruefer1, GPPUA, wert) + bus.write_byte_data(pruefer1, IODIRA, wert) + bus.write_byte_data(pruefer1, GPIOA, 0x00) + + else: # Pins B0-B7 + wert = 0xFF & ~(1 << pin - 8) # Alle Bits auf 1, außer das eine gewünschte auf 0 + + bus.write_byte_data(pruefer1, GPPUB, wert) + bus.write_byte_data(pruefer1, IODIRB, wert) + bus.write_byte_data(pruefer1, GPIOB, 0x00) + else: + # Setze den gewählten Pin auf HIGH + if pin < 24: # Pins A0-A7 + wert = 0xFF & ~(1 << pin - 16) # Alle Bits auf 1, außer das eine gewünschte auf 0 + + bus.write_byte_data(pruefer2, GPPUA, wert) + bus.write_byte_data(pruefer2, IODIRA, wert) + bus.write_byte_data(pruefer2, GPIOA, 0x00) + else: # Pins B0-B7 + wert = 0xFF & ~(1 << pin - 24) # Alle Bits auf 1, außer das eine gewünschte auf 0 + + bus.write_byte_data(pruefer2, GPPUB, wert) + bus.write_byte_data(pruefer2, IODIRB, wert) + bus.write_byte_data(pruefer2, GPIOB, 0x00) + + time.sleep(0.05) + + ##print(f"i2cget -y 1 0x20 0x12") + pruefer1_A_value = bus.read_byte_data(pruefer1, GPIOA) + pruefer1_B_value = bus.read_byte_data(pruefer1, GPIOB) + pruefer2_A_value = bus.read_byte_data(pruefer2, GPIOA) + pruefer2_B_value = bus.read_byte_data(pruefer2, GPIOB) + + observer1_A_value = bus.read_byte_data(observer1, GPIOA) + observer1_B_value = bus.read_byte_data(observer1, GPIOB) + observer2_A_value = bus.read_byte_data(observer2, GPIOA) + observer2_B_value = bus.read_byte_data(observer2, GPIOB) + + #print(f"------>>>>Es konnte vom Pruefer der Wert {format(Wert_pruefer, '08b')} festgetsellt werden") + #print(f"------>>>>Es konnte vom Observer der Wert {format(Wert_observer, '08b')} festgetsellt werden") + + + for j in range(8): # Verarbeite 4*8=32 Pins + Jeweils 32 Observer-Daten + bitmaske = 1 << j # Erstelle eine Maske: 1, 2, 4, 8, 16, ... + + pruefer1_A_value_bit = bool(pruefer1_A_value & bitmaske) + pruefer1_B_value_bit = bool(pruefer1_B_value & bitmaske) + pruefer2_A_value_bit = bool(pruefer2_A_value & bitmaske) + pruefer2_B_value_bit = bool(pruefer2_B_value & bitmaske) + + observer1_A_value_bit = bool(observer1_A_value & bitmaske) + observer1_B_value_bit = bool(observer1_B_value & bitmaske) + observer2_A_value_bit = bool(observer2_A_value & bitmaske) + observer2_B_value_bit = bool(observer2_B_value & bitmaske) + + + + i = j + + if pruefer1_A_value_bit == False: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if observer1_A_value_bit == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,i],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,i],1]) + if pruefer1_A_value_bit == False and observer1_A_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer1_A_value_bit == True and observer1_A_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + + i = j + 8 + + if pruefer1_B_value_bit == False: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if observer1_B_value_bit == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,i],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,i],1]) + if pruefer1_B_value_bit == False and observer1_B_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer1_B_value_bit == True and observer1_B_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + i = j + 16 + + if pruefer2_A_value_bit == False: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if observer2_A_value_bit == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,i],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,i],1]) + if pruefer2_A_value_bit == False and observer2_A_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer2_A_value_bit == True and observer2_A_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + i = j + 24 + + if pruefer2_B_value_bit == False: + #print("Gefunden: " + str(pin) + " <> " + str(j)); + if observer2_B_value_bit == False: + #print("Dies wurde vom Observer bestätigt!"); + data.append([[pin ,i],0]) + else: + #print("Konnte NICHT bestätigen!"); + data.append([[pin ,i],1]) + if pruefer2_B_value_bit == False and observer2_B_value_bit == True: + data.append([[pin ,i],2]) + #print("Prüfer sagt NEIN, Observer sagt JA"); + if pruefer2_B_value_bit == True and observer2_B_value_bit == False: + data.append([[pin ,i],3]) + #print("Prüfer sagt JA, Observer sagt NEIN"); + + logs["errorcode"] = 10 + +if __name__ == "__main__": + try: + main() + except: + logs["errorcode"] = 13 + array["logs"] = logs + array["data"] = data + json_output = json.dumps(array) + print(json_output) + + + + diff --git a/python/test.py b/python/test.py new file mode 100644 index 0000000..08441c4 --- /dev/null +++ b/python/test.py @@ -0,0 +1,53 @@ +import smbus +import time +import json + +# Adressen der beiden MCP23017 Chips +MP = 0x20 # Ausgang rechte Hälfte + + +# Register-Adressen für den MCP23017 +IODIRA = 0x00 # Eingang / Ausgang A +IODIRB = 0x01 # Eingang / Ausgang B +GPIOA = 0x12 # GPIO A +GPIOB = 0x13 # GPIO B + +PULLUPA = 0x0C +PULLUPB = 0x0D + +# Initialisiere den I2C Bus +bus = smbus.SMBus(1) + +# Hauptprogramm +def main(): + time.sleep(0.5) + + for pin in range(8): + + + bus.write_byte_data(MP, IODIRA, ~(1 << pin)) + time.sleep(0.02) + bus.write_byte_data(MP, PULLUPA, ~(1 << pin)) + time.sleep(0.02) + + bus.write_byte_data(MP, GPIOA, ~(1 << pin)) + time.sleep(0.02) + + + print("====================" + str(pin) + "==========================") + + wert = bus.read_byte_data(MP, GPIOA) + + for j in range(8): # Lese 4*8=32 Pins + bitmaske = 1 << j + + wert_bitweise = bool(wert & bitmaske) + + if wert_bitweise == False and j != pin: + print(str(j)) + + time.sleep(0.02) # Kurze Pause, damit die Änderung sichtbar wird + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/reset.php b/reset.php new file mode 100644 index 0000000..436f64d --- /dev/null +++ b/reset.php @@ -0,0 +1,364 @@ + diff --git a/script.js b/script.js new file mode 100644 index 0000000..d0055b2 --- /dev/null +++ b/script.js @@ -0,0 +1,502 @@ +function distinctlyInput(input) { + // Wenn das aktuell gewählte Feld gefüllt wird + if ($('#distinctlyInput' + input).val().length >= 1) { + input++; // Fahre fort mit dem nächsten Feld + if ($('#distinctlyInput' + input).length) { + $('#distinctlyInput' + input).focus().select(); // Fokus auf das nächste Feld setzen + } + } + // Wenn das aktuell gewählte Feld geleert wird + else if ($('#distinctlyInput' + input).val().length === 0 && input > 1) { + input--; // Gehe zum vorherigen Feld + $('#distinctlyInput' + input).focus().select(); // Fokus auf das vorherige Feld setzen + } +} + + +function pageload(view, meta) { // Funktion zum Laden des Inhalts + + secondaryNavigation("close"); // Schließe das Stecker-Menü + page = window.location.hash.substr(1); // Hole die aufzurufende Seite über den URL-Hash (#xy) + + if(page.length === 0) { + + page = "index"; + + } + + var loadingTimer = setTimeout(function() { + $("#content").addClass("loading"); + message("Die Seite befindet sich im Aufbau..."); + }, 2000); // 2 Sekunden warten + + + $.ajax({ + url: "/pagecontent/" + page + ".php?view=" + view + "&meta=" + meta, // Pfad der zu ladenden Seite aufbauen + error: function(jqXHR, textStatus, errorThrown) { // Wenn ein Fehler bei der Anfrage auftritt (z.B. Netzwerkprobleme) + + message("Es ist ein unerwarteter Fehler aufgetreten. Der Seiteninhalt konnte nicht geladen werden!"); + + + }, + success: function(result){ // Abfrage erfolgreich + clearTimeout(loadingTimer); + $("#content").removeClass("loading"); + $("#content").html(result); + $("div.navigation>div").removeClass("active"); // Alle Buttons inaktiv + $("#" + page).addClass("active"); // Button mit Klasse "page" wird aktiv geschaltet (im Menü) + }}); +} + +function checkForReload(page) { + + page_hash = window.location.hash.substr(1); + + if(page_hash == page) { + pageload(); + } + +} + + + + + +function checkConnection(last) { // Verbindunsstatus überwachen // Last ist der letzte gemessene Netzwerkzustand + $.ajax({ + url: "/actions/connection-test.php?a=" + Date.now(), // verändere idr URL leicht, damit der Server nicht cached + timeout: 5000, // maximale Wartezeit sind 5 Sekunden; alles darüber wird als zu unzuverlässig angesehen + error: function(jqXHR, textStatus, errorThrown) { // Wenn ein Fehler bei der Anfrage auftritt (z.B. Netzwerkprobleme) + + $(".navigation-footer").html('
Keine Verbindung'); + console.error("Fehler bei der Anfrage:", textStatus, errorThrown); + + if (last != 1) { // letzter Zustand war "online" // Vermeiden von ständigen Nachrichten + message("Keine Verbindung"); // Werfe eine Nachricht + } + + setTimeout(function() { // nächste Prüfung in 5 Sekunden + checkConnection(1); // der Status offline wird mit übertragen + }, 5000); + }, + success: function(data) { // Verbindung iO + setTimeout(function() { // nächste Prüfung in 5 Sekunden + checkConnection(); + }, 5000); + + if (data == 'true') { // der Rückgabewert ist true, alles IO + $(".navigation-footer").html('
Verbunden'); + if (last == 1) { // war der letzte Status noch "offline", wird der Nutzer benachrichtigt + message("Verbindung wiederhergestellt!"); + } + } else { // außergewöhnlicher Fehler, aber möglich + message("Keine Verbindung"); // Verbindung dennoch unbrauchbar, wenn keine Daten geladen werden + $(".navigation-footer").html('
Keine Verbindung'); + } + } + }); +} + + + + +var pinRowNumber = 0; + + +function connectPins(startPoint, endPoint, origin) { + + + const encoded = $('#bridge-editor-img').attr("meta"); + const decoded = decodeURIComponent(encoded); + let myArray = JSON.parse(decoded); + + + console.log(myArray); + + length = myArray.length; + lengthNext = length + 1; + lengthPrev = length -1 ; + + + myArray[length] = []; + myArray[length][0] = startPoint; + myArray[length][1] = endPoint; + $(".pin-table").append('
' + startPoint + '' + endPoint + '
'); + + + + var myJsonStringURL = encodeURI(JSON.stringify(myArray)); + + + $('#bridge-editor-img').attr("meta", myJsonStringURL); + + + $('#bridge-editor-img').attr("style", "background-image: url('../stecker.php?data=" + myJsonStringURL + "')"); + + + $('#bridge-editor-edit').attr("value", pinRowNumber); + + + + +} + +function removePin(row) { + const encoded = $('#bridge-editor-img').attr("meta"); + const decoded = decodeURIComponent(encoded); + let myArray = JSON.parse(decoded); + + myArray[row] = []; + myArray[row][0] = ""; + myArray[row][1] = ""; + + $("#pinRow_" + row).hide(); + + var myJsonStringURL = encodeURI(JSON.stringify(myArray)); + + + $('#bridge-editor-img').attr("meta", myJsonStringURL); + + + $('#bridge-editor-img').attr("style", "background-image: url('../stecker.php?data=" + myJsonStringURL + "')"); + + + $('#bridge-editor-edit').attr("value", pinRowNumber); + + +} + + + +function programBridge(number) { // Checkboxen für die Auswahl der Brücken im Programm-Editor + + let myArray = []; // initialisiere Array + + index = 0; + + for (i = 0; i <= number; i++) { // iteriere durch alle Checkboxen + if ($('#programSelect_' + i).is(":checked")) { // wenn gesetzt + myArray[index] = $('#programSelect_' + i).val(); // Hänge die Brücken-ID dem Programm an + index++; + } + } + var myJsonString = JSON.stringify(myArray); // kreiere URL + + $('#program-editor-img').attr("src", "stecker.php?translate=true&data=" + myJsonString); // aktualisiere das Bild + console.log("OK"); + +} + +function excludeBridge(number) { // Checkboxen für die Auswahl der Brücken im Programm-Editor + + let myArray = []; // initialisiere Array + let myArraySubtrahend = []; // initialisiere Array + + index = 0; + indexSubtrahend = 0; + + for (i = 0; i < number; i++) { // iteriere durch alle Checkboxen + if ($('#programSelect_' + i).is(":checked")) { // wenn gesetzt + myArray[index] = JSON.parse($('#programSelect_' + i).val()); + index++; + } + else { + myArraySubtrahend[indexSubtrahend] = JSON.parse($('#programSelect_' + i).val()); + indexSubtrahend++; + } + } + var myJsonString = JSON.stringify(myArray); // kreiere URL + var myJsonStringSubtrahend = JSON.stringify(myArraySubtrahend); // kreiere URL + + + $('#result-editor-result').attr("src", "stecker.php?data=" + myJsonString); // aktualisiere das Bild + + + $('#database-bridges-hidden').attr("value", encodeURI(myJsonStringSubtrahend)); + + + console.log("OK"); + +} + + +function search(page,special) { // Datenbanksuche + + value = $('#database-search-term').val(); // Suchbegriff, wenn die Datenbank durchsucht wird + + if(page == 'results') { + if (special == "x") { // die Vorschläge werden ignoriert + value = ""; // Lösche Eingabe virtuell + } + } + + $.get("/pagecontent/database-search.php", { + meta: value, // Suchbegriff + view: page // je nachdem, von wo aus die Suche ausgelöst wurde + }, + function(data, status) { + if (status == "success") { + if(page == 'results') { // je nachdem, von wo aus die Suche ausgelöst wurde, anderen Container verändern + $("div.search-container div.results").html(data); + } + if(page == 'program') { + $("div.inventory-table").html(data); + } + + } + + }); + + +} + + +function save(page, action, meta) { // prinzipiell gleiche Funktion wie getcontent, jedoch mit Abfragen von JS-Werten + + suppress_page_reload = 0; + + if (page == "bridge-editor") { + + if (action == "edit" || action == "add") { + + number_entry = $('#bridge-editor-edit').val(); // von PHP fixierter Wert (Anzahl der zu Beginn vorhandenen Felder) + + let myArray = {}; // Initialisiere myArray als Objekt + + + const encoded = $('#bridge-editor-img').attr("meta"); + const decoded = decodeURIComponent(encoded); + myArray["pins"] = JSON.parse(decoded); + + if (action == "add") { // wird die Brücke neu angelegt, muss ein Name gewählt werden + myArray["name"] = prompt("Bitte noch einen Namen festlegen (nur Zahlen):"); + } + + + var myJsonString = JSON.stringify(myArray); // verpacke alle Pin-Brücken als JSON + + + meta = myJsonString; + + } + + } + + if (page == "program-editor") { + + if (action == "edit" || action == "add") { + + + + let myArray = {}; // Initialisiere als leeres, multidimensionales, indexiertes Array + myArray["bridges"] = []; // Initialisiere als leeres Array + + index = 0; + + for (i = 0; i <= meta; i++) { + if ($('#programSelect_' + i).is(":checked")) { + myArray["bridges"][index] = $('#programSelect_' + i).val(); + index++; + } + } + + + if (action == "add") { + myArray["programID"] = []; + for (i = 0; i <= 4; i++) { + j = i + 1; + myArray["programID"][i] = $('#distinctlyInput' + j).val().toUpperCase(); + } + } + + myArray["programDescription"] = $('#program-description').val(); + + + + console.log(myArray); + + var myJsonString = JSON.stringify(myArray); + console.log(myJsonString); // Zeigt die JSON-Ausgabe in der Konsole an + + meta = myJsonString; + + + + } + } + + if (page == "inventory" && action == "add") { + + + let myArray = {}; + myArray["name"] = $('#database-search-term').val(); + + myArray["bridges-hidden"] = $('#database-bridges-hidden').val(); + myArray["special"] = $('#database-special').val(); + + + myArray["programCache"] = []; + for (i = 0; i <= 4; i++) { + j = i + 1; + myArray["programCache"][i] = $('#distinctlyInput' + j).val().toUpperCase(); + } + + console.log(myArray); + + var myJsonString = JSON.stringify(myArray); + console.log(myJsonString); // Zeigt die JSON-Ausgabe in der Konsole an + + meta = myJsonString; + + suppress_page_reload = 1; + + + } + + console.log("/actions/" + page + ".php?action=" + action + "&meta=" + meta); + + $.get("/actions/" + page + ".php", { + action: action, + meta: meta + + }, + function(data, status) { + if (status == "success") { + data = JSON.parse(data); + if (data[0] == true) { + if (suppress_page_reload != 1) { + window.location.href = "#" + page; + pageload(); + } + + message(data[1]); + } else { + message(data[1]); + } + } + + }); + + + + +} + + +function secondaryNavigation(animation, content) { + + + + + if (animation == "open") { + + + $.get("/pagecontent/plug-select.php", { + + + }, + function(data, status) { + if (status == "success") { + if (data != 'false') { + $("#navigation-secondary").css("left", "250px"); + $(".navigation-header").attr("onclick", "secondaryNavigation('close','plug-select')"); + setTimeout(function() { + $("#navigation-secondary").html(data); + console.log(data); + }, 200); + } else { + window.location.href = "#"; + + alert("Die Inhalte konnten nicht abgerufen werden. Vergewissern Sie sich, dass Sie mit dem WLAN-Netzwerk verbunden sind und laden Sie bei Bedarf die Seite neu."); + } + } + + }); + + + + } else { + $("#navigation-secondary").css("left", "-250px"); + $(".navigation-header").attr("onclick", "secondaryNavigation('open','plug-select')"); + } + +} + +function changeSettings(type, value, meta) { + + $.get("/actions/save-settings.php", { + type: type, + value: value, + meta: meta + }, + function(data, status) { + if (status == "success") { + if (data == 'true') { + applySettings(type); + pageload(); + } else { + window.location.href = '#index'; + pageload(); + + alert("Die Inhalte konnten nicht abgerufen werden. Vergewissern Sie sich, dass Sie mit dem WLAN-Netzwerk verbunden sind und laden Sie bei Bedarf die Seite neu."); + } + } + + }); + +} + +function applySettings(type) { + + secondaryNavigation('close'); + + $.get("/actions/apply-settings.php", { + type: type + }, + function(data, status) { + if (status == "success") { + if (data != 'false') { + + if (type == "plug") { + + $(".navigation-header>div").html(data); + } + } else { + window.location.href = "#"; + + alert("Die Inhalte konnten nicht abgerufen werden. Vergewissern Sie sich, dass Sie mit dem WLAN-Netzwerk verbunden sind und laden Sie bei Bedarf die Seite neu."); + } + } + + }); + +} + + +function message(content) { + $("#message-box").html(content); + $("#message-box").css("display", "block"); + setTimeout(function() { + $("#message-box").css("transform", "translateY(0)"); + }, 50); + setTimeout(function() { + setTimeout(function() { + $("#message-box").css("display", "none"); + }, 500); + $("#message-box").css("transform", "translateY(calc(100% + 5px))"); + }, 3000); + +} + + + + +$(window).bind('beforeunload', function() { + $("#warning").css("display", "block"); + return 'Are you sure you want to leave?'; + +}); + + + + diff --git a/settings.json b/settings.json new file mode 100644 index 0000000..504e1d3 --- /dev/null +++ b/settings.json @@ -0,0 +1 @@ +{"plug":"0"} diff --git a/stecker.php b/stecker.php new file mode 100644 index 0000000..0dd4abe --- /dev/null +++ b/stecker.php @@ -0,0 +1,124 @@ +'; +?> + + + + + + + 30 + 10 + 31 + 11 + + + + + + + + + + + + + + + + + + + [70, 68], 20 => [70, 44], 30 => [70, 20], + 11 => [405, 68], 12 => [370, 68], 13 => [335, 68], 14 => [300, 68], + 15 => [265, 68], 16 => [230, 68], 17 => [195, 68], 18 => [160, 68], 19 => [125, 68], + 21 => [405, 44], 22 => [370, 44], 23 => [335, 44], 24 => [300, 44], + 25 => [265, 44], 26 => [220, 44], 27 => [185, 44], 28 => [150, 44], 29 => [115, 44], + 31 => [405, 20], 32 => [370, 20], 33 => [335, 20], 34 => [300, 20], + 35 => [265, 20], 36 => [230, 20], 37 => [195, 20], 38 => [160, 20], 39 => [125, 20], + ]; + + // Rechtecke einfärben, wenn "fill"-Modus aktiv ist + if ($_GET["mode"] == "fill") { + $data = $_GET["data"]; + $data = json_decode(urldecode($data), true); + + foreach ($pin_coordinates as $key => $coordinates) { + $fill = in_array($key, $data) ? "green" : "red"; + echo ''; + } + } else { + // Nur Umrisse + foreach ($pin_coordinates as $coordinates) { + echo ''; + } + } + + // SVG frühzeitig beenden, wenn kein Data vorhanden oder im fill-Modus + if (empty($_GET['data']) || $_GET["mode"] == "fill") { + print ""; + die(); + } + + // Brückenverbindungen übersetzen, falls aktiviert + if ($_GET["translate"] == "true") { + $db = new SQLite3('db-test/test.db'); + $data = json_decode($_GET["data"], true); + $plug = json_decode(file_get_contents("settings.json"), true)["plug"]; + $nodes_raw = []; + + foreach ($data as $bridge) { + $nodes = $db->query("SELECT node_from, node_to FROM nodes WHERE required_by = " . $bridge); + while ($node = $nodes->fetchArray(SQLITE3_ASSOC)) { + $nodes_raw[] = [$node['node_from'], $node['node_to']]; + } + } + $inputArray = $nodes_raw; + } else { + $inputArray = json_decode($_GET['data'], true); + } + + // Koordinaten übersetzen + $translatedArray = array_map(function ($pair) use ($pin_coordinates) { + return [ + $pin_coordinates[$pair[0]], + $pin_coordinates[$pair[1]], + ]; + }, $inputArray); + + $colors = ["#1a5fb4", "#26a269", "#e5a50a", "#c64600", "#a51d2d", "#613583", "#63452c", "#3d3846"]; + + // Linien ausgeben + $colorNumber = 0; + foreach ($translatedArray as $line) { + $point1 = $line[0]; + $point2 = $line[1]; + + $point1x = $point1[0] + 10; + $point1y = $point1[1] + 5; + $point2x = $point2[0] + 10; + $point2y = $point2[1] + 5; + + echo ''; + + $colorNumber = ($colorNumber + 1) % count($colors); + } + ?> + diff --git a/style3.css b/style3.css new file mode 100644 index 0000000..d5f428a --- /dev/null +++ b/style3.css @@ -0,0 +1,553 @@ +@font-face { + font-family: LexendDecaBold; + src: url(/vendor/fonts/LexendDeca-Bold.ttf); +} + @font-face { + font-family: LexendDecaMedium; + src: url(/vendor/fonts/LexendDeca-Medium.ttf); +} + body { + height: 100%; + width: 100%; + padding: 20px; + margin: 0; + box-sizing: border-box; + font-family: LexendDecaBold; + font-weight: light; + color: #2e3436; +} + div.main { + width: 100%; + max-width: 900px; + height: auto; + border-radius: 15px; + overflow: hidden; + margin: 0 auto; + border: 5px solid #c3c3c3; + position: relative; +} + div.navigation { + width: 250px; + height: 600px; + background-color: #ebebeb; + float: left; + display: inline-block; + position: relative; + z-index: 501; +} + div.navigation.secondary { + position: absolute; + left: -250px; + top: 0; + overflow-y: auto; + z-index: 500; + transition-duration: .6s; + width: 500px; + backdrop-filter: blur(10px); + background-color: #ebebeb8c; +} + div.navigation.secondary img { + width: 100px !important; +} + div.navigation>div, div.save-button { + padding: 5px; + margin: 10px; + line-height: 30px; + transition-duration: .4s; + cursor: pointer; + border-radius: 10px; +} + div.navigation>div:hover,div.navigation>div.active,div.navigation-footer,div.navigation-header,div.save-button:hover { + background-color: #d2d2d2; +} + div.navigation div.navigation-header { + text-align: center; +} + div.navigation div.navigation-header>div { + background-color: #fff; + border-radius: 0 0 7px 7px; + color: grey; + line-height: 20px; + font-size: 12px; +} + div.navigation>div>img:not(.infrago-logo),div.content div.save-button>img { + width: 30px; + max-height: 30px; + margin-right:20px; + vertical-align:middle; + filter: contrast(0.3); +} + div.navigation>div>img.infrago-logo { + width: 100%; + display:block; + margin-top: 15px; +} + div.content { + width: calc(100% - 250px); + float: right; + display: inline-block; + padding: 15px 20px; + height: 600px; + box-sizing: border-box; + overflow-y: auto; + text-align: center; +} +div.content>img.loader { + position: absolute; + height: 35%; + width: 35%; + left: 37.5%; + top: 37.5%; + display: none; +} + div#content { + transition-duration: .5s; + } + div#content.loading { + filter: blur(4px); + } + div#content.loading>img.loader { + display: block; + } + div.content div.content-header { + text-align: center; + line-height: 30px; + padding: 0; + margin-bottom: 20px; + display: block; + font-size: 2em; + margin-block-start: 0.67em; + margin-block-end: 0.67em; + margin-inline-start: 0px; + margin-inline-end: 0px; + font-weight: bold; + unicode-bidi: isolate; +} + div.content img { + width: 100%; + margin: 0 auto; + display: block; +} + div.navigation-footer { + position: absolute; + bottom:0; + width: calc(100% - 40px); + padding: 10px !important; + cursor: auto !important; +} + div.connection-indicator { + height: 15px; + width: 15px; + border-radius: 100%; + float: left; + vertical-align:middle; + margin: 7.5px; +} + div.connection-indicator.true { + background-color: #2ec27e; +} + div.connection-indicator.unknown { + background-color: #f6d32d; +} + div.connection-indicator.false { + background-color: #ed333b; +} + div.pin-table { + width: auto; + display: block; + margin: 0 auto; +} + div.pin-table img { + width: 30px; + transform: rotate(90deg); + padding-left: 17.5px; +} + div.pin-table div.row { + width: auto; + display: block; + height: 50px; +} + div.pin-table div.row * { + display: inline-block; +} + div.pin-table div.row input { + width: 100px; + border: 0; + background-color: #ebebeb; + padding: 15px; + font-family: inherit; + border-radius: 20px; + text-align: center; + height: 50px; +} + div.plug-table { + width: 100%; + margin-bottom: 50px; +} + div.row { + width: 100%; + height: 70px; + margin-bottom: 10px; +} + div.inventory-table>div.row { + height: 30px; + text-align: left; + display: block; + top: calc(50% - 27.5px); + position: relative; + width: auto; + background-color: #ebebeb; + margin: 10px; + padding: 5px; + border-radius: 25px; + height: auto; + line-height: 25px; +} + div.inventory-table>div.row div.plug-table { + margin-bottom: 0; +} + div.inventory-table>div.row div.plug-table div.label>span { + background-color: #d2d2d2; +} + div.inventory-table>div.row img,div.inventory-table>div.row img { + max-height: 100%; + width: auto; + display: inline-block; + filter: opacity(.5); + position: absolute; +} + div.inventory-table>div.row img.map,div.inventory-table>div.row img.down { + left: 10px; + top: 5px; + bottom: 5px; +} + div.inventory-table>div.row img.down { + left: unset; + cursor: pointer; + right: 10px; +} + div.inventory-table>div.row span { + margin-left: 4px; + line-height: 25px; + display: block; +} + div.label { + display: inline-block; + width: 20%; + margin: 0 auto; + text-align: center; + line-height: 100%; + float: left; + height: 70px; +} + div.label>span { + display: block; + top: calc(50% - 27.5px); + position:relative; + width: auto; + background-color: #ebebeb; + margin: 10px; + padding: 5px; + border-radius: 25px; + height: 25px; + line-height:25px; +} + div.label>span span { + padding: 2px; + background-color: #fff; + margin: 0px 3px; + border-radius: 100%; + display: block; + float: left; + width: 20px; + height: 20px; + line-height: 20px; + text-align: center; +} + img#bridge-editor-img { + display: inline-block; + width: 65%; + max-height:70px; +} + div.row div.options { + display: inline-block; + width: 15%; + height: 70px; + float: right; +} + div.row div.options img { + width: 40%; + padding: 3px; + box-sizing: border-box; + display: inline-block; + top: calc(50% - 25px); + position: relative; + filter: opacity(.5); + cursor: pointer; +} + div.action-menu { + position: absolute; + bottom: 10px; + right: 10px; + width: auto; + height: 50px; + z-index: 501; +} + div.action-menu img { + float: left; + width: 50px; + height: 50px; + background-color: #ffffff7a; + border-radius: 100%; + cursor: pointer; + filter: contrast(0.3); +} + div.distinctly-input { + display: flex; + justify-content: space-between; + gap: 10px; + width:70%; + margin: 0 auto; + margin-top: 20px; +} + .code-input, div.search-container input { + width: 50px; + height: 50px; + font-size: 24px; + text-align: center; + background-color: #ebebeb; + border-radius: 8px; + outline: none; + transition: border-color 0.3s ease; + border: none; +} + .code-input:focus { + border-color: #007bff; +} + textarea { + width: 100%; + max-width: 100%; + height: 200px; + max-height: 200px; + font-size: 14px; + text-align: center; + background-color: #ebebeb; + border-radius: 8px; + outline: none; + transition: border-color 0.3s ease; + border: none; +} + textarea:focus { + border-color: #007bff; +} + hr { + border: 3px solid #ebebeb; + margin: 20px 0; +} + div.search-container { + width: 100%; + height: 50px; + position: relative; +} + div.search-container input { + width: calc(100% - 60px); + border-radius: inherit 0px; + border-radius: 10px 0 0 10px; +} + div.search-container div.save-button { + width: 50px; + display: inline-block; + margin: 0; + height: 40px; + float: right; + text-align: center; + border-radius: 0 10px 10px 0 +} + div.search-container div.save-button img { + margin: 0; + margin-top: 4px; +} + div.search-container div.results { + position: absolute; + bottom: 50px; + left: 0; + right: 0; + background-color: #d2d2d2; + border-radius: 10px; +} + div.program-field { + padding: 20px; + margin-top: 20px; + border: 3px solid #ebebeb; + border-radius: 25px; +} + .checkbox-container { + position: relative; + display: inline-block; +} + .checkbox-container input[type="checkbox"] { + position: absolute; + opacity: 0; + pointer-events: none; +} + .checkbox-container .checkbox-text { + display: inline-block; + text-align: center; + cursor: pointer; + border-radius: 25px; + background-color: #ebebeb; + padding: 5px 15px; + border: 3px solid #ebebeb; +} + .checkbox-container input[type="checkbox"]:checked + .checkbox-text { + background-color: #d2d2d2; + border: 3px solid #2e3436; + color: #fff; +} + div.save-button img { + display: inline-block; +} + div.save-button { + background-color: #ebebeb +} + ::-webkit-scrollbar { + width: 5px; +} +/* Track */ + ::-webkit-scrollbar-track { + background: #ebebeb; +} +/* Handle */ + ::-webkit-scrollbar-thumb, ::-webkit-scrollbar-thumb:hover { + background: #d2d2d2; +} + div.toggle-switch { + width: 100%; + height: 50px; + margin-bottom: 10px; + display: flex; +} + div.toggle-switch div { + display: inline-block; +} + div.toggle-switch div:nth-child(1), div.toggle-switch div:nth-child(3) { + width: 39%; +} + div.toggle-switch div:nth-child(2) { + width: 20%; + padding: 10px; +} + .switch { + position: relative; + display: inline-block; + width: 100%; + height: 34px; +} + .switch input { + opacity: 0; + width: 0; + height: 0; +} + .slider { + position: absolute; + cursor: pointer; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: #ccc; + -webkit-transition: .4s; + transition: .4s; + border-radius: 25px; +} + .slider:before { + position: absolute; + content: ""; + height: 26px; + width: 26px; + left: 4px; + bottom: 4px; + background-color: white; + -webkit-transition: .4s; + transition: .4s; + border-radius: 100%; +} + input:checked + .slider:before { + -webkit-transform: translateX(86px); + -ms-transform: translateX(86px); + transform: translateX(86px); +} +/* Rounded sliders */ + .slider.round { + border-radius: 34px; +} + .slider.round:before { + border-radius: 50%; +} + table.simple-devider th,table.simple-devider td { + padding: 15px; +} + table.simple-devider * { + margin: 0; + vertical-align: top; +} + canvas { + cursor: crosshair; + background-repeat: no-repeat; +} + + @media only screen and (max-width: 1200px) { + div.main { + width: 100%; + height: 100%; + border: 0; + border-radius: 0; + max-width: unset; + } + body { + padding: 0; + padding-right: 0; + box-sizing: border-box; + } + div.content { + width: calc(100% - 250px); + height: 100%; + padding: 0; + } + div.navigation { + height: 100%; + overflow-y: scroll; + } + div.navigation-footer { + position: relative; + } + + } + + @media only screen and (max-width: 800px) { + + div.navigation { + width: 40px; + height: 100%; + } + div.navigation > div > span { + display: none; + } + div.navigation>div { + padding: 5px; + margin: 0; + } + + div.navigation.secondary { + left: -500px !important; + } + div.navigation-footer { + display: none; + } + div.content { + width: calc(100% - 40px); + height: 100%; + padding: 0; + } + +} diff --git a/temp.csv b/temp.csv new file mode 100644 index 0000000..fe181e8 --- /dev/null +++ b/temp.csv @@ -0,0 +1,8 @@ +"Gemessen am / um";"Stw-Name / Ort";"Erkannte Brücken (Pin-zu-Pin)";"(automatisch) ermittelte Programm-Nummer";Freitext-Besonderheiten +"24.07.2025 11:48:00";"Dudweiler Df";"20<->28, 30<->39, ";?????; +"24.07.2025 11:48:56";"Mannheim-Waldhof Wf (Mwf)";"20<->28, 30<->39, ";12345; +"24.07.2025 12:48:27";"Laupheim West Lf";"20<->28, 30<->39, ";S???1; +"24.07.2025 13:37:29";"Mannheim-Waldhof Wf (Mwf)";"20<->28, 30<->39, ";S???1; +"24.07.2025 14:28:33";"Dudweiler Df";"20<->28, 30<->39, ";S???1; +"28.07.2025 14:52:44";"Sinzig Sf";"19<->22, ";JAAAA; +"29.07.2025 05:57:38";"Mannheim-Waldhof Wf (Mwf)";"19<->22, ";JAAAA; diff --git a/temp.json b/temp.json new file mode 100644 index 0000000..ffba555 --- /dev/null +++ b/temp.json @@ -0,0 +1 @@ +{"plug":"0"} \ No newline at end of file diff --git a/temp.xlsx b/temp.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..00ae041ba91cfb9364a2fe0564840637c94f8c92 GIT binary patch literal 87525 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 \ No newline at end of file diff --git a/vendor/composer/composer.json b/vendor/composer/composer.json new file mode 100644 index 0000000..4cc4a31 --- /dev/null +++ b/vendor/composer/composer.json @@ -0,0 +1,5 @@ +{ + "require": { + "phpoffice/phpspreadsheet": "^4.5" + } +} diff --git a/vendor/composer/composer.lock b/vendor/composer/composer.lock new file mode 100644 index 0000000..0889eef --- /dev/null +++ b/vendor/composer/composer.lock @@ -0,0 +1,600 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "218a60c9572277f09d6952f6a8761547", + "packages": [ + { + "name": "composer/pcre", + "version": "3.3.2", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/b2bed4734f0cc156ee1fe9c0da2550420d99a21e", + "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<1.11.10" + }, + "require-dev": { + "phpstan/phpstan": "^1.12 || ^2", + "phpstan/phpstan-strict-rules": "^1 || ^2", + "phpunit/phpunit": "^8 || ^9" + }, + "type": "library", + "extra": { + "phpstan": { + "includes": [ + "extension.neon" + ] + }, + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Pcre\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "PCRE wrapping library that offers type-safe preg_* replacements.", + "keywords": [ + "PCRE", + "preg", + "regex", + "regular expression" + ], + "support": { + "issues": "https://github.com/composer/pcre/issues", + "source": "https://github.com/composer/pcre/tree/3.3.2" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2024-11-12T16:29:46+00:00" + }, + { + "name": "maennchen/zipstream-php", + "version": "3.1.2", + "source": { + "type": "git", + "url": "https://github.com/maennchen/ZipStream-PHP.git", + "reference": "aeadcf5c412332eb426c0f9b4485f6accba2a99f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/aeadcf5c412332eb426c0f9b4485f6accba2a99f", + "reference": "aeadcf5c412332eb426c0f9b4485f6accba2a99f", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "ext-zlib": "*", + "php-64bit": "^8.2" + }, + "require-dev": { + "brianium/paratest": "^7.7", + "ext-zip": "*", + "friendsofphp/php-cs-fixer": "^3.16", + "guzzlehttp/guzzle": "^7.5", + "mikey179/vfsstream": "^1.6", + "php-coveralls/php-coveralls": "^2.5", + "phpunit/phpunit": "^11.0", + "vimeo/psalm": "^6.0" + }, + "suggest": { + "guzzlehttp/psr7": "^2.4", + "psr/http-message": "^2.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "ZipStream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Paul Duncan", + "email": "pabs@pablotron.org" + }, + { + "name": "Jonatan Männchen", + "email": "jonatan@maennchen.ch" + }, + { + "name": "Jesse Donat", + "email": "donatj@gmail.com" + }, + { + "name": "András Kolesár", + "email": "kolesar@kolesar.hu" + } + ], + "description": "ZipStream is a library for dynamically streaming dynamic zip files from PHP without writing to the disk at all on the server.", + "keywords": [ + "stream", + "zip" + ], + "support": { + "issues": "https://github.com/maennchen/ZipStream-PHP/issues", + "source": "https://github.com/maennchen/ZipStream-PHP/tree/3.1.2" + }, + "funding": [ + { + "url": "https://github.com/maennchen", + "type": "github" + } + ], + "time": "2025-01-27T12:07:53+00:00" + }, + { + "name": "markbaker/complex", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/MarkBaker/PHPComplex.git", + "reference": "95c56caa1cf5c766ad6d65b6344b807c1e8405b9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/MarkBaker/PHPComplex/zipball/95c56caa1cf5c766ad6d65b6344b807c1e8405b9", + "reference": "95c56caa1cf5c766ad6d65b6344b807c1e8405b9", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-master", + "phpcompatibility/php-compatibility": "^9.3", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "squizlabs/php_codesniffer": "^3.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "Complex\\": "classes/src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Baker", + "email": "mark@lange.demon.co.uk" + } + ], + "description": "PHP Class for working with complex numbers", + "homepage": "https://github.com/MarkBaker/PHPComplex", + "keywords": [ + "complex", + "mathematics" + ], + "support": { + "issues": "https://github.com/MarkBaker/PHPComplex/issues", + "source": "https://github.com/MarkBaker/PHPComplex/tree/3.0.2" + }, + "time": "2022-12-06T16:21:08+00:00" + }, + { + "name": "markbaker/matrix", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/MarkBaker/PHPMatrix.git", + "reference": "728434227fe21be27ff6d86621a1b13107a2562c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/MarkBaker/PHPMatrix/zipball/728434227fe21be27ff6d86621a1b13107a2562c", + "reference": "728434227fe21be27ff6d86621a1b13107a2562c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-master", + "phpcompatibility/php-compatibility": "^9.3", + "phpdocumentor/phpdocumentor": "2.*", + "phploc/phploc": "^4.0", + "phpmd/phpmd": "2.*", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "sebastian/phpcpd": "^4.0", + "squizlabs/php_codesniffer": "^3.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "Matrix\\": "classes/src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Baker", + "email": "mark@demon-angel.eu" + } + ], + "description": "PHP Class for working with matrices", + "homepage": "https://github.com/MarkBaker/PHPMatrix", + "keywords": [ + "mathematics", + "matrix", + "vector" + ], + "support": { + "issues": "https://github.com/MarkBaker/PHPMatrix/issues", + "source": "https://github.com/MarkBaker/PHPMatrix/tree/3.0.1" + }, + "time": "2022-12-02T22:17:43+00:00" + }, + { + "name": "phpoffice/phpspreadsheet", + "version": "4.5.0", + "source": { + "type": "git", + "url": "https://github.com/PHPOffice/PhpSpreadsheet.git", + "reference": "2ea9786632e6fac1aee601b6e426bcc723d8ce13" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/2ea9786632e6fac1aee601b6e426bcc723d8ce13", + "reference": "2ea9786632e6fac1aee601b6e426bcc723d8ce13", + "shasum": "" + }, + "require": { + "composer/pcre": "^1||^2||^3", + "ext-ctype": "*", + "ext-dom": "*", + "ext-fileinfo": "*", + "ext-gd": "*", + "ext-iconv": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-simplexml": "*", + "ext-xml": "*", + "ext-xmlreader": "*", + "ext-xmlwriter": "*", + "ext-zip": "*", + "ext-zlib": "*", + "maennchen/zipstream-php": "^2.1 || ^3.0", + "markbaker/complex": "^3.0", + "markbaker/matrix": "^3.0", + "php": "^8.1", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0", + "psr/simple-cache": "^1.0 || ^2.0 || ^3.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-main", + "dompdf/dompdf": "^2.0 || ^3.0", + "friendsofphp/php-cs-fixer": "^3.2", + "mitoteam/jpgraph": "^10.3", + "mpdf/mpdf": "^8.1.1", + "phpcompatibility/php-compatibility": "^9.3", + "phpstan/phpstan": "^1.1 || ^2.0", + "phpstan/phpstan-deprecation-rules": "^1.0 || ^2.0", + "phpstan/phpstan-phpunit": "^1.0 || ^2.0", + "phpunit/phpunit": "^10.5", + "squizlabs/php_codesniffer": "^3.7", + "tecnickcom/tcpdf": "^6.5" + }, + "suggest": { + "dompdf/dompdf": "Option for rendering PDF with PDF Writer", + "ext-intl": "PHP Internationalization Functions", + "mitoteam/jpgraph": "Option for rendering charts, or including charts with PDF or HTML Writers", + "mpdf/mpdf": "Option for rendering PDF with PDF Writer", + "tecnickcom/tcpdf": "Option for rendering PDF with PDF Writer" + }, + "type": "library", + "autoload": { + "psr-4": { + "PhpOffice\\PhpSpreadsheet\\": "src/PhpSpreadsheet" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Maarten Balliauw", + "homepage": "https://blog.maartenballiauw.be" + }, + { + "name": "Mark Baker", + "homepage": "https://markbakeruk.net" + }, + { + "name": "Franck Lefevre", + "homepage": "https://rootslabs.net" + }, + { + "name": "Erik Tilt" + }, + { + "name": "Adrien Crivelli" + } + ], + "description": "PHPSpreadsheet - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine", + "homepage": "https://github.com/PHPOffice/PhpSpreadsheet", + "keywords": [ + "OpenXML", + "excel", + "gnumeric", + "ods", + "php", + "spreadsheet", + "xls", + "xlsx" + ], + "support": { + "issues": "https://github.com/PHPOffice/PhpSpreadsheet/issues", + "source": "https://github.com/PHPOffice/PhpSpreadsheet/tree/4.5.0" + }, + "time": "2025-07-24T05:15:59+00:00" + }, + { + "name": "psr/http-client", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client" + }, + "time": "2023-09-23T14:17:50+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "psr/http-message": "^1.0 || ^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory" + }, + "time": "2024-04-15T12:06:14+00:00" + }, + { + "name": "psr/http-message", + "version": "2.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/2.0" + }, + "time": "2023-04-04T09:54:51+00:00" + }, + { + "name": "psr/simple-cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" + }, + "time": "2021-10-29T13:26:27+00:00" + } + ], + "packages-dev": [], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": {}, + "prefer-stable": false, + "prefer-lowest": false, + "platform": {}, + "platform-dev": {}, + "plugin-api-version": "2.6.0" +} diff --git a/vendor/composer/composer.phar b/vendor/composer/composer.phar new file mode 100755 index 0000000000000000000000000000000000000000..4f53d5aa0c80775176eb85345d3827548cdf1ec2 GIT binary patch literal 3116618 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 z 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

js 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 literal 0 HcmV?d00001 diff --git a/vendor/composer/vendor/autoload.php b/vendor/composer/vendor/autoload.php new file mode 100644 index 0000000..cb720d8 --- /dev/null +++ b/vendor/composer/vendor/autoload.php @@ -0,0 +1,22 @@ + + * Jordi Boggiano + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Composer\Autoload; + +/** + * ClassLoader implements a PSR-0, PSR-4 and classmap class loader. + * + * $loader = new \Composer\Autoload\ClassLoader(); + * + * // register classes with namespaces + * $loader->add('Symfony\Component', __DIR__.'/component'); + * $loader->add('Symfony', __DIR__.'/framework'); + * + * // activate the autoloader + * $loader->register(); + * + * // to enable searching the include path (eg. for PEAR packages) + * $loader->setUseIncludePath(true); + * + * In this example, if you try to use a class in the Symfony\Component + * namespace or one of its children (Symfony\Component\Console for instance), + * the autoloader will first look for the class under the component/ + * directory, and it will then fallback to the framework/ directory if not + * found before giving up. + * + * This class is loosely based on the Symfony UniversalClassLoader. + * + * @author Fabien Potencier + * @author Jordi Boggiano + * @see https://www.php-fig.org/psr/psr-0/ + * @see https://www.php-fig.org/psr/psr-4/ + */ +class ClassLoader +{ + /** @var \Closure(string):void */ + private static $includeFile; + + /** @var string|null */ + private $vendorDir; + + // PSR-4 + /** + * @var array> + */ + private $prefixLengthsPsr4 = array(); + /** + * @var array> + */ + private $prefixDirsPsr4 = array(); + /** + * @var list + */ + private $fallbackDirsPsr4 = array(); + + // PSR-0 + /** + * List of PSR-0 prefixes + * + * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2'))) + * + * @var array>> + */ + private $prefixesPsr0 = array(); + /** + * @var list + */ + private $fallbackDirsPsr0 = array(); + + /** @var bool */ + private $useIncludePath = false; + + /** + * @var array + */ + private $classMap = array(); + + /** @var bool */ + private $classMapAuthoritative = false; + + /** + * @var array + */ + private $missingClasses = array(); + + /** @var string|null */ + private $apcuPrefix; + + /** + * @var array + */ + private static $registeredLoaders = array(); + + /** + * @param string|null $vendorDir + */ + public function __construct($vendorDir = null) + { + $this->vendorDir = $vendorDir; + self::initializeIncludeClosure(); + } + + /** + * @return array> + */ + public function getPrefixes() + { + if (!empty($this->prefixesPsr0)) { + return call_user_func_array('array_merge', array_values($this->prefixesPsr0)); + } + + return array(); + } + + /** + * @return array> + */ + public function getPrefixesPsr4() + { + return $this->prefixDirsPsr4; + } + + /** + * @return list + */ + public function getFallbackDirs() + { + return $this->fallbackDirsPsr0; + } + + /** + * @return list + */ + public function getFallbackDirsPsr4() + { + return $this->fallbackDirsPsr4; + } + + /** + * @return array Array of classname => path + */ + public function getClassMap() + { + return $this->classMap; + } + + /** + * @param array $classMap Class to filename map + * + * @return void + */ + public function addClassMap(array $classMap) + { + if ($this->classMap) { + $this->classMap = array_merge($this->classMap, $classMap); + } else { + $this->classMap = $classMap; + } + } + + /** + * Registers a set of PSR-0 directories for a given prefix, either + * appending or prepending to the ones previously set for this prefix. + * + * @param string $prefix The prefix + * @param list|string $paths The PSR-0 root directories + * @param bool $prepend Whether to prepend the directories + * + * @return void + */ + public function add($prefix, $paths, $prepend = false) + { + $paths = (array) $paths; + if (!$prefix) { + if ($prepend) { + $this->fallbackDirsPsr0 = array_merge( + $paths, + $this->fallbackDirsPsr0 + ); + } else { + $this->fallbackDirsPsr0 = array_merge( + $this->fallbackDirsPsr0, + $paths + ); + } + + return; + } + + $first = $prefix[0]; + if (!isset($this->prefixesPsr0[$first][$prefix])) { + $this->prefixesPsr0[$first][$prefix] = $paths; + + return; + } + if ($prepend) { + $this->prefixesPsr0[$first][$prefix] = array_merge( + $paths, + $this->prefixesPsr0[$first][$prefix] + ); + } else { + $this->prefixesPsr0[$first][$prefix] = array_merge( + $this->prefixesPsr0[$first][$prefix], + $paths + ); + } + } + + /** + * Registers a set of PSR-4 directories for a given namespace, either + * appending or prepending to the ones previously set for this namespace. + * + * @param string $prefix The prefix/namespace, with trailing '\\' + * @param list|string $paths The PSR-4 base directories + * @param bool $prepend Whether to prepend the directories + * + * @throws \InvalidArgumentException + * + * @return void + */ + public function addPsr4($prefix, $paths, $prepend = false) + { + $paths = (array) $paths; + if (!$prefix) { + // Register directories for the root namespace. + if ($prepend) { + $this->fallbackDirsPsr4 = array_merge( + $paths, + $this->fallbackDirsPsr4 + ); + } else { + $this->fallbackDirsPsr4 = array_merge( + $this->fallbackDirsPsr4, + $paths + ); + } + } elseif (!isset($this->prefixDirsPsr4[$prefix])) { + // Register directories for a new namespace. + $length = strlen($prefix); + if ('\\' !== $prefix[$length - 1]) { + throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); + } + $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; + $this->prefixDirsPsr4[$prefix] = $paths; + } elseif ($prepend) { + // Prepend directories for an already registered namespace. + $this->prefixDirsPsr4[$prefix] = array_merge( + $paths, + $this->prefixDirsPsr4[$prefix] + ); + } else { + // Append directories for an already registered namespace. + $this->prefixDirsPsr4[$prefix] = array_merge( + $this->prefixDirsPsr4[$prefix], + $paths + ); + } + } + + /** + * Registers a set of PSR-0 directories for a given prefix, + * replacing any others previously set for this prefix. + * + * @param string $prefix The prefix + * @param list|string $paths The PSR-0 base directories + * + * @return void + */ + public function set($prefix, $paths) + { + if (!$prefix) { + $this->fallbackDirsPsr0 = (array) $paths; + } else { + $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths; + } + } + + /** + * Registers a set of PSR-4 directories for a given namespace, + * replacing any others previously set for this namespace. + * + * @param string $prefix The prefix/namespace, with trailing '\\' + * @param list|string $paths The PSR-4 base directories + * + * @throws \InvalidArgumentException + * + * @return void + */ + public function setPsr4($prefix, $paths) + { + if (!$prefix) { + $this->fallbackDirsPsr4 = (array) $paths; + } else { + $length = strlen($prefix); + if ('\\' !== $prefix[$length - 1]) { + throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); + } + $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; + $this->prefixDirsPsr4[$prefix] = (array) $paths; + } + } + + /** + * Turns on searching the include path for class files. + * + * @param bool $useIncludePath + * + * @return void + */ + public function setUseIncludePath($useIncludePath) + { + $this->useIncludePath = $useIncludePath; + } + + /** + * Can be used to check if the autoloader uses the include path to check + * for classes. + * + * @return bool + */ + public function getUseIncludePath() + { + return $this->useIncludePath; + } + + /** + * Turns off searching the prefix and fallback directories for classes + * that have not been registered with the class map. + * + * @param bool $classMapAuthoritative + * + * @return void + */ + public function setClassMapAuthoritative($classMapAuthoritative) + { + $this->classMapAuthoritative = $classMapAuthoritative; + } + + /** + * Should class lookup fail if not found in the current class map? + * + * @return bool + */ + public function isClassMapAuthoritative() + { + return $this->classMapAuthoritative; + } + + /** + * APCu prefix to use to cache found/not-found classes, if the extension is enabled. + * + * @param string|null $apcuPrefix + * + * @return void + */ + public function setApcuPrefix($apcuPrefix) + { + $this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null; + } + + /** + * The APCu prefix in use, or null if APCu caching is not enabled. + * + * @return string|null + */ + public function getApcuPrefix() + { + return $this->apcuPrefix; + } + + /** + * Registers this instance as an autoloader. + * + * @param bool $prepend Whether to prepend the autoloader or not + * + * @return void + */ + public function register($prepend = false) + { + spl_autoload_register(array($this, 'loadClass'), true, $prepend); + + if (null === $this->vendorDir) { + return; + } + + if ($prepend) { + self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders; + } else { + unset(self::$registeredLoaders[$this->vendorDir]); + self::$registeredLoaders[$this->vendorDir] = $this; + } + } + + /** + * Unregisters this instance as an autoloader. + * + * @return void + */ + public function unregister() + { + spl_autoload_unregister(array($this, 'loadClass')); + + if (null !== $this->vendorDir) { + unset(self::$registeredLoaders[$this->vendorDir]); + } + } + + /** + * Loads the given class or interface. + * + * @param string $class The name of the class + * @return true|null True if loaded, null otherwise + */ + public function loadClass($class) + { + if ($file = $this->findFile($class)) { + $includeFile = self::$includeFile; + $includeFile($file); + + return true; + } + + return null; + } + + /** + * Finds the path to the file where the class is defined. + * + * @param string $class The name of the class + * + * @return string|false The path if found, false otherwise + */ + public function findFile($class) + { + // class map lookup + if (isset($this->classMap[$class])) { + return $this->classMap[$class]; + } + if ($this->classMapAuthoritative || isset($this->missingClasses[$class])) { + return false; + } + if (null !== $this->apcuPrefix) { + $file = apcu_fetch($this->apcuPrefix.$class, $hit); + if ($hit) { + return $file; + } + } + + $file = $this->findFileWithExtension($class, '.php'); + + // Search for Hack files if we are running on HHVM + if (false === $file && defined('HHVM_VERSION')) { + $file = $this->findFileWithExtension($class, '.hh'); + } + + if (null !== $this->apcuPrefix) { + apcu_add($this->apcuPrefix.$class, $file); + } + + if (false === $file) { + // Remember that this class does not exist. + $this->missingClasses[$class] = true; + } + + return $file; + } + + /** + * Returns the currently registered loaders keyed by their corresponding vendor directories. + * + * @return array + */ + public static function getRegisteredLoaders() + { + return self::$registeredLoaders; + } + + /** + * @param string $class + * @param string $ext + * @return string|false + */ + private function findFileWithExtension($class, $ext) + { + // PSR-4 lookup + $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext; + + $first = $class[0]; + if (isset($this->prefixLengthsPsr4[$first])) { + $subPath = $class; + while (false !== $lastPos = strrpos($subPath, '\\')) { + $subPath = substr($subPath, 0, $lastPos); + $search = $subPath . '\\'; + if (isset($this->prefixDirsPsr4[$search])) { + $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1); + foreach ($this->prefixDirsPsr4[$search] as $dir) { + if (file_exists($file = $dir . $pathEnd)) { + return $file; + } + } + } + } + } + + // PSR-4 fallback dirs + foreach ($this->fallbackDirsPsr4 as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) { + return $file; + } + } + + // PSR-0 lookup + if (false !== $pos = strrpos($class, '\\')) { + // namespaced class name + $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1) + . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR); + } else { + // PEAR-like class name + $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext; + } + + if (isset($this->prefixesPsr0[$first])) { + foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) { + if (0 === strpos($class, $prefix)) { + foreach ($dirs as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { + return $file; + } + } + } + } + } + + // PSR-0 fallback dirs + foreach ($this->fallbackDirsPsr0 as $dir) { + if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { + return $file; + } + } + + // PSR-0 include paths. + if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) { + return $file; + } + + return false; + } + + /** + * @return void + */ + private static function initializeIncludeClosure() + { + if (self::$includeFile !== null) { + return; + } + + /** + * Scope isolated include. + * + * Prevents access to $this/self from included files. + * + * @param string $file + * @return void + */ + self::$includeFile = \Closure::bind(static function($file) { + include $file; + }, null, null); + } +} diff --git a/vendor/composer/vendor/composer/InstalledVersions.php b/vendor/composer/vendor/composer/InstalledVersions.php new file mode 100644 index 0000000..2052022 --- /dev/null +++ b/vendor/composer/vendor/composer/InstalledVersions.php @@ -0,0 +1,396 @@ + + * Jordi Boggiano + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Composer; + +use Composer\Autoload\ClassLoader; +use Composer\Semver\VersionParser; + +/** + * This class is copied in every Composer installed project and available to all + * + * See also https://getcomposer.org/doc/07-runtime.md#installed-versions + * + * To require its presence, you can require `composer-runtime-api ^2.0` + * + * @final + */ +class InstalledVersions +{ + /** + * @var string|null if set (by reflection by Composer), this should be set to the path where this class is being copied to + * @internal + */ + private static $selfDir = null; + + /** + * @var mixed[]|null + * @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array}|array{}|null + */ + private static $installed; + + /** + * @var bool + */ + private static $installedIsLocalDir; + + /** + * @var bool|null + */ + private static $canGetVendors; + + /** + * @var array[] + * @psalm-var array}> + */ + private static $installedByVendor = array(); + + /** + * Returns a list of all package names which are present, either by being installed, replaced or provided + * + * @return string[] + * @psalm-return list + */ + public static function getInstalledPackages() + { + $packages = array(); + foreach (self::getInstalled() as $installed) { + $packages[] = array_keys($installed['versions']); + } + + if (1 === \count($packages)) { + return $packages[0]; + } + + return array_keys(array_flip(\call_user_func_array('array_merge', $packages))); + } + + /** + * Returns a list of all package names with a specific type e.g. 'library' + * + * @param string $type + * @return string[] + * @psalm-return list + */ + public static function getInstalledPackagesByType($type) + { + $packagesByType = array(); + + foreach (self::getInstalled() as $installed) { + foreach ($installed['versions'] as $name => $package) { + if (isset($package['type']) && $package['type'] === $type) { + $packagesByType[] = $name; + } + } + } + + return $packagesByType; + } + + /** + * Checks whether the given package is installed + * + * This also returns true if the package name is provided or replaced by another package + * + * @param string $packageName + * @param bool $includeDevRequirements + * @return bool + */ + public static function isInstalled($packageName, $includeDevRequirements = true) + { + foreach (self::getInstalled() as $installed) { + if (isset($installed['versions'][$packageName])) { + return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false; + } + } + + return false; + } + + /** + * Checks whether the given package satisfies a version constraint + * + * e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call: + * + * Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3') + * + * @param VersionParser $parser Install composer/semver to have access to this class and functionality + * @param string $packageName + * @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package + * @return bool + */ + public static function satisfies(VersionParser $parser, $packageName, $constraint) + { + $constraint = $parser->parseConstraints((string) $constraint); + $provided = $parser->parseConstraints(self::getVersionRanges($packageName)); + + return $provided->matches($constraint); + } + + /** + * Returns a version constraint representing all the range(s) which are installed for a given package + * + * It is easier to use this via isInstalled() with the $constraint argument if you need to check + * whether a given version of a package is installed, and not just whether it exists + * + * @param string $packageName + * @return string Version constraint usable with composer/semver + */ + public static function getVersionRanges($packageName) + { + foreach (self::getInstalled() as $installed) { + if (!isset($installed['versions'][$packageName])) { + continue; + } + + $ranges = array(); + if (isset($installed['versions'][$packageName]['pretty_version'])) { + $ranges[] = $installed['versions'][$packageName]['pretty_version']; + } + if (array_key_exists('aliases', $installed['versions'][$packageName])) { + $ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']); + } + if (array_key_exists('replaced', $installed['versions'][$packageName])) { + $ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']); + } + if (array_key_exists('provided', $installed['versions'][$packageName])) { + $ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']); + } + + return implode(' || ', $ranges); + } + + throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); + } + + /** + * @param string $packageName + * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present + */ + public static function getVersion($packageName) + { + foreach (self::getInstalled() as $installed) { + if (!isset($installed['versions'][$packageName])) { + continue; + } + + if (!isset($installed['versions'][$packageName]['version'])) { + return null; + } + + return $installed['versions'][$packageName]['version']; + } + + throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); + } + + /** + * @param string $packageName + * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present + */ + public static function getPrettyVersion($packageName) + { + foreach (self::getInstalled() as $installed) { + if (!isset($installed['versions'][$packageName])) { + continue; + } + + if (!isset($installed['versions'][$packageName]['pretty_version'])) { + return null; + } + + return $installed['versions'][$packageName]['pretty_version']; + } + + throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); + } + + /** + * @param string $packageName + * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference + */ + public static function getReference($packageName) + { + foreach (self::getInstalled() as $installed) { + if (!isset($installed['versions'][$packageName])) { + continue; + } + + if (!isset($installed['versions'][$packageName]['reference'])) { + return null; + } + + return $installed['versions'][$packageName]['reference']; + } + + throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); + } + + /** + * @param string $packageName + * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path. + */ + public static function getInstallPath($packageName) + { + foreach (self::getInstalled() as $installed) { + if (!isset($installed['versions'][$packageName])) { + continue; + } + + return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null; + } + + throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); + } + + /** + * @return array + * @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool} + */ + public static function getRootPackage() + { + $installed = self::getInstalled(); + + return $installed[0]['root']; + } + + /** + * Returns the raw installed.php data for custom implementations + * + * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect. + * @return array[] + * @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} + */ + public static function getRawData() + { + @trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED); + + if (null === self::$installed) { + // only require the installed.php file if this file is loaded from its dumped location, + // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 + if (substr(__DIR__, -8, 1) !== 'C') { + self::$installed = include __DIR__ . '/installed.php'; + } else { + self::$installed = array(); + } + } + + return self::$installed; + } + + /** + * Returns the raw data of all installed.php which are currently loaded for custom implementations + * + * @return array[] + * @psalm-return list}> + */ + public static function getAllRawData() + { + return self::getInstalled(); + } + + /** + * Lets you reload the static array from another file + * + * This is only useful for complex integrations in which a project needs to use + * this class but then also needs to execute another project's autoloader in process, + * and wants to ensure both projects have access to their version of installed.php. + * + * A typical case would be PHPUnit, where it would need to make sure it reads all + * the data it needs from this class, then call reload() with + * `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure + * the project in which it runs can then also use this class safely, without + * interference between PHPUnit's dependencies and the project's dependencies. + * + * @param array[] $data A vendor/composer/installed.php data set + * @return void + * + * @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $data + */ + public static function reload($data) + { + self::$installed = $data; + self::$installedByVendor = array(); + + // when using reload, we disable the duplicate protection to ensure that self::$installed data is + // always returned, but we cannot know whether it comes from the installed.php in __DIR__ or not, + // so we have to assume it does not, and that may result in duplicate data being returned when listing + // all installed packages for example + self::$installedIsLocalDir = false; + } + + /** + * @return string + */ + private static function getSelfDir() + { + if (self::$selfDir === null) { + self::$selfDir = strtr(__DIR__, '\\', '/'); + } + + return self::$selfDir; + } + + /** + * @return array[] + * @psalm-return list}> + */ + private static function getInstalled() + { + if (null === self::$canGetVendors) { + self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders'); + } + + $installed = array(); + $copiedLocalDir = false; + + if (self::$canGetVendors) { + $selfDir = self::getSelfDir(); + foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { + $vendorDir = strtr($vendorDir, '\\', '/'); + if (isset(self::$installedByVendor[$vendorDir])) { + $installed[] = self::$installedByVendor[$vendorDir]; + } elseif (is_file($vendorDir.'/composer/installed.php')) { + /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ + $required = require $vendorDir.'/composer/installed.php'; + self::$installedByVendor[$vendorDir] = $required; + $installed[] = $required; + if (self::$installed === null && $vendorDir.'/composer' === $selfDir) { + self::$installed = $required; + self::$installedIsLocalDir = true; + } + } + if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) { + $copiedLocalDir = true; + } + } + } + + if (null === self::$installed) { + // only require the installed.php file if this file is loaded from its dumped location, + // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 + if (substr(__DIR__, -8, 1) !== 'C') { + /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array} $required */ + $required = require __DIR__ . '/installed.php'; + self::$installed = $required; + } else { + self::$installed = array(); + } + } + + if (self::$installed !== array() && !$copiedLocalDir) { + $installed[] = self::$installed; + } + + return $installed; + } +} diff --git a/vendor/composer/vendor/composer/LICENSE b/vendor/composer/vendor/composer/LICENSE new file mode 100644 index 0000000..f27399a --- /dev/null +++ b/vendor/composer/vendor/composer/LICENSE @@ -0,0 +1,21 @@ + +Copyright (c) Nils Adermann, Jordi Boggiano + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is furnished +to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + diff --git a/vendor/composer/vendor/composer/autoload_classmap.php b/vendor/composer/vendor/composer/autoload_classmap.php new file mode 100644 index 0000000..0fb0a2c --- /dev/null +++ b/vendor/composer/vendor/composer/autoload_classmap.php @@ -0,0 +1,10 @@ + $vendorDir . '/composer/InstalledVersions.php', +); diff --git a/vendor/composer/vendor/composer/autoload_namespaces.php b/vendor/composer/vendor/composer/autoload_namespaces.php new file mode 100644 index 0000000..15a2ff3 --- /dev/null +++ b/vendor/composer/vendor/composer/autoload_namespaces.php @@ -0,0 +1,9 @@ + array($vendorDir . '/maennchen/zipstream-php/src'), + 'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'), + 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-factory/src', $vendorDir . '/psr/http-message/src'), + 'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'), + 'PhpOffice\\PhpSpreadsheet\\' => array($vendorDir . '/phpoffice/phpspreadsheet/src/PhpSpreadsheet'), + 'Matrix\\' => array($vendorDir . '/markbaker/matrix/classes/src'), + 'Composer\\Pcre\\' => array($vendorDir . '/composer/pcre/src'), + 'Complex\\' => array($vendorDir . '/markbaker/complex/classes/src'), +); diff --git a/vendor/composer/vendor/composer/autoload_real.php b/vendor/composer/vendor/composer/autoload_real.php new file mode 100644 index 0000000..1356510 --- /dev/null +++ b/vendor/composer/vendor/composer/autoload_real.php @@ -0,0 +1,38 @@ +register(true); + + return $loader; + } +} diff --git a/vendor/composer/vendor/composer/autoload_static.php b/vendor/composer/vendor/composer/autoload_static.php new file mode 100644 index 0000000..a5a71e3 --- /dev/null +++ b/vendor/composer/vendor/composer/autoload_static.php @@ -0,0 +1,81 @@ + + array ( + 'ZipStream\\' => 10, + ), + 'P' => + array ( + 'Psr\\SimpleCache\\' => 16, + 'Psr\\Http\\Message\\' => 17, + 'Psr\\Http\\Client\\' => 16, + 'PhpOffice\\PhpSpreadsheet\\' => 25, + ), + 'M' => + array ( + 'Matrix\\' => 7, + ), + 'C' => + array ( + 'Composer\\Pcre\\' => 14, + 'Complex\\' => 8, + ), + ); + + public static $prefixDirsPsr4 = array ( + 'ZipStream\\' => + array ( + 0 => __DIR__ . '/..' . '/maennchen/zipstream-php/src', + ), + 'Psr\\SimpleCache\\' => + array ( + 0 => __DIR__ . '/..' . '/psr/simple-cache/src', + ), + 'Psr\\Http\\Message\\' => + array ( + 0 => __DIR__ . '/..' . '/psr/http-factory/src', + 1 => __DIR__ . '/..' . '/psr/http-message/src', + ), + 'Psr\\Http\\Client\\' => + array ( + 0 => __DIR__ . '/..' . '/psr/http-client/src', + ), + 'PhpOffice\\PhpSpreadsheet\\' => + array ( + 0 => __DIR__ . '/..' . '/phpoffice/phpspreadsheet/src/PhpSpreadsheet', + ), + 'Matrix\\' => + array ( + 0 => __DIR__ . '/..' . '/markbaker/matrix/classes/src', + ), + 'Composer\\Pcre\\' => + array ( + 0 => __DIR__ . '/..' . '/composer/pcre/src', + ), + 'Complex\\' => + array ( + 0 => __DIR__ . '/..' . '/markbaker/complex/classes/src', + ), + ); + + public static $classMap = array ( + 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', + ); + + public static function getInitializer(ClassLoader $loader) + { + return \Closure::bind(function () use ($loader) { + $loader->prefixLengthsPsr4 = ComposerStaticInit62e10e6c8df9afc192311b196c75bb33::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit62e10e6c8df9afc192311b196c75bb33::$prefixDirsPsr4; + $loader->classMap = ComposerStaticInit62e10e6c8df9afc192311b196c75bb33::$classMap; + + }, null, ClassLoader::class); + } +} diff --git a/vendor/composer/vendor/composer/installed.json b/vendor/composer/vendor/composer/installed.json new file mode 100644 index 0000000..c51d38e --- /dev/null +++ b/vendor/composer/vendor/composer/installed.json @@ -0,0 +1,614 @@ +{ + "packages": [ + { + "name": "composer/pcre", + "version": "3.3.2", + "version_normalized": "3.3.2.0", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/b2bed4734f0cc156ee1fe9c0da2550420d99a21e", + "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "conflict": { + "phpstan/phpstan": "<1.11.10" + }, + "require-dev": { + "phpstan/phpstan": "^1.12 || ^2", + "phpstan/phpstan-strict-rules": "^1 || ^2", + "phpunit/phpunit": "^8 || ^9" + }, + "time": "2024-11-12T16:29:46+00:00", + "type": "library", + "extra": { + "phpstan": { + "includes": [ + "extension.neon" + ] + }, + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Composer\\Pcre\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "PCRE wrapping library that offers type-safe preg_* replacements.", + "keywords": [ + "PCRE", + "preg", + "regex", + "regular expression" + ], + "support": { + "issues": "https://github.com/composer/pcre/issues", + "source": "https://github.com/composer/pcre/tree/3.3.2" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "install-path": "./pcre" + }, + { + "name": "maennchen/zipstream-php", + "version": "3.1.2", + "version_normalized": "3.1.2.0", + "source": { + "type": "git", + "url": "https://github.com/maennchen/ZipStream-PHP.git", + "reference": "aeadcf5c412332eb426c0f9b4485f6accba2a99f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/aeadcf5c412332eb426c0f9b4485f6accba2a99f", + "reference": "aeadcf5c412332eb426c0f9b4485f6accba2a99f", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "ext-zlib": "*", + "php-64bit": "^8.2" + }, + "require-dev": { + "brianium/paratest": "^7.7", + "ext-zip": "*", + "friendsofphp/php-cs-fixer": "^3.16", + "guzzlehttp/guzzle": "^7.5", + "mikey179/vfsstream": "^1.6", + "php-coveralls/php-coveralls": "^2.5", + "phpunit/phpunit": "^11.0", + "vimeo/psalm": "^6.0" + }, + "suggest": { + "guzzlehttp/psr7": "^2.4", + "psr/http-message": "^2.0" + }, + "time": "2025-01-27T12:07:53+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "ZipStream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Paul Duncan", + "email": "pabs@pablotron.org" + }, + { + "name": "Jonatan Männchen", + "email": "jonatan@maennchen.ch" + }, + { + "name": "Jesse Donat", + "email": "donatj@gmail.com" + }, + { + "name": "András Kolesár", + "email": "kolesar@kolesar.hu" + } + ], + "description": "ZipStream is a library for dynamically streaming dynamic zip files from PHP without writing to the disk at all on the server.", + "keywords": [ + "stream", + "zip" + ], + "support": { + "issues": "https://github.com/maennchen/ZipStream-PHP/issues", + "source": "https://github.com/maennchen/ZipStream-PHP/tree/3.1.2" + }, + "funding": [ + { + "url": "https://github.com/maennchen", + "type": "github" + } + ], + "install-path": "../maennchen/zipstream-php" + }, + { + "name": "markbaker/complex", + "version": "3.0.2", + "version_normalized": "3.0.2.0", + "source": { + "type": "git", + "url": "https://github.com/MarkBaker/PHPComplex.git", + "reference": "95c56caa1cf5c766ad6d65b6344b807c1e8405b9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/MarkBaker/PHPComplex/zipball/95c56caa1cf5c766ad6d65b6344b807c1e8405b9", + "reference": "95c56caa1cf5c766ad6d65b6344b807c1e8405b9", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-master", + "phpcompatibility/php-compatibility": "^9.3", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "squizlabs/php_codesniffer": "^3.7" + }, + "time": "2022-12-06T16:21:08+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Complex\\": "classes/src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Baker", + "email": "mark@lange.demon.co.uk" + } + ], + "description": "PHP Class for working with complex numbers", + "homepage": "https://github.com/MarkBaker/PHPComplex", + "keywords": [ + "complex", + "mathematics" + ], + "support": { + "issues": "https://github.com/MarkBaker/PHPComplex/issues", + "source": "https://github.com/MarkBaker/PHPComplex/tree/3.0.2" + }, + "install-path": "../markbaker/complex" + }, + { + "name": "markbaker/matrix", + "version": "3.0.1", + "version_normalized": "3.0.1.0", + "source": { + "type": "git", + "url": "https://github.com/MarkBaker/PHPMatrix.git", + "reference": "728434227fe21be27ff6d86621a1b13107a2562c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/MarkBaker/PHPMatrix/zipball/728434227fe21be27ff6d86621a1b13107a2562c", + "reference": "728434227fe21be27ff6d86621a1b13107a2562c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-master", + "phpcompatibility/php-compatibility": "^9.3", + "phpdocumentor/phpdocumentor": "2.*", + "phploc/phploc": "^4.0", + "phpmd/phpmd": "2.*", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "sebastian/phpcpd": "^4.0", + "squizlabs/php_codesniffer": "^3.7" + }, + "time": "2022-12-02T22:17:43+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "Matrix\\": "classes/src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Baker", + "email": "mark@demon-angel.eu" + } + ], + "description": "PHP Class for working with matrices", + "homepage": "https://github.com/MarkBaker/PHPMatrix", + "keywords": [ + "mathematics", + "matrix", + "vector" + ], + "support": { + "issues": "https://github.com/MarkBaker/PHPMatrix/issues", + "source": "https://github.com/MarkBaker/PHPMatrix/tree/3.0.1" + }, + "install-path": "../markbaker/matrix" + }, + { + "name": "phpoffice/phpspreadsheet", + "version": "4.5.0", + "version_normalized": "4.5.0.0", + "source": { + "type": "git", + "url": "https://github.com/PHPOffice/PhpSpreadsheet.git", + "reference": "2ea9786632e6fac1aee601b6e426bcc723d8ce13" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/2ea9786632e6fac1aee601b6e426bcc723d8ce13", + "reference": "2ea9786632e6fac1aee601b6e426bcc723d8ce13", + "shasum": "" + }, + "require": { + "composer/pcre": "^1||^2||^3", + "ext-ctype": "*", + "ext-dom": "*", + "ext-fileinfo": "*", + "ext-gd": "*", + "ext-iconv": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-simplexml": "*", + "ext-xml": "*", + "ext-xmlreader": "*", + "ext-xmlwriter": "*", + "ext-zip": "*", + "ext-zlib": "*", + "maennchen/zipstream-php": "^2.1 || ^3.0", + "markbaker/complex": "^3.0", + "markbaker/matrix": "^3.0", + "php": "^8.1", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0", + "psr/simple-cache": "^1.0 || ^2.0 || ^3.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-main", + "dompdf/dompdf": "^2.0 || ^3.0", + "friendsofphp/php-cs-fixer": "^3.2", + "mitoteam/jpgraph": "^10.3", + "mpdf/mpdf": "^8.1.1", + "phpcompatibility/php-compatibility": "^9.3", + "phpstan/phpstan": "^1.1 || ^2.0", + "phpstan/phpstan-deprecation-rules": "^1.0 || ^2.0", + "phpstan/phpstan-phpunit": "^1.0 || ^2.0", + "phpunit/phpunit": "^10.5", + "squizlabs/php_codesniffer": "^3.7", + "tecnickcom/tcpdf": "^6.5" + }, + "suggest": { + "dompdf/dompdf": "Option for rendering PDF with PDF Writer", + "ext-intl": "PHP Internationalization Functions", + "mitoteam/jpgraph": "Option for rendering charts, or including charts with PDF or HTML Writers", + "mpdf/mpdf": "Option for rendering PDF with PDF Writer", + "tecnickcom/tcpdf": "Option for rendering PDF with PDF Writer" + }, + "time": "2025-07-24T05:15:59+00:00", + "type": "library", + "installation-source": "dist", + "autoload": { + "psr-4": { + "PhpOffice\\PhpSpreadsheet\\": "src/PhpSpreadsheet" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Maarten Balliauw", + "homepage": "https://blog.maartenballiauw.be" + }, + { + "name": "Mark Baker", + "homepage": "https://markbakeruk.net" + }, + { + "name": "Franck Lefevre", + "homepage": "https://rootslabs.net" + }, + { + "name": "Erik Tilt" + }, + { + "name": "Adrien Crivelli" + } + ], + "description": "PHPSpreadsheet - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine", + "homepage": "https://github.com/PHPOffice/PhpSpreadsheet", + "keywords": [ + "OpenXML", + "excel", + "gnumeric", + "ods", + "php", + "spreadsheet", + "xls", + "xlsx" + ], + "support": { + "issues": "https://github.com/PHPOffice/PhpSpreadsheet/issues", + "source": "https://github.com/PHPOffice/PhpSpreadsheet/tree/4.5.0" + }, + "install-path": "../phpoffice/phpspreadsheet" + }, + { + "name": "psr/http-client", + "version": "1.0.3", + "version_normalized": "1.0.3.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90", + "reference": "bb5906edc1c324c9a05aa0873d40117941e5fa90", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0 || ^2.0" + }, + "time": "2023-09-23T14:17:50+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client" + }, + "install-path": "../psr/http-client" + }, + { + "name": "psr/http-factory", + "version": "1.1.0", + "version_normalized": "1.1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "reference": "2b4765fddfe3b508ac62f829e852b1501d3f6e8a", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "psr/http-message": "^1.0 || ^2.0" + }, + "time": "2024-04-15T12:06:14+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "PSR-17: Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory" + }, + "install-path": "../psr/http-factory" + }, + { + "name": "psr/http-message", + "version": "2.0", + "version_normalized": "2.0.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "time": "2023-04-04T09:54:51+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/2.0" + }, + "install-path": "../psr/http-message" + }, + { + "name": "psr/simple-cache", + "version": "3.0.0", + "version_normalized": "3.0.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "time": "2021-10-29T13:26:27+00:00", + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "installation-source": "dist", + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" + }, + "install-path": "../psr/simple-cache" + } + ], + "dev": true, + "dev-package-names": [] +} diff --git a/vendor/composer/vendor/composer/installed.php b/vendor/composer/vendor/composer/installed.php new file mode 100644 index 0000000..b99e817 --- /dev/null +++ b/vendor/composer/vendor/composer/installed.php @@ -0,0 +1,104 @@ + array( + 'name' => '__root__', + 'pretty_version' => '1.0.0+no-version-set', + 'version' => '1.0.0.0', + 'reference' => null, + 'type' => 'library', + 'install_path' => __DIR__ . '/../../', + 'aliases' => array(), + 'dev' => true, + ), + 'versions' => array( + '__root__' => array( + 'pretty_version' => '1.0.0+no-version-set', + 'version' => '1.0.0.0', + 'reference' => null, + 'type' => 'library', + 'install_path' => __DIR__ . '/../../', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'composer/pcre' => array( + 'pretty_version' => '3.3.2', + 'version' => '3.3.2.0', + 'reference' => 'b2bed4734f0cc156ee1fe9c0da2550420d99a21e', + 'type' => 'library', + 'install_path' => __DIR__ . '/./pcre', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'maennchen/zipstream-php' => array( + 'pretty_version' => '3.1.2', + 'version' => '3.1.2.0', + 'reference' => 'aeadcf5c412332eb426c0f9b4485f6accba2a99f', + 'type' => 'library', + 'install_path' => __DIR__ . '/../maennchen/zipstream-php', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'markbaker/complex' => array( + 'pretty_version' => '3.0.2', + 'version' => '3.0.2.0', + 'reference' => '95c56caa1cf5c766ad6d65b6344b807c1e8405b9', + 'type' => 'library', + 'install_path' => __DIR__ . '/../markbaker/complex', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'markbaker/matrix' => array( + 'pretty_version' => '3.0.1', + 'version' => '3.0.1.0', + 'reference' => '728434227fe21be27ff6d86621a1b13107a2562c', + 'type' => 'library', + 'install_path' => __DIR__ . '/../markbaker/matrix', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'phpoffice/phpspreadsheet' => array( + 'pretty_version' => '4.5.0', + 'version' => '4.5.0.0', + 'reference' => '2ea9786632e6fac1aee601b6e426bcc723d8ce13', + 'type' => 'library', + 'install_path' => __DIR__ . '/../phpoffice/phpspreadsheet', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'psr/http-client' => array( + 'pretty_version' => '1.0.3', + 'version' => '1.0.3.0', + 'reference' => 'bb5906edc1c324c9a05aa0873d40117941e5fa90', + 'type' => 'library', + 'install_path' => __DIR__ . '/../psr/http-client', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'psr/http-factory' => array( + 'pretty_version' => '1.1.0', + 'version' => '1.1.0.0', + 'reference' => '2b4765fddfe3b508ac62f829e852b1501d3f6e8a', + 'type' => 'library', + 'install_path' => __DIR__ . '/../psr/http-factory', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'psr/http-message' => array( + 'pretty_version' => '2.0', + 'version' => '2.0.0.0', + 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', + 'type' => 'library', + 'install_path' => __DIR__ . '/../psr/http-message', + 'aliases' => array(), + 'dev_requirement' => false, + ), + 'psr/simple-cache' => array( + 'pretty_version' => '3.0.0', + 'version' => '3.0.0.0', + 'reference' => '764e0b3939f5ca87cb904f570ef9be2d78a07865', + 'type' => 'library', + 'install_path' => __DIR__ . '/../psr/simple-cache', + 'aliases' => array(), + 'dev_requirement' => false, + ), + ), +); diff --git a/vendor/composer/vendor/composer/pcre/LICENSE b/vendor/composer/vendor/composer/pcre/LICENSE new file mode 100644 index 0000000..c5a282f --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/LICENSE @@ -0,0 +1,19 @@ +Copyright (C) 2021 Composer + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/vendor/composer/vendor/composer/pcre/README.md b/vendor/composer/vendor/composer/pcre/README.md new file mode 100644 index 0000000..4906514 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/README.md @@ -0,0 +1,189 @@ +composer/pcre +============= + +PCRE wrapping library that offers type-safe `preg_*` replacements. + +This library gives you a way to ensure `preg_*` functions do not fail silently, returning +unexpected `null`s that may not be handled. + +As of 3.0 this library enforces [`PREG_UNMATCHED_AS_NULL`](#preg_unmatched_as_null) usage +for all matching and replaceCallback functions, [read more below](#preg_unmatched_as_null) +to understand the implications. + +It thus makes it easier to work with static analysis tools like PHPStan or Psalm as it +simplifies and reduces the possible return values from all the `preg_*` functions which +are quite packed with edge cases. As of v2.2.0 / v3.2.0 the library also comes with a +[PHPStan extension](#phpstan-extension) for parsing regular expressions and giving you even better output types. + +This library is a thin wrapper around `preg_*` functions with [some limitations](#restrictions--limitations). +If you are looking for a richer API to handle regular expressions have a look at +[rawr/t-regx](https://packagist.org/packages/rawr/t-regx) instead. + +[![Continuous Integration](https://github.com/composer/pcre/workflows/Continuous%20Integration/badge.svg?branch=main)](https://github.com/composer/pcre/actions) + + +Installation +------------ + +Install the latest version with: + +```bash +$ composer require composer/pcre +``` + + +Requirements +------------ + +* PHP 7.4.0 is required for 3.x versions +* PHP 7.2.0 is required for 2.x versions +* PHP 5.3.2 is required for 1.x versions + + +Basic usage +----------- + +Instead of: + +```php +if (preg_match('{fo+}', $string, $matches)) { ... } +if (preg_match('{fo+}', $string, $matches, PREG_OFFSET_CAPTURE)) { ... } +if (preg_match_all('{fo+}', $string, $matches)) { ... } +$newString = preg_replace('{fo+}', 'bar', $string); +$newString = preg_replace_callback('{fo+}', function ($match) { return strtoupper($match[0]); }, $string); +$newString = preg_replace_callback_array(['{fo+}' => fn ($match) => strtoupper($match[0])], $string); +$filtered = preg_grep('{[a-z]}', $elements); +$array = preg_split('{[a-z]+}', $string); +``` + +You can now call these on the `Preg` class: + +```php +use Composer\Pcre\Preg; + +if (Preg::match('{fo+}', $string, $matches)) { ... } +if (Preg::matchWithOffsets('{fo+}', $string, $matches)) { ... } +if (Preg::matchAll('{fo+}', $string, $matches)) { ... } +$newString = Preg::replace('{fo+}', 'bar', $string); +$newString = Preg::replaceCallback('{fo+}', function ($match) { return strtoupper($match[0]); }, $string); +$newString = Preg::replaceCallbackArray(['{fo+}' => fn ($match) => strtoupper($match[0])], $string); +$filtered = Preg::grep('{[a-z]}', $elements); +$array = Preg::split('{[a-z]+}', $string); +``` + +The main difference is if anything fails to match/replace/.., it will throw a `Composer\Pcre\PcreException` +instead of returning `null` (or false in some cases), so you can now use the return values safely relying on +the fact that they can only be strings (for replace), ints (for match) or arrays (for grep/split). + +Additionally the `Preg` class provides match methods that return `bool` rather than `int`, for stricter type safety +when the number of pattern matches is not useful: + +```php +use Composer\Pcre\Preg; + +if (Preg::isMatch('{fo+}', $string, $matches)) // bool +if (Preg::isMatchAll('{fo+}', $string, $matches)) // bool +``` + +Finally the `Preg` class provides a few `*StrictGroups` method variants that ensure match groups +are always present and thus non-nullable, making it easier to write type-safe code: + +```php +use Composer\Pcre\Preg; + +// $matches is guaranteed to be an array of strings, if a subpattern does not match and produces a null it will throw +if (Preg::matchStrictGroups('{fo+}', $string, $matches)) +if (Preg::matchAllStrictGroups('{fo+}', $string, $matches)) +``` + +**Note:** This is generally safe to use as long as you do not have optional subpatterns (i.e. `(something)?` +or `(something)*` or branches with a `|` that result in some groups not being matched at all). +A subpattern that can match an empty string like `(.*)` is **not** optional, it will be present as an +empty string in the matches. A non-matching subpattern, even if optional like `(?:foo)?` will anyway not be present in +matches so it is also not a problem to use these with `*StrictGroups` methods. + +If you would prefer a slightly more verbose usage, replacing by-ref arguments by result objects, you can use the `Regex` class: + +```php +use Composer\Pcre\Regex; + +// this is useful when you are just interested in knowing if something matched +// as it returns a bool instead of int(1/0) for match +$bool = Regex::isMatch('{fo+}', $string); + +$result = Regex::match('{fo+}', $string); +if ($result->matched) { something($result->matches); } + +$result = Regex::matchWithOffsets('{fo+}', $string); +if ($result->matched) { something($result->matches); } + +$result = Regex::matchAll('{fo+}', $string); +if ($result->matched && $result->count > 3) { something($result->matches); } + +$newString = Regex::replace('{fo+}', 'bar', $string)->result; +$newString = Regex::replaceCallback('{fo+}', function ($match) { return strtoupper($match[0]); }, $string)->result; +$newString = Regex::replaceCallbackArray(['{fo+}' => fn ($match) => strtoupper($match[0])], $string)->result; +``` + +Note that `preg_grep` and `preg_split` are only callable via the `Preg` class as they do not have +complex return types warranting a specific result object. + +See the [MatchResult](src/MatchResult.php), [MatchWithOffsetsResult](src/MatchWithOffsetsResult.php), [MatchAllResult](src/MatchAllResult.php), +[MatchAllWithOffsetsResult](src/MatchAllWithOffsetsResult.php), and [ReplaceResult](src/ReplaceResult.php) class sources for more details. + +Restrictions / Limitations +-------------------------- + +Due to type safety requirements a few restrictions are in place. + +- matching using `PREG_OFFSET_CAPTURE` is made available via `matchWithOffsets` and `matchAllWithOffsets`. + You cannot pass the flag to `match`/`matchAll`. +- `Preg::split` will also reject `PREG_SPLIT_OFFSET_CAPTURE` and you should use `splitWithOffsets` + instead. +- `matchAll` rejects `PREG_SET_ORDER` as it also changes the shape of the returned matches. There + is no alternative provided as you can fairly easily code around it. +- `preg_filter` is not supported as it has a rather crazy API, most likely you should rather + use `Preg::grep` in combination with some loop and `Preg::replace`. +- `replace`, `replaceCallback` and `replaceCallbackArray` do not support an array `$subject`, + only simple strings. +- As of 2.0, the library always uses `PREG_UNMATCHED_AS_NULL` for matching, which offers [much + saner/more predictable results](#preg_unmatched_as_null). As of 3.0 the flag is also set for + `replaceCallback` and `replaceCallbackArray`. + +#### PREG_UNMATCHED_AS_NULL + +As of 2.0, this library always uses PREG_UNMATCHED_AS_NULL for all `match*` and `isMatch*` +functions. As of 3.0 it is also done for `replaceCallback` and `replaceCallbackArray`. + +This means your matches will always contain all matching groups, either as null if unmatched +or as string if it matched. + +The advantages in clarity and predictability are clearer if you compare the two outputs of +running this with and without PREG_UNMATCHED_AS_NULL in $flags: + +```php +preg_match('/(a)(b)*(c)(d)*/', 'ac', $matches, $flags); +``` + +| no flag | PREG_UNMATCHED_AS_NULL | +| --- | --- | +| array (size=4) | array (size=5) | +| 0 => string 'ac' (length=2) | 0 => string 'ac' (length=2) | +| 1 => string 'a' (length=1) | 1 => string 'a' (length=1) | +| 2 => string '' (length=0) | 2 => null | +| 3 => string 'c' (length=1) | 3 => string 'c' (length=1) | +| | 4 => null | +| group 2 (any unmatched group preceding one that matched) is set to `''`. You cannot tell if it matched an empty string or did not match at all | group 2 is `null` when unmatched and a string if it matched, easy to check for | +| group 4 (any optional group without a matching one following) is missing altogether. So you have to check with `isset()`, but really you want `isset($m[4]) && $m[4] !== ''` for safety unless you are very careful to check that a non-optional group follows it | group 4 is always set, and null in this case as there was no match, easy to check for with `$m[4] !== null` | + +PHPStan Extension +----------------- + +To use the PHPStan extension if you do not use `phpstan/extension-installer` you can include `vendor/composer/pcre/extension.neon` in your PHPStan config. + +The extension provides much better type information for $matches as well as regex validation where possible. + +License +------- + +composer/pcre is licensed under the MIT License, see the LICENSE file for details. diff --git a/vendor/composer/vendor/composer/pcre/composer.json b/vendor/composer/vendor/composer/pcre/composer.json new file mode 100644 index 0000000..d3a7e67 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/composer.json @@ -0,0 +1,54 @@ +{ + "name": "composer/pcre", + "description": "PCRE wrapping library that offers type-safe preg_* replacements.", + "type": "library", + "license": "MIT", + "keywords": [ + "pcre", + "regex", + "preg", + "regular expression" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^8 || ^9", + "phpstan/phpstan": "^1.12 || ^2", + "phpstan/phpstan-strict-rules": "^1 || ^2" + }, + "conflict": { + "phpstan/phpstan": "<1.11.10" + }, + "autoload": { + "psr-4": { + "Composer\\Pcre\\": "src" + } + }, + "autoload-dev": { + "psr-4": { + "Composer\\Pcre\\": "tests" + } + }, + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + }, + "phpstan": { + "includes": [ + "extension.neon" + ] + } + }, + "scripts": { + "test": "@php vendor/bin/phpunit", + "phpstan": "@php phpstan analyse" + } +} diff --git a/vendor/composer/vendor/composer/pcre/extension.neon b/vendor/composer/vendor/composer/pcre/extension.neon new file mode 100644 index 0000000..b9cea11 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/extension.neon @@ -0,0 +1,22 @@ +# composer/pcre PHPStan extensions +# +# These can be reused by third party packages by including 'vendor/composer/pcre/extension.neon' +# in your phpstan config + +services: + - + class: Composer\Pcre\PHPStan\PregMatchParameterOutTypeExtension + tags: + - phpstan.staticMethodParameterOutTypeExtension + - + class: Composer\Pcre\PHPStan\PregMatchTypeSpecifyingExtension + tags: + - phpstan.typeSpecifier.staticMethodTypeSpecifyingExtension + - + class: Composer\Pcre\PHPStan\PregReplaceCallbackClosureTypeExtension + tags: + - phpstan.staticMethodParameterClosureTypeExtension + +rules: + - Composer\Pcre\PHPStan\UnsafeStrictGroupsCallRule + - Composer\Pcre\PHPStan\InvalidRegexPatternRule diff --git a/vendor/composer/vendor/composer/pcre/src/MatchAllResult.php b/vendor/composer/vendor/composer/pcre/src/MatchAllResult.php new file mode 100644 index 0000000..b22b52d --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/MatchAllResult.php @@ -0,0 +1,46 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +final class MatchAllResult +{ + /** + * An array of match group => list of matched strings + * + * @readonly + * @var array> + */ + public $matches; + + /** + * @readonly + * @var 0|positive-int + */ + public $count; + + /** + * @readonly + * @var bool + */ + public $matched; + + /** + * @param 0|positive-int $count + * @param array> $matches + */ + public function __construct(int $count, array $matches) + { + $this->matches = $matches; + $this->matched = (bool) $count; + $this->count = $count; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/MatchAllStrictGroupsResult.php b/vendor/composer/vendor/composer/pcre/src/MatchAllStrictGroupsResult.php new file mode 100644 index 0000000..b7ec397 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/MatchAllStrictGroupsResult.php @@ -0,0 +1,46 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +final class MatchAllStrictGroupsResult +{ + /** + * An array of match group => list of matched strings + * + * @readonly + * @var array> + */ + public $matches; + + /** + * @readonly + * @var 0|positive-int + */ + public $count; + + /** + * @readonly + * @var bool + */ + public $matched; + + /** + * @param 0|positive-int $count + * @param array> $matches + */ + public function __construct(int $count, array $matches) + { + $this->matches = $matches; + $this->matched = (bool) $count; + $this->count = $count; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/MatchAllWithOffsetsResult.php b/vendor/composer/vendor/composer/pcre/src/MatchAllWithOffsetsResult.php new file mode 100644 index 0000000..032a02c --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/MatchAllWithOffsetsResult.php @@ -0,0 +1,48 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +final class MatchAllWithOffsetsResult +{ + /** + * An array of match group => list of matches, every match being a pair of string matched + offset in bytes (or -1 if no match) + * + * @readonly + * @var array> + * @phpstan-var array}>> + */ + public $matches; + + /** + * @readonly + * @var 0|positive-int + */ + public $count; + + /** + * @readonly + * @var bool + */ + public $matched; + + /** + * @param 0|positive-int $count + * @param array> $matches + * @phpstan-param array}>> $matches + */ + public function __construct(int $count, array $matches) + { + $this->matches = $matches; + $this->matched = (bool) $count; + $this->count = $count; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/MatchResult.php b/vendor/composer/vendor/composer/pcre/src/MatchResult.php new file mode 100644 index 0000000..e951a5e --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/MatchResult.php @@ -0,0 +1,39 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +final class MatchResult +{ + /** + * An array of match group => string matched + * + * @readonly + * @var array + */ + public $matches; + + /** + * @readonly + * @var bool + */ + public $matched; + + /** + * @param 0|positive-int $count + * @param array $matches + */ + public function __construct(int $count, array $matches) + { + $this->matches = $matches; + $this->matched = (bool) $count; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/MatchStrictGroupsResult.php b/vendor/composer/vendor/composer/pcre/src/MatchStrictGroupsResult.php new file mode 100644 index 0000000..126ee62 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/MatchStrictGroupsResult.php @@ -0,0 +1,39 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +final class MatchStrictGroupsResult +{ + /** + * An array of match group => string matched + * + * @readonly + * @var array + */ + public $matches; + + /** + * @readonly + * @var bool + */ + public $matched; + + /** + * @param 0|positive-int $count + * @param array $matches + */ + public function __construct(int $count, array $matches) + { + $this->matches = $matches; + $this->matched = (bool) $count; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/MatchWithOffsetsResult.php b/vendor/composer/vendor/composer/pcre/src/MatchWithOffsetsResult.php new file mode 100644 index 0000000..ba4d4bc --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/MatchWithOffsetsResult.php @@ -0,0 +1,41 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +final class MatchWithOffsetsResult +{ + /** + * An array of match group => pair of string matched + offset in bytes (or -1 if no match) + * + * @readonly + * @var array + * @phpstan-var array}> + */ + public $matches; + + /** + * @readonly + * @var bool + */ + public $matched; + + /** + * @param 0|positive-int $count + * @param array $matches + * @phpstan-param array}> $matches + */ + public function __construct(int $count, array $matches) + { + $this->matches = $matches; + $this->matched = (bool) $count; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/PHPStan/InvalidRegexPatternRule.php b/vendor/composer/vendor/composer/pcre/src/PHPStan/InvalidRegexPatternRule.php new file mode 100644 index 0000000..8a05fb2 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/PHPStan/InvalidRegexPatternRule.php @@ -0,0 +1,142 @@ + + */ +class InvalidRegexPatternRule implements Rule +{ + public function getNodeType(): string + { + return StaticCall::class; + } + + public function processNode(Node $node, Scope $scope): array + { + $patterns = $this->extractPatterns($node, $scope); + + $errors = []; + foreach ($patterns as $pattern) { + $errorMessage = $this->validatePattern($pattern); + if ($errorMessage === null) { + continue; + } + + $errors[] = RuleErrorBuilder::message(sprintf('Regex pattern is invalid: %s', $errorMessage))->identifier('regexp.pattern')->build(); + } + + return $errors; + } + + /** + * @return string[] + */ + private function extractPatterns(StaticCall $node, Scope $scope): array + { + if (!$node->class instanceof FullyQualified) { + return []; + } + $isRegex = $node->class->toString() === Regex::class; + $isPreg = $node->class->toString() === Preg::class; + if (!$isRegex && !$isPreg) { + return []; + } + if (!$node->name instanceof Node\Identifier || !Preg::isMatch('{^(match|isMatch|grep|replace|split)}', $node->name->name)) { + return []; + } + + $functionName = $node->name->name; + if (!isset($node->getArgs()[0])) { + return []; + } + + $patternNode = $node->getArgs()[0]->value; + $patternType = $scope->getType($patternNode); + + $patternStrings = []; + + foreach ($patternType->getConstantStrings() as $constantStringType) { + if ($functionName === 'replaceCallbackArray') { + continue; + } + + $patternStrings[] = $constantStringType->getValue(); + } + + foreach ($patternType->getConstantArrays() as $constantArrayType) { + if ( + in_array($functionName, [ + 'replace', + 'replaceCallback', + ], true) + ) { + foreach ($constantArrayType->getValueTypes() as $arrayKeyType) { + foreach ($arrayKeyType->getConstantStrings() as $constantString) { + $patternStrings[] = $constantString->getValue(); + } + } + } + + if ($functionName !== 'replaceCallbackArray') { + continue; + } + + foreach ($constantArrayType->getKeyTypes() as $arrayKeyType) { + foreach ($arrayKeyType->getConstantStrings() as $constantString) { + $patternStrings[] = $constantString->getValue(); + } + } + } + + return $patternStrings; + } + + private function validatePattern(string $pattern): ?string + { + try { + $msg = null; + $prev = set_error_handler(function (int $severity, string $message, string $file) use (&$msg): bool { + $msg = preg_replace("#^preg_match(_all)?\\(.*?\\): #", '', $message); + + return true; + }); + + if ($pattern === '') { + return 'Empty string is not a valid regular expression'; + } + + Preg::match($pattern, ''); + if ($msg !== null) { + return $msg; + } + } catch (PcreException $e) { + if ($e->getCode() === PREG_INTERNAL_ERROR && $msg !== null) { + return $msg; + } + + return preg_replace('{.*? failed executing ".*": }', '', $e->getMessage()); + } finally { + restore_error_handler(); + } + + return null; + } + +} diff --git a/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchFlags.php b/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchFlags.php new file mode 100644 index 0000000..aa30ab3 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchFlags.php @@ -0,0 +1,70 @@ +getType($flagsArg->value); + + $constantScalars = $flagsType->getConstantScalarValues(); + if ($constantScalars === []) { + return null; + } + + $internalFlagsTypes = []; + foreach ($flagsType->getConstantScalarValues() as $constantScalarValue) { + if (!is_int($constantScalarValue)) { + return null; + } + + $internalFlagsTypes[] = new ConstantIntegerType($constantScalarValue | PREG_UNMATCHED_AS_NULL); + } + return TypeCombinator::union(...$internalFlagsTypes); + } + + static public function removeNullFromMatches(Type $matchesType): Type + { + return TypeTraverser::map($matchesType, static function (Type $type, callable $traverse): Type { + if ($type instanceof UnionType || $type instanceof IntersectionType) { + return $traverse($type); + } + + if ($type instanceof ConstantArrayType) { + return new ConstantArrayType( + $type->getKeyTypes(), + array_map(static function (Type $valueType) use ($traverse): Type { + return $traverse($valueType); + }, $type->getValueTypes()), + $type->getNextAutoIndexes(), + [], + $type->isList() + ); + } + + if ($type instanceof ArrayType) { + return new ArrayType($type->getKeyType(), $traverse($type->getItemType())); + } + + return TypeCombinator::removeNull($type); + }); + } + +} diff --git a/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchParameterOutTypeExtension.php b/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchParameterOutTypeExtension.php new file mode 100644 index 0000000..e0d6020 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchParameterOutTypeExtension.php @@ -0,0 +1,65 @@ +regexShapeMatcher = $regexShapeMatcher; + } + + public function isStaticMethodSupported(MethodReflection $methodReflection, ParameterReflection $parameter): bool + { + return + $methodReflection->getDeclaringClass()->getName() === Preg::class + && in_array($methodReflection->getName(), [ + 'match', 'isMatch', 'matchStrictGroups', 'isMatchStrictGroups', + 'matchAll', 'isMatchAll', 'matchAllStrictGroups', 'isMatchAllStrictGroups' + ], true) + && $parameter->getName() === 'matches'; + } + + public function getParameterOutTypeFromStaticMethodCall(MethodReflection $methodReflection, StaticCall $methodCall, ParameterReflection $parameter, Scope $scope): ?Type + { + $args = $methodCall->getArgs(); + $patternArg = $args[0] ?? null; + $matchesArg = $args[2] ?? null; + $flagsArg = $args[3] ?? null; + + if ( + $patternArg === null || $matchesArg === null + ) { + return null; + } + + $flagsType = PregMatchFlags::getType($flagsArg, $scope); + if ($flagsType === null) { + return null; + } + + if (stripos($methodReflection->getName(), 'matchAll') !== false) { + return $this->regexShapeMatcher->matchAllExpr($patternArg->value, $flagsType, TrinaryLogic::createMaybe(), $scope); + } + + return $this->regexShapeMatcher->matchExpr($patternArg->value, $flagsType, TrinaryLogic::createMaybe(), $scope); + } + +} diff --git a/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchTypeSpecifyingExtension.php b/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchTypeSpecifyingExtension.php new file mode 100644 index 0000000..3db0ce0 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/PHPStan/PregMatchTypeSpecifyingExtension.php @@ -0,0 +1,119 @@ +regexShapeMatcher = $regexShapeMatcher; + } + + public function setTypeSpecifier(TypeSpecifier $typeSpecifier): void + { + $this->typeSpecifier = $typeSpecifier; + } + + public function getClass(): string + { + return Preg::class; + } + + public function isStaticMethodSupported(MethodReflection $methodReflection, StaticCall $node, TypeSpecifierContext $context): bool + { + return in_array($methodReflection->getName(), [ + 'match', 'isMatch', 'matchStrictGroups', 'isMatchStrictGroups', + 'matchAll', 'isMatchAll', 'matchAllStrictGroups', 'isMatchAllStrictGroups' + ], true) + && !$context->null(); + } + + public function specifyTypes(MethodReflection $methodReflection, StaticCall $node, Scope $scope, TypeSpecifierContext $context): SpecifiedTypes + { + $args = $node->getArgs(); + $patternArg = $args[0] ?? null; + $matchesArg = $args[2] ?? null; + $flagsArg = $args[3] ?? null; + + if ( + $patternArg === null || $matchesArg === null + ) { + return new SpecifiedTypes(); + } + + $flagsType = PregMatchFlags::getType($flagsArg, $scope); + if ($flagsType === null) { + return new SpecifiedTypes(); + } + + if (stripos($methodReflection->getName(), 'matchAll') !== false) { + $matchedType = $this->regexShapeMatcher->matchAllExpr($patternArg->value, $flagsType, TrinaryLogic::createFromBoolean($context->true()), $scope); + } else { + $matchedType = $this->regexShapeMatcher->matchExpr($patternArg->value, $flagsType, TrinaryLogic::createFromBoolean($context->true()), $scope); + } + + if ($matchedType === null) { + return new SpecifiedTypes(); + } + + if ( + in_array($methodReflection->getName(), ['matchStrictGroups', 'isMatchStrictGroups', 'matchAllStrictGroups', 'isMatchAllStrictGroups'], true) + ) { + $matchedType = PregMatchFlags::removeNullFromMatches($matchedType); + } + + $overwrite = false; + if ($context->false()) { + $overwrite = true; + $context = $context->negate(); + } + + // @phpstan-ignore function.alreadyNarrowedType + if (method_exists('PHPStan\Analyser\SpecifiedTypes', 'setRootExpr')) { + $typeSpecifier = $this->typeSpecifier->create( + $matchesArg->value, + $matchedType, + $context, + $scope + )->setRootExpr($node); + + return $overwrite ? $typeSpecifier->setAlwaysOverwriteTypes() : $typeSpecifier; + } + + // @phpstan-ignore arguments.count + return $this->typeSpecifier->create( + $matchesArg->value, + $matchedType, + $context, + // @phpstan-ignore argument.type + $overwrite, + $scope, + $node + ); + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/PHPStan/PregReplaceCallbackClosureTypeExtension.php b/vendor/composer/vendor/composer/pcre/src/PHPStan/PregReplaceCallbackClosureTypeExtension.php new file mode 100644 index 0000000..7b95367 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/PHPStan/PregReplaceCallbackClosureTypeExtension.php @@ -0,0 +1,91 @@ +regexShapeMatcher = $regexShapeMatcher; + } + + public function isStaticMethodSupported(MethodReflection $methodReflection, ParameterReflection $parameter): bool + { + return in_array($methodReflection->getDeclaringClass()->getName(), [Preg::class, Regex::class], true) + && in_array($methodReflection->getName(), ['replaceCallback', 'replaceCallbackStrictGroups'], true) + && $parameter->getName() === 'replacement'; + } + + public function getTypeFromStaticMethodCall(MethodReflection $methodReflection, StaticCall $methodCall, ParameterReflection $parameter, Scope $scope): ?Type + { + $args = $methodCall->getArgs(); + $patternArg = $args[0] ?? null; + $flagsArg = $args[5] ?? null; + + if ( + $patternArg === null + ) { + return null; + } + + $flagsType = PregMatchFlags::getType($flagsArg, $scope); + + $matchesType = $this->regexShapeMatcher->matchExpr($patternArg->value, $flagsType, TrinaryLogic::createYes(), $scope); + if ($matchesType === null) { + return null; + } + + if ($methodReflection->getName() === 'replaceCallbackStrictGroups' && count($matchesType->getConstantArrays()) === 1) { + $matchesType = $matchesType->getConstantArrays()[0]; + $matchesType = new ConstantArrayType( + $matchesType->getKeyTypes(), + array_map(static function (Type $valueType): Type { + if (count($valueType->getConstantArrays()) === 1) { + $valueTypeArray = $valueType->getConstantArrays()[0]; + return new ConstantArrayType( + $valueTypeArray->getKeyTypes(), + array_map(static function (Type $valueType): Type { + return TypeCombinator::removeNull($valueType); + }, $valueTypeArray->getValueTypes()), + $valueTypeArray->getNextAutoIndexes(), + [], + $valueTypeArray->isList() + ); + } + return TypeCombinator::removeNull($valueType); + }, $matchesType->getValueTypes()), + $matchesType->getNextAutoIndexes(), + [], + $matchesType->isList() + ); + } + + return new ClosureType( + [ + new NativeParameterReflection($parameter->getName(), $parameter->isOptional(), $matchesType, $parameter->passedByReference(), $parameter->isVariadic(), $parameter->getDefaultValue()), + ], + new StringType() + ); + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/PHPStan/UnsafeStrictGroupsCallRule.php b/vendor/composer/vendor/composer/pcre/src/PHPStan/UnsafeStrictGroupsCallRule.php new file mode 100644 index 0000000..5bced50 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/PHPStan/UnsafeStrictGroupsCallRule.php @@ -0,0 +1,112 @@ + + */ +final class UnsafeStrictGroupsCallRule implements Rule +{ + /** + * @var RegexArrayShapeMatcher + */ + private $regexShapeMatcher; + + public function __construct(RegexArrayShapeMatcher $regexShapeMatcher) + { + $this->regexShapeMatcher = $regexShapeMatcher; + } + + public function getNodeType(): string + { + return StaticCall::class; + } + + public function processNode(Node $node, Scope $scope): array + { + if (!$node->class instanceof FullyQualified) { + return []; + } + $isRegex = $node->class->toString() === Regex::class; + $isPreg = $node->class->toString() === Preg::class; + if (!$isRegex && !$isPreg) { + return []; + } + if (!$node->name instanceof Node\Identifier || !in_array($node->name->name, ['matchStrictGroups', 'isMatchStrictGroups', 'matchAllStrictGroups', 'isMatchAllStrictGroups'], true)) { + return []; + } + + $args = $node->getArgs(); + if (!isset($args[0])) { + return []; + } + + $patternArg = $args[0] ?? null; + if ($isPreg) { + if (!isset($args[2])) { // no matches set, skip as the matches won't be used anyway + return []; + } + $flagsArg = $args[3] ?? null; + } else { + $flagsArg = $args[2] ?? null; + } + + if ($patternArg === null) { + return []; + } + + $flagsType = PregMatchFlags::getType($flagsArg, $scope); + if ($flagsType === null) { + return []; + } + + $matchedType = $this->regexShapeMatcher->matchExpr($patternArg->value, $flagsType, TrinaryLogic::createYes(), $scope); + if ($matchedType === null) { + return [ + RuleErrorBuilder::message(sprintf('The %s call is potentially unsafe as $matches\' type could not be inferred.', $node->name->name)) + ->identifier('composerPcre.maybeUnsafeStrictGroups') + ->build(), + ]; + } + + if (count($matchedType->getConstantArrays()) === 1) { + $matchedType = $matchedType->getConstantArrays()[0]; + $nullableGroups = []; + foreach ($matchedType->getValueTypes() as $index => $type) { + if (TypeCombinator::containsNull($type)) { + $nullableGroups[] = $matchedType->getKeyTypes()[$index]->getValue(); + } + } + + if (\count($nullableGroups) > 0) { + return [ + RuleErrorBuilder::message(sprintf( + 'The %s call is unsafe as match group%s "%s" %s optional and may be null.', + $node->name->name, + \count($nullableGroups) > 1 ? 's' : '', + implode('", "', $nullableGroups), + \count($nullableGroups) > 1 ? 'are' : 'is' + ))->identifier('composerPcre.unsafeStrictGroups')->build(), + ]; + } + } + + return []; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/PcreException.php b/vendor/composer/vendor/composer/pcre/src/PcreException.php new file mode 100644 index 0000000..23d9327 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/PcreException.php @@ -0,0 +1,55 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +class PcreException extends \RuntimeException +{ + /** + * @param string $function + * @param string|string[] $pattern + * @return self + */ + public static function fromFunction($function, $pattern) + { + $code = preg_last_error(); + + if (is_array($pattern)) { + $pattern = implode(', ', $pattern); + } + + return new PcreException($function.'(): failed executing "'.$pattern.'": '.self::pcreLastErrorMessage($code), $code); + } + + /** + * @param int $code + * @return string + */ + private static function pcreLastErrorMessage($code) + { + if (function_exists('preg_last_error_msg')) { + return preg_last_error_msg(); + } + + $constants = get_defined_constants(true); + if (!isset($constants['pcre']) || !is_array($constants['pcre'])) { + return 'UNDEFINED_ERROR'; + } + + foreach ($constants['pcre'] as $const => $val) { + if ($val === $code && substr($const, -6) === '_ERROR') { + return $const; + } + } + + return 'UNDEFINED_ERROR'; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/Preg.php b/vendor/composer/vendor/composer/pcre/src/Preg.php new file mode 100644 index 0000000..400abbf --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/Preg.php @@ -0,0 +1,430 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +class Preg +{ + /** @internal */ + public const ARRAY_MSG = '$subject as an array is not supported. You can use \'foreach\' instead.'; + /** @internal */ + public const INVALID_TYPE_MSG = '$subject must be a string, %s given.'; + + /** + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * @return 0|1 + * + * @param-out array $matches + */ + public static function match(string $pattern, string $subject, ?array &$matches = null, int $flags = 0, int $offset = 0): int + { + self::checkOffsetCapture($flags, 'matchWithOffsets'); + + $result = preg_match($pattern, $subject, $matches, $flags | PREG_UNMATCHED_AS_NULL, $offset); + if ($result === false) { + throw PcreException::fromFunction('preg_match', $pattern); + } + + return $result; + } + + /** + * Variant of `match()` which outputs non-null matches (or throws) + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * @return 0|1 + * @throws UnexpectedNullMatchException + * + * @param-out array $matches + */ + public static function matchStrictGroups(string $pattern, string $subject, ?array &$matches = null, int $flags = 0, int $offset = 0): int + { + $result = self::match($pattern, $subject, $matchesInternal, $flags, $offset); + $matches = self::enforceNonNullMatches($pattern, $matchesInternal, 'match'); + + return $result; + } + + /** + * Runs preg_match with PREG_OFFSET_CAPTURE + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL and PREG_OFFSET_CAPTURE are always set, no other flags are supported + * @return 0|1 + * + * @param-out array}> $matches + */ + public static function matchWithOffsets(string $pattern, string $subject, ?array &$matches, int $flags = 0, int $offset = 0): int + { + $result = preg_match($pattern, $subject, $matches, $flags | PREG_UNMATCHED_AS_NULL | PREG_OFFSET_CAPTURE, $offset); + if ($result === false) { + throw PcreException::fromFunction('preg_match', $pattern); + } + + return $result; + } + + /** + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * @return 0|positive-int + * + * @param-out array> $matches + */ + public static function matchAll(string $pattern, string $subject, ?array &$matches = null, int $flags = 0, int $offset = 0): int + { + self::checkOffsetCapture($flags, 'matchAllWithOffsets'); + self::checkSetOrder($flags); + + $result = preg_match_all($pattern, $subject, $matches, $flags | PREG_UNMATCHED_AS_NULL, $offset); + if (!is_int($result)) { // PHP < 8 may return null, 8+ returns int|false + throw PcreException::fromFunction('preg_match_all', $pattern); + } + + return $result; + } + + /** + * Variant of `match()` which outputs non-null matches (or throws) + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * @return 0|positive-int + * @throws UnexpectedNullMatchException + * + * @param-out array> $matches + */ + public static function matchAllStrictGroups(string $pattern, string $subject, ?array &$matches = null, int $flags = 0, int $offset = 0): int + { + $result = self::matchAll($pattern, $subject, $matchesInternal, $flags, $offset); + $matches = self::enforceNonNullMatchAll($pattern, $matchesInternal, 'matchAll'); + + return $result; + } + + /** + * Runs preg_match_all with PREG_OFFSET_CAPTURE + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL and PREG_MATCH_OFFSET are always set, no other flags are supported + * @return 0|positive-int + * + * @param-out array}>> $matches + */ + public static function matchAllWithOffsets(string $pattern, string $subject, ?array &$matches, int $flags = 0, int $offset = 0): int + { + self::checkSetOrder($flags); + + $result = preg_match_all($pattern, $subject, $matches, $flags | PREG_UNMATCHED_AS_NULL | PREG_OFFSET_CAPTURE, $offset); + if (!is_int($result)) { // PHP < 8 may return null, 8+ returns int|false + throw PcreException::fromFunction('preg_match_all', $pattern); + } + + return $result; + } + + /** + * @param string|string[] $pattern + * @param string|string[] $replacement + * @param string $subject + * @param int $count Set by method + * + * @param-out int<0, max> $count + */ + public static function replace($pattern, $replacement, $subject, int $limit = -1, ?int &$count = null): string + { + if (!is_scalar($subject)) { + if (is_array($subject)) { + throw new \InvalidArgumentException(static::ARRAY_MSG); + } + + throw new \TypeError(sprintf(static::INVALID_TYPE_MSG, gettype($subject))); + } + + $result = preg_replace($pattern, $replacement, $subject, $limit, $count); + if ($result === null) { + throw PcreException::fromFunction('preg_replace', $pattern); + } + + return $result; + } + + /** + * @param string|string[] $pattern + * @param ($flags is PREG_OFFSET_CAPTURE ? (callable(array}>): string) : callable(array): string) $replacement + * @param string $subject + * @param int $count Set by method + * @param int-mask $flags PREG_OFFSET_CAPTURE is supported, PREG_UNMATCHED_AS_NULL is always set + * + * @param-out int<0, max> $count + */ + public static function replaceCallback($pattern, callable $replacement, $subject, int $limit = -1, ?int &$count = null, int $flags = 0): string + { + if (!is_scalar($subject)) { + if (is_array($subject)) { + throw new \InvalidArgumentException(static::ARRAY_MSG); + } + + throw new \TypeError(sprintf(static::INVALID_TYPE_MSG, gettype($subject))); + } + + $result = preg_replace_callback($pattern, $replacement, $subject, $limit, $count, $flags | PREG_UNMATCHED_AS_NULL); + if ($result === null) { + throw PcreException::fromFunction('preg_replace_callback', $pattern); + } + + return $result; + } + + /** + * Variant of `replaceCallback()` which outputs non-null matches (or throws) + * + * @param string $pattern + * @param ($flags is PREG_OFFSET_CAPTURE ? (callable(array}>): string) : callable(array): string) $replacement + * @param string $subject + * @param int $count Set by method + * @param int-mask $flags PREG_OFFSET_CAPTURE is supported, PREG_UNMATCHED_AS_NULL is always set + * + * @param-out int<0, max> $count + */ + public static function replaceCallbackStrictGroups(string $pattern, callable $replacement, $subject, int $limit = -1, ?int &$count = null, int $flags = 0): string + { + return self::replaceCallback($pattern, function (array $matches) use ($pattern, $replacement) { + return $replacement(self::enforceNonNullMatches($pattern, $matches, 'replaceCallback')); + }, $subject, $limit, $count, $flags); + } + + /** + * @param ($flags is PREG_OFFSET_CAPTURE ? (array}>): string>) : array): string>) $pattern + * @param string $subject + * @param int $count Set by method + * @param int-mask $flags PREG_OFFSET_CAPTURE is supported, PREG_UNMATCHED_AS_NULL is always set + * + * @param-out int<0, max> $count + */ + public static function replaceCallbackArray(array $pattern, $subject, int $limit = -1, ?int &$count = null, int $flags = 0): string + { + if (!is_scalar($subject)) { + if (is_array($subject)) { + throw new \InvalidArgumentException(static::ARRAY_MSG); + } + + throw new \TypeError(sprintf(static::INVALID_TYPE_MSG, gettype($subject))); + } + + $result = preg_replace_callback_array($pattern, $subject, $limit, $count, $flags | PREG_UNMATCHED_AS_NULL); + if ($result === null) { + $pattern = array_keys($pattern); + throw PcreException::fromFunction('preg_replace_callback_array', $pattern); + } + + return $result; + } + + /** + * @param int-mask $flags PREG_SPLIT_NO_EMPTY or PREG_SPLIT_DELIM_CAPTURE + * @return list + */ + public static function split(string $pattern, string $subject, int $limit = -1, int $flags = 0): array + { + if (($flags & PREG_SPLIT_OFFSET_CAPTURE) !== 0) { + throw new \InvalidArgumentException('PREG_SPLIT_OFFSET_CAPTURE is not supported as it changes the type of $matches, use splitWithOffsets() instead'); + } + + $result = preg_split($pattern, $subject, $limit, $flags); + if ($result === false) { + throw PcreException::fromFunction('preg_split', $pattern); + } + + return $result; + } + + /** + * @param int-mask $flags PREG_SPLIT_NO_EMPTY or PREG_SPLIT_DELIM_CAPTURE, PREG_SPLIT_OFFSET_CAPTURE is always set + * @return list + * @phpstan-return list}> + */ + public static function splitWithOffsets(string $pattern, string $subject, int $limit = -1, int $flags = 0): array + { + $result = preg_split($pattern, $subject, $limit, $flags | PREG_SPLIT_OFFSET_CAPTURE); + if ($result === false) { + throw PcreException::fromFunction('preg_split', $pattern); + } + + return $result; + } + + /** + * @template T of string|\Stringable + * @param string $pattern + * @param array $array + * @param int-mask $flags PREG_GREP_INVERT + * @return array + */ + public static function grep(string $pattern, array $array, int $flags = 0): array + { + $result = preg_grep($pattern, $array, $flags); + if ($result === false) { + throw PcreException::fromFunction('preg_grep', $pattern); + } + + return $result; + } + + /** + * Variant of match() which returns a bool instead of int + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * + * @param-out array $matches + */ + public static function isMatch(string $pattern, string $subject, ?array &$matches = null, int $flags = 0, int $offset = 0): bool + { + return (bool) static::match($pattern, $subject, $matches, $flags, $offset); + } + + /** + * Variant of `isMatch()` which outputs non-null matches (or throws) + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * @throws UnexpectedNullMatchException + * + * @param-out array $matches + */ + public static function isMatchStrictGroups(string $pattern, string $subject, ?array &$matches = null, int $flags = 0, int $offset = 0): bool + { + return (bool) self::matchStrictGroups($pattern, $subject, $matches, $flags, $offset); + } + + /** + * Variant of matchAll() which returns a bool instead of int + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * + * @param-out array> $matches + */ + public static function isMatchAll(string $pattern, string $subject, ?array &$matches = null, int $flags = 0, int $offset = 0): bool + { + return (bool) static::matchAll($pattern, $subject, $matches, $flags, $offset); + } + + /** + * Variant of `isMatchAll()` which outputs non-null matches (or throws) + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * + * @param-out array> $matches + */ + public static function isMatchAllStrictGroups(string $pattern, string $subject, ?array &$matches = null, int $flags = 0, int $offset = 0): bool + { + return (bool) self::matchAllStrictGroups($pattern, $subject, $matches, $flags, $offset); + } + + /** + * Variant of matchWithOffsets() which returns a bool instead of int + * + * Runs preg_match with PREG_OFFSET_CAPTURE + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * + * @param-out array}> $matches + */ + public static function isMatchWithOffsets(string $pattern, string $subject, ?array &$matches, int $flags = 0, int $offset = 0): bool + { + return (bool) static::matchWithOffsets($pattern, $subject, $matches, $flags, $offset); + } + + /** + * Variant of matchAllWithOffsets() which returns a bool instead of int + * + * Runs preg_match_all with PREG_OFFSET_CAPTURE + * + * @param non-empty-string $pattern + * @param array $matches Set by method + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * + * @param-out array}>> $matches + */ + public static function isMatchAllWithOffsets(string $pattern, string $subject, ?array &$matches, int $flags = 0, int $offset = 0): bool + { + return (bool) static::matchAllWithOffsets($pattern, $subject, $matches, $flags, $offset); + } + + private static function checkOffsetCapture(int $flags, string $useFunctionName): void + { + if (($flags & PREG_OFFSET_CAPTURE) !== 0) { + throw new \InvalidArgumentException('PREG_OFFSET_CAPTURE is not supported as it changes the type of $matches, use ' . $useFunctionName . '() instead'); + } + } + + private static function checkSetOrder(int $flags): void + { + if (($flags & PREG_SET_ORDER) !== 0) { + throw new \InvalidArgumentException('PREG_SET_ORDER is not supported as it changes the type of $matches'); + } + } + + /** + * @param array $matches + * @return array + * @throws UnexpectedNullMatchException + */ + private static function enforceNonNullMatches(string $pattern, array $matches, string $variantMethod) + { + foreach ($matches as $group => $match) { + if (is_string($match) || (is_array($match) && is_string($match[0]))) { + continue; + } + + throw new UnexpectedNullMatchException('Pattern "'.$pattern.'" had an unexpected unmatched group "'.$group.'", make sure the pattern always matches or use '.$variantMethod.'() instead.'); + } + + /** @var array */ + return $matches; + } + + /** + * @param array> $matches + * @return array> + * @throws UnexpectedNullMatchException + */ + private static function enforceNonNullMatchAll(string $pattern, array $matches, string $variantMethod) + { + foreach ($matches as $group => $groupMatches) { + foreach ($groupMatches as $match) { + if (null === $match) { + throw new UnexpectedNullMatchException('Pattern "'.$pattern.'" had an unexpected unmatched group "'.$group.'", make sure the pattern always matches or use '.$variantMethod.'() instead.'); + } + } + } + + /** @var array> */ + return $matches; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/Regex.php b/vendor/composer/vendor/composer/pcre/src/Regex.php new file mode 100644 index 0000000..038cf06 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/Regex.php @@ -0,0 +1,176 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +class Regex +{ + /** + * @param non-empty-string $pattern + */ + public static function isMatch(string $pattern, string $subject, int $offset = 0): bool + { + return (bool) Preg::match($pattern, $subject, $matches, 0, $offset); + } + + /** + * @param non-empty-string $pattern + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + */ + public static function match(string $pattern, string $subject, int $flags = 0, int $offset = 0): MatchResult + { + self::checkOffsetCapture($flags, 'matchWithOffsets'); + + $count = Preg::match($pattern, $subject, $matches, $flags, $offset); + + return new MatchResult($count, $matches); + } + + /** + * Variant of `match()` which returns non-null matches (or throws) + * + * @param non-empty-string $pattern + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * @throws UnexpectedNullMatchException + */ + public static function matchStrictGroups(string $pattern, string $subject, int $flags = 0, int $offset = 0): MatchStrictGroupsResult + { + // @phpstan-ignore composerPcre.maybeUnsafeStrictGroups + $count = Preg::matchStrictGroups($pattern, $subject, $matches, $flags, $offset); + + return new MatchStrictGroupsResult($count, $matches); + } + + /** + * Runs preg_match with PREG_OFFSET_CAPTURE + * + * @param non-empty-string $pattern + * @param int-mask $flags PREG_UNMATCHED_AS_NULL and PREG_MATCH_OFFSET are always set, no other flags are supported + */ + public static function matchWithOffsets(string $pattern, string $subject, int $flags = 0, int $offset = 0): MatchWithOffsetsResult + { + $count = Preg::matchWithOffsets($pattern, $subject, $matches, $flags, $offset); + + return new MatchWithOffsetsResult($count, $matches); + } + + /** + * @param non-empty-string $pattern + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + */ + public static function matchAll(string $pattern, string $subject, int $flags = 0, int $offset = 0): MatchAllResult + { + self::checkOffsetCapture($flags, 'matchAllWithOffsets'); + self::checkSetOrder($flags); + + $count = Preg::matchAll($pattern, $subject, $matches, $flags, $offset); + + return new MatchAllResult($count, $matches); + } + + /** + * Variant of `matchAll()` which returns non-null matches (or throws) + * + * @param non-empty-string $pattern + * @param int-mask $flags PREG_UNMATCHED_AS_NULL is always set, no other flags are supported + * @throws UnexpectedNullMatchException + */ + public static function matchAllStrictGroups(string $pattern, string $subject, int $flags = 0, int $offset = 0): MatchAllStrictGroupsResult + { + self::checkOffsetCapture($flags, 'matchAllWithOffsets'); + self::checkSetOrder($flags); + + // @phpstan-ignore composerPcre.maybeUnsafeStrictGroups + $count = Preg::matchAllStrictGroups($pattern, $subject, $matches, $flags, $offset); + + return new MatchAllStrictGroupsResult($count, $matches); + } + + /** + * Runs preg_match_all with PREG_OFFSET_CAPTURE + * + * @param non-empty-string $pattern + * @param int-mask $flags PREG_UNMATCHED_AS_NULL and PREG_MATCH_OFFSET are always set, no other flags are supported + */ + public static function matchAllWithOffsets(string $pattern, string $subject, int $flags = 0, int $offset = 0): MatchAllWithOffsetsResult + { + self::checkSetOrder($flags); + + $count = Preg::matchAllWithOffsets($pattern, $subject, $matches, $flags, $offset); + + return new MatchAllWithOffsetsResult($count, $matches); + } + /** + * @param string|string[] $pattern + * @param string|string[] $replacement + * @param string $subject + */ + public static function replace($pattern, $replacement, $subject, int $limit = -1): ReplaceResult + { + $result = Preg::replace($pattern, $replacement, $subject, $limit, $count); + + return new ReplaceResult($count, $result); + } + + /** + * @param string|string[] $pattern + * @param ($flags is PREG_OFFSET_CAPTURE ? (callable(array}>): string) : callable(array): string) $replacement + * @param string $subject + * @param int-mask $flags PREG_OFFSET_CAPTURE is supported, PREG_UNMATCHED_AS_NULL is always set + */ + public static function replaceCallback($pattern, callable $replacement, $subject, int $limit = -1, int $flags = 0): ReplaceResult + { + $result = Preg::replaceCallback($pattern, $replacement, $subject, $limit, $count, $flags); + + return new ReplaceResult($count, $result); + } + + /** + * Variant of `replaceCallback()` which outputs non-null matches (or throws) + * + * @param string $pattern + * @param ($flags is PREG_OFFSET_CAPTURE ? (callable(array}>): string) : callable(array): string) $replacement + * @param string $subject + * @param int-mask $flags PREG_OFFSET_CAPTURE is supported, PREG_UNMATCHED_AS_NULL is always set + */ + public static function replaceCallbackStrictGroups($pattern, callable $replacement, $subject, int $limit = -1, int $flags = 0): ReplaceResult + { + $result = Preg::replaceCallbackStrictGroups($pattern, $replacement, $subject, $limit, $count, $flags); + + return new ReplaceResult($count, $result); + } + + /** + * @param ($flags is PREG_OFFSET_CAPTURE ? (array}>): string>) : array): string>) $pattern + * @param string $subject + * @param int-mask $flags PREG_OFFSET_CAPTURE is supported, PREG_UNMATCHED_AS_NULL is always set + */ + public static function replaceCallbackArray(array $pattern, $subject, int $limit = -1, int $flags = 0): ReplaceResult + { + $result = Preg::replaceCallbackArray($pattern, $subject, $limit, $count, $flags); + + return new ReplaceResult($count, $result); + } + + private static function checkOffsetCapture(int $flags, string $useFunctionName): void + { + if (($flags & PREG_OFFSET_CAPTURE) !== 0) { + throw new \InvalidArgumentException('PREG_OFFSET_CAPTURE is not supported as it changes the return type, use '.$useFunctionName.'() instead'); + } + } + + private static function checkSetOrder(int $flags): void + { + if (($flags & PREG_SET_ORDER) !== 0) { + throw new \InvalidArgumentException('PREG_SET_ORDER is not supported as it changes the return type'); + } + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/ReplaceResult.php b/vendor/composer/vendor/composer/pcre/src/ReplaceResult.php new file mode 100644 index 0000000..3384771 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/ReplaceResult.php @@ -0,0 +1,43 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +final class ReplaceResult +{ + /** + * @readonly + * @var string + */ + public $result; + + /** + * @readonly + * @var 0|positive-int + */ + public $count; + + /** + * @readonly + * @var bool + */ + public $matched; + + /** + * @param 0|positive-int $count + */ + public function __construct(int $count, string $result) + { + $this->count = $count; + $this->matched = (bool) $count; + $this->result = $result; + } +} diff --git a/vendor/composer/vendor/composer/pcre/src/UnexpectedNullMatchException.php b/vendor/composer/vendor/composer/pcre/src/UnexpectedNullMatchException.php new file mode 100644 index 0000000..f123828 --- /dev/null +++ b/vendor/composer/vendor/composer/pcre/src/UnexpectedNullMatchException.php @@ -0,0 +1,20 @@ + + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + +namespace Composer\Pcre; + +class UnexpectedNullMatchException extends PcreException +{ + public static function fromFunction($function, $pattern) + { + throw new \LogicException('fromFunction should not be called on '.self::class.', use '.PcreException::class); + } +} diff --git a/vendor/composer/vendor/composer/platform_check.php b/vendor/composer/vendor/composer/platform_check.php new file mode 100644 index 0000000..8748439 --- /dev/null +++ b/vendor/composer/vendor/composer/platform_check.php @@ -0,0 +1,29 @@ += 80200)) { + $issues[] = 'Your Composer dependencies require a PHP version ">= 8.2.0". You are running ' . PHP_VERSION . '.'; +} + +if (PHP_INT_SIZE !== 8) { + $issues[] = 'Your Composer dependencies require a 64-bit build of PHP.'; +} + +if ($issues) { + if (!headers_sent()) { + header('HTTP/1.1 500 Internal Server Error'); + } + if (!ini_get('display_errors')) { + if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') { + fwrite(STDERR, 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . implode(PHP_EOL, $issues) . PHP_EOL.PHP_EOL); + } elseif (!headers_sent()) { + echo 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . str_replace('You are running '.PHP_VERSION.'.', '', implode(PHP_EOL, $issues)) . PHP_EOL.PHP_EOL; + } + } + throw new \RuntimeException( + 'Composer detected issues in your platform: ' . implode(' ', $issues) + ); +} diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.editorconfig b/vendor/composer/vendor/maennchen/zipstream-php/.editorconfig new file mode 100644 index 0000000..f7cd914 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.editorconfig @@ -0,0 +1,22 @@ +root = true + +[*] +end_of_line = lf +insert_final_newline = true +charset = utf-8 + +[*.{yml,md,xml}] +indent_style = space +indent_size = 2 + +[*.{rst,php}] +indent_style = space +indent_size = 4 + +[composer.json] +indent_style = space +indent_size = 2 + +[composer.lock] +indent_style = space +indent_size = 4 diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.gitattributes b/vendor/composer/vendor/maennchen/zipstream-php/.gitattributes new file mode 100644 index 0000000..e058ebd --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.gitattributes @@ -0,0 +1,6 @@ +.gitignore text eol=lf +.gitattributes text eol=lf +*.md text eol=lf +*.php text eol=lf +*.yml text eol=lf +*.xml text eol=lf diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/CODE_OF_CONDUCT.md b/vendor/composer/vendor/maennchen/zipstream-php/.github/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..9d75b87 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,132 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, caste, color, religion, or sexual +identity and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +- Demonstrating empathy and kindness toward other people +- Being respectful of differing opinions, viewpoints, and experiences +- Giving and gracefully accepting constructive feedback +- Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +- Focusing on what is best not just for us as individuals, but for the overall + community + +Examples of unacceptable behavior include: + +- The use of sexualized language or imagery, and sexual attention or advances of + any kind +- Trolling, insulting or derogatory comments, and personal or political attacks +- Public or private harassment +- Publishing others' private information, such as a physical or email address, + without their explicit permission +- Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at +jonatan@maennchen.ch. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series of +actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or permanent +ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within the +community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.1, available at +[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1]. + +Community Impact Guidelines were inspired by +[Mozilla's code of conduct enforcement ladder][mozilla coc]. + +For answers to common questions about this code of conduct, see the FAQ at +[https://www.contributor-covenant.org/faq][faq]. Translations are available at +[https://www.contributor-covenant.org/translations][translations]. + +[homepage]: https://www.contributor-covenant.org +[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html +[mozilla coc]: https://github.com/mozilla/diversity +[faq]: https://www.contributor-covenant.org/faq +[translations]: https://www.contributor-covenant.org/translations diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/CONTRIBUTING.md b/vendor/composer/vendor/maennchen/zipstream-php/.github/CONTRIBUTING.md new file mode 100644 index 0000000..d8caee0 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/CONTRIBUTING.md @@ -0,0 +1,139 @@ +# Contributing to ZipStream-PHP + +## Welcome! + +We look forward to your contributions! Here are some examples how you can +contribute: + +- [Report a bug](https://github.com/maennchen/ZipStream-PHP/issues/new?labels=bug&template=BUG.md) +- [Propose a new feature](https://github.com/maennchen/ZipStream-PHP/issues/new?labels=enhancement&template=FEATURE.md) +- [Send a pull request](https://github.com/maennchen/ZipStream-PHP/pulls) + +## We have a Code of Conduct + +Please note that this project is released with a +[Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this +project you agree to abide by its terms. + +## Any contributions you make will be under the MIT License + +When you submit code changes, your submissions are understood to be under the +same [MIT License](https://github.com/maennchen/ZipStream-PHP/blob/main/LICENSE) +that covers the project. By contributing to this project, you agree that your +contributions will be licensed under its MIT License. + +## Write bug reports with detail, background, and sample code + +In your bug report, please provide the following: + +- A quick summary and/or background +- Steps to reproduce + - Be specific! + - Give sample code if you can. +- What you expected would happen +- What actually happens +- Notes (possibly including why you think this might be happening, or stuff you +- tried that didn't work) + +Please do not report a bug for a version of ZIPStream-PHP that is no longer +supported (`< 3.0.0`). Please do not report a bug if you are using a version of +PHP that is not supported by the version of ZipStream-PHP you are using. + +Please post code and output as text +([using proper markup](https://guides.github.com/features/mastering-markdown/)). +Do not post screenshots of code or output. + +Please include the output of `composer info | sort`. + +## Workflow for Pull Requests + +1. Fork the repository. +2. Create your branch from `main` if you plan to implement new functionality or + change existing code significantly; create your branch from the oldest branch + that is affected by the bug if you plan to fix a bug. +3. Implement your change and add tests for it. +4. Ensure the test suite passes. +5. Ensure the code complies with our coding guidelines (see below). +6. Send that pull request! + +Please make sure you have +[set up your user name and email address](https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup) +for use with Git. Strings such as `silly nick name ` look really +stupid in the commit history of a project. + +We encourage you to +[sign your Git commits with your GPG key](https://docs.github.com/en/github/authenticating-to-github/signing-commits). + +Pull requests for new features must be based on the `main` branch. + +We are trying to keep backwards compatibility breaks in ZipStream-PHP to a +minimum. Please take this into account when proposing changes. + +Due to time constraints, we are not always able to respond as quickly as we +would like. Please do not take delays personal and feel free to remind us if you +feel that we forgot to respond. + +## Coding Guidelines + +This project comes with a configuration file (located at `/psalm.yml` in the +repository) that you can use to perform static analysis (with a focus on type +checking): + +```bash +$ .composer run test:lint +``` + +This project comes with a configuration file (located at +`/.php-cs-fixer.dist.php` in the repository) that you can use to (re)format your +source code for compliance with this project's coding guidelines: + +```bash +$ composer run format +``` + +Please understand that we will not accept a pull request when its changes +violate this project's coding guidelines. + +## Using ZipStream-PHP from a Git checkout + +The following commands can be used to perform the initial checkout of +ZipStream-PHP: + +```bash +$ git clone git@github.com:maennchen/ZipStream-PHP.git + +$ cd ZipStream-PHP +``` + +Install ZipStream-PHP's dependencies using [Composer](https://getcomposer.org/): + +```bash +$ composer install +$ composer run install:tools # Install phpDocumentor using phive +``` + +## Running ZipStream-PHP's test suite + +After following the steps shown above, ZipStream-PHP's test suite is run like +this: + +```bash +$ composer run test:unit +``` + +There's some slow tests in the test suite that test the handling of big files in +the archives. To skip them use the following command instead: + +```bash +$ composer run test:unit:fast +``` + +## Generating ZipStream-PHP Documentation + +To generate the documentation for the library, run: + +```bash +$ composer run docs:generate +``` + +The guide documentation pages can be found in the `/guides/` directory. diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/FUNDING.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/FUNDING.yml new file mode 100644 index 0000000..5a46127 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/FUNDING.yml @@ -0,0 +1 @@ +github: maennchen diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/BUG.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/BUG.yml new file mode 100644 index 0000000..0eb8cc7 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/BUG.yml @@ -0,0 +1,71 @@ +name: 🐞 Bug Report +description: Something is broken? +labels: ["bug"] +body: + - type: markdown + attributes: + value: | + - Create a discussion instead if you are looking for support: + https://github.com/maennchen/ZipStream-PHP/discussions + - type: input + id: version + attributes: + label: ZipStream-PHP version + placeholder: x.y.z + validations: + required: true + - type: input + id: php-version + attributes: + label: PHP version + placeholder: x.y.z + validations: + required: true + - type: checkboxes + id: constraints + attributes: + label: Constraints for Bug Report + options: + - label: | + I'm using a version of ZipStream that is currently supported: + https://github.com/maennchen/ZipStream-PHP#version-support + required: true + - label: | + I'm using a version of PHP that has active support: + https://www.php.net/supported-versions.php + required: true + - label: | + I'm using a version of PHP that is compatible with your used + ZipStream version. + required: true + - label: | + I'm using the latest release of the used ZipStream major version. + required: true + - type: textarea + id: summary + attributes: + label: Summary + description: Provide a summary describing the problem you are experiencing. + validations: + required: true + - type: textarea + id: current-behaviour + attributes: + label: Current behavior + description: What is the current (buggy) behavior? + validations: + required: true + - type: textarea + id: reproduction + attributes: + label: How to reproduce + description: Provide steps to reproduce the bug. + validations: + required: true + - type: textarea + id: expected-behaviour + attributes: + label: Expected behavior + description: What was the expected (correct) behavior? + validations: + required: true diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/FEATURE.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/FEATURE.yml new file mode 100644 index 0000000..e5dec63 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/ISSUE_TEMPLATE/FEATURE.yml @@ -0,0 +1,11 @@ +name: 🎉 Feature Request +description: You have a neat idea that should be implemented? +labels: ["enhancement"] +body: + - type: textarea + id: description + attributes: + label: Description + description: Provide a summary of the feature you would like to see implemented. + validations: + required: true diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE.md b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..6892c57 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,6 @@ +Please go the the `Preview` tab and select the appropriate sub-template: + +* [🐞 Failing Test](?expand=1&template=FAILING_TEST.md) +* [🐞 Bug Fix](?expand=1&template=FIX.md) +* [⚙ Improvement](?expand=1&template=IMPROVEMENT.md) +* [🎉 New Feature](?expand=1&template=NEW_FEATURE.md) diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FAILING_TEST.md b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FAILING_TEST.md new file mode 100644 index 0000000..24603cb --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FAILING_TEST.md @@ -0,0 +1,13 @@ + + + diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FIX.md b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FIX.md new file mode 100644 index 0000000..77f65a0 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/FIX.md @@ -0,0 +1,13 @@ + + + diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/IMPROVEMENT.md b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/IMPROVEMENT.md new file mode 100644 index 0000000..3ac8e31 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/IMPROVEMENT.md @@ -0,0 +1,9 @@ + + + diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/NEW_FEATURE.md b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/NEW_FEATURE.md new file mode 100644 index 0000000..ca53939 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/PULL_REQUEST_TEMPLATE/NEW_FEATURE.md @@ -0,0 +1,9 @@ + + + diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/SECURITY.md b/vendor/composer/vendor/maennchen/zipstream-php/.github/SECURITY.md new file mode 100644 index 0000000..3046c31 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/SECURITY.md @@ -0,0 +1,22 @@ +# Security Policy + +[![OpenSSF Vulnerability Disclosure](https://img.shields.io/badge/OpenSSF-Vulnerability_Disclosure-green)](https://github.com/ossf/oss-vulnerability-guide/blob/main/finder-guide.md) +[![GitHub Report](https://img.shields.io/badge/GitHub-Security_Advisories-blue)](https://github.com/maennchen/ZipStream-PHP/security/advisories/new) +[![Email Report](https://img.shields.io/badge/Email-jonatan%40maennchen.ch-blue)](mailto:jonatan@maennchen.ch) + +This repository follows the +[OpenSSF Vulnerability Disclosure guide](https://github.com/ossf/oss-vulnerability-guide/tree/main). +You can learn more about it in the +[Finders Guide](https://github.com/ossf/oss-vulnerability-guide/blob/main/finder-guide.md). + +Please report vulnerabilities via the +[GitHub Security Vulnerability Reporting](https://github.com/maennchen/ZipStream-PHP/security/advisories/new) +or via email to [`jonatan@maennchen.ch`](mailto:jonatan@maennchen.ch) if this does +not work for you. + +Our vulnerability management team will respond within 3 working days of your +report. If the issue is confirmed as a vulnerability, we will open a Security +Advisory. This project follows a 90 day disclosure timeline. + +If you have questions about reporting security issues, email the vulnerability +management team: [`jonatan@maennchen.ch`](mailto:jonatan@maennchen.ch) diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/dependabot.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/dependabot.yml new file mode 100644 index 0000000..9d20742 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/dependabot.yml @@ -0,0 +1,15 @@ +version: 2 +updates: + - package-ecosystem: "composer" + directory: "/" + schedule: + interval: "daily" + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + groups: + github-actions: + applies-to: version-updates + patterns: + - "*" diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/scorecard.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/scorecard.yml new file mode 100644 index 0000000..219fc0b --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/scorecard.yml @@ -0,0 +1,14 @@ +annotations: + - checks: + - fuzzing + reasons: + - reason: not-applicable # PHP is memory safe + - checks: + - packaging + reasons: + - reason: not-supported # Using Composer + - checks: + - signed-releases + reasons: + - reason: not-applicable # Releases are distributed via Composer + diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/branch_main.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/branch_main.yml new file mode 100644 index 0000000..15ff278 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/branch_main.yml @@ -0,0 +1,24 @@ +on: + push: + branches: + - "main" + +name: "Main Branch" + +permissions: + contents: read + +jobs: + test: + name: "Test" + + permissions: + contents: read + security-events: write + + uses: ./.github/workflows/part_test.yml + + docs: + name: "Docs" + + uses: ./.github/workflows/part_docs.yml diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_dependabot.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_dependabot.yml new file mode 100644 index 0000000..20a13a2 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_dependabot.yml @@ -0,0 +1,30 @@ +on: + workflow_call: {} + +name: "Dependabot" + +permissions: + contents: read + +jobs: + automerge_dependabot: + name: "Automerge PRs" + + runs-on: ubuntu-latest + + permissions: + pull-requests: write + contents: write + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - uses: fastify/github-action-merge-dependabot@c3bde0759d4f24db16f7b250b2122bc2df57e817 # v3.11.0 + with: + github-token: ${{ github.token }} + use-github-auto-merge: true + # Major Updates need to be merged manually + target: minor diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_docs.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_docs.yml new file mode 100644 index 0000000..9b779eb --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_docs.yml @@ -0,0 +1,51 @@ +on: + workflow_call: {} + +name: "Documentation" + +permissions: + contents: read + +jobs: + generate: + name: "Generate" + + runs-on: ubuntu-latest + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: Checkout Code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: SetUp PHP + id: setup-php + uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2 + with: + php-version: "8.3" + tools: phive + - name: Cache Tools + uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 + id: cache + with: + path: ~/.phive + key: tools-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-${{ hashFiles('**/phars.xml') }} + restore-keys: | + tools-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}- + tools-${{ steps.setup-php.outputs.php-version }}- + tools- + - name: Install Tools + run: composer run install:tools + - name: Generate Docs + run: composer run docs:generate + - uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0 + with: + name: docs + path: docs + - name: Package for GitHub Pages + uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3.0.1 + with: + path: docs + diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_release.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_release.yml new file mode 100644 index 0000000..112d72a --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_release.yml @@ -0,0 +1,94 @@ +on: + workflow_call: + inputs: + releaseName: + required: true + type: string + stable: + required: false + type: boolean + default: false + +name: "Release" + +permissions: + contents: read + +jobs: + create: + name: Create Release + + runs-on: ubuntu-latest + + permissions: + contents: write + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: Create prerelease + if: ${{ !inputs.stable }} + env: + GITHUB_TOKEN: ${{ github.token }} + run: | + gh release create \ + --repo ${{ github.repository }} \ + --title ${{ inputs.releaseName }} \ + --prerelease \ + --generate-notes \ + ${{ inputs.releaseName }} + + - name: Create release + if: ${{ inputs.stable }} + env: + GITHUB_TOKEN: ${{ github.token }} + run: | + gh release create \ + --repo ${{ github.repository }} \ + --title ${{ inputs.releaseName }} \ + --generate-notes \ + ${{ inputs.releaseName }} + + upload_release: + name: "Upload" + + needs: ["create"] + + runs-on: ubuntu-latest + + permissions: + id-token: write + contents: write + attestations: write + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 + with: + name: docs + path: docs + - run: | + tar -czvf docs.tar.gz docs + - name: "Attest Documentation" + id: attestation + uses: actions/attest-build-provenance@520d128f165991a6c774bcb264f323e3d70747f4 # v2.2.0 + with: + subject-path: "docs.tar.gz" + - name: Copy Attestation + run: cp "$ATTESTATION" docs.tar.gz.sigstore + env: + ATTESTATION: "${{ steps.attestation.outputs.bundle-path }}" + - name: Upload + env: + GITHUB_TOKEN: ${{ github.token }} + run: | + gh release upload --clobber "${{ github.ref_name }}" \ + docs.tar.gz docs.tar.gz.sigstore diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_test.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_test.yml new file mode 100644 index 0000000..d4f8180 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/part_test.yml @@ -0,0 +1,181 @@ +on: + workflow_call: + +name: "Test" + +permissions: + contents: read + +jobs: + phpunit: + name: PHPUnit (PHP ${{ matrix.php }} on ${{ matrix.os }}) + + runs-on: ${{ matrix.os }} + + continue-on-error: ${{ matrix.experimental }} + + strategy: + fail-fast: false + matrix: + php: ["8.2", "8.3", "8.4"] + os: [ubuntu-latest] + experimental: [false] + include: + - php: nightly + os: ubuntu-latest + experimental: true + - php: "8.4" + os: windows-latest + experimental: false + - php: "8.4" + os: macos-latest + experimental: false + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: Checkout Code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: SetUp PHP + id: setup-php + uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2 + with: + php-version: "${{ matrix.php }}" + tools: phpunit + coverage: xdebug + extensions: xdebug,zip + - name: Get composer cache directory + id: composer-cache-common + if: "${{ runner.os != 'Windows' }}" + run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT + - name: Get composer cache directory + id: composer-cache-windows + if: "${{ runner.os == 'Windows' }}" + run: echo "dir=$(composer config cache-files-dir)" >> $env:GITHUB_OUTPUT + - name: Cache Deps + uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 + id: cache + with: + path: ${{ steps.composer-cache-common.outputs.dir }}${{ steps.composer-cache-windows.outputs.dir }} + key: deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer- + deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}- + deps-${{ steps.setup-php.outputs.php-version }}- + deps- + - name: Install Deps + if: matrix.php != 'nightly' + run: composer install --prefer-dist + - name: Install Deps (ignore PHP requirement) + if: matrix.php == 'nightly' + run: composer install --prefer-dist --ignore-platform-req=php+ + - name: Run PHPUnit + run: composer run test:unit:cov + - name: Upload coverage results to Coveralls + env: + COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} + COVERALLS_PARALLEL: true + COVERALLS_FLAG_NAME: ${{ runner.os }}-${{ steps.setup-php.outputs.php-version }} + run: composer run coverage:report + continue-on-error: ${{ matrix.experimental }} + + mark_coverage_done: + needs: ["phpunit"] + + runs-on: ubuntu-latest + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: Coveralls Finished + uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b # v2.3.6 + with: + github-token: ${{ secrets.github_token }} + parallel-finished: true + + psalm: + name: Run Psalm + + runs-on: "ubuntu-latest" + + permissions: + security-events: write + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: Checkout Code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: SetUp PHP + id: setup-php + uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2 + with: + php-version: "8.3" + - name: Get composer cache directory + id: composer-cache + run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT + - name: Cache Deps + uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 + id: cache + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer- + deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}- + deps-${{ steps.setup-php.outputs.php-version }}- + deps- + - name: Install Deps + run: composer install --prefer-dist + - name: Run Psalm + run: composer run test:lint -- --report=results.sarif + - name: "Upload SARIF" + uses: github/codeql-action/upload-sarif@f6091c0113d1dcf9b98e269ee48e8a7e51b7bdd4 # v3 + with: + sarif_file: results.sarif + + php-cs: + name: Run PHP-CS + + runs-on: "ubuntu-latest" + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: Checkout Code + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: SetUp PHP + id: setup-php + uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2 + with: + php-version: "8.3" + - name: Get composer cache directory + id: composer-cache + run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT + - name: Cache Deps + uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0 + id: cache + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}-composer- + deps-${{ runner.os }}-${{ steps.setup-php.outputs.php-version }}- + deps-${{ steps.setup-php.outputs.php-version }}- + deps- + - name: Install Deps + run: composer install --prefer-dist + - name: Run PHP-CS + run: composer run test:formatted diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/pr.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/pr.yml new file mode 100644 index 0000000..d21f398 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/pr.yml @@ -0,0 +1,50 @@ +on: + pull_request: + branches: + - "*" + workflow_dispatch: {} + +name: "Pull Request" + +permissions: + contents: read + +jobs: + test: + name: "Test" + + permissions: + contents: read + security-events: write + + uses: ./.github/workflows/part_test.yml + + docs: + name: "Docs" + + uses: ./.github/workflows/part_docs.yml + + dependabot: + name: "Dependabot" + + if: ${{ github.actor == 'dependabot[bot]'}} + + permissions: + pull-requests: write + contents: write + + uses: ./.github/workflows/part_dependabot.yml + + dependency-review: + name: Dependency Review + runs-on: ubuntu-latest + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: 'Checkout Repository' + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - name: 'Dependency Review' + uses: actions/dependency-review-action@3b139cfc5fae8b618d3eae3675e383bb1769c019 # v4.5.0 diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/scorecard.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/scorecard.yml new file mode 100644 index 0000000..c1d08a2 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/scorecard.yml @@ -0,0 +1,78 @@ +# This workflow uses actions that are not certified by GitHub. They are provided +# by a third-party and are governed by separate terms of service, privacy +# policy, and support documentation. + +name: Scorecard supply-chain security +on: + # For Branch-Protection check. Only the default branch is supported. See + # https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection + branch_protection_rule: + # To guarantee Maintained check is occasionally updated. See + # https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained + schedule: + - cron: '28 11 * * 3' + push: + branches: [ "main" ] + +# Declare default permissions as read only. +permissions: read-all + +jobs: + analysis: + name: Scorecard analysis + runs-on: ubuntu-latest + permissions: + # Needed to upload the results to code-scanning dashboard. + security-events: write + # Needed to publish results and get a badge (see publish_results below). + id-token: write + # Uncomment the permissions below if installing in a private repository. + # contents: read + # actions: read + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: "Checkout code" + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + persist-credentials: false + + - name: "Run analysis" + uses: ossf/scorecard-action@62b2cac7ed8198b15735ed49ab1e5cf35480ba46 # v2.4.0 + with: + results_file: results.sarif + results_format: sarif + # (Optional) "write" PAT token. Uncomment the `repo_token` line below if: + # - you want to enable the Branch-Protection check on a *public* repository, or + # - you are installing Scorecard on a *private* repository + # To create the PAT, follow the steps in https://github.com/ossf/scorecard-action?tab=readme-ov-file#authentication-with-fine-grained-pat-optional. + # repo_token: ${{ secrets.SCORECARD_TOKEN }} + + # Public repositories: + # - Publish results to OpenSSF REST API for easy access by consumers + # - Allows the repository to include the Scorecard badge. + # - See https://github.com/ossf/scorecard-action#publishing-results. + # For private repositories: + # - `publish_results` will always be set to `false`, regardless + # of the value entered here. + publish_results: true + + # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF + # format to the repository Actions tab. + - name: "Upload artifact" + uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0 + with: + name: SARIF file + path: results.sarif + retention-days: 5 + + # Upload the results to GitHub's code scanning dashboard (optional). + # Commenting out will disable upload of results to your repo's Code Scanning dashboard + - name: "Upload to code-scanning" + uses: github/codeql-action/upload-sarif@f6091c0113d1dcf9b98e269ee48e8a7e51b7bdd4 # v3.28.5 + with: + sarif_file: results.sarif diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/tag-beta.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/tag-beta.yml new file mode 100644 index 0000000..b339945 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/tag-beta.yml @@ -0,0 +1,29 @@ +on: + push: + tags: + - "[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+" + +name: "Beta Tag" + +permissions: + contents: read + +jobs: + docs: + name: "Docs" + + uses: ./.github/workflows/part_docs.yml + + release: + name: "Release" + + needs: ["docs"] + + permissions: + id-token: write + contents: write + attestations: write + + uses: ./.github/workflows/part_release.yml + with: + releaseName: "${{ github.ref_name }}" diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/tag-stable.yml b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/tag-stable.yml new file mode 100644 index 0000000..dfc1438 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.github/workflows/tag-stable.yml @@ -0,0 +1,55 @@ +on: + push: + tags: + - "[0-9]+.[0-9]+.[0-9]+" + +name: "Stable Tag" + +permissions: + contents: read + +jobs: + docs: + name: "Docs" + + uses: ./.github/workflows/part_docs.yml + + release: + name: "Release" + + needs: ["docs"] + + permissions: + id-token: write + contents: write + attestations: write + + uses: ./.github/workflows/part_release.yml + with: + releaseName: "${{ github.ref_name }}" + stable: true + + deploy_pages: + name: "Deploy to GitHub Pages" + + needs: ["release", "docs"] + + runs-on: ubuntu-latest + + permissions: + pages: write + id-token: write + + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + steps: + - name: Harden Runner + uses: step-security/harden-runner@cb605e52c26070c328afc4562f0b4ada7618a84e # v2.10.4 + with: + egress-policy: audit + + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5 diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.gitignore b/vendor/composer/vendor/maennchen/zipstream-php/.gitignore new file mode 100644 index 0000000..e52a498 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.gitignore @@ -0,0 +1,12 @@ +/composer.lock +/cov +/coverage.clover.xml +/docs +.idea +/.php-cs-fixer.cache +/.phpdoc/cache +/.phpunit.result.cache +/phpunit.xml +/.phpunit.cache +/tools +/vendor diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.phive/phars.xml b/vendor/composer/vendor/maennchen/zipstream-php/.phive/phars.xml new file mode 100644 index 0000000..c958402 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.phive/phars.xml @@ -0,0 +1,4 @@ + + + + diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.php-cs-fixer.dist.php b/vendor/composer/vendor/maennchen/zipstream-php/.php-cs-fixer.dist.php new file mode 100644 index 0000000..9d47c38 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.php-cs-fixer.dist.php @@ -0,0 +1,73 @@ + + * @copyright 2022 Nicolas CARPi + * @see https://github.com/maennchen/ZipStream-PHP + * @license MIT + * @package maennchen/ZipStream-PHP + */ + +use PhpCsFixer\Config; +use PhpCsFixer\Finder; +use PhpCsFixer\Runner; + +$finder = Finder::create() + ->exclude('.github') + ->exclude('.phpdoc') + ->exclude('docs') + ->exclude('tools') + ->exclude('vendor') + ->in(__DIR__); + +$config = new Config(); +return $config->setRules([ + '@PER' => true, + '@PER:risky' => true, + '@PHP83Migration' => true, + '@PHP84Migration' => true, + '@PHPUnit84Migration:risky' => true, + 'array_syntax' => ['syntax' => 'short'], + 'class_attributes_separation' => true, + 'declare_strict_types' => true, + 'dir_constant' => true, + 'is_null' => true, + 'no_homoglyph_names' => true, + 'no_null_property_initialization' => true, + 'no_php4_constructor' => true, + 'no_unused_imports' => true, + 'no_useless_else' => true, + 'non_printable_character' => true, + 'ordered_imports' => true, + 'ordered_class_elements' => true, + 'php_unit_construct' => true, + 'pow_to_exponentiation' => true, + 'psr_autoloading' => true, + 'random_api_migration' => true, + 'return_assignment' => true, + 'self_accessor' => true, + 'semicolon_after_instruction' => true, + 'short_scalar_cast' => true, + 'simplified_null_return' => true, + 'single_class_element_per_statement' => true, + 'single_line_comment_style' => true, + 'single_quote' => true, + 'space_after_semicolon' => true, + 'standardize_not_equals' => true, + 'strict_param' => true, + 'ternary_operator_spaces' => true, + 'trailing_comma_in_multiline' => true, + 'trim_array_spaces' => true, + 'unary_operator_spaces' => true, + 'global_namespace_import' => [ + 'import_classes' => true, + 'import_functions' => true, + 'import_constants' => true, + ], + ]) + ->setFinder($finder) + ->setRiskyAllowed(true) + ->setParallelConfig(Runner\Parallel\ParallelConfigFactory::detect()); diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.phpdoc/template/base.html.twig b/vendor/composer/vendor/maennchen/zipstream-php/.phpdoc/template/base.html.twig new file mode 100644 index 0000000..2a70c0a --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.phpdoc/template/base.html.twig @@ -0,0 +1,15 @@ +{% extends 'layout.html.twig' %} + +{% set topMenu = { + "menu": [ + { "name": "Guides", "url": "https://maennchen.dev/ZipStream-PHP/guide/index.html"}, + { "name": "API", "url": "https://maennchen.dev/ZipStream-PHP/classes/ZipStream-ZipStream.html"}, + { "name": "Issues", "url": "https://github.com/maennchen/ZipStream-PHP/issues"}, + ], + "social": [ + { "iconClass": "fab fa-github", "url": "https://github.com/maennchen/ZipStream-PHP"}, + { "iconClass": "fas fa-envelope-open-text", "url": "https://github.com/maennchen/ZipStream-PHP/discussions"}, + { "iconClass": "fas fa-money-bill", "url": "https://github.com/sponsors/maennchen"}, + ] +} +%} \ No newline at end of file diff --git a/vendor/composer/vendor/maennchen/zipstream-php/.tool-versions b/vendor/composer/vendor/maennchen/zipstream-php/.tool-versions new file mode 100644 index 0000000..150c1ee --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/.tool-versions @@ -0,0 +1 @@ +php 8.4.3 diff --git a/vendor/composer/vendor/maennchen/zipstream-php/LICENSE b/vendor/composer/vendor/maennchen/zipstream-php/LICENSE new file mode 100644 index 0000000..ebe7fe2 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/LICENSE @@ -0,0 +1,24 @@ +MIT License + +Copyright (C) 2007-2009 Paul Duncan +Copyright (C) 2014 Jonatan Männchen +Copyright (C) 2014 Jesse G. Donat +Copyright (C) 2018 Nicolas CARPi + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/vendor/composer/vendor/maennchen/zipstream-php/README.md b/vendor/composer/vendor/maennchen/zipstream-php/README.md new file mode 100644 index 0000000..1e6d679 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/README.md @@ -0,0 +1,157 @@ +# ZipStream-PHP + +[![Main Branch](https://github.com/maennchen/ZipStream-PHP/actions/workflows/branch_main.yml/badge.svg)](https://github.com/maennchen/ZipStream-PHP/actions/workflows/branch_main.yml) +[![Coverage Status](https://coveralls.io/repos/github/maennchen/ZipStream-PHP/badge.svg?branch=main)](https://coveralls.io/github/maennchen/ZipStream-PHP?branch=main) +[![Latest Stable Version](https://poser.pugx.org/maennchen/zipstream-php/v/stable)](https://packagist.org/packages/maennchen/zipstream-php) +[![Total Downloads](https://poser.pugx.org/maennchen/zipstream-php/downloads)](https://packagist.org/packages/maennchen/zipstream-php) +[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/9524/badge)](https://www.bestpractices.dev/projects/9524) +[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/maennchen/ZipStream-PHP/badge)](https://scorecard.dev/viewer/?uri=github.com/maennchen/ZipStream-PHP) + +## Unstable Branch + +The `main` branch is not stable. Please see the +[releases](https://github.com/maennchen/ZipStream-PHP/releases) for a stable +version. + +## Overview + +A fast and simple streaming zip file downloader for PHP. Using this library will +save you from having to write the Zip to disk. You can directly send it to the +user, which is much faster. It can work with S3 buckets or any PSR7 Stream. + +Please see the [LICENSE](LICENSE) file for licensing and warranty information. + +## Installation + +Simply add a dependency on maennchen/zipstream-php to your project's +`composer.json` file if you use Composer to manage the dependencies of your +project. Use following command to add the package to your project's dependencies: + +```bash +composer require maennchen/zipstream-php +``` + +## Usage + +For detailed instructions, please check the +[Documentation](https://maennchen.github.io/ZipStream-PHP/). + +```php +// Autoload the dependencies +require 'vendor/autoload.php'; + +// create a new zipstream object +$zip = new ZipStream\ZipStream( + outputName: 'example.zip', + + // enable output of HTTP headers + sendHttpHeaders: true, +); + +// create a file named 'hello.txt' +$zip->addFile( + fileName: 'hello.txt', + data: 'This is the contents of hello.txt', +); + +// add a file named 'some_image.jpg' from a local file 'path/to/image.jpg' +$zip->addFileFromPath( + fileName: 'some_image.jpg', + path: 'path/to/image.jpg', +); + +// finish the zip stream +$zip->finish(); +``` + +## Upgrade to version 3.1.2 + +- Minimum PHP Version: `8.2` + +## Upgrade to version 3.0.0 + +### General + +- Minimum PHP Version: `8.1` +- Only 64bit Architecture is supported. +- The class `ZipStream\Option\Method` has been replaced with the enum + `ZipStream\CompressionMethod`. +- Most clases have been flagged as `@internal` and should not be used from the + outside. + If you're using internal resources to extend this library, please open an + issue so that a clean interface can be added & published. + The externally available classes & enums are: + - `ZipStream\CompressionMethod` + - `ZipStream\Exception*` + - `ZipStream\ZipStream` + +### Archive Options + +- The class `ZipStream\Option\Archive` has been replaced in favor of named + arguments in the `ZipStream\ZipStream` constuctor. +- The archive options `largeFileSize` & `largeFileMethod` has been removed. If + you want different `compressionMethods` based on the file size, you'll have to + implement this yourself. +- The archive option `httpHeaderCallback` changed the type from `callable` to + `Closure`. +- The archive option `zeroHeader` has been replaced with the option + `defaultEnableZeroHeader` and can be overridden for every file. Its default + value changed from `false` to `true`. +- The archive option `statFiles` was removed since the library no longer checks + filesizes this way. +- The archive option `deflateLevel` has been replaced with the option + `defaultDeflateLevel` and can be overridden for every file. +- The first argument (`name`) of the `ZipStream\ZipStream` constuctor has been + replaced with the named argument `outputName`. +- Headers are now also sent if the `outputName` is empty. If you do not want to + automatically send http headers, set `sendHttpHeaders` to `false`. + +### File Options + +- The class `ZipStream\Option\File` has been replaced in favor of named + arguments in the `ZipStream\ZipStream->addFile*` functions. +- The file option `method` has been renamed to `compressionMethod`. +- The file option `time` has been renamed to `lastModificationDateTime`. +- The file option `size` has been renamed to `maxSize`. + +## Upgrade to version 2.0.0 + +https://github.com/maennchen/ZipStream-PHP/tree/2.0.0#upgrade-to-version-200 + +## Upgrade to version 1.0.0 + +https://github.com/maennchen/ZipStream-PHP/tree/2.0.0#upgrade-to-version-100 + +## Contributing + +ZipStream-PHP is a collaborative project. Please take a look at the +[.github/CONTRIBUTING.md](.github/CONTRIBUTING.md) file. + +## Version Support + +Versions are supported according to the table below. + +Please do not open any pull requests contradicting the current version support +status. + +Careful: Always check the `README` on `main` for up-to-date information. + +| Version | New Features | Bugfixes | Security | +|---------|--------------|----------|----------| +| *3* | ✓ | ✓ | ✓ | +| *2* | ✗ | ✗ | ✓ | +| *1* | ✗ | ✗ | ✗ | +| *0* | ✗ | ✗ | ✗ | + +This library aligns itself with the PHP core support. New features and bugfixes +will only target PHP versions according to their current status. + +See: https://www.php.net/supported-versions.php + +## About the Authors + +- Paul Duncan - https://pablotron.org/ +- Jonatan Männchen - https://maennchen.dev +- Jesse G. Donat - https://donatstudios.com +- Nicolas CARPi - https://www.deltablot.com +- Nik Barham - https://www.brokencube.co.uk diff --git a/vendor/composer/vendor/maennchen/zipstream-php/composer.json b/vendor/composer/vendor/maennchen/zipstream-php/composer.json new file mode 100644 index 0000000..6ecd503 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/composer.json @@ -0,0 +1,93 @@ +{ + "name": "maennchen/zipstream-php", + "description": "ZipStream is a library for dynamically streaming dynamic zip files from PHP without writing to the disk at all on the server.", + "keywords": ["zip", "stream"], + "type": "library", + "license": "MIT", + "authors": [{ + "name": "Paul Duncan", + "email": "pabs@pablotron.org" + }, + { + "name": "Jonatan Männchen", + "email": "jonatan@maennchen.ch" + }, + { + "name": "Jesse Donat", + "email": "donatj@gmail.com" + }, + { + "name": "András Kolesár", + "email": "kolesar@kolesar.hu" + } + ], + "require": { + "php-64bit": "^8.2", + "ext-mbstring": "*", + "ext-zlib": "*" + }, + "require-dev": { + "phpunit/phpunit": "^11.0", + "guzzlehttp/guzzle": "^7.5", + "ext-zip": "*", + "mikey179/vfsstream": "^1.6", + "php-coveralls/php-coveralls": "^2.5", + "friendsofphp/php-cs-fixer": "^3.16", + "vimeo/psalm": "^6.0", + "brianium/paratest": "^7.7" + }, + "suggest": { + "psr/http-message": "^2.0", + "guzzlehttp/psr7": "^2.4" + }, + "scripts": { + "format": "php-cs-fixer fix", + "test": [ + "@test:unit", + "@test:formatted", + "@test:lint" + ], + "test:unit:setup-cov": "@putenv XDEBUG_MODE=coverage", + "test:unit": "paratest --functional", + "test:unit:cov": ["@test:unit:setup-cov", "@test:unit --coverage-clover=coverage.clover.xml --coverage-html cov"], + "test:unit:slow": "@test:unit --group slow", + "test:unit:slow:cov": ["@test:unit:setup-cov", "@test:unit --coverage-clover=coverage.clover.xml --coverage-html cov --group slow"], + "test:unit:fast": "@test:unit --exclude-group slow", + "test:unit:fast:cov": ["@test:unit:setup-cov", "@test:unit --coverage-clover=coverage.clover.xml --coverage-html cov --exclude-group slow"], + "test:formatted": "@format --dry-run --stop-on-violation --using-cache=no", + "test:lint": "psalm --stats --show-info=true --find-unused-psalm-suppress", + "coverage:report": "php-coveralls --coverage_clover=coverage.clover.xml --json_path=coveralls-upload.json --insecure", + "install:tools": "phive install --trust-gpg-keys 0x67F861C3D889C656 --trust-gpg-keys 0x8AC0BAA79732DD42", + "docs:generate": "tools/phpdocumentor --sourcecode" + }, + "autoload": { + "psr-4": { + "ZipStream\\": "src/" + } + }, + "autoload-dev": { + "psr-4": { "ZipStream\\Test\\": "test/" } + }, + "archive": { + "exclude": [ + "/composer.lock", + "/docs", + "/.gitattributes", + "/.github", + "/.gitignore", + "/guides", + "/.phive", + "/.php-cs-fixer.cache", + "/.php-cs-fixer.dist.php", + "/.phpdoc", + "/phpdoc.dist.xml", + "/.phpunit.result.cache", + "/phpunit.xml.dist", + "/psalm.xml", + "/test", + "/tools", + "/.tool-versions", + "/vendor" + ] + } +} diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/ContentLength.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/ContentLength.rst new file mode 100644 index 0000000..21fea34 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/ContentLength.rst @@ -0,0 +1,47 @@ +Adding Content-Length header +============= + +Adding a ``Content-Length`` header for ``ZipStream`` can be achieved by +using the options ``SIMULATION_STRICT`` or ``SIMULATION_LAX`` in the +``operationMode`` parameter. + +In the ``SIMULATION_STRICT`` mode, ``ZipStream`` will not allow to calculate the +size based on reading the whole file. ``SIMULATION_LAX`` will read the whole +file if neccessary. + +``SIMULATION_STRICT`` is therefore useful to make sure that the size can be +calculated efficiently. + +.. code-block:: php + use ZipStream\OperationMode; + use ZipStream\ZipStream; + + $zip = new ZipStream( + operationMode: OperationMode::SIMULATE_STRICT, // or SIMULATE_LAX + defaultEnableZeroHeader: false, + sendHttpHeaders: true, + outputStream: $stream, + ); + + // Normally add files + $zip->addFile('sample.txt', 'Sample String Data'); + + // Use addFileFromCallback and exactSize if you want to defer opening of + // the file resource + $zip->addFileFromCallback( + 'sample.txt', + exactSize: 18, + callback: function () { + return fopen('...'); + } + ); + + // Read resulting file size + $size = $zip->finish(); + + // Tell it to the browser + header('Content-Length: '. $size); + + // Execute the Simulation and stream the actual zip to the client + $zip->executeSimulation(); + diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/FlySystem.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/FlySystem.rst new file mode 100644 index 0000000..4e6c6fb --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/FlySystem.rst @@ -0,0 +1,34 @@ +Usage with FlySystem +=============== + +For saving or uploading the generated zip, you can use the +`Flysystem `_ package, and its many +adapters. + +For that you will need to provide another stream than the ``php://output`` +default one, and pass it to Flysystem ``putStream`` method. + +.. code-block:: php + + // Open Stream only once for read and write since it's a memory stream and + // the content is lost when closing the stream / opening another one + $tempStream = fopen('php://memory', 'w+'); + + // Create Zip Archive + $zipStream = new ZipStream( + outputStream: $tempStream, + outputName: 'test.zip', + ); + $zipStream->addFile('test.txt', 'text'); + $zipStream->finish(); + + // Store File + // (see Flysystem documentation, and all its framework integration) + // Can be any adapter (AWS, Google, Ftp, etc.) + $adapter = new Local(__DIR__.'/path/to/folder'); + $filesystem = new Filesystem($adapter); + + $filesystem->writeStream('test.zip', $tempStream) + + // Close Stream + fclose($tempStream); diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/Nginx.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/Nginx.rst new file mode 100644 index 0000000..c53d300 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/Nginx.rst @@ -0,0 +1,16 @@ +Usage with nginx +============= + +If you are using nginx as a webserver, it will try to buffer the response. +So you'll want to disable this with a custom header: + +.. code-block:: php + header('X-Accel-Buffering: no'); + # or with the Response class from Symfony + $response->headers->set('X-Accel-Buffering', 'no'); + +Alternatively, you can tweak the +`fastcgi cache parameters `_ +within nginx config. + +See `original issue `_. \ No newline at end of file diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/Options.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/Options.rst new file mode 100644 index 0000000..5e92e94 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/Options.rst @@ -0,0 +1,66 @@ +Available options +=============== + +Here is the full list of options available to you. You can also have a look at +``src/ZipStream.php`` file. + +.. code-block:: php + + use ZipStream\ZipStream; + + require_once 'vendor/autoload.php'; + + $zip = new ZipStream( + // Define output stream + // (argument is eiter a resource or implementing + // `Psr\Http\Message\StreamInterface`) + // + // Setup with `psr/http-message` & `guzzlehttp/psr7` dependencies + // required when using `Psr\Http\Message\StreamInterface`. + outputStream: $filePointer, + + // Set the deflate level (default is 6; use -1 to disable it) + defaultDeflateLevel: 6, + + // Add a comment to the zip file + comment: 'This is a comment.', + + // Send http headers (default is true) + sendHttpHeaders: false, + + // HTTP Content-Disposition. + // Defaults to 'attachment', where FILENAME is the specified filename. + // Note that this does nothing if you are not sending HTTP headers. + contentDisposition: 'attachment', + + // Output Name for HTTP Content-Disposition + // Defaults to no name + outputName: "example.zip", + + // HTTP Content-Type. + // Defaults to 'application/x-zip'. + // Note that this does nothing if you are not sending HTTP headers. + contentType: 'application/x-zip', + + // Set the function called for setting headers. + // Default is the `header()` of PHP + httpHeaderCallback: header(...), + + // Enable streaming files with single read where general purpose bit 3 + // indicates local file header contain zero values in crc and size + // fields, these appear only after file contents in data descriptor + // block. + // Set to true if your input stream is remote + // (used with addFileFromStream()). + // Default is false. + defaultEnableZeroHeader: false, + + // Enable zip64 extension, allowing very large archives + // (> 4Gb or file count > 64k) + // Default is true + enableZip64: true, + + // Flush output buffer after every write + // Default is false + flushOutput: true, + ); diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/PSR7Streams.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/PSR7Streams.rst new file mode 100644 index 0000000..22af71d --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/PSR7Streams.rst @@ -0,0 +1,21 @@ +Usage with PSR 7 Streams +=============== + +PSR-7 streams are `standardized streams `_. + +ZipStream-PHP supports working with these streams with the function +``addFileFromPsr7Stream``. + +For all parameters of the function see the API documentation. + +Example +--------------- + +.. code-block:: php + + $stream = $response->getBody(); + // add a file named 'streamfile.txt' from the content of the stream + $zip->addFileFromPsr7Stream( + fileName: 'streamfile.txt', + stream: $stream, + ); diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/StreamOutput.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/StreamOutput.rst new file mode 100644 index 0000000..9f3165b --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/StreamOutput.rst @@ -0,0 +1,39 @@ +Stream Output +=============== + +Stream to S3 Bucket +--------------- + +.. code-block:: php + + use Aws\S3\S3Client; + use Aws\Credentials\CredentialProvider; + use ZipStream\ZipStream; + + $bucket = 'your bucket name'; + $client = new S3Client([ + 'region' => 'your region', + 'version' => 'latest', + 'bucketName' => $bucket, + 'credentials' => CredentialProvider::defaultProvider(), + ]); + $client->registerStreamWrapper(); + + $zipFile = fopen("s3://$bucket/example.zip", 'w'); + + $zip = new ZipStream( + enableZip64: false, + outputStream: $zipFile, + ); + + $zip->addFile( + fileName: 'file1.txt', + data: 'File1 data', + ); + $zip->addFile( + fileName: 'file2.txt', + data: 'File2 data', + ); + $zip->finish(); + + fclose($zipFile); diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/Symfony.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/Symfony.rst new file mode 100644 index 0000000..902552c --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/Symfony.rst @@ -0,0 +1,130 @@ +Usage with Symfony +=============== + +Overview for using ZipStream in Symfony +-------- + +Using ZipStream in Symfony requires use of Symfony's ``StreamedResponse`` when +used in controller actions. + +Wrap your call to the relevant ``ZipStream`` stream method (i.e. ``addFile``, +``addFileFromPath``, ``addFileFromStream``) in Symfony's ``StreamedResponse`` +function passing in any required arguments for your use case. + +Using Symfony's ``StreamedResponse`` will allow Symfony to stream output from +ZipStream correctly to users' browsers and avoid a corrupted final zip landing +on the users' end. + +Example for using ``ZipStream`` in a controller action to zip stream files +stored in an AWS S3 bucket by key: + +.. code-block:: php + + use Symfony\Component\HttpFoundation\StreamedResponse; + use Aws\S3\S3Client; + use ZipStream; + + //... + + /** + * @Route("/zipstream", name="zipstream") + */ + public function zipStreamAction() + { + // sample test file on s3 + $s3keys = array( + "ziptestfolder/file1.txt" + ); + + $s3Client = $this->get('app.amazon.s3'); //s3client service + $s3Client->registerStreamWrapper(); //required + + // using StreamedResponse to wrap ZipStream functionality + // for files on AWS s3. + $response = new StreamedResponse(function() use($s3keys, $s3Client) + { + // Define suitable options for ZipStream Archive. + // this is needed to prevent issues with truncated zip files + //initialise zipstream with output zip filename and options. + $zip = new ZipStream\ZipStream( + outputName: 'test.zip', + defaultEnableZeroHeader: true, + contentType: 'application/octet-stream', + ); + + //loop keys - useful for multiple files + foreach ($s3keys as $key) { + // Get the file name in S3 key so we can save it to the zip + //file using the same name. + $fileName = basename($key); + + // concatenate s3path. + // replace with your bucket name or get from parameters file. + $bucket = 'bucketname'; + $s3path = "s3://" . $bucket . "/" . $key; + + //addFileFromStream + if ($streamRead = fopen($s3path, 'r')) { + $zip->addFileFromStream( + fileName: $fileName, + stream: $streamRead, + ); + } else { + die('Could not open stream for reading'); + } + } + + $zip->finish(); + + }); + + return $response; + } + +In the above example, files on AWS S3 are being streamed from S3 to the Symfon +application via ``fopen`` call when the s3Client has ``registerStreamWrapper`` +applied. This stream is then passed to ``ZipStream`` via the +``addFileFromStream`` function, which ZipStream then streams as a zip to the +client browser via Symfony's ``StreamedResponse``. No Zip is created server +side, which makes this approach a more efficient solution for streaming zips to +the client browser especially for larger files. + +For the above use case you will need to have installed +`aws/aws-sdk-php-symfony `_ to +support accessing S3 objects in your Symfony web application. This is not +required for locally stored files on you server you intend to stream via +``ZipStream``. + +See official Symfony documentation for details on +`Symfony's StreamedResponse `_ +``Symfony\Component\HttpFoundation\StreamedResponse``. + +Note from `S3 documentation `_: + + Streams opened in "r" mode only allow data to be read from the stream, and + are not seekable by default. This is so that data can be downloaded from + Amazon S3 in a truly streaming manner, where previously read bytes do not + need to be buffered into memory. If you need a stream to be seekable, you + can pass seekable into the stream context options of a function. + +Make sure to configure your S3 context correctly! + +Uploading a file +-------- + +You need to add correct permissions +(see `#120 `_) + +**example code** + + +.. code-block:: php + + $path = "s3://{$adapter->getBucket()}/{$this->getArchivePath()}"; + + // the important bit + $outputContext = stream_context_create([ + 's3' => ['ACL' => 'public-read'], + ]); + + fopen($path, 'w', null, $outputContext); diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/Varnish.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/Varnish.rst new file mode 100644 index 0000000..952d287 --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/Varnish.rst @@ -0,0 +1,22 @@ +Usage with Varnish +============= + +Serving a big zip with varnish in between can cause random stream close. +This can be solved by adding attached code to the vcl file. + +To avoid the problem, add the following to your varnish config file: + +.. code-block:: + sub vcl_recv { + # Varnish can’t intercept the discussion anymore + # helps for streaming big zips + if (req.url ~ "\.(tar|gz|zip|7z|exe)$") { + return (pipe); + } + } + # Varnish can’t intercept the discussion anymore + # helps for streaming big zips + sub vcl_pipe { + set bereq.http.connection = "close"; + return (pipe); + } diff --git a/vendor/composer/vendor/maennchen/zipstream-php/guides/index.rst b/vendor/composer/vendor/maennchen/zipstream-php/guides/index.rst new file mode 100644 index 0000000..48f465a --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/guides/index.rst @@ -0,0 +1,126 @@ +ZipStream PHP +============= + +A fast and simple streaming zip file downloader for PHP. Using this library will +save you from having to write the Zip to disk. You can directly send it to the +user, which is much faster. It can work with S3 buckets or any PSR7 Stream. + +.. toctree:: + + index + Symfony + Options + StreamOutput + FlySystem + PSR7Streams + Nginx + Varnish + ContentLength + +Installation +--------------- + +Simply add a dependency on ``maennchen/zipstream-php`` to your project's +``composer.json`` file if you use Composer to manage the dependencies of your +project. Use following command to add the package to your project's +dependencies: + +.. code-block:: sh + composer require maennchen/zipstream-php + +If you want to use``addFileFromPsr7Stream``` +(``Psr\Http\Message\StreamInterface``) or use a stream instead of a +``resource`` as ``outputStream``, the following dependencies must be installed +as well: + +.. code-block:: sh + composer require psr/http-message guzzlehttp/psr7 + +If ``composer install`` yields the following error, your installation is missing +the `mbstring extension `_, +either `install it `_ +or run the follwoing command: + +.. code-block:: + Your requirements could not be resolved to an installable set of packages. + + Problem 1 + - Root composer.json requires PHP extension ext-mbstring * but it is + missing from your system. Install or enable PHP's mbstrings extension. + +.. code-block:: sh + composer require symfony/polyfill-mbstring + +Usage Intro +--------------- + +Here's a simple example: + +.. code-block:: php + + // Autoload the dependencies + require 'vendor/autoload.php'; + + // create a new zipstream object + $zip = new ZipStream\ZipStream( + outputName: 'example.zip', + + // enable output of HTTP headers + sendHttpHeaders: true, + ); + + // create a file named 'hello.txt' + $zip->addFile( + fileName: 'hello.txt', + data: 'This is the contents of hello.txt', + ); + + // add a file named 'some_image.jpg' from a local file 'path/to/image.jpg' + $zip->addFileFromPath( + fileName: 'some_image.jpg', + path: 'path/to/image.jpg', + ); + + // add a file named 'goodbye.txt' from an open stream resource + $filePointer = tmpfile(); + fwrite($filePointer, 'The quick brown fox jumped over the lazy dog.'); + rewind($filePointer); + $zip->addFileFromStream( + fileName: 'goodbye.txt', + stream: $filePointer, + ); + fclose($filePointer); + + // add a file named 'streamfile.txt' from the body of a `guzzle` response + // Setup with `psr/http-message` & `guzzlehttp/psr7` dependencies required. + $zip->addFileFromPsr7Stream( + fileName: 'streamfile.txt', + stream: $response->getBody(), + ); + + // finish the zip stream + $zip->finish(); + +You can also add comments, modify file timestamps, and customize (or +disable) the HTTP headers. It is also possible to specify the storage method +when adding files, the current default storage method is ``DEFLATE`` +i.e files are stored with Compression mode 0x08. + +Known Issues +--------------- + +The native Mac OS archive extraction tool prior to macOS 10.15 might not open +archives in some conditions. A workaround is to disable the Zip64 feature with +the option ``enableZip64: false``. This limits the archive to 4 Gb and 64k files +but will allow users on macOS 10.14 and below to open them without issue. +See `#116 `_. + +The linux ``unzip`` utility might not handle properly unicode characters. +It is recommended to extract with another tool like +`7-zip `_. +See `#146 `_. + +It is the responsability of the client code to make sure that files are not +saved with the same path, as it is not possible for the library to figure it out +while streaming a zip. +See `#154 `_. diff --git a/vendor/composer/vendor/maennchen/zipstream-php/phpdoc.dist.xml b/vendor/composer/vendor/maennchen/zipstream-php/phpdoc.dist.xml new file mode 100644 index 0000000..b98fe1c --- /dev/null +++ b/vendor/composer/vendor/maennchen/zipstream-php/phpdoc.dist.xml @@ -0,0 +1,39 @@ + + + 💾 ZipStream-PHP + + docs + + + latest + + + src + + api + + + php + + public + ZipStream + true + + + + guides + + guide + + + +

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