Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
377 commits
Select commit Hold shift + click to select a range
38fa4d1
Fix 2.14 install
AdrienClairembault Jul 26, 2022
82e48f4
build(robo): restore disabled code
btry Jul 26, 2022
d57a925
fix(install): prevent useless warnings
btry Jul 26, 2022
2d5abc9
fix(install): use modern settings for tables
btry Jul 27, 2022
c6958b6
feat(targetticket): link with GLPI item (#2897)
Rom1-B Jul 27, 2022
05240a7
gitignore vscode folder (#2899)
Rom1-B Jul 27, 2022
96eb6d8
Prevent useless DB queries on plugins state checks (#2886)
cedric-anne Jul 27, 2022
928f111
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Jul 28, 2022
bebc0b8
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Jul 28, 2022
87d1bb3
fix(form): active entities for public forms
btry Jun 13, 2022
69c3dbf
docs: update versions declaration
btry Aug 18, 2022
ee3ee77
* fix: regex check on some fields broken (#2896)
btry Jul 29, 2022
56175cb
fix(glpiselectfield): missing entity restrict
btry Jul 29, 2022
91a2039
fix(formanswer): grid style updated for current version of gridstack
btry Aug 1, 2022
12938b8
fix(form): PHP warning
btry Aug 2, 2022
b53ae83
feat(formanswer): order formanswers by date desc
btry Aug 2, 2022
5280f8f
test: fix url_base and url_base_api
btry Aug 2, 2022
3121825
fix(descriptinfield): conversion to target requires escaping
btry Jul 28, 2022
4debaf6
fix(formanswer): update gridstack css
btry Aug 2, 2022
e812ac6
test: log activation errors
btry Aug 3, 2022
c5d3d43
build: update file filtering
btry Aug 3, 2022
185f79d
fix(ldapselectfield): no translation for items
btry Aug 2, 2022
95bc233
feat(ldapselectfield): lazy loading
btry Aug 2, 2022
50ea937
fix(filefield): mandatory check may cause exception
btry Aug 1, 2022
7f80bf5
fix(ldapselectfield): log LDAP error instead of showing it to user
btry Aug 4, 2022
7cefbd8
fix(abstracttarget): uuid should not be updated
btry Aug 9, 2022
b56a749
refactor(abstractitiltarget): factorize check
btry Aug 9, 2022
6c0c075
fix(targetticket): prevent exception in inconsistent target ticket
btry Aug 8, 2022
437e1a0
fix: cannot delete a ticket from service catalog
btry Aug 3, 2022
a405b6b
fix(issue): remove duplicate item in status dropdown
btry Aug 11, 2022
38f1e5e
style: no litteral string for class names
btry Aug 12, 2022
01368d0
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Aug 18, 2022
540dc5a
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Aug 18, 2022
0ba0bef
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Aug 19, 2022
71c3044
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Aug 29, 2022
0633df9
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Sep 2, 2022
8413e0a
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Sep 3, 2022
76afea7
Update tag input parameters
VladoTTX Sep 5, 2022
dc95c73
fix(targetticket,targetchange): tags from queestion or specific tags …
VladoTTX Sep 5, 2022
aee2be0
Merge branch 'support/2.13.0' into develop
btry Sep 5, 2022
4c3222f
fix(targetticket): missing import conversion
btry Sep 6, 2022
52f1e36
test(targetticket): missing values in test case
btry Sep 7, 2022
b2c5e90
feat(wizard): splitted view categories / issues (#2960)
stonebuzz Sep 7, 2022
00c58cc
fix(targetticket): bad constant name
btry Sep 6, 2022
f28be7d
feat: prepare compatibility with PHP 8.2 (#2966)
btry Sep 9, 2022
c597e09
ci: static analysis
btry Sep 14, 2022
99013ec
Form_Profile: Fix PHPDOC / undefined session value (#2974)
AdrienClairembault Sep 14, 2022
961043a
fix(actorfield): php warning
btry Sep 14, 2022
56b469b
refactor(question): optimize dispatching of request data
btry Sep 15, 2022
0d4675f
refactor: semicolon after JS instructions
btry Sep 15, 2022
b58da2b
fix(filefield): php error when switching field type to file
btry Sep 15, 2022
ecf1ff2
fix(question): description loss when changing question field type
btry Sep 15, 2022
a7e3f1b
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Sep 15, 2022
029f820
test: add GLPI deprecation support
btry Sep 15, 2022
9da48cb
feat(category): option for category visibility (#2973)
stonebuzz Sep 16, 2022
c3eeb5a
feat(wizard): optionally fold / unfold left menu (#2989)
stonebuzz Sep 19, 2022
a2be32f
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Sep 20, 2022
84a4e93
Merge remote-tracking branch 'origin/support/2.13.0' into develop
btry Sep 26, 2022
e9acb93
test: fix tests (#3000)
btry Sep 26, 2022
86f5ace
Merge remote-tracking branch 'origin/support/2.13.0' into develop_bef…
btry Oct 11, 2022
193e84d
Merge remote-tracking branch 'origin/support/2.13.0' into develop_bef…
btry Oct 17, 2022
0fd8aa9
Merge branch 'support/2.13.0' into develop_before_class_move
btry Oct 24, 2022
17c089d
Merge branch 'support/2.13.0' into develop_before_class_move
btry Oct 25, 2022
188b609
Merge branch 'support/2.13.0' into develop_before_class_move
btry Nov 4, 2022
c9eaae1
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Nov 8, 2022
fe210c4
fix(issue): update schema
btry Nov 8, 2022
70dd3ed
feat(dropdownfield,glpiselectfield): Restrictby filter (#3087)
btry Nov 18, 2022
f1e68cf
fix(form_language): call to undefined method
btry Nov 9, 2022
e86bea1
fix(form): prevent sending two csrf tokens
btry Nov 8, 2022
13d94b4
fix(abstracttarget): support for sla and ola from question
btry Nov 14, 2022
e969e1a
test: fix bad class namespace
btry Nov 22, 2022
7b37d23
docs: update versions list
btry Nov 22, 2022
da06548
docs: update versions list
btry Nov 25, 2022
72da181
fix(form): prevent SQL error
btry Nov 18, 2022
78cceb9
fix(issue): useless criteria nesting
btry Nov 18, 2022
ab3fdf5
Prevent warning on null value
AdrienClairembault Nov 21, 2022
bd4f86b
Revert "fix(issue): remove duplicate item in status dropdown"
btry Nov 18, 2022
0ee941e
docs: update versions list
btry Nov 22, 2022
7518e39
ci: disable functoinal tests
btry Nov 23, 2022
86095e2
fix(issue): show save button for followup edit
btry Nov 23, 2022
a3abff1
feat(question): new hooks for other plugins interaction (#3093)
AdrienClairembault Nov 24, 2022
ab26967
bump(2.13.3): bump version 2.13.3
btry Nov 24, 2022
cb6f3b2
Revert "fix(install): bad command in error message"
btry Nov 24, 2022
bd5db56
docs(changelog): update
btry Nov 24, 2022
73bf79f
test: better headless handling
btry Nov 24, 2022
f90c426
docs(locales): update translations
btry Nov 24, 2022
d750afd
ci: disable tests on main
btry Nov 24, 2022
3829a7f
Revert "ci: disable tests on main"
btry Nov 24, 2022
b3f7a2a
bump(2.13.4-dev): 2.13.4-dev unofficial
btry Nov 24, 2022
76b820e
fix(formanswer): temporary disable debug mode
btry Nov 24, 2022
c2a319b
docs: update versions list
btry Nov 25, 2022
c608892
test(question): update tests
btry Nov 25, 2022
eb5e207
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Nov 30, 2022
f74e4d9
fix(form): check plugin activation
btry Dec 1, 2022
0edda4e
Merge branch 'feature/23395_validate_by_supervisor_2.14_v3' into supp…
btry Dec 1, 2022
504e227
fix: add missing files
btry Dec 2, 2022
eb074ec
fix: compatibility of vendor libraries with GLPI 10.1
btry Dec 2, 2022
6a7008d
fix: php warning
btry Dec 2, 2022
fa43fdf
feat(form_validator): validation delegation support
btry Dec 2, 2022
45f2180
ci: use PHP 8.1
btry Dec 2, 2022
0329c0a
test: limit test to GLPI 10.1
btry Dec 2, 2022
2c42cc5
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Dec 2, 2022
054c15c
fix(issue): limit GLPI 10.1 specific search options
btry Dec 2, 2022
b74c807
chore: update transifex config
btry Dec 5, 2022
03bc9e3
fix(formanswer): change strings related to captcha
btry Dec 6, 2022
f0ec05a
feat(form): convert access type configuration to twig
btry Dec 6, 2022
b46d276
refactor: code cleanup
btry Dec 7, 2022
d1c0297
Merge branch 'feature/enhance_access_restriction_tab' into support/2.…
btry Dec 7, 2022
1b1fc82
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Dec 9, 2022
5304454
docs(locales): update locales
btry Dec 9, 2022
c993d52
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Dec 14, 2022
0e96885
fix(formanswer): check access to all form answers with new right
btry Dec 14, 2022
5c53617
refactor(form): use twig for last items cards
btry Dec 14, 2022
7be4a0a
fix(formanswer): status icon in last requester answers list
btry Dec 14, 2022
9551aa7
Merge branch 'support/2.13.0' into support/2.14.0
btry Dec 14, 2022
eb35e88
fix(formanswer): enable glpi version check
btry Dec 9, 2022
fe04799
feat(formanswer): multilevel validation
btry Dec 13, 2022
cf09913
fix(dropdownfield): prevent exception on invalid question filter
btry Dec 15, 2022
10c390a
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jan 2, 2023
71af83e
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jan 2, 2023
90605f3
Merge branch 'support/2.13.0' into support/2.14.0
btry Jan 2, 2023
df1858b
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jan 2, 2023
1221137
refactor(install): use constant file name for curent version schema
btry Nov 17, 2022
a73dd06
fix(install): entityconfig for service_catalog_home
btry Jan 2, 2023
b7f9bf4
refactor(install): move code in method
btry Jan 3, 2023
df97057
feat(form): forms chaining
btry Jan 3, 2023
de9b9ab
docs(form): fix docblocks and IDE hinting
btry Jan 3, 2023
3e5e6c9
style(question): remove useless use statement
btry Jan 3, 2023
4d614da
refactor(issue): remove dead code
btry Jan 3, 2023
54c203e
fix(entityconfig): duplicate item in form
btry Jan 3, 2023
3a2bc8f
fix(question): conditions count deleted after update
btry Jan 4, 2023
0931a65
feat(question): tabs for conditions in modal (#3136)
btry Jan 4, 2023
da7d547
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jan 5, 2023
063f106
style: drop dead code
btry Jan 5, 2023
56dec1e
feat: restrict compatibility to GLPI 10.0.6
btry Jan 5, 2023
ab1c635
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jan 9, 2023
bb444e1
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jan 16, 2023
4de89db
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jan 16, 2023
1ed9efd
style: drop empty line
btry Jan 16, 2023
602b9ba
fix(dropdownfield): support new core option for assets visibility (#3…
AdrienClairembault Jan 19, 2023
a7fccda
Merge branch 'support/2.13.0' into support/2.14.0
btry Jan 26, 2023
ffbea9c
fix(dropdownfield): php warning
btry Jan 30, 2023
acaa69c
feat: support of GLPI 10.1
btry Jan 30, 2023
8d01aa6
feat(entityconfig): add icon to tab
btry Jan 30, 2023
a34a325
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jan 31, 2023
7b707ff
fix(dropdownfield): bad field name
btry Jan 31, 2023
afba7b2
fix(dropdownfield): update subtype broken
btry Jan 31, 2023
19fd7d0
fix(dropdownfield): bad field name
btry Jan 31, 2023
921ad36
fix(dropdownfield): prevent ambiguous column name
btry Feb 6, 2023
62a2480
Merge branch 'support/2.13.0' into support/2.14.0
btry Feb 10, 2023
dd156dc
Merge branch 'support/2.13.0' into support/2.14.0
btry Mar 6, 2023
a2235a8
fix: language right
Rom1-B Feb 22, 2023
f6d65dc
Fix translation domains computation
cedric-anne Feb 22, 2023
f336f0a
Merge branch 'support/2.13.0' into support/2.14.0
btry Mar 7, 2023
e44b453
test: update tests
btry Mar 7, 2023
7196399
Merge branch 'support/2.13.0' into support/2.14.0
btry Mar 15, 2023
d363127
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Mar 31, 2023
e36ff94
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Apr 7, 2023
4534735
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Apr 12, 2023
5eea127
Merge branch 'support/2.13.0' into support/2.14.0
btry Apr 12, 2023
67ded1f
refactor(wizard): remove dead code
btry Apr 14, 2023
e15f454
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Apr 14, 2023
9f524eb
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Apr 18, 2023
349ad17
refactor(targetticket,targetchange,targetproblem): code factorization
btry Mar 17, 2023
bb0a905
Merge branch 'bugfix/27165_tests_for_requester_in_itil_targets' into …
btry Apr 18, 2023
522b9b8
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 5, 2023
2b524cb
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 9, 2023
ee4de21
build: update dependencies
btry May 9, 2023
187f3f9
build: update dependencies
btry May 9, 2023
2221a3e
refactor(filefield): remove unused method
btry May 9, 2023
5e068eb
Merge branch 'support/2.14.0' into develop
btry May 9, 2023
75aebe3
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 12, 2023
f710eaf
style: remove dead code
btry May 12, 2023
46de374
fix(formaccesstype): add missing templates
btry May 12, 2023
86db662
fix(faq): visibility (#3118)
Rom1-B May 12, 2023
643926c
feat(abstractitiltarget): duplicate
btry May 11, 2023
9d3429e
fix(glpiselectfield): condition tab broken
btry May 12, 2023
c53e105
fix(condition): display enhancement when editing conditions
btry May 12, 2023
06e55d7
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 15, 2023
3d89916
Merge branch 'support/2.13.0' into support/2.14.0
btry May 17, 2023
2bf2a5c
refactor(formanswer): remove unused var
btry May 17, 2023
1ef15f6
fix(form_validator): user / group input switching broken when designi…
btry May 19, 2023
8746f51
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 19, 2023
b18a452
fix: add ticket in form designer broken
btry May 19, 2023
7a40230
fix(form_validator): check right before editing validators
btry May 19, 2023
9c66ed5
refactor(form): cleanup dead code
btry May 19, 2023
7a3b905
style: hint for IDE
btry May 19, 2023
53a2df6
style: fix indentation
btry May 19, 2023
cb15901
style(formanswer): update comments
btry May 19, 2023
df58b1c
fix(formanswer): show for validator when user is member of a group
btry May 19, 2023
e0ef0d3
feat(formanswer): show info if requester id also validator
btry May 19, 2023
3ff1c33
fix(formanswer): php warning undefined var
btry May 19, 2023
4f20c9d
style(formanswer): useless space
btry May 19, 2023
718b059
test(formanwer): fix test, and some refactor
btry May 22, 2023
63b528c
test(form): update tests
btry May 22, 2023
36400b0
formanswer): update tests
btry May 22, 2023
c98de4c
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 23, 2023
5b9575b
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 23, 2023
0ff9359
refactor(category): use var for table name
btry May 23, 2023
a2f7d09
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 23, 2023
bfa2ea1
Merge branch 'support/2.14.0' into develop
btry May 23, 2023
110e443
test(section): remove canonical class names
btry May 23, 2023
89a78ab
test(section): remove canonical class names
btry May 23, 2023
8e12c95
test(form): cleanup tests
btry May 26, 2023
a58ac6f
bump(2.13.6):: version 2.13.6
btry May 26, 2023
f694764
fix(install): prevent fatal error in migration
btry May 26, 2023
fc49efa
feat(glpiselectfield): PDU in assets section
btry May 30, 2023
36dd1da
fix(section): condition rule loss after duplicate / import
btry May 23, 2023
cf4d1fa
fix: confitrmation strings
btry May 30, 2023
ab7217c
docs(locales): update
btry May 30, 2023
7b4e2b8
style(form): empty line
btry May 30, 2023
c526aa4
docs(locales): update translations
btry May 30, 2023
6f12814
fix(textfield): Unescaped HTML when displaying a form answer
btry Apr 7, 2023
13eacbb
docs(changelog): version 2.13.6
btry May 26, 2023
20ffc89
f
btry May 30, 2023
c305680
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry May 31, 2023
94c5997
refactor: fields rendering in targets moved in field property
btry Jun 6, 2023
e6025c3
style(fieldinterface): code style
btry Jun 6, 2023
0e93038
fix(question): incompatibility with Firefox
btry Jun 12, 2023
a79187c
fix(question): more robust itemtype handling
btry Jun 12, 2023
eebbb56
test(form): duplicate use statement
btry Jun 13, 2023
1184d57
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jun 13, 2023
e138b49
fix(question): getting rich text value before submit data
btry Jun 13, 2023
26fd802
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jun 14, 2023
b53417f
fix(formanswer): bad object reference
btry Jun 15, 2023
6bc001d
fix(formanswer): duplicate use statement
btry Jun 15, 2023
65f1160
fix(question): undefined JS var breaks edition
btry Jun 15, 2023
e1fae93
style(formanswer): bad indentation
btry Jun 15, 2023
ed32308
fix(formanswer): php warning when counting error messages
btry Jun 15, 2023
e5e0127
test(question): fix unit test
btry Jun 15, 2023
d8246f1
test(question): fix unit test
btry Jun 15, 2023
da02bb5
test(section): fix tests
btry Jun 15, 2023
0553a3a
feat(targetticket,targetchange,targetproblem): helper to type questio…
btry Jun 14, 2023
b19f573
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jun 16, 2023
4472338
docs(locales): update
btry Jun 19, 2023
30be966
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jun 19, 2023
a621468
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jun 21, 2023
9cfeea4
fix(glpiselectfield): cannot save conditions
btry Jun 21, 2023
5d48cba
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jun 23, 2023
0920909
Merge remote-tracking branch 'origin/support/2.13.0' into support/2.14.0
btry Jun 29, 2023
0dd899a
Update pl_PL.po
WebGregGit Jun 29, 2023
ef6bf93
Update pl_PL.po
WebGregGit Jun 29, 2023
1122d18
Merge branch 'support/2.14.0' into develop
btry Jun 29, 2023
a39f1b1
build(deps): bump semver from 5.7.1 to 5.7.2
dependabot[bot] Jul 11, 2023
6713c8d
Update README.md
btry Mar 5, 2024
958e7e6
fix typos
btry Mar 6, 2024
0dcd726
emphasize eol
btry Mar 6, 2024
1b3c5df
Update README.md
btry Mar 6, 2024
1ce1b04
feat(docs): switch the project status to inactive
btry Jul 21, 2025
8212883
build(deps-dev): bump symfony/http-foundation from 5.4.23 to 5.4.50
dependabot[bot] Nov 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
env:
GLPI_SOURCE: "https://github.com/glpi-project/glpi"
GLPI_PACKAGE_URL_BASE: "https://nightly.glpi-project.org/glpi"
CS: 7.4
CS: 8.1
DB_HOST: 127.0.0.1
MYSQL_ROOT_USER: root
DB_USER: glpi
Expand Down Expand Up @@ -40,7 +40,7 @@ jobs:
runs-on: "ubuntu-latest"
strategy:
matrix:
php-versions: [7.4, 8.1, 8.2]
php-versions: [8.1, 8.2]
glpi-branch: [10.0/bugfixes]
glpi-package: [10.0.tar.gz]

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ vendor/
.project
/.gtm/
lib/
.vscode/

# Ignore content of data except for the index
css_compiled/*
Expand Down
2 changes: 1 addition & 1 deletion .tx/config
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[main]
host = https://www.transifex.com

[o:teclib:p:glpi-project-plugin-formcreator:r:2_13_0]
[o:teclib:p:glpi-project-plugin-formcreator:r:2_14_0]
file_filter = locales/<lang>.po
source_file = locales/glpi.pot
source_lang = en_GB
Expand Down
13 changes: 12 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
# Form Creator

:warning: This plugin reached its end of life. [Read more here](#end-of-life)

![GLPI Banner](https://user-images.githubusercontent.com/29282308/31666160-8ad74b1a-b34b-11e7-839b-043255af4f58.png)

[![License GPL 3.0](https://img.shields.io/badge/License-GPL%203.0-blue.svg)](https://github.com/pluginsGLPI/formcreator/blob/master/LICENSE.md)
[![Telegram GLPI](https://img.shields.io/badge/Telegram-GLPI-blue.svg)](https://t.me/glpien)
[![IRC Chat](https://img.shields.io/badge/IRC-%23GLPI-green.svg)](http://webchat.freenode.net/?channels=GLPI)
[![Follow Twitter](https://img.shields.io/badge/Twitter-GLPI%20Project-26A2FA.svg)](https://twitter.com/GLPI_PROJECT)
[![Join the chat at https://gitter.im/TECLIB/formcreator](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/TECLIB/formcreator?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Project Status: Active](http://www.repostatus.org/badges/latest/active.svg)](http://www.repostatus.org/#active)
[![Project Status: Inactive](http://www.repostatus.org/badges/latest/inactive.svg)](http://www.repostatus.org/#inactive)
[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg)](https://conventionalcommits.org)
[![GitHub All Releases](https://img.shields.io/github/downloads/PluginsGLPI/formcreator/total)](https://github.com/pluginsGLPI/formcreator/releases)

Expand All @@ -17,6 +19,7 @@ Extend GLPI with Plugins.

- [Form Creator](#form-creator)
- [Table of Contents](#table-of-contents)
- [End of life](#end-of-life)
- [Synopsis](#synopsis)
- [Features](#features)
- [Build Status](#build-status)
Expand All @@ -28,6 +31,14 @@ Extend GLPI with Plugins.
- [Contribute](#contribute)
- [Copying](#copying)

## End of life

Forms will be implemented in GLPI soon, making Formcreator obsolete soon. Therefore, the very last release of the plugin is 2.13.8, except if a particular event requires a new one. We still fix bugs for our customers and at best effort bugfix for the community.

Any feature request will be ignored. If you need a new feature, you may submit it in GLPI project after the availability of forms in GLPI itself.

Thank you very much for enjoying this plugin, for reporting bugs, submitting features and contributing (features or translations). See you later with native forms. When GLPI beta will be available, do not hesitate to download and test it.

## Synopsis

Formcreator is a plugin which allow creation of custom forms of easy access.
Expand Down
2 changes: 1 addition & 1 deletion RoboFilePlugin.php
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ public function localesPush() {
* @return void
*/
public function localesPull($percent = 70) {
$this->_exec('tx pull --debug -f -a --minimum-perc=' .$percent);
$this->_exec('tx pull -f -a --minimum-perc=' .$percent);
return $this;
}

Expand Down
2 changes: 1 addition & 1 deletion ajax/condition.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
*/

include ('../../../inc/includes.php');
Session::checkRight('entity', UPDATE);
Session::checkRight(PluginFormcreatorForm::$rightname, UPDATE);

// integrity check
if (!isset($_POST['itemtype']) || !isset($_POST['items_id'])) {
Expand Down
2 changes: 1 addition & 1 deletion ajax/dropdown_values.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@

include ('../../../inc/includes.php');

Session::checkRight('entity', UPDATE);
Session::checkRight(PluginFormcreatorForm::$rightname, UPDATE);

if (!isset($_REQUEST['dropdown_itemtype'])
|| $_REQUEST['dropdown_itemtype'] == '0'
Expand Down
2 changes: 2 additions & 0 deletions ajax/edit_translation.php
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@
die();
}

Session::checkRight('entity', UPDATE);

// if (!isset($_POST['plugin_formcreator_translations_id'])) {
// http_response_code(400);
// die();
Expand Down
4 changes: 2 additions & 2 deletions ajax/form.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,12 @@
*/

include ('../../../inc/includes.php');
if (!Session::haveRight('entity', UPDATE)) {
if (!Session::haveRight(PluginFormcreatorForm::$rightname, UPDATE)) {
http_response_code(403);
die();
}

$form = PluginFormcreatorCommon::getForm();
$form = new PluginFormcreatorForm;

if (!isset($_REQUEST['id']) || !isset($_REQUEST['action'])) {
http_response_code(400);
Expand Down
4 changes: 2 additions & 2 deletions ajax/form_delete_target.php
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
die();
}

Session::checkRight('entity', UPDATE);
if (!PluginFormcreatorCommon::getForm()->deleteTarget($_REQUEST)) {
Session::checkRight(PluginFormcreatorForm::$rightname, UPDATE);
if (!(new PluginFormcreatorForm())->deleteTarget($_REQUEST)) {
http_response_code(500);
}
2 changes: 1 addition & 1 deletion ajax/form_duplicate_target.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,6 @@
}

Session::checkRight('entity', UPDATE);
if (!PluginFormcreatorCommon::getForm()->duplicateTarget($_REQUEST)) {
if (!(new PluginFormcreatorForm())->duplicateTarget($_REQUEST)) {
http_response_code(500);
}
60 changes: 19 additions & 41 deletions front/formaccesstype.form.php → ajax/form_validator.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,52 +31,30 @@

include ('../../../inc/includes.php');

Session::checkRight('entity', UPDATE);

// Check if plugin is activated...
if (!(new Plugin())->isActivated('formcreator')) {
Html::displayNotFoundError();
if (!Plugin::isPluginActive('formcreator')) {
http_response_code(404);
die();
}

// Get target form
$form_id = $_POST[PluginFormcreatorForm::getForeignKeyField()] ?? null;
if (is_null($form_id)) {
if (!isset($_REQUEST['id']) || !isset($_REQUEST['action'])) {
http_response_code(400);
die;
}

// No update if `access_rights` is not modified, keeping the save behavior as
// the previous form_profile.form.php file
if (!isset($_POST['access_rights'])) {
Html::back();
die;
die();
}

// Try to load form
$form = PluginFormcreatorForm::getById($form_id);
if (!$form) {
Html::displayNotFoundError();
$item = new PluginFormcreatorForm_Validator();

if ($_POST['action'] == 'delete') {
if (!Session::haveRight(PluginFormcreatorForm::$rightname, UPDATE)) {
http_response_code(403);
die();
}
if (!$item->delete($_POST)) {
http_response_code(500);
die();
}
http_response_code(204);
die();
}

// Prepare input
$input = [
'id' => (int) $form_id,
'is_captcha_enabled' => $_POST['is_captcha_enabled'] ?? false,
'access_rights' => (int) $_POST['access_rights'],
'users' => [],
'groups' => [],
'profiles' => [],
'entities' => [],
];

$restrictions = $_POST['restrictions'] ?? null;
if (!is_null($restrictions)) {
$input['users'] = AbstractRightsDropdown::getPostedIds($restrictions, User::class);
$input['groups'] = AbstractRightsDropdown::getPostedIds($restrictions, Group::class);
$input['profiles'] = AbstractRightsDropdown::getPostedIds($restrictions, Profile::class);
}

// Update form
$form->update($input);

Html::back();
http_response_code(400);
21 changes: 19 additions & 2 deletions ajax/formanswer.php
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
die();
}

$form = PluginFormcreatorCommon::getForm();
$form = new PluginFormcreatorForm();
if (!$form->getFromDB($_POST['plugin_formcreator_forms_id'])) {
http_response_code(500);
die();
Expand All @@ -56,7 +56,7 @@
// Save form
$backup_debug = $_SESSION['glpi_use_mode'];
$_SESSION['glpi_use_mode'] = Session::NORMAL_MODE;
$formAnswer = PluginFormcreatorCommon::getFormAnswer();
$formAnswer = new PluginFormcreatorFormAnswer();
if ($formAnswer->add($_POST) === false) {
http_response_code(400);
if ($_SESSION['glpiname'] == 'formcreator_temp_user') {
Expand All @@ -74,6 +74,23 @@
$form->increaseUsageCount();
$_SESSION['glpi_use_mode'] = $backup_debug;

if (!PluginFormcreatorForm::isNewID($form->fields['plugin_formcreator_forms_id'])) {
$nextForm = new PluginFormcreatorForm();
$nextForm->getFromDBByCrit([
'id' => $form->fields['plugin_formcreator_forms_id'],
'is_active' => 1,
'is_deleted' => 0,
]);
if (!$nextForm->isNewItem()) {
echo json_encode(
[
'redirect' => 'formdisplay.php?id=' . $nextForm->getID(),
], JSON_FORCE_OBJECT
);
die();
}
}

if ($_SESSION['glpiname'] == 'formcreator_temp_user') {
// Form was saved by an annymous user
unset($_SESSION['glpiname']);
Expand Down
52 changes: 52 additions & 0 deletions ajax/get_form_tags.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?php
/**
* ---------------------------------------------------------------------
* Formcreator is a plugin which allows creation of custom forms of
* easy access.
* ---------------------------------------------------------------------
* LICENSE
*
* This file is part of Formcreator.
*
* Formcreator is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* Formcreator is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Formcreator. If not, see <http://www.gnu.org/licenses/>.
* ---------------------------------------------------------------------
* @copyright Copyright © 2011 - 2021 Teclib'
* @license http://www.gnu.org/licenses/gpl.txt GPLv3+
* @link https://github.com/pluginsGLPI/formcreator/
* @link https://pluginsglpi.github.io/formcreator/
* @link http://plugins.glpi-project.org/#/plugin/formcreator
* ---------------------------------------------------------------------
*/

include ('../../../inc/includes.php');

// Check if plugin is activated...
if (!Plugin::isPluginActive('formcreator')) {
http_response_code(404);
die();
}

if (!Session::haveRight(PluginFormcreatorForm::$rightname, UPDATE)) {
http_response_code(403);
die();
}

$form = new PluginFormcreatorForm();
if (!$form->getFromDB($_POST['id'])) {
http_response_code(500);
die();
}

$tags = $form->getTags($_POST['searchText']);
echo json_encode($tags, JSON_UNESCAPED_UNICODE);
54 changes: 54 additions & 0 deletions ajax/get_validator_itemtype_dropdown.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
<?php
/**
* ---------------------------------------------------------------------
* Formcreator is a plugin which allows creation of custom forms of
* easy access.
* ---------------------------------------------------------------------
* LICENSE
*
* This file is part of Formcreator.
*
* Formcreator is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* Formcreator is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Formcreator. If not, see <http://www.gnu.org/licenses/>.
* ---------------------------------------------------------------------
* @copyright Copyright © 2011 - 2021 Teclib'
* @license http://www.gnu.org/licenses/gpl.txt GPLv3+
* @link https://github.com/pluginsGLPI/formcreator/
* @link https://pluginsglpi.github.io/formcreator/
* @link http://plugins.glpi-project.org/#/plugin/formcreator
* ---------------------------------------------------------------------
*/

use Glpi\Application\View\TemplateRenderer;

include ('../../../inc/includes.php');

// Check if plugin is activated...
if (!Plugin::isPluginActive('formcreator')) {
http_response_code(404);
die();
}

if (!Session::haveRight(PluginFormcreatorForm::$rightname, UPDATE)) {
http_response_code(403);
die();
}

if (!isset($_POST['itemtype'])) {
http_response_code(400);
die();
}

TemplateRenderer::getInstance()->display('@formcreator/components/form/form_validator.validator_type.html.twig', [
'type' => $_POST['itemtype'],
]);
2 changes: 1 addition & 1 deletion ajax/homepage_forms.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,5 +30,5 @@
*/
include ('../../../inc/includes.php');

$form = PluginFormcreatorCommon::getForm();
$form = new PluginFormcreatorForm();
$form->showForCentral();
2 changes: 1 addition & 1 deletion ajax/ldap_filter.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@

include ('../../../inc/includes.php');

Session::checkRight('entity', UPDATE);
Session::checkRight(PluginFormcreatorForm::$rightname, UPDATE);

$authldap = new AuthLdap();
$authldap->getFromDB($_POST['value']);
Expand Down
Loading
Loading