Commit Graph

370 Commits

Author SHA1 Message Date
Frederic Guillot febbd8cace Check if LDAP logger is defined 2016-03-27 18:44:03 -04:00
Frederic Guillot d0a0be89f2 Added more logging for LDAP client 2016-03-27 18:30:02 -04:00
Frederic Guillot 9ba44a01db Minor improvements 2016-03-27 13:45:37 -04:00
Frederic Guillot c7cceade96 Handle state in OAuth2 client 2016-03-27 12:23:18 -04:00
Frederic Guillot 88d9561966 Fix compatibility issue with PHP 5.3 2016-03-26 20:36:55 -04:00
Frederic Guillot 820c929ab3 Added avatar image upload 2016-03-26 14:43:41 -04:00
Frederic Guillot 407a51e6c4 Allow to use the original template in overridden templates (PR #1941) 2016-03-25 18:19:31 -04:00
Frederic Guillot 354e37971d Unification of project header 2016-03-25 17:41:41 -04:00
Busfreak 4f2468fc38 Loader for Helper-Classes from Plugin 2016-03-23 18:06:16 +01:00
Frederic Guillot 2e320ceead Handle multiple avatar sizes 2016-03-19 13:45:41 -04:00
Frederic Guillot b9bb088842 Render default avatar provider when having no user linked 2016-03-19 12:17:34 -04:00
Frederic Guillot 9d4ba1471d Added letter based avatar provider 2016-03-19 11:17:58 -04:00
Frederic Guillot fa86542f90 Added pluggable Avatar providers 2016-03-18 23:06:32 -04:00
Frederic Guillot 24c224ddc2 Added support for multiple placeholders for LDAP_USER_FILTER 2016-03-17 22:24:11 -04:00
Dj Padzensky a8abc70bcb Changing new self to new static, to accommodate subclasses of LdapClient. 2016-03-07 15:05:06 -08:00
Frederic Guillot a7f3e3bec5 PHPdoc cleanup 2016-03-04 21:11:12 -05:00
Frederic Guillot 3808209690 Move Template::layout() to LayoutHelper 2016-03-04 20:26:52 -05:00
Frederic Guillot 8f3e2b2e5c Helper refactoring 2016-03-04 20:10:34 -05:00
Frederic Guillot f32507d423 Add namespace Export and move classes 2016-03-04 17:57:45 -05:00
Frederic Guillot c083822806 Create Import namespace and move classes 2016-03-04 17:38:17 -05:00
Frederic Guillot a7c157df3c Remove model OverdueNotification 2016-03-04 16:31:34 -05:00
Frederic Guillot 6ef83d0e05 Add unit test for transition model 2016-02-29 22:40:26 -05:00
Frederic Guillot a22476ffdf Added support for HTTP header "X-Forwarded-Proto: https" 2016-02-28 20:00:11 -05:00
Frederic Guillot 0261c751cf Fix cosmetic issues and update api documentation 2016-02-20 15:31:26 -05:00
Frederic Guillot 8e25c875f2 Add ProjecFile and TaskFile models 2016-02-14 15:25:16 -05:00
Frederic Guillot 6161eaef9e Enable/Disable users 2016-02-13 15:38:35 -05:00
Frederic Guillot 58cef28967 The date time format can be chosen in application settings 2016-02-06 18:08:41 -05:00
Frederic Guillot 75cbc8c431 Always call match() for external link providers 2016-02-01 21:18:10 -05:00
Frederic Guillot 271543431e Make project creation form a inline popup 2016-01-31 20:14:51 -05:00
Frederic Guillot fc21d3873e When creating a new project, have the possibility to select another project to duplicate 2016-01-31 17:46:19 -05:00
Frederic Guillot bb040cfb78 Simplify code to handle ajax popover and redirects 2016-01-30 22:25:16 -05:00
Frederic Guillot 5c92f46786 Add external links for tasks with plugin api 2016-01-30 20:38:20 -05:00
Frederic Guillot 32e4a932c8 Added automatic actions based on a daily event 2016-01-28 08:40:27 -05:00
Marien Fressinaud 8baa417ece Move default-src CSP rule to ClassProvider
It was impossible to override the default-src CSP rule inside a plugin. This commit
fixes this limitation by moving the assignation of the rule from Response class to
ClassProvider.
2016-01-23 18:47:47 +01:00
Frederic Guillot ad8fcf035a Add new API procedures for groups, roles and project permissions 2016-01-22 21:23:12 -05:00
Frederic Guillot ddb73063a7 Return the highest role for a project when a user is member of multiple groups 2016-01-18 21:20:35 -05:00
Frederic Guillot 27b9b7a727 Minor code improvements 2016-01-16 22:29:29 -05:00
Frederic Guillot ff149c354e Remove global variable 2016-01-16 22:07:46 -05:00
Frederic Guillot 5a6cd48df1 Remove global 2016-01-16 22:03:59 -05:00
Frederic Guillot 41e900fc7a Show template rendering time in debug log 2016-01-16 21:35:50 -05:00
Frederic Guillot 73ff5ec89b Remove ProjectAnalytic class 2016-01-16 17:01:56 -05:00
Frederic Guillot c58478c0ab Move analytic logic to separate classes 2016-01-15 21:03:19 -05:00
Frederic Guillot 9e24bb2ef0 Do not cache app settings in session 2016-01-14 21:42:28 -05:00
Frederic Guillot 805be7d331 Move validator methods 2016-01-14 20:18:13 -05:00
Frederic Guillot dc35a78374 Move some validators to separate classes 2016-01-13 21:45:14 -05:00
Frederic Guillot f9c676cf81 Change private properties to protected 2016-01-13 21:02:32 -05:00
Frederic Guillot 3699073371 Move project validator methods 2016-01-11 22:07:39 -05:00
Frederic Guillot e31185a2bd Minor fixes 2016-01-11 21:54:52 -05:00
Frederic Guillot 9a661a5e9e Move subtask validator methods 2016-01-11 21:47:51 -05:00
Frederic Guillot 20b9c3d030 Move swimlane validator methods 2016-01-11 21:36:00 -05:00
Frederic Guillot b50f53ab3a Move task link validator methods 2016-01-11 21:27:49 -05:00
Frederic Guillot ff1de5c06d Fix bug: Automatic action listeners were using the same instance 2016-01-10 14:00:34 -05:00
Frederic Guillot 26e3996014 Add forgot password feature 2016-01-09 17:28:31 -05:00
Frederic Guillot f32d23d015 Remove HTMLToMarkdown dependency 2016-01-07 21:36:51 -05:00
Frederic Guillot 7864685cfd Move Gitlab webhook to an external plugin 2016-01-07 21:05:23 -05:00
Frederic Guillot 54b3cfe8a1 Move bitbucket webhook to an external plugin 2016-01-07 20:16:05 -05:00
Frederic Guillot 1ef6e6c2bf Fix phpdoc 2016-01-06 22:04:20 -05:00
Frederic Guillot 00e5a4c5b4 Move Github Webhook to external plugin
See: https://github.com/kanboard/plugin-github-webhook
2016-01-06 21:46:31 -05:00
Frederic Guillot e62779e267 Improve 2FA 2016-01-05 20:31:15 -05:00
Frederic Guillot a296ba5b18 Improve Automatic Actions plugin api 2016-01-03 16:43:13 -05:00
Frederic Guillot f69f9b0811 Use SHA-1 for session hash to avoid incompatibility between platforms 2015-12-30 15:15:55 +01:00
Frederic Guillot 5b45a082d9 Remove arguments of beforeAction() method 2015-12-30 14:54:54 +01:00
Frederic Guillot 019d83f3fc Fix compatiblity issue with FreeBSD for session.hash_function 2015-12-30 14:29:00 +01:00
Frederic Guillot 6f9af3659c Added the possiblity to define custom routes from plugins 2015-12-22 19:06:03 +01:00
Frederic Guillot 7f980cffcc Show profile link for @username mentions 2015-12-15 22:39:39 -05:00
Frederic Guillot ff26cce361 Add new boolean value for CSV import 2015-12-13 11:12:03 -05:00
Frederic Guillot 8f6c064cd7 Add debug log for session invalidation 2015-12-06 14:55:45 -05:00
Frederic Guillot 70c65268fe Update plugin doc 2015-12-06 14:48:59 -05:00
Frederic Guillot d0e809a32c Add new method to flush session variables 2015-12-06 08:23:53 -05:00
Frederic Guillot 9bd7985ba4 Add more unit tests 2015-12-06 00:00:09 -05:00
Frederic Guillot 73ce90ac56 Remove unused use statements 2015-12-05 21:34:26 -05:00
Frederic Guillot 18c56a50e7 Fix phpdoc 2015-12-05 21:22:37 -05:00
Frederic Guillot e9fedf3e5c Rewrite of the authentication and authorization system 2015-12-05 20:31:27 -05:00
Frederic Guillot 91bdf6aaf3 Add generic authorization class 2015-11-27 16:24:21 -05:00
Frederic Guillot 2451706316 Add generic LDAP client library 2015-11-27 09:15:12 -05:00
Olivier Maridat f837e70a2d Add filter by task link 2015-11-26 15:33:44 +01:00
Frederic Guillot 37ef906998 Avoid Safari to append .html at the end of downloaded files 2015-11-21 11:30:45 -05:00
Frederic Guillot f119cbd6be Make CSV export compatible with PHP 5.3 2015-11-20 20:39:43 -05:00
Frederic Guillot 4358708f1b Use PHP7 function random_bytes() to generate tokens if available 2015-11-15 16:31:26 -05:00
Frederic Guillot 42b5b413bd Code cleanup 2015-11-15 13:06:13 -05:00
Frederic Guillot a675271ad7 Rewrite of session management 2015-11-15 12:50:33 -05:00
Frederic Guillot d0925d99e7 Improve error handling of plugins 2015-11-14 15:51:37 -05:00
Frederic Guillot d84bf429d6 Fix bug in daily project summary CSV export 2015-11-14 15:35:59 -05:00
Frederic Guillot a2ebc6c3b2 Move some classes to namespace Core\Http 2015-10-25 18:11:49 -04:00
Frederic Guillot 6756ef2301 Move token generation to Security namespace 2015-10-25 15:05:19 -04:00
Frederic Guillot 9707c0b4c4 Make unit tests pass under Windows 2015-10-22 21:31:30 -04:00
Frederic Guillot ad55e6ede5 Remove exit expression in database provider 2015-10-17 22:31:04 -04:00
Frederic Guillot 09da289c2f Move slack, hipchat and jabber integrations to plugins 2015-10-17 22:19:49 -04:00
Frederic Guillot 472f94efee Move webhook to project notification type 2015-10-17 12:30:05 -04:00
Frederic Guillot 3543f45c2d Throw exception for page not found 2015-10-17 10:59:07 -04:00
Frederic Guillot 8c532efd5f Run php-cs-fixer on the code base 2015-10-17 10:09:03 -04:00
Frederic Guillot 73a5b9bc75 Make user notifications pluggable 2015-10-17 09:51:15 -04:00
Frederic Guillot 98b203fe69 Move DateParser class to Core namespace 2015-10-16 22:43:07 -04:00
Frederic Guillot f99a3c501f Make mail transports pluggable and move integrations to plugins
- Postmark: https://github.com/kanboard/plugin-postmark
- Mailgun: https://github.com/kanboard/plugin-mailgun
- Sendgrid: https://github.com/kanboard/plugin-sendgrid
2015-10-16 20:50:12 -04:00
Frederic Guillot 9c9ed02cd7 Change namespace to add Kanboard as prefix 2015-10-13 22:19:17 -04:00
Frederic Guillot e515f37435 Add user CSV import 2015-10-12 14:44:28 -04:00
Frederic Guillot cf6d4d1c0a Fix some phpdoc 2015-10-11 12:32:20 -04:00
Frederic Guillot 0e233673e3 Allow plugins to override CSP rules 2015-10-10 18:59:06 -04:00
Frederic Guillot 586c600040 Add proxy support for http client 2015-10-08 20:54:07 -04:00
Frederic Guillot 92cf7f4df6 Fix a couple of issues for PHP 7.0 2015-10-03 21:44:26 -04:00
Frederic Guillot d7c0fabcb7 Add unit test for FileStorage 2015-10-03 15:55:20 -04:00
Frederic Guillot d67d7c54e6 Add web notifications 2015-10-03 12:09:27 -04:00
Frederic Guillot 264b552603 Add custom filters (refactoring of pull-request #1312) 2015-10-02 21:58:00 -04:00
Frederic Guillot 1fca5e721a Add getPluginHomepage() 2015-09-26 16:05:06 -04:00
Frederic Guillot 9ca4b43a97 Add page to show the list of plugins 2015-09-26 15:57:39 -04:00
Frederic Guillot 5be5205629 Change interface for objectStorage 2015-09-23 21:22:03 -04:00
Frederic Guillot 2af45250c4 Add config parameter PLUGINS_DIR 2015-09-22 21:27:02 -04:00
Frederic Guillot 9aea0d141a Add php docblocks 2015-09-20 22:32:18 -04:00
Frederic Guillot f579663adc Fix some phpdoc and remove useless code 2015-09-20 18:44:51 -04:00
Frederic Guillot e6f547abcf Move timetable to a plugin
Plugin repository: https://github.com/kanboard/plugin-timetable
2015-09-20 18:24:15 -04:00
Frederic Guillot 2021dccc5a Move subtask forecast to a plugin
Plugin repo: https://github.com/kanboard/plugin-subtask-forecast
2015-09-20 15:53:28 -04:00
Frederic Guillot a0124b45f9 Add sub namespace for plugins 2015-09-20 13:11:41 -04:00
Frederic Guillot fe57edd9e8 Add abstract cache layer 2015-09-20 12:38:35 -04:00
Frederic Guillot 08e09c1cac Fix regression due to previous code change 2015-09-16 22:18:21 -04:00
Frederic Guillot 62fd225cfb Add abstract storage layer 2015-09-16 21:38:38 -04:00
Frederic Guillot 4b6672d0b3 Move budget outside of the core
The budget planning feature is now a plugin
See: https://github.com/kanboard/plugin-budget
2015-09-13 16:56:51 -04:00
Frederic Guillot a6a00a0040 First draft for plugins system 2015-09-13 14:07:56 -04:00
Frederic Guillot 70d3340cd0 Creating another task stay in the popover 2015-09-05 17:06:01 -04:00
Frederic Guillot 57bd53847c Improve sidebar menus 2015-08-19 20:59:05 -04:00
Frederic Guillot fb44818707 Add config parameter to define session duration 2015-08-01 12:35:06 -04:00
Frederic Guillot 33a3196001 Fix minor issues 2015-07-19 18:54:00 -04:00
Frederic Guillot e7ff62f5e3 Add new search attributes: created, modified and updated 2015-07-18 17:22:49 -04:00
Frederic Guillot dfd7972227 Add new search attribute for swimlane 2015-07-18 11:33:51 -04:00
Frederic Guillot 493c7c2c74 Store redirect login url in session instead of using url parameter 2015-07-16 22:22:33 -04:00
Frederic Guillot ede1f1d9b0 Refactoring of Github authentication (oauth url change) 2015-07-16 20:35:56 -04:00
Frederic Guillot 12036aa21f Refactoring of Google Authentication (new callback url) 2015-07-16 07:28:46 -04:00
Frederic Guillot bc98748c0d Start to implement url rewrite (nice urls) 2015-07-12 10:38:42 -04:00
Frederic Guillot 08259d4f20 Add lead and cycle time for projects 2015-07-06 21:34:57 -04:00
Frederic Guillot bb8b4c0e36 Add task analytics 2015-07-05 16:07:21 -04:00
Frederic Guillot 4438e03c62 Set the assignee as organizer for ical events 2015-07-05 12:23:00 -04:00
Frederic Guillot 32ddfb3fba Allow search by task id 2015-07-04 18:01:42 -04:00
Frederic Guillot 198f3eda90 Add search attribute to search by reference 2015-07-04 17:35:52 -04:00
Frederic Guillot 471e46e702 Add project and column attributes for advanced search 2015-07-01 19:32:51 -04:00
Frederic Guillot 3f084916e3 Add category attribute for advanced search 2015-06-28 21:53:50 -04:00
Frederic Guillot 7c1222fc59 Add description attribute for advanced search 2015-06-28 21:04:37 -04:00
Frederic Guillot 2e7e703180 Add status attribute for advanced search 2015-06-28 20:47:39 -04:00
Frederic Guillot e22985df50 Start to implement advanced search query language 2015-06-28 18:52:01 -04:00
Frederic Guillot d7a8160c2b Update Bitbucket webhooks to handle issues/commit/comments 2015-06-21 12:19:06 -04:00
Frederic Guillot ff85518fa8 Fix phpdoc comments 2015-06-19 18:47:01 -04:00
Frederic Guillot f2abf33912 Add Sendgrid as mail transport 2015-06-13 13:17:16 -04:00
Frederic Guillot e22da9d32a Add Mailgun API as mail transport 2015-06-07 22:17:50 -04:00
Frederic Guillot 9d9e3afba2 Improve email sending system and add Postmark as mail transport 2015-06-06 14:10:31 -04:00
Frederic Guillot 03fc8a1bce Avoid creating multiple instances of Translator 2015-05-24 16:30:40 -04:00
Frederic Guillot eeac2329ba Helpers refactoring 2015-05-24 16:02:25 -04:00
Frederic Guillot e94a2f6a00 Display tasks in the calendar + improve settings 2015-05-16 21:04:46 -04:00
Frederic Guillot b028b3586c Return application url if defined for the helper getCurrentBaseUrl() 2015-05-14 11:10:30 -04:00
Frederic Guillot 956f88f527 Add print stylesheet for boards 2015-04-25 15:08:02 -04:00
Frédéric Guillot 81841c73c2 Fix Windows path bugs 2015-04-22 21:08:03 -04:00
Frederic Guillot f190be9e2d Add Sendgrid integration (incoming email handling) 2015-04-19 19:23:42 -04:00
Frederic Guillot 370b5a0fd7 Add Slack and Hipchat integrations for each projects 2015-04-18 18:44:45 -04:00
BlueTeck bca1012e70 #717 add size, user, date to uploaded files 2015-04-09 10:08:27 +02:00
Frederic Guillot 01f9ee3410 Add Gravatar integration 2015-03-30 21:27:49 -04:00
Frederic Guillot b17f4b28ca Improve pull-request #738 2015-03-30 20:52:30 -04:00
Frederic Guillot 147f2015c0 Merge pull-request #738 2015-03-30 20:47:42 -04:00
Frederic Guillot 7cbae61dbd Add Hipchat integration 2015-03-29 13:51:51 -04:00
Frederic Guillot 5536f6c6ce Add Slack integration 2015-03-28 21:37:53 -04:00
Semyon Novikov 2db1af88bb Missing default value for MARKDOWN_ESCAPED constant
Also removed stray trailing whitespace in Helper.php
2015-03-25 10:08:50 +05:00
Semyon Novikov 9a04118fcd Add option for toggling html escapes inside markdown fields 2015-03-25 08:35:07 +05:00
Frederic Guillot d91b5d4aa3 Improve pull-request 2015-03-10 22:37:09 -04:00
Frederic Guillot c870508923 Add user timetables 2015-03-09 21:37:10 -04:00
Frederic Guillot 4ec507724f Fix popover issue with tooltips 2015-02-17 20:03:33 -05:00
Frederic Guillot 0db66953a7 Use chosen for board dropdown filters 2015-02-16 23:02:47 -05:00
Frederic Guillot 321b1914ef Display confirmation box to close task from the board and improve popover listeners 2015-02-15 19:35:28 -05:00
Frederic Guillot 23346d5e76 Move function to the right place (pull-request) and improve board task icons 2015-02-14 18:55:55 -05:00
Frederic Guillot f7e4c3928a Refactoring/simplification of the pull-request about links 2015-02-14 16:11:13 -05:00
Frederic Guillot 364382b1b5 Add task links (Merge pull-request #610) 2015-02-13 17:50:20 -05:00
Frederic Guillot 1de845e6c3 Display subtask icon status and title everywhere 2015-02-09 21:49:53 -05:00
Frederic Guillot d634a53e9c Update moment.js and add timezone in template 2015-02-08 17:37:13 -05:00
Frederic Guillot 92509c43c4 Add user calendar view on the dashboard and in the user management section 2015-02-08 16:13:05 -05:00
Frederic Guillot acf3941b4a Improve js and add native language support for datepicker and calendar 2015-02-08 15:07:47 -05:00
Frederic Guillot b24b1e7e4e Add subtasks restrictions and time tracking 2015-02-04 22:19:32 -05:00
Frederic Guillot 3e2f4f9c2c Simplify CSP header method 2015-02-01 14:38:29 -05:00
Frederic Guillot 0812ceedde Merge fix #545, fix invalid HTML when linking to URLs with numeric fragment identifiers and update Parsedown 2015-01-25 12:23:27 -05:00
Frederic Guillot 4e874fad90 Fix some phpdoc comments 2015-01-18 18:21:33 -05:00
Frederic Guillot 7c1c14cf64 Pagination refactoring 2015-01-18 17:59:41 -05:00
Frederic Guillot 84b0f0df90 Add project calendars (merge/refactoring of #490) 2015-01-17 17:11:51 -05:00
Frederic Guillot 99d27e0ce4 Allow users to override the timezone and the language 2015-01-04 22:34:59 -05:00
Frédéric Guillot 45c95d74fc Various fixes and improvements 2015-01-02 21:11:19 -05:00
Frédéric Guillot 3076ba22dd Fix bugs, improve perfs and use SimpleLogger instead of Monolog 2015-01-02 17:19:13 -05:00
Frédéric Guillot 772804add8 Acl refactoring 2014-12-31 12:37:15 -05:00
Frédéric Guillot 4678b1a673 Improve helpers 2014-12-28 12:03:11 -05:00
Frédéric Guillot 34d7450d3c Template helpers refactoring 2014-12-28 11:28:50 -05:00
Frédéric Guillot 17dc5bdc9e Move events handling to Symfony\EventDispatcher 2014-12-27 19:10:38 -05:00
Frédéric Guillot e72327d4b1 Improve session handler and add Ajax session check 2014-11-29 17:18:23 -05:00
Frédéric Guillot e8fa25f9ca Replace Core\Cli by Symfony\Console 2014-11-29 12:28:35 -05:00
Frédéric Guillot 3ba8e06632 Fix some Scrutinizer issues 2014-11-26 21:16:19 -05:00
Frédéric Guillot 9ae83c639e Create TaskPosition model 2014-11-23 14:42:49 -05:00
Frédéric Guillot 46f19336c0 Move some class instancaiations outside the router 2014-11-14 23:04:20 -05:00
Frédéric Guillot b081288188 Use Pimple instead of Core\Registry and add Monolog for logging 2014-11-14 22:44:25 -05:00
Frédéric Guillot 7eadf7cfd8 Start templates cleanup and reorganisation 2014-11-09 20:04:27 -05:00
Frédéric Guillot 135b921db7 Switch to composer 2014-11-04 21:33:05 -05:00
Frédéric Guillot 90e0616299 Rename Locales and Templates folders to be more consistent 2014-10-24 22:51:30 -04:00
Frédéric Guillot 074056352d Project activity refactoring and listeners improvements 2014-10-12 21:38:56 -04:00
Frédéric Guillot 0c8de6a3f5 Request::getValues() doesn't parse json request anymore 2014-09-28 09:33:53 -04:00
Frédéric Guillot 9003f830ef Move methods getIpAddress() and getUserAgent() to the Request class 2014-09-28 09:19:19 -04:00
Frédéric Guillot a5337cfe5c Move task edit form to the task layout 2014-09-23 20:16:07 +02:00
Frédéric Guillot ab1a4760ed Basic prototype to handle Github webhooks 2014-09-22 14:31:12 +02:00
Frédéric Guillot 95e54d1d30 Exclude current user in email notifications, pull-request #273) 2014-09-19 22:08:04 +02:00
Lim Yuen Hoe ed13a04c4c redirect to original target page after logging in 2014-09-19 01:48:45 +08:00
Frédéric Guillot b1ffbbd501 Improve template loader 2014-09-16 13:35:39 +02:00