pluginsGLPI / formcreator

GLPI Plugin Formcreator (DOWNLOAD : https://github.com/pluginsGLPI/formcreator/releases)
http://www.teclib-edition.com
GNU General Public License v3.0
172 stars 125 forks source link

Announce for enhancement #416

Closed etiquet closed 4 years ago

etiquet commented 7 years ago

Hi Community, just to let you know for potential comments that for a client we are developping an upgrade feature in fromcreator that extend the use of GLPI object even for determining if destination should be created based on the object content or answer. We are planning to reverse this enhancement to the community if ok for you guys. here attached a screen capture.

glpi - formcreator - 31 - mozilla firefox

btry commented 7 years ago

Hi

Your contribution looks interesting. Features of the incoming version 0.90+1.4 are frozen. Can you consider to create a PR for the develop branch ?

Please note we changed many code and fixed several things in the database schema between master and develop branches. Therefore, I guess your contribution will need some maintenance before integration

etiquet commented 7 years ago

Yes no pb. We will enter acceptance with client within the month, the dev is still on going. So let's give a planning about February for the PR.

I guess you can flag the enhancement and assign it to me. We are trying hard to design the enhancement as generic a possible. Particularly we will add an option to create of not the destination ticket depending on a question / value of a column of a GLPI object. This will avoid to have needs for purging rules.

Feel free to contact me for exchange on this thread of by phone (my personal email below), we are still in the phase where small improvement might be tackle and our developer could appreciate feedback on his job ;) Eric.tiquet@gmail.com Eric

btry commented 7 years ago

Hi

We will release 1.4.0, then the develop branch will become more active for a while; probably with some more code cleanup and reorganization.

etiquet commented 7 years ago

Dear All, we are doing internal acceptance testing of our code.

Here are the main principles if you want to react before we submit the code to github... We started with a more complex approach (ex: filtering by site,... ) but tried to keep it to the simpliest at the end. (too simple ?)

What we're try to achieve ?

Our use case : Proposing a form for application installation / evolution that routes to particular groups depending on the name of the application and the type of action requested (with validation),

~200 apps with 5-10 groups types + validators of the application.

0/ adding an glpi object (basically a table) with following structure : ( you see it in questions settings menu when settings a form )

title/ destination group type 1/ destination group type 2 / destination group n

you can add as much as you want) we offer no UI interface, just basic sql loading with tools like adminer.php this works ok

1/ adding a feature (ui interface) that allow to specify creation condition of the target ticket

normal (compatibility with current) never (for debugging) question ( you specify the questions's answer to test with a value and and a condition )

2/ then adding the configuration interface with :

We're wondering if we add, sla or category but the uses cases are so very few so we skip it simple.

BTW if someone could point out where the table are created at forms setup we could do a better job for compatibility ?

Any feedback appreciated !

btry commented 7 years ago

Hi

About your last question : the tables are created in a method named install() in each class of the plugin requiring persistance.

Roughly, install methods check if the table exists, ans create it if needed. If the table already exists then the method updates it. There is a technical debt here. Some itemtypes have a rather complex code for uograde.

Due to this and the activity on the plugin, we decided this week to change the installation ans upgrade design. See the latests tickets.

This decision is very new then we did not yet worked on it. I think you can safely create a SQL file containing your additions to the schema, used as is in the new installation code. The version 2.5.0 will very likely merge in a single SQL file the schema of the plugin ans your contribution.

Please also note the version 2.5.0. 1.5.0 was renamed to 2.5.0 because an old versions went up to 1.8.1. This is an important inconsistency to fix. Same for incoming 0.90-1.4 that we renamed to 2.4.0.

About the design you described : maybe there is something which can help you to simplify your design. I need to check a few things in GLPI first. I'll let you know about that in a few days.

Le 28 janvier 2017 16:11:28 GMT+01:00, etiquet notifications@github.com a écrit :

Dear All, we are doing internal acceptance testing of our code.

Here are the main principles if you want to react before we submit the code to github... We started with a more complex approach (ex: filtering by site,... ) but tried to keep it to the simpliest at the end. (too simple ?)

What we're try to achieve ?

  • creating & routing ticket based on an external matrix, with options.

Our use case : Proposing a form for application installation / evolution that routes to particular groups depending on the name of the application and the type of action requested (with validation),

~200 apps with 5-10 groups types + validators of the application.

0/ adding an glpi object (basically a table) with following structure : ( you see it in questions settings menu when settings a form )

title/ destination group type 1/ destination group type 2 / destination group n

you can add as much as you want) we offer no UI interface, just basic sql loading with tools like adminer.php this works ok

1/ adding a feature (ui interface) that allow to specify creation condition of the target ticket

normal (compatibility with current) never (for debugging) question ( you specify the questions's answer to test with a value and and a condition )

2/ then adding the configuration interface with :

  • Selecting a GLPI object
  • selecting the question
  • selecting the column where you take the group from.

We're wondering if we add, sla or category but the uses cases are so very few so we skip it simple.

BTW if someone could point out where the table are created at forms setup we could do a better job for compatibility ?

Any feedback appreciated !

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/pluginsGLPI/formcreator/issues/416#issuecomment-275853498

-- Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.

btry commented 7 years ago

Hi

I promised I would check something in GLPI about your development. Here is what I found :

image

This screenshot shows (GLPI 9.1) you can link to a software a technician and a group. I think you should consider using these relations for your feature. This should make your work easier, assuming I give this to you soon enough.

What do you think about this ?

Note : I also think the label is wrong because a software is not hardware. but this is an other problem.

etiquet commented 7 years ago

Hi,

Thank you very much for the tips, and the effort you put to answer our questions, we were definitively not aware of this capabilities.

Unfortunately, this will not help in our case for the following reasons :

We are making a semantic distinction between software and application. (subtle I agree)

This are the one where’re interested in. The list is managed properly (« controlled ») so user can navigate through easily.

In the client company’s organisation, multiple « groups » exists, each one is associated to a particular actions vs particular software, typically groups are different for :

In our case there are about 200 applications and about 20 groups, and you can add on top "validation groups". This is the problem we’re solving with our add-ons. (btw we have a question with form validation I’ll open a specific issue on that)

We tend to have a generic approach so someone having a similar routing request base on a company organisation matrix could create an object and perform routing based matrix. Looking to another previous comments on the Github, for the moment we will stick with previous branch <2.4. (current version has partial browser support, especially old one like IE8 which is a critical feature in our case)

Kind regards, Eric

Le 6 févr. 2017 à 10:43, btry notifications@github.com a écrit :

Hi

I promised I would check something in GLPI about your development. Here is what I found :

https://cloud.githubusercontent.com/assets/14139801/22641822/8c839f46-ec58-11e6-87ea-d847dc502d1b.png This screenshot shows (GLPI 9.1) you can link to a software a technician and a group. I think you should consider using these relations for your feature. This should make your work easier, assuming I give this to you soon enough.

What do you think about this ?

Note : I also think the label is wrong because a software is not hardware. but this is an other problem.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/pluginsGLPI/formcreator/issues/416#issuecomment-277631568, or mute the thread https://github.com/notifications/unsubscribe-auth/ARxC1CNOlfIerOshea7KEGt6JtaZy976ks5rZus0gaJpZM4Lcz2H.

btry commented 7 years ago

Hi

You can distinguish softwares and applications by affecting them categories.

You mentioned your software list contains KB. I guess you're using an automated inventory tool like FusionInventory or OCS. If your software list is messy, you should consider using rules to format names and versions of your softwares. This is an hard work, and a thing to do over time, but you can significantly improve your software inventory. This will benefit to your needs with FormCreator.

About your groups, consider nesting your groups, and affect your technicians to several groups. This should solve most of your needs and reduce your development.

etiquet commented 7 years ago

Hi,

We’ve finalised our development &testing with some delay but the result is worthwhile ;)

New features :

We are thinking for other small improvements to ease life. And package. This has been developed and tested with 0.90-1.3.4 only due to the browser limitations. (ou client uses IE8 and FFX<=38 as normal browser) If okay for you guys we will create a branch on this release like 0.90-1.4.0 and then up to you to port it to the new branch.

with kind regards, Eric

Le 24 févr. 2017 à 09:53, btry notifications@github.com a écrit :

Hi

You can distinguish softwares and applications by affecting them categories.

You mentioned your software list contains KB. I guess you're using an automated inventory tool like FusionInventory or OCS. If your software list is messy, you should consider using rules to format names and versions of your softwares. This is an hard work, and a thing to do over time, but you can significantly improve your software inventory. This will benefit to your needs with FormCreator.

About your groups, consider nesting your groups, and affect your technicians to several groups. This should solve most of your needs and reduce your development.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/pluginsGLPI/formcreator/issues/416#issuecomment-282238480, or mute the thread https://github.com/notifications/unsubscribe-auth/ARxC1CJ4oCfa5evyDVNW2mJQsJvJ0rUTks5rfpqTgaJpZM4Lcz2H.

btry commented 7 years ago

HYi

Sorry for the delay.

293 contains a feature request which probably matches a feature in your work. Maybe it is seasy to pick it for the development version. The remaining of your code is something which is probably more complex, and I'm expecting it needs to be updated to match the structure of the development branch.

Can you create a PR with your contribution ? This will allow contributors or myself to try an integration in the latest development version.

etiquet commented 7 years ago

Hi

We are almost ready to do the pullrequest.

How would you like to coordinate ? There a few thing that might be better to spoke over the phone or online conference for better integration of the work ? ( eric.tiquet@gmail.com mailto:eric.tiquet@gmail.com )

ex : we don’t find the 0.9 1.3.4 branch. Should we recreated-it ?

with kind regards, Eric

Le 14 mars 2017 à 16:39, btry notifications@github.com a écrit :

HYi

Sorry for the delay.

293 https://github.com/pluginsGLPI/formcreator/issues/293 contains a feature request which probably matches a feature in your work. Maybe it is seasy to pick it for the development version. The remaining of your code is something which is probably more complex, and I'm expecting it needs to be updated to match the structure of the development branch.

Can you create a PR with your contribution ? This will allow contributors or myself to try an integration in the latest development version.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/pluginsGLPI/formcreator/issues/416#issuecomment-286461471, or mute the thread https://github.com/notifications/unsubscribe-auth/ARxC1HVuLIXC3m4QKmSdWvmN9wiIkmSdks5rlrTPgaJpZM4Lcz2H.

etiquet commented 7 years ago

Hi,

Just to let you know the PR has been submitted by https://github.com/pluginsGLPI/formcreator/pull/575

should you need any support let us know. With king regards, Eric

btry commented 7 years ago

Hi

I notice it, thank you. I already had a quick overview. I have to understand it and probably split it to have a branch per feature and port thème one by one. I guess the "référentiel" contains data about your specific need: distinction between software and application, affectation to technicians.

As this part is not really related to forms and there is no UI (accordying to details you gave) I wonder what to do with it. I see several options:

Maybe coud you provide a few lines about the implementation to make easier to understand it. As I already told you, the version 1.3.x is no longer maintained, and we must port it to current development version (aka 2.5 at this time).

etiquet commented 7 years ago

Hi,

Just to let you know the PR has been submitted by https://github.com/pluginsGLPI/formcreator/pull/575 https://github.com/pluginsGLPI/formcreator/pull/575

should you need any support let us know. With king regards, Eric

Le 19 mars 2017 à 14:24, Eric TIQUET eric.tiquet@gmail.com a écrit :

Hi

We are almost ready to do the pullrequest.

How would you like to coordinate ? There a few thing that might be better to spoke over the phone or online conference for better integration of the work ? ( eric.tiquet@gmail.com mailto:eric.tiquet@gmail.com )

ex : we don’t find the 0.9 1.3.4 branch. Should we recreated-it ?

with kind regards, Eric

Le 14 mars 2017 à 16:39, btry <notifications@github.com mailto:notifications@github.com> a écrit :

HYi

Sorry for the delay.

293 https://github.com/pluginsGLPI/formcreator/issues/293 contains a feature request which probably matches a feature in your work. Maybe it is seasy to pick it for the development version. The remaining of your code is something which is probably more complex, and I'm expecting it needs to be updated to match the structure of the development branch.

Can you create a PR with your contribution ? This will allow contributors or myself to try an integration in the latest development version.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/pluginsGLPI/formcreator/issues/416#issuecomment-286461471, or mute the thread https://github.com/notifications/unsubscribe-auth/ARxC1HVuLIXC3m4QKmSdWvmN9wiIkmSdks5rlrTPgaJpZM4Lcz2H.

etiquet commented 7 years ago

Hi,

I will pass by your questions and this anwser to the developer team.

However I could answer some myself : The dev team has ported the code to 2.4.x. ( the 1.3.x will be kept internally with the client since the new version does not support IE8 and older version of FFX.) we thought to put a condition switch for obsolete browser compatibility but postpone to discussion with you how best to do it or..not. « Référentiel » should be understood as an arbitrary glpi object (basically a registered table as an object in GLPI) containing some data, where the first column serve as index/displayname and other column contain whatever data required to do content based routing The content of the other column contains the matrix of responsible(assignee group) for a particular entry. (we implemented maybe the most complex case this there are different nature of responsible type) We did not put any energy in developing a UI to manage/display the table since in our case the content is managed externally of GLPI and imported directly in the GLPI database. adminer.php does the job perfectly ;) we develop a small php script that automatise import. We could discuss and share the effort here Globally this provide the capabilty to assign form/tickets to group/user based on a glpi object (matrix). ( we consider using the ldap option but was not efficient since its need another deamon service ) If you want to split in several features, you could consider the following :

We really keen to help here. The quickest approach is maybe to have a voice/video chat so we could demo you the implemented features and discuss how we could help. Please contact me on eric.tiquet@gmail.com mailto:eric.tiquet@gmail.com and let me know a way to contact you with some schedule that suits you. ( we’re in CET timezone)

Eric

Le 20 avr. 2017 à 08:34, btry notifications@github.com a écrit :

Hi

I notice it, thank you. I already had a quick overview. I have to understand it and probably split it to have a branch per feature and port thème one by one. I guess the "référentiel" contains data about your specific need: distinction between software and application, affectation to technicians.

As this part is not really related to forms and there is no UI (accordying to details you gave) I wonder what to do with it. I see several options:

Create a distinct plugin working with FormCreator, able to provide features to GLPI and maybe other plugins, and implementing the missing UI. This plugin will likely contain things from your contribution. (This is maybe the best option.) find a way to modelize it with GLPI wait for GLPI to implement this feature (to be discussed with the GLPI team; risk to wait a lot due to the nature of the feature). Maybe coud you provide a few lines about the implementation to make easier to understand it. As I already told you, the version 1.3.x is no longer maintained, and we must port it to current development version (aka 2.5 at this time).

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/pluginsGLPI/formcreator/issues/416#issuecomment-295598090, or mute the thread https://github.com/notifications/unsubscribe-auth/ARxC1D7sLSHmcxJWLhrfkN6acWP6AfpSks5rxvx9gaJpZM4Lcz2H.

alexhummes commented 7 years ago

Hello, I believe you are developing what I need and suggested in # 664. I need the ticket (destinations) to be opened based on a user response. That is, if the answer to question 1 is no, destination 1 does not occur. If the answer is yes, destination 1 happens. And the same for other problems and destinations in the same way. Can you tell when this feature will be available?

btry commented 7 years ago

hi

The contribution is related to this ticket is in the PR #575

Availability of this contribution depends on my review but I'm lacking time for now due to some recurring bugs. These bugs increased priority of code refactor task I began with 2.4.0. I really need to finish it to increase quality of the plugin and reduce time consumed for bugfixes.

alexhummes commented 7 years ago

OK. Can I get the packages and participate in the tests? Maybe what works is enough for me, and I can put it into production for my users to validate. alexhummes@gmail.com

btry commented 7 years ago

You can download the branch of the PR as is and test it. Currently the PR cannot be used without effort with the development version due to merge conflicts.

By the way, your feedback is welcome, and if you have some skills with PHP and you need to fix things, you may share your improvements.

etiquet commented 7 years ago

Dear All, should you have any questions to the PR, please let me know. Yes I do believe this fit for you purpose. We have also an 1.9.0 branch that is on production and works well. ( at least did not received complains ;) )

Le 17 juil. 2017 à 15:41, btry notifications@github.com a écrit :

You can download the branch of the PR as is and test it. Currently the PR cannot be used without effort with the development version due to merge conflicts.

By the way, your feedback is welcome, and if you have some skills with PHP and you need to fix things, you may share your improvements.

— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/pluginsGLPI/formcreator/issues/416#issuecomment-315758776, or mute the thread https://github.com/notifications/unsubscribe-auth/ARxC1GVwSerW0AQ9kSy-yvFFkQir4e6yks5sO2SCgaJpZM4Lcz2H.

alexhummes commented 7 years ago

Eric, Of course yes. Could you send me the download package of this version 1.9.0?

btry commented 4 years ago

Hi

This ticket is obsolete now. Closing.