Commit graph

933 commits

Author SHA1 Message Date
Hypolite Petovan 5dcf6bfc58 Remove extra spaces before closing parentheses in src/ 2019-10-16 08:58:09 -04:00
Hypolite Petovan 146646c4d4 Replace deprecated calls to defaults() by ?? and ?: in src/ 2019-10-16 08:38:52 -04:00
Hypolite Petovan 1cdbf32aa2 Remove duplicate array entry in Core\Logger 2019-10-12 21:10:03 -04:00
Hypolite Petovan 001c9ed259 Fix typo in Core\Authentication 2019-10-11 19:57:04 -04:00
dew-git 811cdcdfcb Fix security vulnerbilities.
Fix possible length extension attack, predicable generators, timing attacks on hash comparision and improved formatting.
2019-10-10 15:21:41 -08:00
Philipp Holzer a522cf609b
Fix browser language detection (& tests) 2019-10-10 16:39:04 +02:00
Hypolite Petovan e5fbaf6a00 Add Session::clear method
- Replace manual session clear by method in mod/manage
2019-10-06 11:21:54 -04:00
Hypolite Petovan b62e20c7bf Code beautification 2019-10-05 08:34:07 -04:00
Hypolite Petovan 445133cb21 Move Module\Search\Acl::contactAutocomplete to Core\Search::searchGlobalContact
- Replace broken reference to directory /lsearch module with /search module
2019-10-04 22:19:54 -04:00
Hypolite Petovan 8f20e2054b Move /acl module to src/
- Move Core\ACL::contactAutocomplete to Module\Search\Acl
- Rename module path to /search/acl
2019-10-03 22:40:42 -04:00
Hypolite Petovan 2333526b8a
Merge pull request #7678 from annando/remote-rework
Reworked the remote authentication
2019-09-30 09:18:43 -04:00
Philipp Holzer dc73117a62
code optimization 2019-09-30 14:03:15 +02:00
Philipp Holzer 49e812f3d3
Bugfix GetAllKeys() of Memcache
- Abstract Memcache and Memcached implementation
2019-09-30 14:03:15 +02:00
Philipp Holzer d5dd12b8f8
Add Drone CI
- Add drone test environment
- Add drone config
- apt phpunit
- Fix api.php
- Fix item.php
- Fix DBStructure
- Check if caching is possible during tests
2019-09-30 14:03:12 +02:00
Michael 83b00ef308 New function "isAuthenticated" 2019-09-28 18:09:11 +00:00
Michael 6e9026e033 Renamed function, beginning to replace the "remote_user" function 2019-09-28 09:36:41 +00:00
Michael 704cdf1b5a New function to store the "remote" session value / making the changes work 2019-09-26 04:47:42 +00:00
Michael ec66553032 Reworked "remote" cookie handling 2019-09-25 22:24:17 +00:00
Michael d5c37001cd Empty the "remote" variable, avoid being remote to yourself 2019-09-25 07:02:07 +00:00
Michael 6a376c29d8 Fix session size problems 2019-09-25 05:57:32 +00:00
Michael 5254147ccc Fix "redir" loop 2019-09-23 22:13:20 +00:00
Hypolite Petovan 32707022bf Remove GET page parameter access from Core\ACL 2019-09-13 20:06:57 -04:00
Hypolite Petovan 1a81ed8616 Fix notice message when $return is undefined in Core\ACL 2019-09-13 20:06:22 -04:00
Michael 2dbd843ed2 Don't display ignored pending contacts, link to contact request page 2019-09-09 05:29:33 +00:00
Philipp Holzer 8273b88a3e
Add missing getPokeVerbs() method 2019-09-03 16:07:05 +02:00
Philipp 08b6f55a89
Merge pull request #7589 from annando/delivery-counter
Fix delivery counter / archive relay contacts
2019-09-03 15:59:49 +02:00
Michael 8947473c71 Contact details are now available when searching for a single contact 2019-09-02 05:33:13 +00:00
Michael 6af4c90dff Fix delivery counter / archive relay contacts 2019-09-02 03:25:05 +00:00
Hypolite Petovan ce7ec11d1d
Merge pull request #7570 from nupplaphil/bug/friendica-7298
Some code hardenings for semaphore locking
2019-08-29 15:02:07 -04:00
Michael Vogel cf170c9c02 Fixed count, added to-do 2019-08-28 06:44:37 +02:00
Michael Vogel 9b7432781b Don't transmit content to already archived contacts 2019-08-27 21:01:11 +02:00
Philipp Holzer de7c026590
Some code hardenings for semaphore locking 2019-08-26 23:55:54 +02:00
Michael Vogel a892156052 Output better comparable log entries for the worker 2019-08-23 07:23:32 +02:00
Michael 5a1a5a54dc Delivery count now counts the failed delivery attempts as well 2019-08-20 07:39:13 +00:00
Philipp Holzer c803dcb6c5
Fix Locks
- Wrong return of lock releasing with DBA provider
- It's not possible to maintain Semaphore locks, since they aren't accessible by other processes
Should solve https://github.com/friendica/friendica/issues/7298#issuecomment-521996540
2019-08-17 19:33:36 +02:00
Philipp Holzer 2c73377b39
Create Core\Process as a base for followup work 2019-08-17 09:09:13 +02:00
Philipp Holzer 90b438e082
Move mode settings to App\Mode
- Move isAjax() to App\Mode
- Move isTablet() to App\Mode
- Move isMobile() to App\Mode
- Refactor last usage of App->isBackend()
2019-08-17 09:09:13 +02:00
Hypolite Petovan feb720a3ee
Merge pull request #7518 from nupplaphil/bug/lock_unlink
Fix Lock-Unlink
2019-08-15 12:11:01 -04:00
Philipp Holzer 2369ea1d50
Fix Lock-Unlink
- Check if .sem file exists before unlinking it
- Fixing https://github.com/friendica/friendica/issues/7298#issuecomment-521670482
2019-08-15 17:55:17 +02:00
Philipp Holzer 290dd2ab39
moved rest of BaseURL 2019-08-15 17:36:07 +02:00
Philipp Holzer 734b63adba
Fixed wrong "BaseUrl" class (=> "BaseURL") 2019-08-15 17:23:35 +02:00
Philipp Holzer 08be92a862
Moved BaseURL to App namespace (because similar type as Arguments/Modules/Modes) 2019-08-15 17:23:00 +02:00
Philipp Holzer 689a2145f6
Add @see for SO link 2019-08-15 16:24:11 +02:00
Philipp Holzer e2e109b8c1
Fix getAllKeys() method for memcache instances 2019-08-15 14:26:05 +02:00
Philipp Holzer 41e2031e6b
Console Lock
WIP
2019-08-15 14:26:04 +02:00
Philipp Holzer 0af9747c6c
Add Arguments & Modules class 2019-08-13 16:29:11 +02:00
Hypolite Petovan f068d00645
Merge pull request #7510 from nupplaphil/bug/Fix_Redis_test
Fix Redis test
2019-08-13 06:41:07 -04:00
Philipp Holzer b28e11fee8
- Remove deprecated Redis::delete() function 2019-08-13 08:54:26 +02:00
Philipp Holzer 31cfac1cfa
Fix Redis test
- Check if $redis_port is null
2019-08-13 08:32:08 +02:00
Michael Vogel afac4b7698 Improved calculation of deferred tasks 2019-08-13 06:43:08 +02:00
Michael Vogel e07a17daf6 Added config value 2019-08-11 23:07:06 +02:00
Michael Vogel 5c72aeb8d7 Worker: The retrial value can now skip retrial levels 2019-08-11 10:28:52 +02:00
Michael Vogel 35a487ae30 Don't fork worker on frontend by default 2019-08-08 22:42:12 +02:00
Philipp Holzer a66580444f
Fixing sort of BaseURL usage for App & Cache usage 2019-08-04 20:01:15 +02:00
Philipp Holzer 3834d5e129
Renamed __toString() to getName() 2019-08-04 16:14:19 +02:00
Philipp Holzer d2211bd6dd
Removed some leftovers 2019-08-04 15:58:53 +02:00
Philipp Holzer 19777baa79
- Move constants to the "Cache" class (more transparent than inside the interface) 2019-08-04 15:53:28 +02:00
Philipp Holzer 34e4968c06
Adding possibility to use a different cache-backend for locking and caching
- Renaming *LockDriver to *Lock since it isn't a "driver" anymore
2019-08-04 15:42:39 +02:00
Philipp Holzer 86bf2ee45a
Rename *CacheDriver to *Cache because they don't act as driver anymore 2019-08-04 10:26:53 +02:00
Philipp Holzer d56bd28a07
Refactor Cache/Lock to DICE
- Refactor Cache classes
- Refactor Lock classes
- Improved test speed (removed some seperate class annotations)
2019-08-03 20:51:58 +02:00
Michael Vogel e8459cce34
Merge pull request #7381 from MrPetovan/task/7309-frio-compose
[frio] New Compose page
2019-08-01 08:15:02 +02:00
Philipp Holzer a60eb9e33d
Use DICE for Console
- Use Friendica\Core\Console as Controller for DI-library
- Refactor every console command to use DICE (when possible)
- Adjusting tests
2019-07-31 19:37:42 +02:00
Hypolite Petovan 3e6018b3f2 Add meta protocol group for private post support 2019-07-29 20:31:48 -04:00
Philipp Holzer 6c2cf494b5
Remove DependencyFactory
- Include all necessary classes in `dependencies.config.php`
- Add DI-reference to BaseObject (acts as a global registry)
- Refactor all static "init()" methods to use the global registry

- Refactor Logging for Worker-Logger a little bit
2019-07-27 23:54:12 +02:00
Hypolite Petovan 4ec4a04e49 Remove mod/ping from 2fa exception list
- Prevent asynchronous calls to redirect to /2fa in case of missing valid 2fa session
2019-07-23 20:03:08 -04:00
Philipp Holzer a8e6a57e9b
Fixing installer 2019-07-21 14:21:02 +02:00
Philipp Holzer 55999730e0
Introduce DICE
- Adding dice library
- Adding dependency config

- Removing Factories
- Refactoring App\Mode constructor
- Refactoring App\Router constructor
- Refactoring BasePath for DI usage
- Refactoring ConfigFileLoader constructor
- Refactoring Profiler constructor

- Adjust entrypoints (index, console, worker, ..)

- Adding functional test for DI
- Fix tests because of refactorings
2019-07-21 01:22:10 +02:00
Hypolite Petovan f5e07be04e Fix undefined property notice in L10n\L10n 2019-07-18 21:21:16 -04:00
Hypolite Petovan 11e4f906c2
Hot-fix: Core\L10n::t method passing parameter bug
Follow-up to #7379
2019-07-16 21:18:25 -04:00
Hypolite Petovan 0b97b32a59
Merge pull request #7379 from nupplaphil/task/refactor_l10n_for_test
Refactor L10n for testing
2019-07-16 16:03:42 -04:00
Philipp Holzer 92fb0a82ca
Dynamic config loading
- Move settings, defaults and dbstructure to directory 'static'
- Dynamic loading of config files (after the static loading)
- Filter out '-sample.config.php' and '-sample.ini.php' files
- Remove unnecessary ConfigFileManager
- Move ConfigFileLoader to Utils
- Add tests for multi-loading for INI, config and sample-filtering
2019-07-16 20:16:43 +02:00
Philipp Holzer eb024a3718
Refactor L10n for testing
- Moving L10n to L10n\L10n
- Adding constructor information
- Adding to factory
- simplify/speedup tests
2019-07-16 16:44:47 +02:00
Hypolite Petovan c6cd2b131d Add transitive type hints in Core\PConfig 2019-07-16 07:45:24 -04:00
Hypolite Petovan 68f5b639eb Restore $uid parameter integer type-hint in Config
- Add integer type-hint to Feature::isEnabled
2019-07-15 22:00:49 -04:00
Philipp Holzer f70271aa5d
Allow nullable UID in PConfigCache 2019-07-15 21:14:13 +02:00
Philipp Holzer d5de5b6789
Bugfixing bad UIDs for PConfig 2019-07-15 21:11:38 +02:00
Philipp Holzer ebf00e32a1
minor phpdoc fixings 2019-07-15 20:54:33 +02:00
Philipp Holzer 74f7c16585
Fixup phpdoc 2019-07-15 20:19:52 +02:00
Philipp Holzer 9d98a4ce3a
Refactor PConfiguration 2019-07-15 20:13:53 +02:00
Philipp Holzer 6801e8b5ab
Fixing initial load config 2019-07-15 08:58:37 +02:00
Philipp Holzer 4af08d82b2
Added string type-hint for get() and a test case for it 2019-07-14 23:23:20 +02:00
Philipp Holzer a654470061
fix phpdoc 2019-07-14 22:41:09 +02:00
Philipp Holzer b48c22dc1a
minor fixing: phpdoc & type-hint 2019-07-14 22:31:53 +02:00
Philipp Holzer a2c6240da0
some minor fixings 2019-07-14 22:26:36 +02:00
Philipp Holzer 4913502922
bugfix: add lost changes due merge 2019-07-14 22:12:45 +02:00
Philipp Holzer c293eadb78
Improve & fixing Tests 2019-07-14 22:12:11 +02:00
Philipp Holzer 486f139342
Move Preload/JIT Configuration logic from Adapter to Core-Configuration 2019-07-14 22:09:07 +02:00
Philipp Holzer c82127ffb7
Splitting ConfigCache & PConfigCache
- Remove IConfigCache & IPConfigCache
- Add new PConfigCache
- Add missing Logger::init() (bugfixing tests)
2019-07-12 22:53:37 +02:00
Philipp Holzer e1d135238a
Revert default password setting & using "HiddenString" even for empty strings 2019-07-09 22:38:54 +02:00
Philipp Holzer ab7c6499ff
Bugfixing DB/Installer
- default value with HiddenString
- Fixing checkDB during installation
2019-07-09 22:22:06 +02:00
Michael 6bb418c5a7 Use "received" instead of "created" when displaying posts in creation order 2019-07-07 21:30:33 +00:00
Michael 6041f74df6 New constant for federated protocols 2019-07-01 18:00:55 +00:00
Hypolite Petovan b9ab613777 Merge branch 'master' into develop 2019-06-23 17:40:52 -04:00
Hypolite Petovan d7d44e1af7
Merge pull request #7245 from annando/unify-constants
Fix delivery counter for poking / unify delivery commands
2019-06-10 11:59:40 -04:00
Hypolite Petovan 151c026a8a
Merge pull request #7244 from nupplaphil/task/hidden_string
Introduce HiddenString for Config-Values
2019-06-10 10:50:41 -04:00
Michael 41dc243186 Fix delivery counter for poking / unify delivery commands 2019-06-10 14:19:24 +00:00
Philipp Holzer 50d8dbb123
Bugfixing wrong typed password setting 2019-06-10 15:46:51 +02:00
Philipp Holzer 4666b18e5b
Bugfixing empty password setting 2019-06-10 15:40:15 +02:00
Philipp Holzer 357d9b5108
Introduce HiddenString for Config-Values 2019-06-10 14:46:31 +02:00
Philipp Holzer cc7444d84d
Move internal recursion-counter to the end of all cur/fetchUrl parameters 2019-06-10 14:34:54 +02:00
Philipp Holzer 79fe3c92c7
Fixing Installer - ReplaceMacro 2019-06-07 00:36:10 +02:00
Hypolite Petovan 5414d51d4c Prevent fatal error in ACL::getFullSelectorHTML when accessing a profile as a remote visitor
See https://github.com/friendica/friendica/issues/6916#issuecomment-495724811
2019-05-28 21:09:06 -04:00
Hypolite Petovan 01e71254d9 Replace defaults() calls on $_SESSION by Core\Session calls
- Replace direct calls to $_SESSION by Core\Session calls in Module\Login
2019-05-26 21:26:59 -04:00
Philipp Holzer 26d4214c19
added suggestions 2019-05-26 21:53:24 +02:00
Philipp Holzer 220f8f0862
friendica-6950 uimport doesn't support "pwdreset_time":null 2019-05-26 15:49:44 +02:00
Hypolite Petovan 08d7d42f81 Ensures Search methods return an empty ResultList instead of null
- Addresses https://github.com/friendica/friendica/issues/6916#issuecomment-494876901
2019-05-24 08:13:36 -04:00
Philipp Holzer 3d67987cbc
simplification 2019-05-20 19:27:53 +02:00
Philipp Holzer 5e79d3fc82
Fixing method signature 2019-05-20 19:19:57 +02:00
Philipp Holzer 2bb2bb19fd
refactor method signature 2019-05-20 19:15:47 +02:00
Philipp Holzer 58c8959da0
Add search types 2019-05-20 19:13:37 +02:00
Philipp Holzer 83fd03b124
Add PhpDoc 2019-05-20 18:44:44 +02:00
Philipp Holzer 1e36c68e48
Moving Search to Core, Refactor Objects 2019-05-20 18:42:27 +02:00
Hypolite Petovan bf82736522 Exclude /api and /proxy from 2fa check 2019-05-15 08:56:02 -04:00
Hypolite Petovan 78b651d2e8 Revert Use Contact::select() instead of DBA::select(‘contact) in Core\Session 2019-05-13 14:07:02 -04:00
Hypolite Petovan e077f30d51 Use Contact::select() instead of DBA::select(‘contact) in Core\Session
- Replace remaining occurrences of $_SESSION with Session methods
2019-05-13 13:33:20 -04:00
Hypolite Petovan d7e9b91181 Add two-factor authentication
- Add 2FA login interception in Session::setAuthenticatedForUser
- Add 2fa session variable holding the last auth code
2019-05-13 01:52:01 -04:00
Hypolite Petovan 6071fe81b4 Move Authentication::setAuthenticatedSessionForUser to Session::setAuthenticatedForUser 2019-05-13 01:51:59 -04:00
Hypolite Petovan f0f44dbd84 Delete all addon hooks by default on uninstall 2019-05-08 00:46:13 -04:00
Tobias Diekershoff 959054f2f2 Add subject to DB Update email 2019-05-06 11:13:38 +02:00
Philipp Holzer 62fd5375dc
Move mod/maintenance to src/Module/Maintenance 2019-05-05 10:06:50 +02:00
Philipp Holzer 6ff3389f6e
add status code to System::externalRedirect 2019-05-04 09:16:37 +02:00
Philipp Holzer d716a3326f
Move Console namespace one level up 2019-05-02 23:17:35 +02:00
Philipp 2628da422a
Merge pull request #7068 from MrPetovan/task/7047-theme-error-page
Themed error page redux
2019-05-02 21:15:29 +02:00
Hypolite Petovan 358baa9f62 Add themed error pages
- Module init, post and rawContent-triggered HTTPException generate the classic bare HTTP status page
- Module content-triggered HTTPException generate themed error pages
- Trim System::httpExit to the bare minimum
2019-05-02 11:26:56 -04:00
Hypolite Petovan 6df37afb82 Various feedback items
- Add logger call on theme install failure
- Add todo in Module\Admin\DBSync
2019-05-02 09:55:49 -04:00
Hypolite Petovan 9f4fb4906a Move addon admin list generation to Core\Addon 2019-05-02 09:55:49 -04:00
Hypolite Petovan 9774c95b80 Remove duplicate $baseurl template variable
- Remove unused $overwriteURL parameter in Renderer::replaceMacros
2019-05-02 09:55:48 -04:00
Hypolite Petovan fb503e82bf Normalize how we store enabled addons/themes in config value to straight comma-separated list 2019-05-02 09:52:54 -04:00
Hypolite Petovan 9bbb438534 Move admin/addons to src/Module
- Add Module\Admin\Addons\Index class
- Add route for admin/addons
- Add addons admin aside menu entry
- Remove unused template admin/addons.tpl from base and frio
- Remove addon list from mod/admin
2019-05-02 09:52:44 -04:00
Hypolite Petovan 9227aab837 Add system.allowed_themes config key handling in Core\Theme
- Add Theme::setAllowedList method
- Update the allowed theme list on theme install/uninstall
- Add theme file inclusion on uninstall allowing for theme_uninstall function to be called
- Removing logging from frontend methods
2019-05-02 09:52:42 -04:00
Philipp Holzer bc8d444989
remove extraneous space 2019-04-21 12:45:50 +02:00
Philipp Holzer 3ca8fa0e00
Support for APCu caching 2019-04-21 12:45:19 +02:00
Hypolite Petovan e9c230e109
Merge pull request #7018 from nupplaphil/feature/6245-Block_shell
New Command "BlockedServers"
2019-04-20 11:01:01 -04:00
Philipp Holzer 8660f6d86f
Rename BlockedServers to ServerBlock 2019-04-20 16:40:27 +02:00
Philipp Holzer fa71a9a0ce
Improve redis configuration
- basic authentication
- switch database (0 - 15)
2019-04-20 13:40:40 +02:00
Philipp Holzer f05f02409e
Add update possibility to BlockedServers 2019-04-20 13:24:33 +02:00
Philipp Holzer 7ce76d153a
rename description to reason 2019-04-20 12:54:38 +02:00
Philipp Holzer 55d2473ec2
Add tests & default reason 2019-04-20 12:53:17 +02:00
Philipp Holzer e25f269aab
New command "BlockedServers" 2019-04-20 10:42:28 +02:00
Philipp Holzer 03e149270b
bugfix 2019-04-14 14:40:26 +02:00
Philipp Holzer 58c9566c3d
code style & install-403 fix 2019-04-14 14:24:01 +02:00
Philipp Holzer d90eb6a811
Remove php_path duplicate in auto-install 2019-04-14 14:24:00 +02:00
Philipp Holzer 8fe606660d
trim whitespaces 2019-04-14 14:23:59 +02:00
Philipp Holzer 3a0664d827
fixing auto install tests 2019-04-14 14:23:58 +02:00
Philipp Holzer 677cb205f5
fix auto install 2019-04-14 14:23:58 +02:00
Philipp Holzer 90a38a00d8
Adding basepath, urlpath, hostname and ssl_policy to installation 2019-04-14 14:23:06 +02:00
Philipp Holzer fbd056327a
DBA-Logger fix 2019-04-13 20:46:58 +02:00
Hypolite Petovan 75387ea171
Merge pull request #6991 from fabrixxm/fix/invalid-storage-on-legacy
Allow set empty string storage class for legacy
2019-04-11 09:04:48 -04:00
Hypolite Petovan 9162f714e0 Add uri to missing session data logging context in Session handlers 2019-04-11 05:26:37 -04:00
Philipp Holzer dc48690ed5
Remove hostname blacklisting 2019-04-11 00:09:59 +02:00