Ideas Application

Last modified by Thomas Mortagne on 2024/02/05 00:25

lightbulbIdeas Management Application
TypeXAR
Category
Developed by

Ludovic Dubost, Alexandru Chelariu, Sorin Burjan, Florian VĂ©ron, Thomas Mortagne, Manuel Smeria, Gabriela Smeria

Active Installs168
Rating
14 Votes
LicenseGNU Lesser General Public License 2.1

Installable with the Extension Manager

Description

You can also try the Pro version Ideas Application (Pro) which offers improvements and bugfixes for blocker issues concerning voting from the Livetable, Recent Ideas Macro, transations, IE11 and Edge, etc.

This application allows to suggest ideas.

Ideas Listing

Home page

 
The home page lists all submitted ideas and the number of people supporting it.

  • Add or remove your support by clicking on the number of vote.
  • Add an idea by adding new entry and filling the idea and its description.
  • Vote an idea and YOUR vote will be highlighted

Recent ideas macro

 
This macro also lists all ideas and the number of votes.

  • You can use this macro, by writing in a page with wiki editor:
    {{ideasrecent limit=10 /}}
    Where the macro parameter limit is the maximum number of ideas that you want to be displayed on your page. Its default value is 5.
  • Or, if you don't want to set a maximum number of ideas, you just write:
    {{ideasrecent /}}

This is how it will look like before adding ideas:

noIdeas.png

And after adding them:

ideas.png

Idea Details

Access details by clicking on the idea.
Additional information are showed here:

  • List of people supporting this idea, as well as people against it
  • Confirmation if logged user support this idea
  • Some fields (new in 1.2.1) allow to track status of the idea

Restriction

Guests cannot vote or display supporter list.

Screenshots

  • Create a new idea item:
    ideas_edit.jpg
  • Idea details:
    ideas_view.png
  • Ideas list:
    ideas_list.png

Prerequisites & Installation Instructions

We recommend using the Extension Manager to install this extension (Make sure that the text "Installable with the Extension Manager" is displayed at the top right location on this page to know if this extension can be installed with the Extension Manager). Note that installing Extensions when being offline is currently not supported and you'd need to use some complex manual method.

You can also use the following manual method, which is useful if this extension cannot be installed with the Extension Manager or if you're using an old version of XWiki that doesn't have the Extension Manager:

  1. Log in the wiki with a user having Administration rights
  2. Go to the Administration page and select the Import category
  3. Follow the on-screen instructions to upload the downloaded XAR
  4. Click on the uploaded XAR and follow the instructions
  5. You'll also need to install all dependent Extensions that are not already installed in your wiki

Setting the Recent Ideas gadget

  • Go to your dashboard
  • Edit it in inline mode and click on "Add gadget"
  • Search for "Recent Ideas"
  • Select it and edit the required parameters if needed
  • Click "Insert gadget"
  • You're done! emoticon_smile

Release Notes

v1.9.1

The following translations have been added with this release:

v1.9.0

The following translations have been added with this release:

v1.8.7

The following translations have been added/updated with this release:

v1.8.6

The following translations have been added with this release:

v1.8.5

v1.8.4

v1.8.3

v1.8.2

v1.8.1

v1.8

v1.7

v1.6

v1.5

v1.4

Migration from v1.3

From v1.3, the key values of the property priority have been modified.  Run the following script once to migrate.

{{velocity}}
#set($query = 'from doc.object(Ideas.IdeasClass) as idea')
#set($results = $services.query.xwql($query).addFilter("unique").execute())
#foreach($r in $results)
  #set($ideapage = $xwiki.getDocument($r))
  #set($idea = $ideapage.getObject('Ideas.IdeasClass'))
  #set($priority = $idea.getProperty('priority').value)
  #set($discard = $idea.set('priority', "$stringtool.lowerCase($priority)"))
 * Update //priority// property from [${priority}] to [${idea.get('priority')}] in page '[[${ideapage.title}>>${ideapage}]]'
  #set($discard = $ideapage.save())
#end
{{/velocity}}

Migration from v1.2.1

From v1.2.1, the key values of the property priority have been modified and you may have incorrect values in assignement property.  Run the following script once to migrate.

The priority property will be modified considering the following rule:

  • 'Critical' becomes 'high'
  • 'High' becomes 'high'
  • 'Normal' becomes 'medium'
  • 'Low' becomes 'low'
{{velocity}}
#set($query = 'from doc.object(Ideas.IdeasClass) as idea')
#set($results = $services.query.xwql($query).addFilter("unique").execute())
#foreach($r in $results)
  #set($ideapage = $xwiki.getDocument($r))
  #set($idea = $ideapage.getObject('Ideas.IdeasClass'))
  #set($priority = $idea.getProperty('priority').value)
  #set($assignement = "$idea.getProperty('assignement').value")
  #set($userpage = $xwiki.getDocument($assignement))
  #set($user = $userpage.getObject('XWiki.XWikiUsers'))
  #set($isUser = false)
  #if($user)
    #set($isUser = true)
  #end
  #if("$priority" == 'Critical')
    #set($discard = $idea.set('priority', 'high'))
   * Update //priority// property from [${priority}] to [high] in page '[[${ideapage.title}>>${ideapage}]]'
  #elseif("$priority" == 'Normal')
    #set($discard = $idea.set('priority', 'medium'))
   * Update //priority// property from [${priority}] to [medium] in page '[[${ideapage.title}>>${ideapage}]]'
  #elseif("$priority" == 'High' || "$priority" == 'Low')
    #set($discard = $idea.set('priority', "$stringtool.lowerCase($priority)"))
   * Update //priority// property from [${priority}] to [low] in page '[[${ideapage.title}>>${ideapage}]]'
  #else
    #set($discard = $idea.set('priority', ''))
   * Update //priority// property from [${priority}] to [] in page '[[${ideapage.title}>>${ideapage}]]'
  #end
  ## Assignement should only be a user
  #if(!$isUser)
    #set($discard = $idea.set('assignement', ''))
   * Update //assignement// property from [${assignement}] to [] in page '[[${ideapage.title}>>${ideapage}]]'
  #end
  #set($discard = $ideapage.save())
#end
{{/velocity}}

v1.3

v1.2.1

New version of the Ideas application with new features:

  • Vote against
  • Additional fields to track evolution of the idea
    • Status (open / close / rejected)
    • Cost
    • Assignee

To upgrade from 1.1.x please visit Ideas.FixIdeas to upgrade the existing ideas.

v1.1.2

Second version of the ideas application

v1.0

First version of the ideas application

Tags:
    

Get Connected