Replace jqGrid: Difference between revisions
From LimeSurvey Manual
DenisChenu (talk | contribs) →Suggestions: Antifeature |
|||
(29 intermediate revisions by 3 users not shown) | |||
Line 11: | Line 11: | ||
* Sort by column | * Sort by column | ||
* Inline edit or pop-up edit | * Inline edit or pop-up edit | ||
** Pop-up dialog should handle CActiveForm and model rules validation | |||
* Edit single cell in-line? | |||
* Massive actions, e.g. marking 10 elements and delete all | |||
* Fetch using Ajax | * Fetch using Ajax | ||
* Filter | * Filter and/or search | ||
* Pagination | * Pagination | ||
* GPL or MIT license | ** NB: There's a conflict between real-time filter and pagination. If nr of rows is very large, loading of complete table will take long time. | ||
** NB of NB : not with ajax : see response table in 2.06 (and maybe in 2.50). All grid filter and sort must be done in ajax. Columns*Number of row to show is the only issue. But if user ask 500 on a 500 columns : yes it's long ... wand we can not fix it. | |||
* GPL or MIT license (or another free licence like a speech) | |||
* i18n | |||
=== Suggestions === | === Suggestions === | ||
* handsontable, https://handsontable.com/ | * handsontable, https://handsontable.com/ | ||
** Antifeature : Filter data + Header tooltips + Fixing bottom rows are unfree | ** Antifeature : | ||
** | *** Filter data + Header tooltips + Fixing bottom rows are unfree | ||
** Features: | |||
*** Mass-editing using excel-like table. Use-case: "A typical use case is receiving a lengthy list of text adjustments and typos that should be fixed. having all survey questions in a single table with e.g. each row a question and col1=question text, col2=help text, col3=answer1, col4=answer, ... would be very helpful. One can edit all details as needed and then you only need to click save once" | |||
* datatables, https://www.datatables.net/ | * datatables, https://www.datatables.net/ | ||
** Antifeature : inline edit are not free | ** Antifeature : | ||
*** inline edit are not free | |||
** Features | |||
*** Sort by column : https://www.datatables.net/examples/basic_init/multi_col_sort.html | |||
*** Fetch using Ajax : https://www.datatables.net/examples/ajax/ | |||
*** Filter : http://datatables.net/examples/api/multi_filter.html | |||
*** Pagination : included | |||
*** i18n : https://datatables.net/plug-ins/i18n/ | |||
* Yii included GridView | |||
** http://www.yiiplayground.com/index.php?r=UiModule/dataview/gridView | |||
** Started in https://github.com/LimeSurvey/LimeSurvey/pull/460 | |||
** Features | |||
*** Filter by model : http://www.yiiframework.com/doc/api/1.1/CGridView#filter-detail , model can extend attribute. | |||
* bootstrap-table http://bootstrap-table.wenzhixin.net.cn/ | |||
** Antifeature | |||
** Features | |||
=== Other notes === | === Other notes === | ||
==== CPDB ==== | |||
CPDB uses jQgrid to open up - within the table - possibilities to edit attributes and surveys for one participant. This should probably be a dialog instead. | CPDB uses jQgrid to open up - within the table - possibilities to edit attributes and surveys for one participant. This should probably be a dialog instead. | ||
==== Dialog or inline ==== | |||
* Actual edit in token don't update link. And we have issue with some control. A dialog edit fix this 2 issue more easily. | |||
* Alterantive : use http://www.appelsiini.net/projects/jeditable (still think dioalog editor is the best) | |||
[[Category:Development]] |
Latest revision as of 16:23, 5 April 2016
We want to replace jQgrid with another similar jQuery library.
Why?
- Hard to exactly control and style the HTML, e.g. wrap something with a span tag
- Not maintained since the license changed
- ...more?
Wanted features
- Sort by column
- Inline edit or pop-up edit
- Pop-up dialog should handle CActiveForm and model rules validation
- Edit single cell in-line?
- Massive actions, e.g. marking 10 elements and delete all
- Fetch using Ajax
- Filter and/or search
- Pagination
- NB: There's a conflict between real-time filter and pagination. If nr of rows is very large, loading of complete table will take long time.
- NB of NB : not with ajax : see response table in 2.06 (and maybe in 2.50). All grid filter and sort must be done in ajax. Columns*Number of row to show is the only issue. But if user ask 500 on a 500 columns : yes it's long ... wand we can not fix it.
- GPL or MIT license (or another free licence like a speech)
- i18n
Suggestions
- handsontable, https://handsontable.com/
- Antifeature :
- Filter data + Header tooltips + Fixing bottom rows are unfree
- Features:
- Mass-editing using excel-like table. Use-case: "A typical use case is receiving a lengthy list of text adjustments and typos that should be fixed. having all survey questions in a single table with e.g. each row a question and col1=question text, col2=help text, col3=answer1, col4=answer, ... would be very helpful. One can edit all details as needed and then you only need to click save once"
- Antifeature :
- datatables, https://www.datatables.net/
- Antifeature :
- inline edit are not free
- Features
- Sort by column : https://www.datatables.net/examples/basic_init/multi_col_sort.html
- Fetch using Ajax : https://www.datatables.net/examples/ajax/
- Filter : http://datatables.net/examples/api/multi_filter.html
- Pagination : included
- i18n : https://datatables.net/plug-ins/i18n/
- Antifeature :
- Yii included GridView
- http://www.yiiplayground.com/index.php?r=UiModule/dataview/gridView
- Started in https://github.com/LimeSurvey/LimeSurvey/pull/460
- Features
- Filter by model : http://www.yiiframework.com/doc/api/1.1/CGridView#filter-detail , model can extend attribute.
- bootstrap-table http://bootstrap-table.wenzhixin.net.cn/
- Antifeature
- Features
Other notes
CPDB
CPDB uses jQgrid to open up - within the table - possibilities to edit attributes and surveys for one participant. This should probably be a dialog instead.
Dialog or inline
- Actual edit in token don't update link. And we have issue with some control. A dialog edit fix this 2 issue more easily.
- Alterantive : use http://www.appelsiini.net/projects/jeditable (still think dioalog editor is the best)