Commit Graph

623 Commits

Author SHA1 Message Date
Frederic Guillot 096b000c59
Add restriction to disable task drag and drop for a project 2016-10-07 08:45:18 -04:00
Frederic Guillot a65941eadb
Add new automatic action to close task based on date moved 2016-09-19 21:28:11 -04:00
Frederic Guillot 91c1109b05
Change column move restriction behavior 2016-09-19 20:45:36 -04:00
Frederic Guillot 3043163747
Add column restrictions to custom project roles 2016-09-18 21:19:48 -04:00
Frederic Guillot c84df535b6
Improve column restrictions 2016-09-11 18:32:47 -04:00
Frederic Guillot d8f6d85683
Add project restrictions for custom roles 2016-09-11 16:08:03 -04:00
Frederic Guillot a0227cad69
Define only what is allowed for column restrictions 2016-09-10 23:12:38 -04:00
Frederic Guillot 44f680cf2f
Add ui to create new custom project roles and column restrictions 2016-09-10 22:37:57 -04:00
Frederic Guillot 75470c7242
Apply column restrictions to the board 2016-09-08 22:33:16 -04:00
Frederic Guillot fedf4ea2de
Custom project roles inherit from project members 2016-09-08 20:44:03 -04:00
Frederic Guillot dded773749
Add new models ColumnMoveRestrictionModel and ProjectRoleModel 2016-09-07 22:40:38 -04:00
Frederic Guillot ffd58d06fa
Support version operators for plugin directory: >= and > 2016-09-03 18:02:00 -04:00
Frederic Guillot a7f720ecbb
Improve TaskExport class 2016-09-03 17:38:35 -04:00
Frederic Guillot 1b6b1cc5e6
Time spent for subtasks are not rounded too the nearest quarter anymore 2016-08-31 21:32:29 -04:00
Frederic Guillot 3861e90336
Fix wrong project date format (shown as 01/01/1970) 2016-08-31 21:04:22 -04:00
Frederic Guillot 08bdb708e7
Add the possibility to move tasks without drag and drop 2016-08-28 22:30:48 -04:00
Frederic Guillot fb24b527f2
Merge pull-request #2587 2016-08-23 20:24:43 -04:00
Frederic Guillot 51fef80f7d
Store board collapsed mode user preference in the database 2016-08-22 21:20:48 -04:00
dalmond 37425d45a6 Unit Test Issues Resolved 2016-08-22 18:45:10 +01:00
Frederic Guillot 1d16a53c48
Store comment sorting direction in user metadata 2016-08-21 20:36:16 -04:00
Frederic Guillot 8e83e404fb
Add FileCache driver 2016-08-21 18:46:34 -04:00
dalmond 25bdb03927 Corrected Unit Test 2016-08-17 15:58:35 +01:00
dalmond e8ec7861af New Automatic Actions: Colour by Swimlane and Priority by Swimlane 2016-08-17 12:52:24 +01:00
Frederic Guillot 5f82a942c0
Fix PHP notice when sending overdue notifications 2016-08-15 20:46:26 -04:00
Frederic Guillot d8b60ca0fa
Update test case, ChangeLog and contributors 2016-08-14 14:50:04 -04:00
Frederic Guillot 4520026e91
Replace SQL query by a PicoDB query 2016-08-13 19:19:55 -04:00
Frederic Guillot 010199e8f8
Add the possibility to attach template hooks with a callback 2016-08-13 18:41:01 -04:00
Frederic Guillot 2ebe8b3272
Add the possibility to attach template hooks with local variables 2016-08-13 18:08:46 -04:00
Frederic Guillot 4ffaba2ba0
Add reference hooks 2016-08-13 14:23:53 -04:00
Frederic Guillot 92a5a0f860
Cleanup events and stuff before processing job in worker 2016-07-31 11:28:33 -04:00
Frederic Guillot f3e16da4ac
Allow users to see inactive projects 2016-07-28 16:56:37 -04:00
Christopher Geelen 2363da274c ADD: TaskMovedDateFilter 2016-07-27 15:06:01 +02:00
Frederic Guillot be22f0619e
Remove method UserModel::getFullname() 2016-07-24 13:29:24 -04:00
Frederic Guillot 51b2193fc4
Move dashboard pagination into separate classes 2016-07-24 12:09:41 -04:00
Frederic Guillot df57b0f2c8
Simplify mail subject for notifications 2016-07-23 23:06:51 -04:00
Frederic Guillot 5884c65a02
Remove SubtaskTimeTrackingSubscriber 2016-07-23 22:50:20 -04:00
Frederic Guillot 24555080fd
Create new class SubtaskStatusModel 2016-07-23 21:48:59 -04:00
Frederic Guillot f216e345ba
Create new class SubtaskTaskConversionModel 2016-07-23 21:22:24 -04:00
Frederic Guillot 2a7ca0405c
Create new class SubtaskPositionModel 2016-07-23 21:14:33 -04:00
Frederic Guillot 220bc9cdcc
Add unit test RecurringTaskSubscriber 2016-07-23 20:58:16 -04:00
Frederic Guillot adb5023cfc
Add unit test for ProjectMetricJob 2016-07-23 20:30:06 -04:00
Frederic Guillot ca45b5592b
Add new automatic action to move the task to another column when not moved 2016-07-23 18:59:00 -04:00
Frederic Guillot 9b2a32af78
Add new automatic action to move a task to another column when closed 2016-07-23 18:33:31 -04:00
Frederic Guillot 2a42e0e1aa
Added a new automatic action to set due date 2016-07-23 18:10:05 -04:00
Frederic Guillot a823cc1d08
NotificationModel refactoring 2016-07-23 14:50:59 -04:00
Frederic Guillot b6119e7dee
Added internal task links to activity stream 2016-07-23 14:05:15 -04:00
Frederic Guillot 3dd20c9c78
Rename CommentModel::EVENT_REMOVE to CommentModel::EVENT_DELETE 2016-07-20 21:47:23 -04:00
Frederic Guillot 7b100cc57b
Move logic of PR #2496 to GroupModel 2016-07-20 21:40:27 -04:00
Frederic Guillot 390082aa41
Refactoring of internal task events 2016-07-19 22:38:30 -04:00
Frederic Guillot d9d3788222
Subtasks events refactoring and show delete in activity stream 2016-07-17 20:33:27 -04:00
Frederic Guillot cbe52e5720
File events refactoring 2016-07-17 18:47:06 -04:00
Frederic Guillot ec0ecc5b03
Added event for removed comments with some refactoring 2016-07-17 17:15:14 -04:00
Frederic Guillot 3aa0f85748
Fixed search query with multiple assignees (nested OR conditions) 2016-07-16 19:15:26 -04:00
Frederic Guillot 4364559805
Handle HTTP header X-Real-IP to get IP address 2016-07-16 14:11:14 -04:00
Frederic Guillot 6e35d8f22a
Display project name for task auto-complete fields 2016-07-14 13:46:06 -04:00
Frederic Guillot 9496dfdb6d
Make search attributes not case sensitive 2016-07-14 11:39:59 -04:00
Frederic Guillot 48ee733f9e
Added search filter for task priority 2016-07-14 11:29:15 -04:00
Frederic Guillot 34d0995d55
Cherry-pick from PR #2435 (Show TOTP Issuer) 2016-07-10 14:18:10 -04:00
Frederic Guillot 8a85550f92
Added unit test for PR #2388 2016-07-10 13:39:48 -04:00
Frederic Guillot 397988dd8d
Fix a couple of bugs in PR #2424 2016-07-09 14:51:39 -04:00
Frederic Guillot f87d3334e5
Take default swimlane into consideration for SwimlaneModel::getFirstActiveSwimlane() 2016-07-03 10:59:09 -04:00
Frederic Guillot d975a3ac45
Added more unit tests for task priority duplication 2016-07-03 10:45:34 -04:00
Frederic Guillot a8a8bfb0af
Added more unit tests for LDAP user class 2016-07-02 18:23:47 -04:00
Frederic Guillot 43337d58c0
Preserve role for existing users when using ReverseProxy authentication 2016-07-02 17:44:45 -04:00
Frederic Guillot 10d577ad9d
Handle priority for task and project duplication 2016-07-02 16:36:10 -04:00
Frederic Guillot 8e56148a6d
Make sure that tags are duplicated for recurring tasks 2016-07-02 15:45:55 -04:00
Frederic Guillot b7ac354e83
Move Task::duplicate() to class ProjectTaskDuplicationModel 2016-07-02 15:29:48 -04:00
Frederic Guillot 6d5577fa0b
Handle project tags duplication 2016-07-02 15:20:59 -04:00
Frederic Guillot 3fcc0cb918
Handle tags and tasks move/duplication to another project 2016-07-02 14:44:26 -04:00
Frederic Guillot 853189a43f
Do not create empty tags and remove tags only when necessary 2016-07-02 11:50:32 -04:00
Frederic Guillot abdfa46cfc
Fixed empty title for web notification with only one overdue task 2016-07-01 12:33:18 -04:00
Frederic Guillot a089cd72de
Fixed lexer issue with non word characters 2016-07-01 09:47:10 -04:00
Frederic Guillot 4b94714b3d
Fixed PHP error in UserHelper when having no user session 2016-07-01 09:05:10 -04:00
Frederic Guillot 1aab142127
Fixed identical background color for LetterAvatar on 32bits platforms 2016-06-29 21:45:28 -04:00
Frederic Guillot 29ed5cbad1
Fix field type issue with Postgres 2016-06-28 21:06:55 -04:00
Frederic Guillot b48c0cecbb
Added new arguments to project API calls and update composer.json 2016-06-26 11:57:28 -04:00
Frederic Guillot 4a230d331e
Added application and project roles validation for API procedure calls 2016-06-26 10:25:13 -04:00
Frederic Guillot 49d312d5a4
Added unit test when updating tags for a task 2016-06-24 18:35:33 -04:00
Frederic Guillot b6e92cb64a
Remove dropdown menus that are now available with task edit form 2016-06-24 18:09:01 -04:00
Frederic Guillot 18cb7ad0a4
Expose tags to the user interface (first prototype) 2016-06-24 15:43:34 -04:00
Frederic Guillot b2e92480c2
Added filter class for tags 2016-06-24 11:40:58 -04:00
Frederic Guillot 700b4e8f02
Associate tags to tasks in BoardFormatter 2016-06-24 10:05:45 -04:00
Frederic Guillot 9e278a9370
Use BoardFormatter to generate the board 2016-06-24 08:50:57 -04:00
Frederic Guillot d560f84b37
Added models for tags 2016-06-23 20:26:19 -04:00
Frederic Guillot 656f430632 Changed DateParser to use only user format and ISO-8601 2016-06-05 21:28:56 -04:00
Frederic Guillot cd4c09c10a Conifgure email settings through user interface 2016-06-05 14:53:46 -04:00
Frederic Guillot a27057dd6f Expose to the user interface the email sender address 2016-06-02 20:58:34 -04:00
Frederic Guillot c50255813b Added mail helper 2016-06-01 21:28:24 -04:00
Sébastien Kergreis 6af3b6dfdb Fix filters with UTF-8 characters 2016-06-01 13:48:22 -05:00
Frederic Guillot 4987e245bb Do not sync user role if LDAP groups are not configured 2016-05-30 21:47:31 -04:00
Frederic Guillot 679a22c718 Added some unit tests for avatar letter with UTF-8 2016-05-30 21:01:41 -04:00
Frederic Guillot 14713b0ec7 Rename all models 2016-05-28 19:48:22 -04:00
Frederic Guillot d6c1c1ea33 Improve notification classes and move interface to core 2016-05-28 17:36:55 -04:00
Frederic Guillot 8d12e2fe73 Split board controller into multiple classes 2016-05-28 14:05:57 -04:00
Frederic Guillot 1353929a7d Rename controllers 2016-05-28 13:41:54 -04:00
Frederic Guillot 82b5b491be Rename task view controller 2016-05-26 22:23:12 -04:00
Frederic Guillot d9101da79e Mark notification as read when clicking on it 2016-05-26 20:50:50 -04:00
Frederic Guillot f2cce5ade8 Rename ProjectEdit controller 2016-05-25 22:46:21 -04:00
Frederic Guillot 74a84a28e3 Support strtotime strings for date search 2016-05-25 21:00:01 -04:00
Frederic Guillot a2e5d022e5 Clean up unit tests 2016-05-24 22:41:21 -04:00
Frederic Guillot 47ec4d89bc Do not send notifications to disabled users 2016-05-24 22:14:29 -04:00
Frederic Guillot 8ba05940e9 Filter non compatible plugins 2016-05-24 21:39:36 -04:00
Frederic Guillot cbee789549 Added QueueProvider to base class for unit tests 2016-05-23 20:53:30 -04:00
Frederic Guillot 996997a12d Added the possibility to convert a subtask to a task 2016-05-17 22:08:57 -04:00
Frederic Guillot d8472d17bd Update test case 2016-05-16 21:11:43 -04:00
Frederic Guillot 9ec654186a User creation forms are now displayed with inline popup 2016-05-15 21:50:46 -04:00
Frederic Guillot 4eaab1f6da Added unit tests for middleware 2016-05-15 20:56:01 -04:00
Frederic Guillot 8a6f02735b Added task creation menu for all projects views 2016-05-15 20:09:43 -04:00
Frederic Guillot 67b8361649 Refactoring: added controlled middleware and changed response class 2016-05-15 18:31:47 -04:00
Frederic Guillot 3387ea3dbe Added unit test for ProjectMetadata::duplicate() 2016-05-11 18:35:35 -04:00
Busfreak 58ccf9f692 Duplicate project metadata when duplicating project (#2074) 2016-05-11 18:26:44 -04:00
Frederic Guillot 8ddd566361 Improve plugin loading 2016-05-07 19:35:06 -04:00
Frederic Guillot 55ee906ba3 Added support for language LDAP attribute 2016-05-07 18:05:33 -04:00
Frederic Guillot aac11a609c Remove logger from unit tests 2016-05-07 14:46:34 -04:00
Frederic Guillot 300dabe6b4 Added support for LDAP user photo profile 2016-05-07 12:59:35 -04:00
Frederic Guillot 94989663ec User roles are now synced with LDAP at each login 2016-05-07 10:36:46 -04:00
Frederic Guillot cfb96c8749 Allow a project owner to manage his own public project 2016-05-05 22:13:11 -04:00
Frederic Guillot d5c95e8240 Added automated action to change task color based on the priority 2016-05-04 22:52:08 -04:00
Frederic Guillot 6bdc25490f Unify task drop-down menu between different views 2016-05-04 21:51:38 -04:00
Frederic Guillot 60c8867fee Improve LDAP user group membership synchronization 2016-05-03 22:51:48 -04:00
Frederic Guillot 38e9f9928e Added auto-loading in tests for plugins 2016-05-02 20:34:51 -04:00
Frederic Guillot 3872dee261 Added support for LDAP Posix Groups (OpenLDAP with memberUid) 2016-04-30 20:38:16 -04:00
Frederic Guillot c3d06f7794 Change Kanboard's website URL to use HTTPS everywhere 2016-04-30 12:10:27 -04:00
Frederic Guillot 9fa8f63d25 Fixed improper Markdown escaping for some tooltips 2016-04-29 18:43:57 -04:00
Frederic Guillot a34f83fb30 Fix bug: closing all tasks by column, also update closed tasks 2016-04-29 17:44:06 -04:00
Frederic Guillot fc8f8748b9 Fixed wrong task link generation within Markdown text 2016-04-29 17:32:43 -04:00
Frederic Guillot 2cd06f8795 Use PLUGINS_DIR constant to load plugin templates 2016-04-24 14:46:18 -04:00
Frederic Guillot 60e0753b90 Added API procedure "getMemberGroups" 2016-04-21 21:10:04 -04:00
Frederic Guillot 9f0166502b Added search in activity stream 2016-04-10 15:18:20 -04:00
Frederic Guillot 2eadfb2291 Refactor ProjectActivity model to use Filter and Formatter interface 2016-04-10 12:13:42 -04:00
Frederic Guillot 38326c4ddf Added search by task creator 2016-04-10 08:15:10 -04:00
Frederic Guillot 7705f4c533 Added search in comments 2016-04-09 23:24:26 -04:00
Frederic Guillot 11858be4e8 Filter refactoring 2016-04-09 22:42:17 -04:00
Frederic Guillot d8027c58d5 Fix broken unit test in PR #2066 2016-03-29 21:58:17 -04:00
Frederic Guillot a20f4f2904 Improve UserHelper::getInitials() 2016-03-27 17:20:21 -04:00
Frederic Guillot f11fccd0d7 Fix bad unique constraints in Mysql table user_has_notifications 2016-03-27 15:32:29 -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 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 2425fd85c0 Force integer type for aggregated metrics 2016-03-22 20:58:46 -04:00
Frederic Guillot 8768a4e369 Fixes cycle time calculation when the start date is defined in the future 2016-03-22 20:44:15 -04:00
Frederic Guillot 9d4ba1471d Added letter based avatar provider 2016-03-19 11:17:58 -04:00
Frederic Guillot 24c224ddc2 Added support for multiple placeholders for LDAP_USER_FILTER 2016-03-17 22:24:11 -04:00
Frederic Guillot e3e08d0e34 Added local file link provider 2016-03-17 21:52:40 -04: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 abe9371f32 Improve test case to avoid false positive with the CI 2016-03-04 16:06:34 -05:00
Frederic Guillot 2c2ac8c467 Add unit test for Color model 2016-03-04 15:50:35 -05:00
Frederic Guillot a2d8887421 Added unit test for Category model 2016-03-04 15:11:27 -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 5fe68d4d49 Add drag and drop to change swimlane positions 2016-02-20 18:11:08 -05:00
Frederic Guillot da7259819b Rewrite assertion to avoid false positive on the CI 2016-02-20 15:42:15 -05:00
Frederic Guillot fc468088c3 Split Board model into multiple classes 2016-02-20 15:08:18 -05:00
Frederic Guillot c8c1242c26 Add drag and drop to change column positions 2016-02-20 11:24:43 -05:00
Frederic Guillot de4519fa2c Add subtasks drag and drop 2016-02-19 22:59:47 -05:00
Frederic Guillot 9249498503 Add file preview for Markdown and text files 2016-02-16 22:06:53 -05:00
Frederic Guillot 8936792f6f Add file attachements to projects 2016-02-16 21:12:43 -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 b34e151d6a Use mock object instead of FakeHttpClient class 2016-02-07 12:32:47 -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 ffb8494fec Category label is broken on the board if there's a url in the description 2016-02-05 21:24:22 -05:00
Frederic Guillot 0f2b46dd6a Do not refresh the whole page when changing subtask status (work in progress) 2016-02-04 21:38:53 -05:00
Frederic Guillot 0bc51620c7 Add unit tests for last automatic actions 2016-01-31 19:51:59 -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 4a52d327f7 Fix typo in Mysql migration 2016-01-30 20:54:07 -05:00
Frederic Guillot 5c92f46786 Add external links for tasks with plugin api 2016-01-30 20:38:20 -05:00
Frederic Guillot ec66a779c9 Move statement to avoid failing build on travis 2016-01-30 07:50:52 -05:00
Frederic Guillot e31dbe18ce Load ActionProvider in unit tests 2016-01-30 07:47:16 -05:00
Frederic Guillot 9b9d823f30 Move Gitlab and Github authentication to external plugins 2016-01-29 23:59:58 -05:00
Frederic Guillot 04d8c6532c Fix email client mock 2016-01-29 22:21:44 -05:00
Frederic Guillot dae0c7391a Move Google authentication to an external plugin 2016-01-29 20:15:53 -05:00
Frederic Guillot 051bf1c9db Add configurable task priority 2016-01-24 20:38:39 -05:00
Frederic Guillot 60f3d7f83d Fix broken test 2016-01-24 18:37:17 -05:00
Frederic Guillot 4fa38bf417 Add project owner 2016-01-24 16:29:14 -05:00
Frederic Guillot 209dae72fa Handle notifications for group members attached to a project 2016-01-19 21:39:11 -05:00
Frederic Guillot e73334a7e0 Add unit test for LastLogin class 2016-01-18 21:46:56 -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 bcbb329786 Make sure that no events are fired if nothing have been modified in the task 2016-01-17 17:43:11 -05:00
Frederic Guillot 1259e911e4 Make sure that project daily column stats works when score is null 2016-01-17 13:46:33 -05:00
Frederic Guillot d45fa6a33b Add dropdown menu on each board column title to close all tasks 2016-01-17 11:03:33 -05:00
Frederic Guillot 3c57626918 Replace raw SQL query by PicoDb 2016-01-17 08:12:44 -05:00
Frederic Guillot 6a0895ef76 Remove class TaskMovedDateSubscriber 2016-01-16 19:59:44 -05:00
Frederic Guillot c603cb5949 Simplify class ProjectDailyStats 2016-01-16 19:46:23 -05:00
Frederic Guillot 2e4c2b6e05 Improve class ProjectDailyColumnStats 2016-01-16 19:19:05 -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 1bbd4faf56 Fix broken unit test 2016-01-14 21:59:19 -05:00
Frederic Guillot 9e24bb2ef0 Do not cache app settings in session 2016-01-14 21:42:28 -05:00
Frederic Guillot a8f404421f Fix bug: unable to set currency rate with Postgres 2016-01-14 20:40:31 -05:00
Frederic Guillot 805be7d331 Move validator methods 2016-01-14 20:18:13 -05:00
Frederic Guillot 3699073371 Move project validator methods 2016-01-11 22:07:39 -05:00
Frederic Guillot b50f53ab3a Move task link validator methods 2016-01-11 21:27:49 -05:00
Frederic Guillot f7e8bb8fa8 Move user validator methods 2016-01-11 21:08:37 -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