<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://groups.drupal.org" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>User Points</title>
 <link>http://groups.drupal.org/user-points</link>
 <description>Planning, development and discussion on the User Points and User Points contributed modules.</description>
 <language>en</language>
<item>
 <title>Version 6 Progress?</title>
 <link>http://groups.drupal.org/node/16250</link>
 <description>&lt;p&gt;Is there an update on how version 6 of the userpoints module is coming along? I notice that the last commit to CVS was around October the 8th and I was wondering whether there was still active development going on.&lt;/p&gt;
&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;a href=&quot;/user-points&quot;&gt;User Points&lt;/a&gt;&lt;/div&gt;</description>
 <comments>http://groups.drupal.org/node/16250#comments</comments>
 <category domain="http://groups.drupal.org/taxonomy/term/2473">userpoints module</category>
 <group domain="http://groups.drupal.org/user-points" xmlns="http://drupal.org/project/og">User Points</group>
 <pubDate>Tue, 28 Oct 2008 01:07:31 +0000</pubDate>
 <dc:creator>yellek</dc:creator>
 <guid isPermaLink="false">16250 at http://groups.drupal.org</guid>
</item>
<item>
 <title>Testing Userpoints for version 6</title>
 <link>http://groups.drupal.org/node/15653</link>
 <description>&lt;p&gt;There are a lot of changes that we have in store for userpoints and we are planning to get them all in before we release an official stable 6 version of UP. I, however, got a nice whipping when I released version 5.3 and I do not want a repeat of that. 5.3 was released with several tiny, stupid bugs that could have been easily avoided if I had the time to test the module properly. Unfortunately I nor anyone else had this time. Fortunately we have a new weapon. Simpletest.&lt;/p&gt;
&lt;p&gt;I have already begun writing several tests of Userpoints and I&#039;ll be checking them off this list as I complete them. I&#039;d like to get all of these in before any major work to the API is performed as it is currently stable and I&#039;d like to keep it that way. My lists of tests is below, please free to add to them and, better yet, write a test.
&lt;/p&gt;
&lt;p&gt;It looks daunting but many of these tests are only a few lines and a few of them are a single line.&lt;/p&gt;
&lt;h3&gt;API tests&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Points&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with only points are granted to logged in user&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with points matches transaction table&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with points matches transaction &amp;amp; updates summary table&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Negative points caused summary table to decrease&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Transaction table and cache table stays in sync through multiple point add/deletes&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Points Array&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with no points fails&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with non numeric point values fail&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with only points are granted to logged in user&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with uid &amp;amp; points are granted to the appropriate user&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with uid &amp;amp; points for a non-existent user fails&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with a tid that is non-existent fails&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with points &amp;amp; description, description is set correctly&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with points &amp;amp; event, event is set correctly&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Call with points &amp;amp; reference, reference is set correctly&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Points in transaction table match points in summary table&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;All&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Summary tables sums to non-moderated points in transaction table&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;userpoints_get_current_points&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Called with no arguments returns current user&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Called with uid returns points for default tid&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;userpoints_get_max_points&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Called with no arguments returns current user&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Returns same number as highest point level according to transaction table&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;userpoints_get_default_expiry_date&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;Returns a valid unix timestamp&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Moderation&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Call with invalid moderation status fails&lt;/li&gt;
&lt;li&gt;Call with points &amp;amp; moderation and set to moderation correctly&lt;/li&gt;
&lt;li&gt;Call with points &amp;amp; moderation does not modify summary table&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;UI and API tests&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;userpoints_get_default_expiry_date&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Returns a valid unix timestamp&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;userpoints_get_categories&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strike&gt;returns an array&lt;/strike&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;userpoints_get_default_tid&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;returns a valid term id&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;userpoints_get_default_vid&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;returns a valid vocabulary id&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Expiration&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Points added with an invalid expirydate (non-timestamp) fails &lt;/li&gt;
&lt;li&gt;Expirydate given via API matches transaction table&lt;/li&gt;
&lt;li&gt;Points expire correctly (add points to expire in 1 sec. then call expiration&lt;/li&gt;
&lt;li&gt;Correcting entry is added to transaction table &amp;amp; summary table is updated&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Permissions&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;User without admin userpoints permissions can not modify points&lt;/li&gt;
&lt;li&gt;User with admin userpoints permissions can modify points&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;a href=&quot;/user-points&quot;&gt;User Points&lt;/a&gt;&lt;/div&gt;</description>
 <comments>http://groups.drupal.org/node/15653#comments</comments>
 <group domain="http://groups.drupal.org/user-points" xmlns="http://drupal.org/project/og">User Points</group>
 <pubDate>Tue, 07 Oct 2008 07:20:14 +0000</pubDate>
 <dc:creator>jredding</dc:creator>
 <guid isPermaLink="false">15653 at http://groups.drupal.org</guid>
</item>
<item>
 <title>Bounty: advanced FAPI | matslats.net</title>
 <link>http://groups.drupal.org/node/13285</link>
 <description>&lt;p&gt;I&#039;m building a community currency trading module and I&#039;ve spent several days now wrestling with Form API in 6.x. I have no income from this but I need this form built for me, so I&#039;m offering a bounty of $200.&lt;/p&gt;
&lt;p&gt;My modules defines a node-type called transaction which consists of buyerID, sellerID, quantity, description of trade and other fields. Here is the user story I am trying to achieve.&lt;/p&gt;
&lt;p&gt;
&lt;li&gt;User goes to the page of the person he wants to trade with, where there is a &#039;new transaction&#039; block. This means the system already knows both uids.&lt;/li&gt;
&lt;li&gt;User fills in the transaction details, which are quantity, description, and the direction of the trade. Presses submit.&lt;/li&gt;
&lt;li&gt;User now sees a confirmation with buttons to confirm or go back. The system now knows which is the buyer and which the seller, ready to put those ids in the appropriate db fields. If the user is a buyer he get&#039;s an additional option to grade the transaction.&lt;/li&gt;
&lt;li&gt;Now when the form is submitted it gets written to the database.&lt;/li&gt;&lt;/p&gt;
&lt;p&gt;I&#039;m sure it&#039;s not so hard. To have a look at the project so far, see &lt;a href=&quot;http://bazaar.matslats.net&quot; title=&quot;http://bazaar.matslats.net&quot;&gt;http://bazaar.matslats.net&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I&#039;ll give you my module so far, and be available to clarify while you work. There will be no feature creep, no theming, no documentation. Most of the code is already there, this just requires a better understanding of FAPI than I can muster.&lt;/p&gt;
&lt;p&gt;Matthew&lt;/p&gt;
&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;a href=&quot;/user-points&quot;&gt;User Points&lt;/a&gt;&lt;/div&gt;</description>
 <category domain="http://groups.drupal.org/taxonomy/term/4528">community currencies</category>
 <group domain="http://groups.drupal.org/drupal-for-good" xmlns="http://drupal.org/project/og">Drupal for Good</group>
 <group domain="http://groups.drupal.org/projects-needing-volunteer-developers" xmlns="http://drupal.org/project/og">Projects Needing Volunteer Developers</group>
 <group domain="http://groups.drupal.org/user-points" xmlns="http://drupal.org/project/og">User Points</group>
 <pubDate>Fri, 18 Jul 2008 16:04:50 +0000</pubDate>
 <dc:creator>matslats</dc:creator>
 <guid isPermaLink="false">13285 at http://groups.drupal.org</guid>
</item>
<item>
 <title>Userpoints - how custom it can be?</title>
 <link>http://groups.drupal.org/node/12089</link>
 <description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;First of all, I&#039;d like to say that I am a complete Drupal newbie. In fact, I don&#039;t have a single production site working yet, although I do have a couple test sites. My experience with PHP and mysql is rather limited.&lt;/p&gt;
&lt;p&gt;I am looking to create a community website, where you can evaluate other people articles and contributions. Furthermore, each user has his own value, depending on how other users evaluate his own work.&lt;/p&gt;
&lt;p&gt;For example, we have three users: John, Sandy and Sam, each has initial rating of 1. Sam publishes an article, and John gives it a rating of 3. Sams&#039; rating goes up according to this formula: number of points he had plus (number of points he was granted multiplied by the number of points John had), meaning 1+3 multiplied by 1=4, so Sams&#039; new rating is 4.&lt;br /&gt;
Now, Sandy publishes an article, and Sam is rating it as 5. Sandys&#039; new rating will be 1 + 5 multiplied by 4 = 21 (5 for the rating, multiplied by the number of points Sam was worth).&lt;/p&gt;
&lt;p&gt;The idea is to create a voting system where not all votes are equal, and you gain your worthiness according to how other people see your contribution.&lt;/p&gt;
&lt;p&gt;My question is whether you think userpoints module can develop (or be developed) to the state where it provides the functionality I am looking for, without completely rewriting it. If the answer is yes, I will try to join the developers and add this functionality. If the answer is no, I guess I will try to think whether userpoints is the right module to do the job, and try to find another module. I do believe that userpoints might be what I am looking for.&lt;/p&gt;
&lt;p&gt;Looking forward for the discussion,&lt;/p&gt;
&lt;p&gt;Eli Baskin.&lt;/p&gt;
&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;a href=&quot;/user-points&quot;&gt;User Points&lt;/a&gt;&lt;/div&gt;</description>
 <comments>http://groups.drupal.org/node/12089#comments</comments>
 <group domain="http://groups.drupal.org/user-points" xmlns="http://drupal.org/project/og">User Points</group>
 <pubDate>Sat, 07 Jun 2008 19:27:51 +0000</pubDate>
 <dc:creator>baskineli</dc:creator>
 <guid isPermaLink="false">12089 at http://groups.drupal.org</guid>
</item>
<item>
 <title>Userpoints Roadmap </title>
 <link>http://groups.drupal.org/node/10539</link>
 <description>&lt;p&gt;A rework of userpoints has been on my mind for the past several months but to be honest i&#039;ve never had the time to put into it. Now with recent activity surrounding userpoints (morbus&#039; post, a certain unnamed &quot;fork&quot; of the code) I forced myself to find the time to put my ideas down onto paper so that we can all work together to create a nice roadmap/plan for userpoints. Userpoints has a nice strong community behind it and I don&#039;t want to see that change in any way. &lt;/p&gt;
&lt;p&gt;I think we did a good thing when we separated out userpoints core from userpoints contributed modules. I think it really helped to drive home that those contributed modules were simply submitted by various users that never wanted to maintain them thus they were use at your own risk. Now that they are separate I think people understand what is a nice community supported package and what is use at your own risk. &lt;/p&gt;
&lt;p&gt;So this is what I propose for the userpoints core project. &lt;/p&gt;
&lt;p&gt;#1 I want to take the core API separation one step further and make it more like the voting API. A simplistic core module with a basic administrative settings page that provides a clean API and the necessary hooks. &lt;/p&gt;
&lt;p&gt;#2 Core should ship with 4 modules&lt;br /&gt;
--a) Userpoints API, the main dependency&lt;br /&gt;
--b) Userpoints Administrative pages&lt;br /&gt;
--c) Userpoints views integration (because people like it)&lt;br /&gt;
--d) Userpoints xml_rpc integration (because its supported)&lt;br /&gt;
----this does mean that workflow_ng is moved out. I suggest this because we don&#039;t have any one actively supporting it. We only only keep items in &quot;core&quot; that have a high chance of being supported by us or the community.&lt;br /&gt;
----In all honestly I&#039;d even support moving the views module out as it also isn&#039;t really that well supported and apparently has some bugs and inefficiency according to the issue queue. &lt;/p&gt;
&lt;p&gt;#3 Userpoints Basic moved to a new project&lt;br /&gt;
-- I&#039;ve always understood userpoints_basic to be an example module but people are expecting a lot more of it. I think we should take a queue from the voting API / five star project and branch this out. People are beginning to use userpoints for things other that granting points for nodes. I think its time we made a clear distinction between API, administration and granting points. &lt;/p&gt;
&lt;p&gt;In order to move forward with the branch of userpoints core API and the creation of the new userpoints_administration I propose the following split of functions. &lt;/p&gt;
&lt;p&gt;Core API module contains the following functions.&lt;br /&gt;
&lt;i&gt;The core API modules controls no pages with the exception of a settings pages in which it contains the default category to use. &lt;/i&gt;&lt;br /&gt;
userpoints_perm()&lt;br /&gt;
userpoints_admin_settings()&lt;br /&gt;
userpoints_get_current_points($uid = NULL, $tid = NULL)&lt;br /&gt;
userpoints_get_max_points($uid = NULL, $tid = NULL)&lt;br /&gt;
userpoints_userpointsapi($params)  &amp;lt;-- maybe a wrapper function to shorten name to userpoints_api?&lt;br /&gt;
_userpoints_transaction(&amp;amp;$params)&lt;br /&gt;
_userpoints_update_cache(&amp;amp;$params)&lt;br /&gt;
userpoints_get_default_expiry_date()&lt;br /&gt;
userpoints_user($op, &amp;amp;$edit, &amp;amp;$account, $category = &#039;&#039;) &amp;lt;-- operates on delete&lt;br /&gt;
userpoints_filter_cat_select($form_state, $path, $tid)&lt;br /&gt;
userpoints_expiry_dates()&lt;br /&gt;
userpoints_date_to_timestamp($date)&lt;br /&gt;
userpoints_expire_transactions()&lt;br /&gt;
userpoints_cron()&lt;br /&gt;
userpoints_get_vid()&lt;br /&gt;
userpoints_get_categories()&lt;br /&gt;
userpoints_get_default_tid()&lt;br /&gt;
_userpoints_user_exists($uid, $tid = NULL) &lt;/p&gt;
&lt;p&gt;Administrative module (functions renamed appropriately)&lt;br /&gt;
&lt;i&gt;The administrative module allows control over moderation, displays points on the user profile page, lists userpoints, etc. etc. &lt;/i&gt;&lt;br /&gt;
userpoints_access_my_points()&lt;br /&gt;
userpoints_theme()&lt;br /&gt;
hooks userpoints_settings&lt;br /&gt;
userpoints_user($op, &amp;amp;$edit, &amp;amp;$account, $category = &#039;&#039;) &amp;lt;-- operates on view&lt;br /&gt;
userpoints_admin_manage()&lt;br /&gt;
userpoints_admin_approve()&lt;br /&gt;
userpoints_confirm_approve_submit($form, &amp;amp;$form_state)&lt;br /&gt;
userpoints_admin_txn($form_state)&lt;br /&gt;
userpoints_admin_txn_submit($form, &amp;amp;$form_state)&lt;br /&gt;
userpoints_admin_points()&lt;br /&gt;
userpoints_list_users()&lt;br /&gt;
theme_userpoints_list_users($header, &amp;amp;$rows, &amp;amp;$tid, &amp;amp;$pager_limit)&lt;br /&gt;
theme_userpoints_list_users_header()&lt;br /&gt;
theme_userpoints_list_users_row(&amp;amp;$row)&lt;br /&gt;
userpoints_block($op = &#039;list&#039;, $delta = 0, $edit = array())&lt;br /&gt;
userpoints_my_userpoints()&lt;br /&gt;
theme_userpoints_my_userpoints($args, $header, $rows)&lt;/p&gt;
&lt;p&gt;I also propose the following additions to the permission sets of userpoints.&lt;br /&gt;
-Administer userpoints (settings, etc., also grants moderation ability)&lt;br /&gt;
-Moderate userpoints (only moderate points)&lt;br /&gt;
-View all userpoints&lt;br /&gt;
-View own userpoints &lt;/p&gt;
&lt;p&gt;   These have been heavily requested and would be simple enough to put in. I&#039;m willing to put the time into doing this piece. &lt;/p&gt;
&lt;p&gt;The last major change that I&#039;d like to see if the change of the moderation form into an actual form as opposed to its current state as a table. &lt;/p&gt;
&lt;p&gt;Finally we can address some nitpicky concerns with a simple find a replace. &lt;/p&gt;
&lt;p&gt;The official single word name of the module is userpoints all lower case&lt;br /&gt;
We can change the admin permission to the full word &quot;administer userpoints&quot; (although they would be the above)&lt;/p&gt;
&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;a href=&quot;/user-points&quot;&gt;User Points&lt;/a&gt;&lt;/div&gt;</description>
 <comments>http://groups.drupal.org/node/10539#comments</comments>
 <group domain="http://groups.drupal.org/user-points" xmlns="http://drupal.org/project/og">User Points</group>
 <pubDate>Mon, 07 Apr 2008 20:18:52 +0000</pubDate>
 <dc:creator>jredding</dc:creator>
 <guid isPermaLink="false">10539 at http://groups.drupal.org</guid>
</item>
<item>
 <title>Ideas for User Points Moderation Page</title>
 <link>http://groups.drupal.org/node/9216</link>
 <description>&lt;p&gt;Jredding and I have been discussing the User Points moderation page (see attached) in the issue queue and we decided to bring the discussion out here to see if anyone has any fresh, new suggestions.&lt;/p&gt;
&lt;p&gt;With User Points 5.x-3.x the moderation table changed a bit. The changes were good and logical but in some cases made my job as moderator a bit more difficult (IMO).&lt;/p&gt;
&lt;p&gt;With past versions, the &quot;Operation&quot; column listed the node type (page, story, poll) that the points were a result of. This helped me (as a moderator) make decisions about approving, declining (or adjusting) points. With the new version, the heading &quot;Operation&quot; truly fits the contents of the cells as they now read &quot;insert&quot; or &quot;admin&quot; or a similar named operation. I&#039;ve found these labels less helpful in my day-to-day moderation chores.&lt;/p&gt;
&lt;p&gt;In an effort to improve the table to help moderators... well... moderate, jredding has suggested hyperlinking the operative term (insert) to the node that triggered the earnings. I like that idea.&lt;/p&gt;
&lt;p&gt;What do the rest of you think?&lt;/p&gt;
&lt;p&gt;Another thing that (again, IMO) would make moderation easier would be a default sort based on timestamp. This would show the newest transactions at the top of the list and the oldest at the bottom of the list. This would be similar to the behavior you see when you view a node list at /admin/content/node&lt;/p&gt;
&lt;p&gt;Does anyone have any feelings about sort order of this table?&lt;/p&gt;
&lt;p&gt;Any other suggestions that would make your life, as a User Points administrator, easier?&lt;/p&gt;
&lt;p&gt;Thanks (in advance) for taking the time to share your feelings.&lt;/p&gt;
&lt;p&gt;Kevin&lt;/p&gt;
&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;a href=&quot;/user-points&quot;&gt;User Points&lt;/a&gt;&lt;/div&gt;</description>
 <comments>http://groups.drupal.org/node/9216#comments</comments>
 <enclosure url="http://groups.drupal.org/files/moderation.gif" length="19510" type="image/gif" />
 <group domain="http://groups.drupal.org/user-points" xmlns="http://drupal.org/project/og">User Points</group>
 <pubDate>Wed, 27 Feb 2008 01:53:18 +0000</pubDate>
 <dc:creator>kmillecam</dc:creator>
 <guid isPermaLink="false">9216 at http://groups.drupal.org</guid>
</item>
<item>
 <title>User Points at DrupalCon</title>
 <link>http://groups.drupal.org/node/9135</link>
 <description>&lt;p&gt;Although I can&#039;t find it at the moment the User Points session that Kbahey proposed for DrupalCon was accepted as a Birds of a Feather session.&lt;/p&gt;
&lt;p&gt;So what do we want to talk about?&lt;br /&gt;
Start throwing out some ideas.&lt;br /&gt;
D6 upgrade?&lt;br /&gt;
Modifying the administrative section?&lt;br /&gt;
New tables, formats?&lt;br /&gt;
User Contributed modules..&lt;/p&gt;
&lt;div class=&quot;og_rss_groups&quot;&gt;&lt;a href=&quot;/user-points&quot;&gt;User Points&lt;/a&gt;&lt;/div&gt;</description>
 <comments>http://groups.drupal.org/node/9135#comments</comments>
 <group domain="http://groups.drupal.org/user-points" xmlns="http://drupal.org/project/og">User Points</group>
 <pubDate>Sat, 23 Feb 2008 17:31:53 +0000</pubDate>
 <dc:creator>jredding</dc:creator>
 <guid isPermaLink="false">9135 at http://groups.drupal.org</guid>
</item>
</channel>
</rss>
