diff --git a/taiga/projects/fixtures/initial_project_templates.json b/taiga/projects/fixtures/initial_project_templates.json index 1a306ff7..e2c5caad 100644 --- a/taiga/projects/fixtures/initial_project_templates.json +++ b/taiga/projects/fixtures/initial_project_templates.json @@ -4,7 +4,8 @@ "pk": 1, "fields": { "modified_date": "2014-04-22T14:48:43.596Z", - "roles": "[{\"order\": 10, \"slug\": \"ux\", \"name\": \"UX\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": true}, {\"order\": 20, \"slug\": \"design\", \"name\": \"Design\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": true}, {\"order\": 30, \"slug\": \"front\", \"name\": \"Front\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": true}, {\"order\": 40, \"slug\": \"back\", \"name\": \"Back\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": true}, {\"order\": 50, \"slug\": \"product-ouner\", \"name\": \"Product Owner\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": false}, {\"order\": 60, \"slug\": \"stakeholder\", \"name\": \"Stakeholder\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"view_issuestatus\", \"view_issuetype\", \"view_membership\", \"view_points\", \"view_priority\", \"view_project\", \"view_severity\", \"view_taskstatus\", \"view_userstorystatus\", \"view_task\", \"view_role\", \"change_user\", \"view_user\", \"view_rolepoints\", \"view_userstory\", \"change_wikipage\", \"view_wikipage\"], \"computable\": false}]", + "roles": "[{\"order\": 10, \"slug\": \"ux\", \"name\": \"UX\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": true}, {\"order\": 20, \"slug\": \"design\", \"name\": \"Design\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": true}, {\"order\": 30, \"slug\": \"front\", \"name\": \"Front\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": true}, {\"order\": 40, \"slug\": \"back\", \"name\": \"Back\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": true}, {\"order\": 50, \"slug\": \"product-owner\", \"name\": \"Product Owner\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"computable\": false}, {\"order\": 60, \"slug\": \"stakeholder\", \"name\": \"Stakeholder\", \"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"view_issuestatus\", \"view_issuetype\", \"view_membership\", \"view_points\", \"view_priority\", \"view_project\", \"view_severity\", \"view_taskstatus\", \"view_userstorystatus\", \"view_task\", \"view_role\", \"change_user\", \"view_user\", \"view_rolepoints\", \"view_userstory\", \"change_wikipage\", \"view_wikipage\"], \"computable\": false}]", + "default_owner_role": "product-owner", "is_kanban_activated": false, "is_wiki_activated": true, "points": "[{\"order\": 1, \"name\": \"?\", \"value\": null}, {\"order\": 2, \"name\": \"0\", \"value\": 0.0}, {\"order\": 3, \"name\": \"1/2\", \"value\": 0.5}, {\"order\": 4, \"name\": \"1\", \"value\": 1.0}, {\"order\": 5, \"name\": \"2\", \"value\": 2.0}, {\"order\": 6, \"name\": \"3\", \"value\": 3.0}, {\"order\": 7, \"name\": \"5\", \"value\": 5.0}, {\"order\": 8, \"name\": \"8\", \"value\": 8.0}, {\"order\": 9, \"name\": \"10\", \"value\": 10.0}, {\"order\": 10, \"name\": \"15\", \"value\": 15.0}, {\"order\": 11, \"name\": \"20\", \"value\": 20.0}, {\"order\": 12, \"name\": \"40\", \"value\": 40.0}]", @@ -31,7 +32,8 @@ "pk": 2, "fields": { "modified_date": "2014-04-22T14:50:19.738Z", - "roles": "[{\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"ux\", \"computable\": true, \"order\": 10, \"name\": \"UX\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"design\", \"computable\": true, \"order\": 20, \"name\": \"Design\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"front\", \"computable\": true, \"order\": 30, \"name\": \"Front\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"back\", \"computable\": true, \"order\": 40, \"name\": \"Back\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"product-ouner\", \"computable\": false, \"order\": 50, \"name\": \"Product Owner\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"view_issuestatus\", \"view_issuetype\", \"view_membership\", \"view_points\", \"view_priority\", \"view_project\", \"view_severity\", \"view_taskstatus\", \"view_userstorystatus\", \"view_task\", \"view_role\", \"change_user\", \"view_user\", \"view_rolepoints\", \"view_userstory\", \"change_wikipage\", \"view_wikipage\"], \"slug\": \"stakeholder\", \"computable\": false, \"order\": 60, \"name\": \"Stakeholder\"}]", + "roles": "[{\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"ux\", \"computable\": true, \"order\": 10, \"name\": \"UX\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"design\", \"computable\": true, \"order\": 20, \"name\": \"Design\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"front\", \"computable\": true, \"order\": 30, \"name\": \"Front\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"back\", \"computable\": true, \"order\": 40, \"name\": \"Back\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"add_milestone\", \"change_milestone\", \"delete_milestone\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"add_issuestatus\", \"change_issuestatus\", \"delete_issuestatus\", \"view_issuestatus\", \"add_issuetype\", \"change_issuetype\", \"delete_issuetype\", \"view_issuetype\", \"add_membership\", \"change_membership\", \"delete_membership\", \"view_membership\", \"add_points\", \"change_points\", \"delete_points\", \"view_points\", \"add_priority\", \"change_priority\", \"delete_priority\", \"view_priority\", \"add_project\", \"change_project\", \"delete_project\", \"view_project\", \"add_severity\", \"change_severity\", \"delete_severity\", \"view_severity\", \"add_taskstatus\", \"change_taskstatus\", \"delete_taskstatus\", \"view_taskstatus\", \"add_userstorystatus\", \"change_userstorystatus\", \"delete_userstorystatus\", \"view_userstorystatus\", \"add_task\", \"change_task\", \"delete_task\", \"view_task\", \"add_role\", \"change_role\", \"delete_role\", \"view_role\", \"change_user\", \"view_user\", \"add_rolepoints\", \"change_rolepoints\", \"delete_rolepoints\", \"view_rolepoints\", \"add_userstory\", \"change_userstory\", \"delete_userstory\", \"view_userstory\", \"add_wikipage\", \"change_wikipage\", \"delete_wikipage\", \"view_wikipage\"], \"slug\": \"product-owner\", \"computable\": false, \"order\": 50, \"name\": \"Product Owner\"}, {\"permissions\": [\"add_issue\", \"change_issue\", \"delete_issue\", \"view_issue\", \"view_milestone\", \"add_attachment\", \"change_attachment\", \"delete_attachment\", \"view_attachment\", \"view_issuestatus\", \"view_issuetype\", \"view_membership\", \"view_points\", \"view_priority\", \"view_project\", \"view_severity\", \"view_taskstatus\", \"view_userstorystatus\", \"view_task\", \"view_role\", \"change_user\", \"view_user\", \"view_rolepoints\", \"view_userstory\", \"change_wikipage\", \"view_wikipage\"], \"slug\": \"stakeholder\", \"computable\": false, \"order\": 60, \"name\": \"Stakeholder\"}]", + "default_owner_role": "product-owner", "is_kanban_activated": true, "is_wiki_activated": false, "points": "[{\"order\": 1, \"name\": \"?\", \"value\": null}, {\"order\": 2, \"name\": \"0\", \"value\": 0.0}, {\"order\": 3, \"name\": \"1/2\", \"value\": 0.5}, {\"order\": 4, \"name\": \"1\", \"value\": 1.0}, {\"order\": 5, \"name\": \"2\", \"value\": 2.0}, {\"order\": 6, \"name\": \"3\", \"value\": 3.0}, {\"order\": 7, \"name\": \"5\", \"value\": 5.0}, {\"order\": 8, \"name\": \"8\", \"value\": 8.0}, {\"order\": 9, \"name\": \"10\", \"value\": 10.0}, {\"order\": 10, \"name\": \"15\", \"value\": 15.0}, {\"order\": 11, \"name\": \"20\", \"value\": 20.0}, {\"order\": 12, \"name\": \"40\", \"value\": 40.0}]", diff --git a/taiga/projects/models.py b/taiga/projects/models.py index 4a28d5ba..4b468ef9 100644 --- a/taiga/projects/models.py +++ b/taiga/projects/models.py @@ -539,6 +539,9 @@ class ProjectTemplate(models.Model): verbose_name=_("modified date")) domain = models.ForeignKey("domains.Domain", related_name="templates", null=True, blank=True, default=None, verbose_name=_("domain")) + default_owner_role = models.CharField(max_length=50, null=False, + blank=False, + verbose_name=_("default owner's role")) is_backlog_activated = models.BooleanField(default=True, null=False, blank=True, verbose_name=_("active backlog panel")) @@ -668,6 +671,9 @@ class ProjectTemplate(models.Model): "computable": role.computable }) + owner_membership = project.memberships.get(user=project.owner) + self.default_owner_role = owner_membership.role.slug + def apply_to_project(self, project): if project.id is None: raise Exception("Project need an id (must be a saved project)") @@ -760,6 +766,13 @@ class ProjectTemplate(models.Model): project.default_priority = Priority.objects.get(name=self.default_options["priority"], project=project) project.default_severity = Severity.objects.get(name=self.default_options["severity"], project=project) + Membership.objects.create( + user=project.owner, + project=project, + role=project.roles.get(slug=self.default_owner_role), + email=project.owner.email + ) + return project # Reversion registration (usufull for base.notification and for meke a historical) diff --git a/taiga/projects/tests/tests_model.py b/taiga/projects/tests/tests_model.py index 6424d624..fbdca6d9 100644 --- a/taiga/projects/tests/tests_model.py +++ b/taiga/projects/tests/tests_model.py @@ -23,7 +23,7 @@ from django.db.models import get_model from django.conf import settings from taiga.users.tests import create_user -from taiga.projects.models import Project, Membership, ProjectTemplate +from taiga.projects.models import Project, Membership, ProjectTemplate, Role from taiga.domains.models import Domain from . import create_project @@ -44,14 +44,15 @@ class ProjectTemplateModelTestCase(test.TestCase): def test_apply_to_saved_project(self): # Post-save apply the default template - project = Project.objects.create(name="Test", slug="test", owner_id=1) + project = Project.objects.create(name="Test", slug="test", owner=self.user) self.assertEqual(project.creation_template.slug, settings.DEFAULT_PROJECT_TEMPLATE) + self.assertEqual(project.memberships.filter(user=self.user).count(), 1) def test_load_data_from_project_with_invalid_object(self): self.assertRaises(Exception, self.template.load_data_from_project, (None,)) def test_load_data_from_project_not_defaults(self): - project = Project.objects.create(name="Test", slug="test", owner_id=1) + project = Project.objects.create(name="Test", slug="test", owner=self.user) project.default_points = None project.default_us_status = None project.default_task_status = None @@ -59,6 +60,9 @@ class ProjectTemplateModelTestCase(test.TestCase): project.default_issue_type = None project.default_priority = None project.default_severity = None + membership = project.memberships.get(user=self.user) + membership.role = Role.objects.get(slug="ux") + membership.save() template = ProjectTemplate() template.load_data_from_project(project) @@ -69,3 +73,5 @@ class ProjectTemplateModelTestCase(test.TestCase): self.assertIsNone(template.default_options["issue_type"]) self.assertIsNone(template.default_options["priority"]) self.assertIsNone(template.default_options["severity"]) + + self.assertEqual(template.default_owner_role, "ux")