OrchardCoreContrib.Modules icon indicating copy to clipboard operation
OrchardCoreContrib.Modules copied to clipboard

Issue tracker module

Open DrewBrasher opened this issue 2 years ago • 22 comments

For Issue https://github.com/OrchardCoreContrib/OrchardCoreContrib.Modules/issues/101

DrewBrasher avatar Dec 27 '23 19:12 DrewBrasher

Do you need any help on this?

hishamco avatar Jan 22 '24 20:01 hishamco

@hishamco I've started outlining some definitions and things the project needs to have in the readme.md file. Feel free to add or change anything or let me know and I can add/change it.

I do have a couple of questions.

  1. Should I add Models, Drivers, Handlers, Views, ViewModels, and Settings for every content part or are some of these usually only added if needed? image

  2. Since Projects and Issues need a lot of the same information, What do you think would be the best way to design that? Would we have a part that has all of that information and then add that part to both Issue and Project content types?

DrewBrasher avatar Feb 02 '24 17:02 DrewBrasher

Should I add Models, Drivers, Handlers, Views, ViewModels, and Settings for every content part or are some of these usually only added if needed?

It depends

Since Projects and Issues need a lot of the same information

I think we should create a content type for each. Please list to me the shared information.

hishamco avatar Feb 02 '24 19:02 hishamco

I think we should create a content type for each. Please list to me the shared information.

Common to both an Issue and a Project

  • [ ] Title
  • [ ] Body (html or markdown)
  • [ ] Requestor contact information
  • [ ] Members (Assign to one or more users who are responsible for the task)
  • [ ] Attach files
  • [ ] Category
  • [ ] Different groups of people should be linked to different categories. For example, IT would be responsible for the category "Computer" and Application Development would be responsible for the "Website" category
  • [ ] Status (New, In Progress, completed, cancelled, etc)
  • [ ] Priority
  • [ ] Comments
  • [ ] Milestones

https://github.com/DrewBrasher/OrchardCoreContrib.Modules/tree/IssueTrackerModule/src/OrchardCoreContrib.IssueTracker#common-to-both-an-issue-and-a-project

DrewBrasher avatar Feb 14 '24 15:02 DrewBrasher

While there's no notion of content type inheritance using fields and parts might suited in this case even though there are several common properties

hishamco avatar Feb 15 '24 23:02 hishamco

It thought about having a Part that has Fields for all the stuff both Issues and Projects need and then adding that Part to the Issue and Project content types.

DrewBrasher avatar Feb 16 '24 15:02 DrewBrasher

I usually add a part if it's fit to be reusable across content types and could add certain functionality, for now, let's make it simple

Please add a check list for this module so we can make progress, and avoid conflict

hishamco avatar Feb 16 '24 17:02 hishamco

I have a checklist in the readme file or is there some other checklist I should create?

DrewBrasher avatar Feb 16 '24 18:02 DrewBrasher

Please add them again in the issue description, so we can keep track of this module

hishamco avatar Feb 16 '24 20:02 hishamco

Please add them again in the issue description, so we can keep track of this module

I've added the checklist to the issue description.

DrewBrasher avatar Apr 03 '24 13:04 DrewBrasher

I usually add a part if it's fit to be reusable across content types and could add certain functionality, for now, let's make it simple

Should I deleted all the IssuePart files highlighted in https://github.com/OrchardCoreContrib/OrchardCoreContrib.Modules/pull/109#issuecomment-1924317799 and just create content types for Issue and Project in the migration file without creating Parts for them?

DrewBrasher avatar Apr 03 '24 13:04 DrewBrasher

It depends, I usually use content type unless there's a set of fields that are reusable in multiple content types. IMHO let's accelerate the process and make progress in this, then we can revise and improve the module

Please let me know if you need help at any stage

hishamco avatar Apr 04 '24 02:04 hishamco

I've never created a module with content types in the code before. I've only created a theme module and for the content types I created them in the UI and then exported the recipe and added that to my theme. So I'm learning how to do this as I go.

DrewBrasher avatar Apr 04 '24 15:04 DrewBrasher

I just found https://github.com/Lombiq/Helpful-Extensions?tab=readme-ov-file#content-definition-code-generation and I think I will try using that method to create the content types.

DrewBrasher avatar Apr 04 '24 15:04 DrewBrasher

I've never created a module with content types in the code before

You can create a content type programmatically through migration, I will share piece of code If you like to know how it's done

hishamco avatar Apr 05 '24 01:04 hishamco

Do you need any help on this?

hishamco avatar Apr 25 '24 21:04 hishamco

Do you need any help on this?

Will you take a look at commit https://github.com/OrchardCoreContrib/OrchardCoreContrib.Modules/pull/109/commits/21762e9f21b1aa6a810e41f2ab4da3244fba7a4d and let me know if I'm on the right track?

DrewBrasher avatar Apr 27 '24 22:04 DrewBrasher

Please fix a conflict and have a look at my comments I might need to add a few commits

hishamco avatar Apr 28 '24 00:04 hishamco