MantisBT

View Issue Details Jump to Notes ] Wiki ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000668mantisbtfeaturepublic2001-07-05 21:272012-03-26 04:15
Reporterjkorab 
Assigned Togiallu 
PrioritynormalSeverityfeatureReproducibilityunable to reproduce
StatusassignedResolutionopen 
PlatformOSOS Version
Product Version0.15.0 
Target Version1.3.xFixed in Version 
Summary0000668: Voting for bugs appears to be unavailable
DescriptionView bugs presents a vote field which suggests that multiple users can vote for a bug to indicate that it too is happening to them. This feature does not appear anywhere else though, making this function impossible.
Tagspatch
Attached Filestxt file icon voting for r5156.txt [^] (49,873 bytes) 2008-04-06 05:34 [Show Content]
patch file icon voting for r5176.patch [^] (55,841 bytes) 2008-04-20 06:02 [Show Content]
patch file icon voting for r5500.patch [^] (67,322 bytes) 2008-08-06 03:37 [Show Content]

- Relationships
has duplicate 0000697closedprescience New idea voting booth 
has duplicate 0003717closedgrangeway Allow for polls 
has duplicate 0005867closedgrangeway Vote for issue 
has duplicate 0007707closedvboctor Vote and Validation Feature 
has duplicate 0008907closedvboctor Limit maximum sponsorship with $g_maximum_sponsorship_amount in lieu of voting 
has duplicate 0003624closedvboctor Add Counter, so that there is a column in "view_all_bug_page.php" that shows the hits per bug 
has duplicate 0006326closedgrangeway Inheritance of news to subprojects 
has duplicate 0005551closedgiallu Assign point contingents for users / user groups and start programming when certain threshold has been collected. 
related to 0004143closedgrangeway Add ability to limit total sponsorship fund by access level. 

-  Notes
User avatar (0000979)
prescience (reporter)
2001-07-06 11:53

Correct, I've disabled it for the time being. It'll get re-enabled eventaully, probably with some added niceties.
User avatar (0001145)
rep (reporter)
2001-08-15 06:53

Look forward to it.
Wish I could vote for this request!
User avatar (0001146)
legolas (reporter)
2001-08-15 11:03

hmm i'wonder what is it good for? bugs are to be corrected not to be voted for:_)
User avatar (0001147)
myplacedk (updater)
2001-08-15 11:26

Read the docs! :)
http://mantisbt.sourceforge.net/mantis/documentation.html#add_vote [^]
User avatar (0002108)
awalsh (reporter)
2002-03-15 13:19

The ability for developers to establish relative priority (wrt users) of bugs/enhancements is great.

However, will users be able to increase the tally by simply pressing "Vote for this Bug"? This takes the need for a duplicate report away..

Tracking who votes would also be useful. You don't want an artificial tally created by a single vigilant user.:-)
User avatar (0006172)
lantic (reporter)
2004-07-20 07:23

There's a high degree of cross-over between this feature & sponsorship but obviously within the same company true sponsorship isn't really an option as it would quickly become becomes non-sensical if users can sponsor issues with unlimited "funds". So perhaps a limit could be set on the amount of votes/funds each user gets per project based on their access level.

For instance:
Viewer : $10
Reporter : $20
Updater : $30
Developer : $50
Manager : $100

This would enable managers to have a greater say then reporters over what should get fixed but still give the non-developers a voice (provided they club together) when working in environment where paying each other wouldn't make sense.

What do you think?
User avatar (0006173)
lantic (reporter)
2004-07-20 07:27

May make 0003890 redundant, if sponsorship can be made to work without money.
User avatar (0006174)
bblan (reporter)
2004-07-20 07:58

from a reporter point of view, what's the difference between Priority and Votes?
Aren't they a little bit similar?
Can votes influence priority (programmaticaly I mean)? Many votes could raise the issue priority.
User avatar (0006175)
lantic (reporter)
2004-07-20 08:34

Priority can often only reflect the opionion of the person setting it. As such votes/sponsorship may give better overall view of what users want. So yes, potentially priority could be updated by the votes/sponsorship for a given issue.

I've added a issue 0004143 to better reflect the concept of limiting sponsorship for non-fiscal environments.
User avatar (0006561)
lantic (reporter)
2004-08-02 14:35

See previous discussion on issue 0004143. There does appear to be a fair degree of support for a true voting system making 0004143 somewhat redundant.
User avatar (0006606)
lantic (reporter)
2004-08-03 16:10
edited on: 2004-08-03 16:12

Voting Implementation Thoughts...

User Interaction:

1. User is allocated a set number votes by a manager/administrator. (Should this be global or per project?)

2. User can then vote for issues from the issue view page. Something similar to the following might be the best approach:
    Label: Total votes assigned to this issue.
    Label: Total users voting for this issue.
    Label: Vote ranking. (Should this be global or per project?)
    Input field: Vote count to assign to this issue.
    Button: "Vote" [for this issue.]
    Button: "Withdraw votes" [from this issue.]

3. Add facility to order the view issues page by vote count.


Database Changes Required:

1. Add votes_allocated & votes_exercised int(7) fields to the mantis_user_table. Used to reflect the total number of votes allocated & currently exercised by a user.

2. Add a mantis_voting_table to the database with the following structure:
    id - unique index for vote entry
    bug_id - associated bug index
    user_id - associated user index
    votes - number of votes exercised by the user for this bug

3. Add a vote_total column to mantis_bug_table for quick lookup.


Issues:

1. How to handle a reduction of a users "votes_allocated" below their existing "votes_exercised" if changed by an admin user?

Ideally it would be best to attempt to scale the number of votes allocated to each issue by their new total allocation, still reducing the users voting power but preserving their voting priorities.

For instance, say a user had an initial allocation of 100 votes & had them exercised on 2 issues 60:40. Then assume an admin reduced the users allocation to just 50 votes, the users votes for the 2 issues would become 30:20.

2. Do votes get automatically freed up as soon as a bug is closed?

edited on: 08-03-04 16:12
User avatar (0006616)
sgrund (reporter)
2004-08-04 01:09

just my 2cents:

- User Interaction:
1) User is allocated a set number votes by a manager/administrator. (Should this be global or per project?)

per project

2)Label: Vote ranking. (Should this be global or per project?)

per project

- Issues:

1. How to handle a reduction of a users "votes_allocated" below their existing "votes_exercised" if changed by an admin user?

I think the easiest aproach is: reduction takes place when "votes_allocated" where automaticali reduced because of closing issues.
Example: user has 100 votes and all are 'placed'. Now he is reduced to 50. One issue (voted 60) is resolved => now he have 10 votes free.

2. Do votes get automatically freed up as soon as a bug is closed?

quote from bluetooth in 0004143:
Points get assigned to issues until they reach status X (e.g. assigned), until status X is reached, users can re-allocate their points.

Points are freed and given back to the user once the issue reaches status Y (probably resolved).

status X and status Y should be customizable by manager (per project)
User avatar (0007726)
razortt (reporter)
2004-09-23 19:02

has the voting implementation been put on the back burner?

Our team uses Mantis and would love to have the ability to gauge users priorities. Sgrund's 2c sound great.
User avatar (0007731)
lantic (reporter)
2004-09-24 04:34

I'm planning to create an implementation of voting. In fact I've already started it. My only issue is lack of time at the moment, so I can't provide a good idea of ETA.
User avatar (0007732)
minibbjd (reporter)
2004-09-24 07:09
edited on: 2004-09-24 07:27

I agree that voting is really, really much needed and should be given priority over other new features. Actually, I just came here to ask for an ETA when I saw razortt already did. :-)

I second sgrund's comments. Here are some more:

-Maybe obvious, but we should be able to sort by total number of votes.
-Maybe even sorting by "votes per user for this issue" (and showing this value) would make sense. (Having ten people vote for an issue with one point should be more of a priority than one user voting with 10 points.) EDIT: That doesn't make sense. "Votes per user" wouldn't give this info, but "Number of users who voted for this issue" would.
-Being able to give additional voting points to users who participated in the discussion of an issue as a gratification at the time we close/resolve bugs would be cool!

edited on: 09-24-04 07:10

edited on: 09-24-04 07:27
User avatar (0007937)
stevemagruder (reporter)
2004-10-06 13:50

I vote for a voting feature not unlike that in Bugzilla. If I could have voted, I wouldn't have needed to create a "me too" note like this one. :)
User avatar (0011311)
cornchips (reporter)
2005-08-29 22:20

I would like to second the request for voting
User avatar (0011851)
xstaindx (reporter)
2005-12-29 13:47
edited on: 2005-12-29 13:49

I would like to see voting implemented. is there any update on its status?

User avatar (0013502)
johnwebbcole (reporter)
2006-09-25 09:18

+1 for voting. I have been asked several times by managers if we could open issues up for voting, to let users decide which features should be implemented first. Is this something that is being looked at for 1.1?

John
User avatar (0014166)
c_schmitz (reporter)
2007-03-10 17:16

ok.. just put $100 on it. This money will go from the PHPSurveyor project at http://www.phpsurveyor.org [^] to the Mantis project as soon as this feature is implemented in a stable release.
User avatar (0014239)
vboctor (administrator)
2007-03-24 19:50

I've created a requirements page on the wiki for this feature. Let me know your thoughts.

http://www.mantisbt.org/wiki/doku.php/mantisbt:issue_voting_requirements [^]

I think we should start by allowing users to give a thumbs up or thumbs down for a feature. Show the users votes on the issue view page, show the totals in the View Issues page. Initially also provide no limit on the number of total votes, but only allow one vote per issue.
User avatar (0015549)
c_schmitz (reporter)
2007-08-28 13:13

Well.. even if we are now LimeSurvey ( http://www.limesurvey.org [^] ) the 100$ are still put for this feature.

Can you give me feedback when you expect this feature to be available?
The Wiki page looks fine and I am totally fine with the way you want to implement it.
User avatar (0017114)
ingorenner (reporter)
2008-02-19 17:54

someone working on this or has a solution already? We'd really need that...
User avatar (0017115)
CADbloke (reporter)
2008-02-19 19:34

Despite my lengthy request-entry in the Wiki I'd be happy to see this implemented in a simpler form.

An alternative is to set $g_sponsorship_currency to "Beers" (legal tender in my part of the world) and fiddle some page layouts to change to the word "sponsor" to "vote" to use sponsorship as a voting system. This wouldn't be as tidy as voting but it is one way of conveying support for bug-fix.

While not wanting to hijack this report, is there anywhere you can tell how many users are monitoring a bug? That would also give some idea of how many people want it fixed.
User avatar (0017118)
ingorenner (reporter)
2008-02-20 05:14

sorry, but this is a quite lousy idea... you're abusing a feature that is not meant to do that... other than that, just imagine someone being in the need for both, having sponsoring and voting at the same time...

the concept in the wikie seems realy thought through though
User avatar (0017119)
c_schmitz (reporter)
2008-02-20 05:41
edited on: 2008-02-20 05:43

I put the total money for the sponsorship on this issue almost a year ago. (100$). First money for this was bidden in 2006.
Nothing was implemented since then.

This bug is the one with the second highest sponsorship on this whole system.

That leads to the question why offer a sponsorship feature in this bug tracker at all if it doesn't lead to any work done.

This is seriously a lousy treatment of possible sponsors and I am considering to pull the sponsorship at all since we get less and less dependant on such a feature.

So.. whats up?

User avatar (0017123)
giallu (developer)
2008-02-20 07:38

It's on my radar but with a low priority so any patch is really, really welcome.
User avatar (0017129)
xstaindx (reporter)
2008-02-20 11:46

I gave up on an implementation date for this issue, it and many other problems with mantis led me to switch to Atlassian JIRA http://www.atlassian.com [^] (Free for Open Source Projects)

I no longer have any intention on paying (Sponsering) for the implementation for this issue in Mantis as I no longer use it - please remove my sponsorship.

Thank You.
User avatar (0017130)
giallu (developer)
2008-02-20 12:27

@xstaindx
I'm not even sure the sponsorship was really paid for _any_ bugs in this tracker so rest assured I will _not_ be after you when this will be implemented.

Unlike JIRA, we have _no_ paid programmers to work full time on mantis so we give out the code for free to everybody in the hope we get some contributions from parties willing to see a new feature or a bug fixed.

This usually works, it's a pity t did not for you
User avatar (0017228)
cornchips (reporter)
2008-03-01 02:30
edited on: 2008-03-01 02:41

After reading http://www.mantisbt.org/wiki/doku.php/mantisbt:issue_voting_requirements [^]

I'd be willing to code this up and submit a patch, unless it is already being worked on by someone else?

The current code in svn trunk does not seem to indicate any start of a vote api, can i assume no one has got to it just yet?

User avatar (0017229)
giallu (developer)
2008-03-01 02:53

@cornchips: right. Feel free to contact me here, on irc://irc.freenode.org/#mantis [^] or on mantisbt-dev mailing list for anything else you may need to code the patch.

Please be sure to follow
http://www.mantisbt.org/wiki/doku.php/mantisbt:coding_guidelines [^]
http://www.mantisbt.org/wiki/doku.php/mantisbt:howto_submit_patches [^]

for a quicker integration

Thank you very much in advance
User avatar (0017236)
cornchips (reporter)
2008-03-01 19:49

OK, I've started coding, about half the api and gui done. Will contact you on IRC when I have some questions.
User avatar (0017237)
vboctor (administrator)
2008-03-02 00:34

Thanks cornchips. I've done some updates to the Wiki page. Please check the revision history of the page. It has been a while since I wrote the requirements, so I added some details to keep the feature consistent with other features that have been implemented since then.
User avatar (0017299)
vboctor (administrator)
2008-03-09 03:25
edited on: 2008-03-09 03:26

Check this out. This is a site that is using by Ubuntu to allow users to vote on ideas. This is similar to what we are aiming by this feature:
http://brainstorm.ubuntu.com/ [^]

The interesting take aways from the above Ubuntu website are:
1. Ability to vote on issues from the summary view.
2. Ability to sort issues by popularity based on a certain time window (today, this week, this month, ever).
3. Ability to focus on a specific category.
4. Preview of the problem description with a link including the number of comments, which allows user to read more details.

Would be interesting if we can integrate some of these ideas in our Mantis Voting implementation.

User avatar (0017302)
cornchips (reporter)
2008-03-09 21:08

I like it. I especially like the idea of a view that has say just the Top X number of issues, with the full description of the issue shown to the user. One issue I have always had with the summary view is it's great for dev's but can be confusing for reporters - I would think a brainstorm view provides a clean simple view for most reporters to look at (and would possibly prevent duplicates being filed).
User avatar (0017463)
vboctor (administrator)
2008-03-26 17:28

Here is another example of a user feedback / brainstorming feature:
http://example.uservoice.com/ [^]

@cornchips, what are you up to with the implementation? Will you be able to provide a patch with your implementation soon? From memory, you were done with all the core features.
User avatar (0017464)
vboctor (administrator)
2008-03-26 17:40

One more:
http://www.fevote.com/facebook [^]
User avatar (0017467)
cornchips (reporter)
2008-03-26 18:39

Still here, I got stuck in one area of the code and havn't had time to pick it up again, however I have time to finish it now, so i would expect I should be able to submit the patch sometime before april 6th.
User avatar (0017557)
cornchips (reporter)
2008-04-06 05:40

I've just added my patch for svn r5156. However i still need to cleanup the code to match the mantis coding guidelines. All basic features are complete, and there is also a credit system based on user access level.

I would also still like to add a 'my votes' view similar to the my sponsors view, as well as a brainstorming view like the facebook/uservoice/ubuntu examples mentioned above.

So, consider this an 'alpha' version if you like. I should have further time this week to complete the features mentioned above.
User avatar (0017558)
c_schmitz (reporter)
2008-04-06 06:14

That sounds really great.
I assume you are not a Mantis dev team developer. If this makes it into release version I will make sure you get a compensation too.
User avatar (0017620)
vboctor (administrator)
2008-04-17 22:13

@cornships, how is the work going?

I've attempted to apply the patch but I got an error for each file. Here is an example:
error: Internet/mantis/bug_view_advanced_page.php: No such file or directory

That patch also seems to use Windows new lines, not sure if this will cause issues applying the patch on Linux.

While you are at it, please update the patch on the latest SVN code on trunk.
User avatar (0017628)
cornchips (reporter)
2008-04-20 06:08

I've resubmitted the patch for r5176. I also converted all files i have modified/added to unix line endings, however tortoise svn seems to make the patch itself include windows line endings. Hopefully you will have better success this time.

Also this version corrects a few bugs, and adds a 'my votes' page similar to my sponsorships.

@c_schmitz - No i'm not a Mantis team developer, just someone who has used Mantis for a while and felt like contributing something back to the project. Please direct all compensation to the regular team as they have done the hard work to make a bug tracker that rocks!
User avatar (0017664)
c_schmitz (reporter)
2008-04-23 12:22

Thank you, cornchips. Your patch is very much appreciated. Will do!
User avatar (0017821)
ViperMaul (reporter)
2008-05-13 12:58

Dear vbdoctor or Mantis Developers,
With all the great work by cornchips, what is the status of this feature being included in the next dev or stable release?
User avatar (0017852)
c_schmitz (reporter)
2008-05-16 08:27

I second that question....?
User avatar (0017853)
giallu (developer)
2008-05-16 10:06

victor is in vacation right now; I think he will be back this weekend so hopefully he can have a look at it.

FWIW, I think if it just barely works, it would be better to merge it now in trunk rather than waiting more, so we can have more testing when 1.2a2 is released
User avatar (0017909)
c_schmitz (reporter)
2008-05-23 15:27

?
User avatar (0017933)
ViperMaul (reporter)
2008-05-29 00:19

vboctor, What are the chances this will make it into 1.2.0a2?
User avatar (0017938)
vboctor (administrator)
2008-05-29 02:39

I've set the target version to 1.2.0a2. I'll review the patch and try to re-attempt to apply it.
User avatar (0017968)
vboctor (administrator)
2008-05-31 02:19

cornchips, looks great. Here is a partial review. I wasn't able to apply the patch, I'll need another one based on the latest code. I'll review the functionality once I can apply and test the patch.

General:
1. Add standard Mantis header to all new files.

account_voting_page.php:
1. You get $t_project_id, but don't use for filtering. You have a TODO to track this. However, if you aren't using, then no need to get it.
2. vote_get_user_votes(), with APIs that take user ids, the user id is typically the last parameter and is defaulted to null which means currently logged in user.
3. $t_show_all should be renamed to $f_show_all since all variables set by gpc_* should be prefixed with $f_.

schema.php:
1. Should the default weight for a vote be 1?

bug_vote_add.php:
1. voting_place_vote_threshold: when accessing a configuration option more than once, assigned it to $t_ var and re-use the var.
2. I don't think the first check on the configuration option is correct. Use vote_is_enabled().
3. We don't use 1 line if statements. Please use the standard multi-line "if" format.

bug_vote_delete.php
1. See comments on bug_vote_add.php
2. I wonder if we should have a separate config option for removing a vote. For example, if the admin wants to configure Mantis so that users can't change their votes one they are cast.

bug_vote_list_view_inc.php
1. You are using $t_core_path without initializing it. This can be a security issue.

config_defaults_inc.php
1. Add a 0 for unlimited support in the default number of votes configuration option.

helper_api.php
1. Shouldn't you also remove the voters positive and voters negative. Although these are not added by default, but they can be in the configuration and we should remove them when applicable.

vote_api.php
1. If the vote weight is 0 or greater than max weight, then generate an error rather than returning without an error. What you are doing is correct, but is not consistent with the rest of the APIs. In the 1.2.x branch we will eventually replace these trigger_error calls with throwing exceptions.
2. The way you update the votes count can be an issue if more than one user are voting on the same issue at the same time. I would suggest that you update the counts based on the votes table, rather than incrementing / decrementing. I would add a votes_updates_counters_for_issue( $p_issue_id )
3. You have multiple bug_set_field(), it would be faster to have a single update for the issue.
4. In the vote_delete(), remove the row then call votes_update_counters_for_issue().
5. vote_delete_user_votes() doesn't update the issue history. Not sure if this is done to other features. If we do update the history, then we should update the last updated timestamp for these issues.
6. vote_get_user_votes() should include or exclude the resolved issues using the query. This will save loading this issue in most of the cases where resolved issues are excluded. You can use the resolve issue threshold configuration option or even have another configuration option for status threshold to exclude from voting which is by default is set to resolved status threshold configuration option.
7. voting_is_enabled() should default the parameter to currently project, rather than all projects. If the current project has voting disabled, then we should treat it as so.
8. vote_can_vote() shouldn't depend on readonly flag being not set. Voting on an issue doesn't really modify the issue. It is like monitoring the issue.
9. vote_max_votes() shouldn't default the config option if not found. The default should be in config_defaults_inc.php
20. vote_used_votes() shouldn't default configuration option here.

... more to come ...
User avatar (0017976)
cornchips (reporter)
2008-05-31 23:02

I'll have time to begin to review the list and start implementing changes on the 8th of June.
User avatar (0018112)
ViperMaul (reporter)
2008-06-17 00:17

Thanks vboctor and cornchips!!
We appreciate your efforts.
Looking forward to any status updates.
User avatar (0018125)
c_schmitz (reporter)
2008-06-17 20:35

If this makes it into 1.2.0a2 I will add 50$ on top.
User avatar (0018158)
vboctor (administrator)
2008-06-23 01:47

@cornchips, there seems to be a lot of votes to get this votes feature in! How are you doing with the comments that came out of the review?
User avatar (0018199)
mgeck (reporter)
2008-06-27 07:35

Thanks for your effort. This would be a great feature.
User avatar (0018635)
c_schmitz (reporter)
2008-07-22 13:09

@cornchips: any news?
User avatar (0018644)
cornchips (reporter)
2008-07-23 05:45

Hey, i've just recently returned from a holiday, will get those changes made this weekend and update the patch for the current mantis revision this weekend.
User avatar (0018676)
cornchips (reporter)
2008-07-27 04:23

OK, I've managed to get through about 70% of the items on the code review, It took longer than expected to bring my changes up to date through the almost 250 revisions in svn since the original patch. Will try and get the last items done tomorrow.
User avatar (0018679)
c_schmitz (reporter)
2008-07-27 13:40

Sounds great :-). Looking forward!
User avatar (0018702)
cornchips (reporter)
2008-07-28 07:07
edited on: 2008-07-28 07:08

@vboctor, quick question, vote_api.php -3 , using multiple bug_set_field() calls, what alternative call should I use, i didn't want to create my own sql update since that would break the bug api encapsulation.

also vote_api.php -5, vote_delete_user_votes() intentionally doesnt update the issue history since it is only supposed to be called post issue delete, as a way to clean up a related table.

I've now completed all other updates, and thank you very much for your feedback, will post the next patch once the last couple of items are done

User avatar (0018720)
giallu (developer)
2008-07-28 11:04

for -3 I guess you can use bug_update() after you modify the required fields in the BugData object.

for -5 then the function name is somewhat deceptive; maybe something like vote_restore_user_votes() could be better, but be sure to add some documentation to the function so it's harder to get fooled.
User avatar (0019057)
cornchips (reporter)
2008-08-06 03:41

Just added a new patch for r5500, incorporating the feedback received. Will continue to make some more small tweaks, but would appreciate a new review.
User avatar (0019059)
giallu (developer)
2008-08-06 03:48

My 2 cents.

Since we are still in alpha state for 1.2, if you are committed to continuing tweaking/fixing the code, I'd rather commit the code as is so we can actually start using it and see how we like it.

BTW, on new files we agreed the first copyright line:

Copyright (C) 2000 - 2002 Kenzaburo Ito - kenito@300baud.org

should not be added

Victor, are you okay with this plan?
User avatar (0019211)
vboctor (administrator)
2008-08-22 19:55

I did a quick review, here are some more comments:

Functional:
- The patch implements a more complex voting model than what is spec'd in the requirements. I recommend we cut the features below to simplify the voting feature and how it can be used. I really think voting should be as simple as thumbs up/down and a number. This is the trend that is following in almost all other voting applications that I have seen. The features are:
- Limits on number of votes per user.
- Weights of voting.
- Maximum weights per access level.
- Weight default.

Some more minor code review comments:

config_default_inc.php
- Voting per project. Note that all the settings should be settable per project. I think it makes sense to get rid of this configuration option and have the admin setup a global default config that applies per project, or different config per project.

core/my_view_inc.php
- 'user_votes' should be changed to FILTER_PROPERTY_VOTES_USER_ID

core/html_api
- Use voting_can_vote() / voting_is_enabled() rather than accessing voting configuration directly.

core/votes_api.php
- You check for user/bugs exist by checking that their id is greater than 0. You should use bug_exists() / user_exists().
- In several APIs you have the API name as the first line of comments. Shouldn't these be removed?
- vote_can_vote() should pass the $p_user_id to the config_get() call. Same for other vote APIs like vote_can_view_vote_details() / vote_max_votes() / check the rest.
- vote_can_vote() do we want to have this check that the voting is ON? This way other places check only one API? This is assuming we cache the result of vote_is_enabled().
User avatar (0019212)
vboctor (administrator)
2008-08-22 19:58

I'm not sure if emails are being sent for this issue, since it seems that bugnote_add fails silently when it is preparing the emails.

I recommend that the filtering code be review by daryn. Can be found on the IRC channel, or myself / giallu will let him know when we meet him there.
User avatar (0019396)
ViperMaul (reporter)
2008-09-15 01:11

It seems we are so close and yet so far. What is the status?

I like what giallu had to say, but I do not know who is in charge.
Some of us are probably willing to tweak whatever we get as long as we get something to start with. We do not know how long we get the services of much appreciative cornchips. I also appreciate what vboctor has to say about simplification. However, since we have been waiting this long I was hoping for a release now and then simplify later. Either way who cares what I think. My main goal is keep the ball rolling here.

May I ask the current status?
User avatar (0019415)
grangeway (developer)
2008-09-19 18:59

i'm bored atm so trying to see how easy it would be to make this a plugin within the 1.2 plugin architecture.

However, one of the things I think we're lacking atm and would need adding is plugin events on DELETE.

Paul
User avatar (0020501)
ViperMaul (reporter)
2008-12-30 15:55

How is the status on this looking for the new year?
User avatar (0021007)
ViperMaul (reporter)
2009-03-05 15:43
edited on: 2009-03-05 15:43

Checking the status on this.
Have we forgotten about this one?

User avatar (0021008)
giallu (developer)
2009-03-05 15:58

I did not...
I have a local git branch where I applied the patch and I am trying to work out a dependable solution.

Other things prevented me to really finish the code, but given the inertia we are seeing for a 1.2 release, chances are I'll make it in time...
User avatar (0021785)
dhaun (reporter)
2009-05-06 17:08

I see this has been pushed back even further (post-1.2).

Could someone kindly explain what's holding this up? There is a patch and people have apparently been working on integrating it. So what's the problem?
User avatar (0021786)
c_schmitz (reporter)
2009-05-06 17:43

dhaun, thanks for putting more money on this. It's only been 2 years since I put my sponsoring of 100$. Note the sarcasm.
User avatar (0021874)
cornchips (reporter)
2009-05-22 03:25

OK, I have some more time to spend on this, should I just pickup where I left off or has further work been done to the patch?

Re: advanced functionality, all extra options like weights can be defaulted to off, no-one need know they exist unless they look for them. It's very simple to set vote weight options to just +1 and -1
User avatar (0021875)
giallu (developer)
2009-05-22 03:46

@ cornchips
I'm working on your patch right now, if you want to help I can push somewhere (github?) the branch I'm hacking on.
User avatar (0021879)
cornchips (reporter)
2009-05-22 05:09
edited on: 2009-05-22 05:44

Yep github will be fine (user name is lukemoynihan), do you have a list of things you are working on? and what needs to be done to get this committed into mantis?

User avatar (0021881)
giallu (developer)
2009-05-22 06:03

well, what I'm doing is to move your original vote_api to a Mantis_Vote class using the new coding style we discussed in the -dev ML.

The first step is to adapt the rest of the code to make the correct calls, that's mostly search and replace.

Then we need some testing (I hope those subscribed to this bug will help there) before pushing this first implementation.

Afterwards, we'd need to make up some smarter use of the Vote class (right now it's just a collection of static methods).

Have you got any items left on your previous to-do list to add up?
User avatar (0021937)
red_spirit (reporter)
2009-05-27 09:24

Hello people. Plz explain how to install this option(vote)?
i cant find info about
thanks
User avatar (0021945)
giallu (developer)
2009-05-27 17:46

So, who wants to check the current state of affairs can download the code as a zip/tar or by cloning the repo at:

http://github.com/giallu/mantisbt/tree/votes_refactor [^]

expect more changes to land there
User avatar (0021946)
vboctor (administrator)
2009-05-28 00:16

Giallu, I downloaded the tarball from the above git repository and got the following error. Also cloning the repo produces an empty folder with just .git.

SYSTEM WARNING: include_once(Mantis/Vote.php) [function.include-once]: failed to open stream: No such file or directory

SYSTEM WARNING: include_once() [function.include]: Failed opening 'Mantis/Vote.php' for inclusion (include_path='/var/www/html/votes/v/core:/var/www/html/votes/v/library:/var/www/html/votes/v/application:.:/usr/share/pear:/usr/share/php')
User avatar (0021949)
giallu (developer)
2009-05-28 03:22

Victor, sorry for the massive stupidity. Now I pushed some missing commits.

If you're cloning be sure to checkout the votes_refactor branch like:

git checkout -b votes --track origin/votes_refactor
User avatar (0021950)
vboctor (administrator)
2009-05-28 03:46

Here are some initial comments:

1. votes_total column doesn't seem to be available.
2. Negative votes are not accounted properly on the issue view page, or view issues page.
3. When a vote issue on an issue, we should consider allowing delete + add, or modify directly. Modifying to 0 will also delete.
4. The user name is the issue history is hyperlinked, where the reporter name and user names in the voting are not.

More to come later.
User avatar (0021952)
giallu (developer)
2009-05-28 06:20

2 and 4 are now fixed.

For 1, I found out we're not adding that column, but instead making that up for filters (grep for REVIEW in filter_api).

Do you see any value in displaying the positive and negative votes count? Right now I'm leaning toward removing the two fields and replace them with just the votes_total column. Same goes for the total number of voters.
User avatar (0021954)
cornchips (reporter)
2009-05-28 07:15

Please please please don't get rid of the differentiation between positive and negative votes, if combined you might see an issue with a vote score of 3 not realizing that actually it has a positive count of 30 and a negative count of 27.

For example there has been plenty of duplicates of this issue (668), some suggested the idea of modifying sponsorship, you might get lots of positive votes because people want voting, while you also get lots of negative votes because people dont like the implementation of modifying sponsorship to incorporate voting. If I can only see a total vote score I will never know how important this issue is.
User avatar (0021965)
giallu (developer)
2009-05-28 18:35

I'm not trying to dumb down the feature but what I'm examining is the value of the added colums, and even if we change them we can still pull the +/- details from the votes table.

As I see it, the most information comes from the voters+overall value pair: a bug on +3 with 5 votes means 4 of 5 users voted +1. The same +3 in your example (30-27) imply a more controversial item.

In any case, I'm pretty sure I'll not base implementation choices on user's votes :P
User avatar (0021967)
vboctor (administrator)
2009-05-29 13:49

Are we going to be adding a view like the following? I think it really adds a lot of value for this feature.
http://brainstorm.ubuntu.com/ [^]

The above tool also has the concept of "Don't Care", I wonder what people think of this. I'm not sure how I would use it.

I'll look further into the code changes / requirements / etc to provide my feedback on the columns.
User avatar (0021972)
vboctor (administrator)
2009-05-30 02:27

Here are some more comments:

1. voting_enabled doesn't hide the voting table from the user page.
2. voting_enabled doesn't hide the voting history entries (I think that is OK).
3. voting_enabled doesn't hide the "Voted By" filter UI.
4. voting_enabled doesn't remove the Voted By query from the applied filter.
5. When I use $g_voting_default_num_votes while logged in as ADMIN, the votes for REPORTER are used rather than ADMINISTRATOR or DEVELOPER.
6. $g_default_notify_flags should support defining the email notifications criteria for voters (same way like reporters, bugnote authors, etc).
7. Email notifications should make email notification on voting configurable (optional). By default it would be OFF anyway.
8. Do we want to allow different budget for positive vs. negative votes? For example, I could see admins providing users with more negative votes budget than positive budget. One way to configure this would be through a multiplier. Negative/Positive = 2.
User avatar (0021973)
vboctor (administrator)
2009-05-30 02:58
edited on: 2009-05-30 03:43

9. In the API, lets discuss offline the directory structure, I don't understand the use of the Mantis folder level under application.
10. For the APIs that take in a project and a user, I think we typically put the user first then the project. Although I would expect the caller will either provide both or skip both.
11. When calling config_get(), make sure to pass in the user / project, specially when they are passed as parameters.
12. Classes should through exceptions rather than trigger errors.
13. I think the votes area in the View Issue page takes too much space and the background for the vote counts value cell is not correct.
14. In pages like bug_vote_delete.php, ideally we should move the access check to the API. We either have the check in the API and throw an exception, or at least move the retrieval of the appropriate access level to the API.
15. Update the Docbook manual.
16. Update Soap API to return the extra fields as part of the issue data.
17. Unit tests? would be nice - at least to ensure that the class is testable.

User avatar (0022003)
grangeway (developer)
2009-05-31 12:16

Shouldn't this be as a plugin? (see my note 0019415 for what I thought was missing from event api to stop this atm).

That way people can implement additional criteria/versions for voting. For example the MIS system vendor we use at work often asks for people to vote on change requests. They give you 100 votes to use, you can link them against any CR's that have been raised. At the end of the process, they go through the CR's with the most votes and implement them (or report back as to why they won't implement them). This works quite well as you can't vote for everything, so need to think about what you do want to vote for.

Given the r5500 patch, if we avoided storing the vote count in the bug table ( with the correct indexes, I'd expect a db calculating the vote count to be fast - there's going to be less entries in the vote table then the bug_history table), then there's nothing that stops this from being implemented completely as a plugin. (apart from the missing DELETE event)
User avatar (0022021)
giallu (developer)
2009-06-01 05:30

No, thanks, I can live without plugins...
User avatar (0022055)
giallu (developer)
2009-06-06 18:10

regarding 0000668:0021967, yes I think that's easily doable once the backend is in place
User avatar (0024352)
Hauptmann (reporter)
2010-02-09 04:30

What is the state of this issue?
We would find it very useful to have polls on the solution of an issue.

At our company using mantis the following practice is used: if a solution has to be discussed all users a message is send and they have to add comments to the respective issue indicating their preferences. This is difficult procedure since it tends to lengthy debating rather than finding a quick solution.

We are currently thinking about using media wiki for polls. This is of course not the preferred solution since we then have yet another system.
User avatar (0025716)
djcarr (reporter)
2010-06-07 01:30

My company has requested an ideas discussion site and Mantis ticks every box except for a like/dislike voting system. For an issue with say 8 votes you could then see a list of the 10 users that liked it and the 2 users that disliked it, and this information would stimulate further discussion about the value of an issue.
User avatar (0026981)
YoshikoFazuku (reporter)
2010-10-06 12:25
edited on: 2010-10-06 12:28

it took 10 years to get to this point? WTF!

User avatar (0028334)
citizen (reporter)
2011-03-01 15:30

Suggestion: Allow vote (+,0,-) on both Issues and on Notes.

Also, allow unlimited number of votes (by default but optional?), because this allows expressing opinion on all proposed issues.
User avatar (0029625)
reesd (reporter)
2011-09-02 09:43

+1. I would save a comment and just vote, but...
User avatar (0029891)
cas (reporter)
2011-09-30 07:44

Think this will only happen if someone picks up the challenge to create a plugin( despite 0000668:0022021 )
User avatar (0031199)
vincent_sels (reporter)
2012-02-08 14:49

We need something like this at our company, so I think I'll have a go at a plugin that does something this... :)
User avatar (0031205)
rombert (developer)
2012-02-09 04:05

(In reply to comment 0000668:0031199)
> We need something like this at our company, so I think I'll have a go at a
> plugin that does something this... :)

IIRC there is a plugin 'out there' which does that. I've seen it on a public Mantis instance, but I don't recall exactly on which one.
User avatar (0031517)
Footkerchief (reporter)
2012-03-23 16:03

Does anyone have a link to the plugin? I haven't been able to find it. Thanks!
User avatar (0031530)
rombert (developer)
2012-03-26 04:15

Plugin source code: http://git.mantisforge.org/w/GaugeSupport.git [^]
A live instance using the plugin: http://www.arcengames.com/mantisbt/plugin.php?page=GaugeSupport/issue_ranking [^]

Looks quite nice IMO

- Issue History
Date Modified Username Field Change
2004-07-20 07:23 lantic Note Added: 0006172
2004-07-20 07:27 lantic Note Added: 0006173
2004-07-20 07:58 bblan Note Added: 0006174
2004-07-20 08:34 lantic Note Added: 0006175
2004-07-23 17:02 grangeway Relationship added has duplicate 0003717
2004-08-02 14:35 lantic Note Added: 0006561
2004-08-02 18:09 vboctor Relationship added related to 0004143
2004-08-03 16:10 lantic Note Added: 0006606
2004-08-03 16:12 lantic Note Edited: 0006606
2004-08-04 01:09 sgrund Note Added: 0006616
2004-08-05 01:33 sly Sponsorship Added sly: US$ 5
2004-08-05 01:33 sly Sponsorship Total 0 => 5
2004-09-23 19:02 razortt Note Added: 0007726
2004-09-24 04:34 lantic Note Added: 0007731
2004-09-24 07:09 minibbjd Note Added: 0007732
2004-09-24 07:10 minibbjd Note Edited: 0007732
2004-09-24 07:27 minibbjd Note Edited: 0007732
2004-10-06 13:50 stevemagruder Note Added: 0007937
2005-08-29 22:20 cornchips Note Added: 0011311
2005-12-29 13:47 xstaindx Note Added: 0011851
2005-12-29 13:49 xstaindx Note Edited: 0011851
2006-01-02 13:02 xstaindx Sponsorship Added xstaindx: US$ 10
2006-01-02 13:02 xstaindx Sponsorship Total 5 => 15
2006-04-17 11:17 grangeway Relationship added has duplicate 0005867
2006-08-11 23:18 c_schmitz Sponsorship Added c_schmitz: US$ 15
2006-08-11 23:18 c_schmitz Sponsorship Total 15 => 30
2006-09-25 09:18 johnwebbcole Note Added: 0013502
2007-03-10 17:14 c_schmitz Sponsorship Updated c_schmitz: US$ 85
2007-03-10 17:14 c_schmitz Sponsorship Total 30 => 100
2007-03-10 17:15 c_schmitz Sponsorship Updated c_schmitz: US$ 100
2007-03-10 17:15 c_schmitz Sponsorship Total 100 => 115
2007-03-10 17:16 c_schmitz Note Added: 0014166
2007-03-24 19:46 vboctor Assigned To prescience => vboctor
2007-03-24 19:50 vboctor Note Added: 0014239
2007-03-24 19:52 vboctor Relationship added has duplicate 0007707
2007-08-28 13:13 c_schmitz Note Added: 0015549
2008-02-19 17:54 ingorenner Note Added: 0017114
2008-02-19 19:34 CADbloke Note Added: 0017115
2008-02-20 05:14 ingorenner Note Added: 0017118
2008-02-20 05:41 c_schmitz Note Added: 0017119
2008-02-20 05:42 c_schmitz Note Edited: 0017119
2008-02-20 05:43 c_schmitz Note Edited: 0017119
2008-02-20 07:38 giallu Note Added: 0017123
2008-02-20 11:46 xstaindx Note Added: 0017129
2008-02-20 12:27 giallu Note Added: 0017130
2008-03-01 02:30 cornchips Note Added: 0017228
2008-03-01 02:41 cornchips Note Edited: 0017228
2008-03-01 02:53 giallu Note Added: 0017229
2008-03-01 19:49 cornchips Note Added: 0017236
2008-03-02 00:34 vboctor Note Added: 0017237
2008-03-09 03:25 vboctor Note Added: 0017299
2008-03-09 03:26 vboctor Note Edited: 0017299
2008-03-09 21:08 cornchips Note Added: 0017302
2008-03-16 03:19 vboctor Relationship added has duplicate 0008907
2008-03-26 17:28 vboctor Note Added: 0017463
2008-03-26 17:40 vboctor Note Added: 0017464
2008-03-26 18:39 cornchips Note Added: 0017467
2008-04-06 05:34 cornchips File Added: voting for r5156.txt
2008-04-06 05:40 cornchips Note Added: 0017557
2008-04-06 06:14 c_schmitz Note Added: 0017558
2008-04-17 22:13 vboctor Note Added: 0017620
2008-04-18 12:46 vboctor Tag Attached: patch
2008-04-20 06:02 cornchips File Added: voting for r5176.patch
2008-04-20 06:08 cornchips Note Added: 0017628
2008-04-23 12:22 c_schmitz Note Added: 0017664
2008-05-13 12:58 ViperMaul Note Added: 0017821
2008-05-16 08:27 c_schmitz Note Added: 0017852
2008-05-16 10:06 giallu Note Added: 0017853
2008-05-23 15:27 c_schmitz Note Added: 0017909
2008-05-29 00:19 ViperMaul Note Added: 0017933
2008-05-29 02:39 vboctor Note Added: 0017938
2008-05-29 02:39 vboctor Target Version => 1.2.0a2
2008-05-31 02:19 vboctor Note Added: 0017968
2008-05-31 23:02 cornchips Note Added: 0017976
2008-06-17 00:17 ViperMaul Note Added: 0018112
2008-06-17 20:35 c_schmitz Note Added: 0018125
2008-06-23 01:47 vboctor Note Added: 0018158
2008-06-27 07:35 mgeck Note Added: 0018199
2008-07-12 02:01 vboctor Target Version 1.2.0a2 => 1.2.0
2008-07-12 18:19 giallu Target Version => 1.2.0
2008-07-13 02:45 vboctor Relationship added has duplicate 0003624
2008-07-22 13:09 c_schmitz Note Added: 0018635
2008-07-23 05:45 cornchips Note Added: 0018644
2008-07-27 04:23 cornchips Note Added: 0018676
2008-07-27 13:40 c_schmitz Note Added: 0018679
2008-07-28 07:07 cornchips Note Added: 0018702
2008-07-28 07:08 cornchips Note Edited: 0018702
2008-07-28 11:04 giallu Note Added: 0018720
2008-07-30 19:48 grangeway Relationship added has duplicate 0006326
2008-08-06 03:37 cornchips File Added: voting for r5500.patch
2008-08-06 03:41 cornchips Note Added: 0019057
2008-08-06 03:48 giallu Note Added: 0019059
2008-08-07 04:49 giallu Relationship added has duplicate 0005551
2008-08-22 19:55 vboctor Note Added: 0019211
2008-08-22 19:58 vboctor Note Added: 0019212
2008-09-15 01:11 ViperMaul Note Added: 0019396
2008-09-19 18:59 grangeway Note Added: 0019415
2008-12-09 10:23 grangeway Note View State: 18720: private
2008-12-30 15:55 ViperMaul Note Added: 0020501
2009-03-05 15:43 ViperMaul Note Added: 0021007
2009-03-05 15:43 ViperMaul Note Edited: 0021007
2009-03-05 15:58 giallu Note Added: 0021008
2009-05-04 14:27 siebrand Target Version 1.2.2 => 1.x.x
2009-05-06 17:05 dhaun Sponsorship Added dhaun: US$ 25
2009-05-06 17:05 dhaun Sponsorship Total 115 => 140
2009-05-06 17:08 dhaun Note Added: 0021785
2009-05-06 17:43 c_schmitz Note Added: 0021786
2009-05-22 03:25 cornchips Note Added: 0021874
2009-05-22 03:46 giallu Note Added: 0021875
2009-05-22 03:49 vboctor Assigned To vboctor => giallu
2009-05-22 05:09 cornchips Note Added: 0021879
2009-05-22 05:44 cornchips Note Edited: 0021879 View Revisions
2009-05-22 06:03 giallu Note Added: 0021881
2009-05-27 09:24 red_spirit Note Added: 0021937
2009-05-27 17:46 giallu Note Added: 0021945
2009-05-28 00:16 vboctor Note Added: 0021946
2009-05-28 03:22 giallu Note Added: 0021949
2009-05-28 03:46 vboctor Note Added: 0021950
2009-05-28 06:20 giallu Note Added: 0021952
2009-05-28 07:15 cornchips Note Added: 0021954
2009-05-28 18:35 giallu Note Added: 0021965
2009-05-29 13:49 vboctor Note Added: 0021967
2009-05-30 02:27 vboctor Note Added: 0021972
2009-05-30 02:58 vboctor Note Added: 0021973
2009-05-30 03:43 vboctor Note Edited: 0021973 View Revisions
2009-05-31 12:16 grangeway Note Added: 0022003
2009-06-01 05:30 giallu Note Added: 0022021
2009-06-06 18:10 giallu Note Added: 0022055
2009-07-03 22:39 vboctor Note View State: 18720: public
2010-02-09 04:30 Hauptmann Note Added: 0024352
2010-06-07 01:30 djcarr Note Added: 0025716
2010-10-06 12:25 YoshikoFazuku Note Added: 0026981
2010-10-06 12:28 YoshikoFazuku Note Edited: 0026981 View Revisions
2011-03-01 15:30 citizen Note Added: 0028334
2011-05-22 16:24 rombert Sponsorship Total 140 => 0
2011-09-02 09:43 reesd Note Added: 0029625
2011-09-30 07:44 cas Note Added: 0029891
2012-02-08 14:49 vincent_sels Note Added: 0031199
2012-02-09 04:05 rombert Note Added: 0031205
2012-03-23 16:03 Footkerchief Note Added: 0031517
2012-03-26 04:15 rombert Note Added: 0031530


MantisBT 1.2.16dev master-1.2.x-8c2bd07 [^]
Copyright © 2000 - 2013 MantisBT Team
Time: 0.2597 seconds.
memory usage: 3,687 KB
Powered by Mantis Bugtracker