CVS edit link for girishmuraly

Hello,

My main motivation is this groups topic - http://groups.drupal.org/node/54828 which deals with the need to dynamically pick and choose which of the fields of a view the user would like to see on their screen. I have created a module which I think is worthy of committing.

I would like to maintain this as well. Currently I have not got any co-maintainers but I would like to see the interest of other users who apply to me.

I have not been able to find another module or code that does this feature, hence my motivation for creating this module. It is a fairly small piece of code - a views filter handler essentially. I have tested my code and it works fine locally. I would like to release this to the community and take it further from there. Please provide me a CVS account.

Thank you,
Girish

Comments

girishmuraly’s picture

Status: Postponed (maintainer needs more info) » Needs review
StatusFileSize
new8.28 KB

Hello,

I am providing my module 'views_dynamic_fields' for review. I would like to release this as the first beta. I have a list of Todos for now, like a wishlist.

1. When a view is already created with some fields' 'exclude from view' property set, they are still being included in the exposed dynamic fields filter. Need to find a way to distinguish default excluded fields from the ones that the user actually chooses.
2. The exposed form uses checkboxes, which needs proper testing since views_handler_filter.inc converts checkboxes to selects since checkboxes don't work well in exposed forms due to GET conversions

Thank you,
Girish

avpaderno’s picture

Status: Needs review » Needs work
Issue tags: +Module review

Hello, and thanks for applying for a CVS account. I am adding the review tags, and some volunteers will review the code, pointing out what it needs to be changed.

As per requirements, the motivation message should be expanded to contain more features of the proposed project. For themes, it should include also a screenshot of the theme, and (when possible) a link to a working demo site using the proposed theme; for modules, it should include also a comparison with the existing solutions.

girishmuraly’s picture

StatusFileSize
new86.26 KB
new52.06 KB

Sure, more motivation:

Assume we have the following requirements:
We as an administrator of a large corporation have to create a report 'sales_analysis' for the company executives to access periodically to view how well their products are being adopted in the market. This report will be accessed by various departments - sales, marketing, engineering and others. The report additionally needs to have the ability to be exported as an XLS.

We then decide to create this generic report having a lot of fields to satisfy the eyes of all departments. So this view ends up containing too many fields (which for example's sake are limited to):
* Product
* Technical Specs
* Product Engineer
* Country
* Marketing Campaign
* Gross sales

(For the XLS export feature, we decide to use the already available views_export_xls module http://drupal.org/project/views_export_xls, which allows the view to be downloadable as an XLS file. For this, we need to create a 'feed' using 'XLS Feed' style and attach it to either the default or page display - please see the module for more information on how to configure that).

Now when a sales executive looks at this report, he/she is not interested in the Tech Specs and/or the Product Engineer. But at the moment there is no way to dynamically exclude those fields just for that instance of that view for that user. Unfortunately, these unwanted details get carried over into the XLS file he/she generates for the Sales team, which would be used in their weekly board meetings. The Engineering team on the other hand do not care about the Marketing campaign used or even the gross sales, when they look at this view.

The only alternative for the poor developer would be to create multiple views with different fields to cater to each departments' requirements - one each for Sales team, Product team, Marketing etc. That would be a waste of effort and provides too much redundancy and changes to the core view query would have to be effected to each of the different views.

It would have been so much simpler if we had one generic view and then presented the user with a list of fields of that view along with checkboxes for the user to pick and choose which fields they wanted to see (and also export to the XLS) for that instance.

The proposed module 'views_dynamic_fields' creates a filter that allows for dynamic selection of fields. These will also hold true for the XLS download when configured with the views_export_xls module. Hence a user can choose the fields they want to download into their XLS module.

Other features of this module include the ability to either 'select' or 'deselect' fields (exclusion mode). If a view has a large number of fields and we need to remove just 1 or 2 from the display, then the selected fields can be chosen to be 'excluded', rather than 'included' by default. Screenshots attached. Unfortunately I do not have a website where I can demonstrate this. I would like to take this forward seeing the community adoption and features requested by others as well.

Please let me know if you would like additional details.

Thank you for your time!

girishmuraly’s picture

Status: Needs work » Needs review
girishmuraly’s picture

StatusFileSize
new29.13 KB

Adding additional screenshot which shows the user having chosen only certain fields for display (using the example screenshot attached in my previous comment).

jjwhitney’s picture

Looks very useful. Thanks!

girishmuraly’s picture

@jjwhitney Thanks.

Still looking out for reviewers to approve a CVS account for me!

girishmuraly’s picture

@kiamlaluno Would you think the extra information provided below would suffice for me to get a CVS account?

avpaderno’s picture

Status: Needs review » Needs work
  • The points reported in this review are not in order or importance / relevance.
  • Most of the times I report the code that present an issue. In such cases, the same error can be present in other parts of the code; the fact I don't report the same issue more than once doesn't mean the same issue is not present in different places.
  • Not all the reported points are application blockers; some of the points I report are simple suggestions to who applies for a CVS account. For a list of what is considered a blocker for the application approval, see CVS applications review, what to expect. Keep in mind the list is still under construction, and can be changed to adapt it to what has been found out during code review, or to make the list clearer to who applies for a CVS account.
  1. The license file needs to be removed, as every module is licensed under the same license used by Drupal, and the license file is automatically added by the packaging script.
  2. The code doesn't seem complete; there is no code in the installation file, and there is also a TODO comment. As reported in the requirements, the code must be complete.
  3. See http://drupal.org/coding-standards to understand how a module should be written. In particular, see how the code should be formatted.
girishmuraly’s picture

Status: Needs work » Needs review
StatusFileSize
new2.77 KB

@kiamlaluno Thanks for the review comments. I have made the changes below. Please review and tell.

1. Removed the license file.

2. Completed the TODOs.

3. Removed the empty installation file.

4. Reformatted code and ran it through coder.

5. Created a better readme file.

girishmuraly’s picture

@kiamlaluno Hi, do you have any other review comments on this? Just asking since I did not want to give up hope of getting a Drupal CVS account as I really want to contribute good stuff. This ticket has been left inactive for more than week!

Cheers

avpaderno’s picture

I will review the code tomorrow.

avpaderno’s picture

Assigned: Unassigned » avpaderno
avpaderno’s picture

Status: Needs review » Fixed

Thank you for your contribution! I am going to update your account.

These are some recommended readings to help with excellent maintainership:

You can find more contributors chatting on the IRC #drupal-contribute channel. So, come hang out and stay involved.
Thank you, also, for your patience with the review process.
Anyone is welcome to participate in the review process. Please consider reviewing other projects that are pending review. I encourage you to learn more about that process and join the group of reviewers.

I thank all the dedicated reviewers as well.

girishmuraly’s picture

Thanks kiamlaluno

Status: Fixed » Closed (fixed)
Issue tags: -Module review

Automatically closed -- issue fixed for 2 weeks with no activity.

avpaderno’s picture

Component: Miscellaneous » new project application
Issue summary: View changes
avpaderno’s picture