TLDR; I am a newbie to open-source development, and I need help understanding the norms and culture of this project regarding customization and contributions.
I am a long time developer, but have not done much collaborative programming, and this is my first open-source project that I have tried to customize. I am also new to php, git and docker, but I have come a long way in the past few months.
I have developed customizations for patient_data, demographics form (LBV) and many others through adding additional fields to the tables, and then editing the data in the list options and layout tables.
I have recently started changing code in my fork primarily in the add_open_events.inc file to set a default category of visit based on patient type (added this field to patient_data) and default the start date of the flow board to the Monday of the current week.
My question is how are these types of customizations handled in the community? They really only apply to the specific use case that I am developing for my wife’s SLP practice, but I want to maintain compatibility with the ongoing community development stream.
Can I request specific global flags for my custom user case so that my code may be integrated with the community, and express those changes only when the flag is present? What about using the specific application flag under globals?
Also, how are changes to the data structures handled? I have the sql that added the fields, but while some will be helpful to others (parent_fname, parent_lname, sparent_fname, sparent_lname), others will not want to waste the space in their tables.
welcome @dhillison , glad to hear of the progress of your customizations, go ahead and submit a pull request through your fork’s mechanism on github and let one of the project administrators, usually @brady.miller, review the code, offer suggestions on how to integrate it to the community codebase
I have been using git to keep things up to date and also to revert the changes that the openemr container does on first run. I am using windows, komodo-edit, MS visual studio code, virtualbox, docker (I feel like I should have these as icons after my name or something), aiming to host on google environment. My wife already has a google business account and they signed a BAA with her for HIPAA.
I have initiated a pull request, after spending some time to try and make the current sloboy/workflow2 commit cleaner and prune out some dead ends that did not work. It is baby steps, only a minor change, but comparing 0 pull requests to 1 pull requests means that I have made infinite progress, in terms of percentage! Thank you for being so responsive and welcoming.
Very nice PR and looks like your learning all the tools of the trade
I set up a demo for your PR (the demo resets to the most recent code in the PR daily at midnight Pacific time).
I left comments on the PR.