9
9
use Kanboard \Plugin \MetaMagik \Model \NewTaskFinderModel ;
10
10
use Kanboard \Plugin \MetaMagik \Model \NewTaskModificationModel ;
11
11
use Kanboard \Plugin \MetaMagik \Model \NewTaskCreationModel ;
12
- use Kanboard \Plugin \MetaMagik \Model \NewTaskDuplicationModel ;
13
- use Kanboard \Plugin \MetaMagik \Model \NewTaskProjectDuplicationModel ;
14
12
use Kanboard \Plugin \MetaMagik \Analytics \CustomFieldAnalytics ;
15
13
use Kanboard \Plugin \MetaMagik \Validator \NewTaskValidator ;
16
14
use Kanboard \Plugin \MetaMagik \Filter \MetaFieldFilter ;
19
17
use Kanboard \Plugin \MetaMagik \Api \Procedure \NewCreateTaskProcedure ;
20
18
use Kanboard \Plugin \MetaMagik \Action \SetCustomField ;
21
19
22
-
23
20
class Plugin extends Base
24
21
{
25
22
public function initialize ()
@@ -41,16 +38,20 @@ public function initialize()
41
38
$ this ->container ['taskCreationModel ' ] = $ this ->container ->factory (function ($ c ) {
42
39
return new NewTaskCreationModel ($ c );
43
40
});
44
- $ this ->container ['taskDuplicationModel ' ] = $ this ->container ->factory (function ($ c ) {
45
- return new NewTaskDuplicationModel ($ c );
46
- });
47
- $ this ->container ['taskProjectDuplicationModel ' ] = $ this ->container ->factory (function ($ c ) {
48
- return new NewTaskProjectDuplicationModel ($ c );
49
- });
50
41
$ this ->container ['taskValidator ' ] = $ this ->container ->factory (function ($ c ) {
51
42
return new NewTaskValidator ($ c );
52
43
});
53
44
45
+ $ this ->hook ->on ('model:task:duplication:aftersave ' , function ($ hook_values ) {
46
+ $ meta = $ this ->taskMetadataModel ->getAll ($ hook_values ['source_task_id ' ]);
47
+ foreach ($ meta as $ key => $ value ) { $ this ->taskMetadataModel ->save ($ hook_values ['destination_task_id ' ], [$ key => $ value ]); }
48
+ });
49
+
50
+ $ this ->hook ->on ('model:task:project_duplication:aftersave ' , function ($ hook_values ) {
51
+ $ meta = $ this ->taskMetadataModel ->getAll ($ hook_values ['source_task_id ' ]);
52
+ foreach ($ meta as $ key => $ value ) { $ this ->taskMetadataModel ->save ($ hook_values ['destination_task_id ' ], [$ key => $ value ]); }
53
+ });
54
+
54
55
//Project
55
56
$ this ->template ->hook ->attach ('template:project:sidebar ' , 'metaMagik:project/sidebar ' );
56
57
@@ -63,9 +64,7 @@ public function initialize()
63
64
$ this ->template ->hook ->attach ('template:task:form:third-column ' , 'metaMagik:task/rendermeta3 ' );
64
65
$ this ->template ->hook ->attach ('template:task:details:bottom ' , 'metaMagik:task/metasummary ' );
65
66
$ this ->template ->hook ->attach ('template:analytic:sidebar ' , 'metaMagik:analytic/layout_hook ' );
66
-
67
-
68
-
67
+
69
68
$ this ->template ->setTemplateOverride ('export/tasks ' , 'metaMagik:export/tasks ' );
70
69
71
70
//Routes
@@ -101,7 +100,6 @@ public function initialize()
101
100
102
101
//API
103
102
$ this ->api ->getProcedureHandler ()->withClassAndMethod ('createTaskMeta ' , new NewCreateTaskProcedure ($ this ->container ), 'createTaskMeta ' );
104
-
105
103
}
106
104
107
105
public function onStartup ()
@@ -142,7 +140,7 @@ public function getPluginAuthor()
142
140
143
141
public function getPluginVersion ()
144
142
{
145
- return '1.5.5 ' ;
143
+ return '1.5.6 ' ;
146
144
}
147
145
148
146
public function getPluginHomepage ()
0 commit comments