[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-active
Subject:    Re: Review Request 112533: add ratings in the bodega-client
From:       "Aaron J. Seigo" <aseigo () kde ! org>
Date:       2013-09-12 15:54:51
Message-ID: 20130912155451.17682.39441 () vidsolbach ! de
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


> On Sept. 12, 2013, 12:50 p.m., Aaron J. Seigo wrote:
> > lib/bodega/participantratingsjobmodel.cpp, lines 107-130
> > <http://git.reviewboard.kde.org/r/112533/diff/2-3/?file=189043#file189043line107>
> > 
> > far, far too many jobs are being sent off to make this happen:
> > 
> > * one job to request the participant ratings
> > * another job per asset to fetch the ratings
> > 
> > this makes no sense whatsoever.
> > 
> > what this shows is that there is a problem with the server-side implementation of \
> > participant/ratings. 
> > it should be returning the data in the required end form itself already.
> > 
> > i'll look into making that change so as not to cause another set of lengthy \
> > reviews there that blocks this even further.

ok, participant ratings now returns data like this in the "ratings" object in the \
json:

                [
                    {
                        "asset": 2,
                        "name": "Aquarium",
                        "version": "0.2",
                        "description": "Grow an aqarium full of fish!",
                        "rated": 1375966634.14727,
                        "ratings": [
                            {
                                "attribute": 5,
                                "name": "perfomance",
                                "rating": 1
                            }
                        ]
                    },
                    {
                        "asset": 8,
                        "name": "Poker1",
                        "version": "0.1",
                        "description": "Poker 1",
                        "rated": 1375966634.14727,
                        "ratings": [
                            {
                                "attribute": 2,
                                "name": "Usability",
                                "rating": 5
                            }
                        ]
                    },
                    {
                        "asset": 9,
                        "name": "Poker2",
                        "version": "0.2",
                        "description": "Poker 2",
                        "rated": 1375966634.14727,
                        "ratings": [
                            {
                                "attribute": 3,
                                "name": "funny",
                                "rating": 3
                            }
                        ]
                    }
                ]


so now it is very easy to show the user's ratings per asset. they are properly sorted \
in reverse chronological order, etc.


- Aaron J.


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/112533/#review39876
-----------------------------------------------------------


On Sept. 12, 2013, 11:29 a.m., Giorgos Tsiapaliokas wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/112533/
> -----------------------------------------------------------
> 
> (Updated Sept. 12, 2013, 11:29 a.m.)
> 
> 
> Review request for Bodega.
> 
> 
> Description
> -------
> 
> This patch implements the ratings feature
> 
> 
> Diffs
> -----
> 
> activeclient/package/contents/ui/SettingsPage.qml fb46eca 
> activeclient/package/contents/ui/settings/ParticipantRatings.qml PRE-CREATION 
> activeclient/package/contents/ui/storebrowser/AssetColumn.qml a678f16 
> activeclient/package/contents/ui/storebrowser/Ratings.js PRE-CREATION 
> activeclient/package/contents/ui/storebrowser/RatingsColumn.qml PRE-CREATION 
> activeclient/src/bodegastore.h 1e5aac5 
> activeclient/src/bodegastore.cpp ba9dc27 
> lib/bodega/CMakeLists.txt 8d382a7 
> lib/bodega/assetjob.h 5aab88c 
> lib/bodega/assetjob.cpp 5f539cb 
> lib/bodega/assetoperations.h 7ce7900 
> lib/bodega/assetoperations.cpp 9f9c2d5 
> lib/bodega/assetratingsjob.h PRE-CREATION 
> lib/bodega/assetratingsjob.cpp PRE-CREATION 
> lib/bodega/assetratingsjobmodel.h PRE-CREATION 
> lib/bodega/assetratingsjobmodel.cpp PRE-CREATION 
> lib/bodega/globals.h 5ab45da 
> lib/bodega/participantratingsjob.h PRE-CREATION 
> lib/bodega/participantratingsjob.cpp PRE-CREATION 
> lib/bodega/participantratingsjobmodel.h PRE-CREATION 
> lib/bodega/participantratingsjobmodel.cpp PRE-CREATION 
> lib/bodega/ratingattributesjob.h PRE-CREATION 
> lib/bodega/ratingattributesjob.cpp PRE-CREATION 
> lib/bodega/ratingsmodel_p.h PRE-CREATION 
> lib/bodega/ratingsmodel_p.cpp PRE-CREATION 
> lib/bodega/session.h d27d284 
> lib/bodega/session.cpp a7c7e94 
> lib/bodega/session_p.h ebefb4f 
> 
> Diff: http://git.reviewboard.kde.org/r/112533/diff/
> 
> 
> Testing
> -------
> 
> check the attached images
> 
> 
> File Attachments
> ----------------
> 
> 
> http://git.reviewboard.kde.org/media/uploaded/files/2013/09/05/ratings-main.png
> 
> http://git.reviewboard.kde.org/media/uploaded/files/2013/09/05/participantratings.png
>  
> http://git.reviewboard.kde.org/media/uploaded/files/2013/09/06/labelsnotcenter.png
> 
> http://git.reviewboard.kde.org/media/uploaded/files/2013/09/06/delete2.png
> 
> http://git.reviewboard.kde.org/media/uploaded/files/2013/09/06/brokenParticipant.diff
>  
> http://git.reviewboard.kde.org/media/uploaded/files/2013/09/06/participantbroken.png
>  
> 
> Thanks,
> 
> Giorgos Tsiapaliokas
> 
> 


[Attachment #5 (text/html)]

<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 \
solid;">  <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="http://git.reviewboard.kde.org/r/112533/">http://git.reviewboard.kde.org/r/112533/</a>
  </td>
    </tr>
   </table>
   <br />










<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On September 12th, 2013, 12:50 p.m. UTC, <b>Aaron \
J. Seigo</b> wrote:</p>  <blockquote style="margin-left: 1em; border-left: 2px solid \
#d0d0d0; padding-left: 10px;">  



<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; \
border-collapse: collapse; margin: 2px padding: 2px;">  <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; \
font-size: 9pt; padding: 4px 8px; text-align: left;">  <a \
href="http://git.reviewboard.kde.org/r/112533/diff/2-3/?file=189043#file189043line107" \
style="color: black; font-weight: bold; text-decoration: \
underline;">lib/bodega/participantratingsjobmodel.cpp</a>  <span style="font-weight: \
normal;">

     (Diff revisions 2 - 3)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">void \
ParticipantRatingsJobModel::Private::participantRatingsJobFinished(Bodega::NetworkJob \
*job)</pre></td>

  </tr>
 </tbody>



 
 

 <tbody>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">107</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="n">QList</span><span class="o">&lt;</span><span \
class="n">ParticipantRatings</span><span class="o">&gt;</span> <span \
class="n">participantRatings</span> <span class="o">=</span> <span \
class="n">participantRatingsJob</span><span class="o">-&gt;</span><span \
class="n">ratings</span><span class="p">();</span></pre></td>  <th bgcolor="#f0f0f0" \
style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">101</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="n">QList</span><span class="o">&lt;</span><span \
class="n">ParticipantRatings</span><span class="o">&gt;</span> <span \
class="n">participantRatings</span> <span class="o">=</span> <span \
class="n">participantRatingsJob</span><span class="o">-&gt;</span><span \
class="n">ratings</span><span class="p">();</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">108</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="n">jobCounter</span> <span class="o">=</span> <span \
class="n">participantRatings</span><span class="p">.</span><span \
class="n">count</span><span class="p">()</span> <span class="o">*</span> <span \
class="mi">2</span><span class="p">;</span></pre></td>  <th bgcolor="#f0f0f0" \
style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">102</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="n">jobCounter</span> <span class="o">=</span> <span \
class="n">participantRatings</span><span class="p">.</span><span \
class="n">count</span><span class="p">()</span> <span class="o">*</span> <span \
class="mi">2</span><span class="p">;</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">109</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#f0f0f0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">103</font></th>  <td bgcolor="#ffffff" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  \
</tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">110</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="n">foreach</span> <span class="p">(</span><span class="k">const</span> <span \
class="n">ParticipantRatings</span> <span class="o">&amp;</span><span \
class="n">r</span><span class="p">,</span> <span \
class="n">participantRatings</span><span class="p">)</span> <span \
class="p">{</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">104</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">    <span class="n">foreach</span> <span \
class="p">(</span><span class="k">const</span> <span \
class="n">ParticipantRatings</span> <span class="o">&amp;</span><span \
class="n">r</span><span class="p">,</span> <span \
class="n">participantRatings</span><span class="p">)</span> <span \
class="p">{</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">111</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">AssetRatings</span> <span class="n">tmp</span><span \
class="p">;</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">105</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">        <span class="n">AssetRatings</span> \
<span class="n">tmp</span><span class="p">;</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">112</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">tmp</span><span class="p">.</span><span class="n">assetId</span> <span \
class="o">=</span> <span class="n">r</span><span class="p">.</span><span \
class="n">assetId</span><span class="p">;</span></pre></td>  <th bgcolor="#f0f0f0" \
style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">106</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">tmp</span><span class="p">.</span><span class="n">assetId</span> <span \
class="o">=</span> <span class="n">r</span><span class="p">.</span><span \
class="n">assetId</span><span class="p">;</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">113</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#f0f0f0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">107</font></th>  <td bgcolor="#ffffff" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  \
</tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">114</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="k">if</span> <span class="p">(</span><span class="o">!</span><span \
class="n">dataList</span><span class="p">.</span><span class="n">contains</span><span \
class="p">(</span><span class="n">tmp</span><span class="p">))</span> <span \
class="p">{</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">108</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">        <span class="k">if</span> <span \
class="p">(</span><span class="o">!</span><span class="n">dataList</span><span \
class="p">.</span><span class="n">contains</span><span class="p">(</span><span \
class="n">tmp</span><span class="p">))</span> <span class="p">{</span></pre></td>  \
</tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">115</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">            <span \
class="n">dataList</span> <span class="o">&lt;&lt;</span> <span \
class="n">tmp</span><span class="p">;</span></pre></td>  <th bgcolor="#f0f0f0" \
style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">109</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">            <span \
class="n">dataList</span> <span class="o">&lt;&lt;</span> <span \
class="n">tmp</span><span class="p">;</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">116</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="p">}</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">110</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">        <span class="p">}</span></pre></td>  \
</tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">117</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#f0f0f0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">111</font></th>  <td bgcolor="#ffffff" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  \
</tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">118</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="k">const</span> <span class="kt">int</span> <span class="n">index</span> <span \
class="o">=</span> <span class="n">dataList</span><span class="p">.</span><span \
class="n">indexOf</span><span class="p">(</span><span class="n">tmp</span><span \
class="p">);</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">112</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">        <span class="k">const</span> <span \
class="kt">int</span> <span class="n">index</span> <span class="o">=</span> <span \
class="n">dataList</span><span class="p">.</span><span class="n">indexOf</span><span \
class="p">(</span><span class="n">tmp</span><span class="p">);</span></pre></td>  \
</tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">119</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">tmp</span> <span class="o">=</span> <span class="n">dataList</span><span \
class="p">.</span><span class="n">takeAt</span><span class="p">(</span><span \
class="n">index</span><span class="p">);</span></pre></td>  <th bgcolor="#f0f0f0" \
style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">113</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">tmp</span> <span class="o">=</span> <span class="n">dataList</span><span \
class="p">.</span><span class="n">takeAt</span><span class="p">(</span><span \
class="n">index</span><span class="p">);</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">120</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">tmp</span><span class="p">.</span><span \
class="n">participantRatings</span><span class="p">.</span><span \
class="n">append</span><span class="p">(</span><span class="n">r</span><span \
class="p">);</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">114</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">        <span class="n">tmp</span><span \
class="p">.</span><span class="n">participantRatings</span><span \
class="p">.</span><span class="n">append</span><span class="p">(</span><span \
class="n">r</span><span class="p">);</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">121</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">dataList</span> <span class="o">&lt;&lt;</span> <span \
class="n">tmp</span><span class="p">;</span></pre></td>  <th bgcolor="#f0f0f0" \
style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">115</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">dataList</span> <span class="o">&lt;&lt;</span> <span \
class="n">tmp</span><span class="p">;</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">122</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#f0f0f0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">116</font></th>  <td bgcolor="#ffffff" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  \
</tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">123</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">AssetJob</span> <span class="o">*</span><span class="n">assetJob</span> \
<span class="o">=</span> <span class="n">session</span><span \
class="o">-&gt;</span><span class="n">asset</span><span class="p">(</span><span \
class="n">r</span><span class="p">.</span><span class="n">assetId</span><span \
class="p">,</span> <span class="n">AssetJob</span><span class="o">::</span><span \
class="n">ShowRatings</span><span class="p">);</span></pre></td>  <th \
bgcolor="#f0f0f0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">117</font></th>  <td bgcolor="#ffffff" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">AssetJob</span> <span class="o">*</span><span class="n">assetJob</span> \
<span class="o">=</span> <span class="n">session</span><span \
class="o">-&gt;</span><span class="n">asset</span><span class="p">(</span><span \
class="n">r</span><span class="p">.</span><span class="n">assetId</span><span \
class="p">,</span> <span class="n">AssetJob</span><span class="o">::</span><span \
class="n">ShowRatings</span><span class="p">);</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">124</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">connect</span><span class="p">(</span><span class="n">assetJob</span><span \
class="p">,</span> <span class="n">SIGNAL</span><span class="p">(</span><span \
class="n">jobFinished</span><span class="p">(</span><span \
class="n">Bodega</span><span class="o">::</span><span class="n">NetworkJob</span> \
<span class="o">*</span><span class="p">)),</span></pre></td>  <th bgcolor="#f0f0f0" \
style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">118</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">connect</span><span class="p">(</span><span class="n">assetJob</span><span \
class="p">,</span> <span class="n">SIGNAL</span><span class="p">(</span><span \
class="n">jobFinished</span><span class="p">(</span><span \
class="n">Bodega</span><span class="o">::</span><span class="n">NetworkJob</span> \
<span class="o">*</span><span class="p">)),</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">125</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">            <span \
class="n">q</span><span class="p">,</span> <span class="n">SLOT</span><span \
class="p">(</span><span class="n">assetJobFinished</span><span \
class="p">(</span><span class="n">Bodega</span><span class="o">::</span><span \
class="n">NetworkJob</span> <span class="o">*</span><span \
class="p">)));</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">119</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">            <span class="n">q</span><span \
class="p">,</span> <span class="n">SLOT</span><span class="p">(</span><span \
class="n">assetJobFinished</span><span class="p">(</span><span \
class="n">Bodega</span><span class="o">::</span><span class="n">NetworkJob</span> \
<span class="o">*</span><span class="p">)));</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">126</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#f0f0f0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">120</font></th>  <td bgcolor="#ffffff" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  \
</tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">127</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">RatingAttributesJob</span> <span class="o">*</span><span \
class="n">ratingAttributesJob</span> <span class="o">=</span> <span \
class="n">session</span><span class="o">-&gt;</span><span \
class="n">listRatingAttributes</span><span class="p">(</span><span \
class="n">r</span><span class="p">.</span><span class="n">assetId</span><span \
class="p">);</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">121</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">        <span \
class="n">RatingAttributesJob</span> <span class="o">*</span><span \
class="n">ratingAttributesJob</span> <span class="o">=</span> <span \
class="n">session</span><span class="o">-&gt;</span><span \
class="n">listRatingAttributes</span><span class="p">(</span><span \
class="n">r</span><span class="p">.</span><span class="n">assetId</span><span \
class="p">);</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">128</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">connect</span><span class="p">(</span><span \
class="n">ratingAttributesJob</span><span class="p">,</span> <span \
class="n">SIGNAL</span><span class="p">(</span><span \
class="n">jobFinished</span><span class="p">(</span><span \
class="n">Bodega</span><span class="o">::</span><span class="n">NetworkJob</span> \
<span class="o">*</span><span class="p">)),</span></pre></td>  <th bgcolor="#f0f0f0" \
style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">122</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="n">connect</span><span class="p">(</span><span \
class="n">ratingAttributesJob</span><span class="p">,</span> <span \
class="n">SIGNAL</span><span class="p">(</span><span \
class="n">jobFinished</span><span class="p">(</span><span \
class="n">Bodega</span><span class="o">::</span><span class="n">NetworkJob</span> \
<span class="o">*</span><span class="p">)),</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">129</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">            <span \
class="n">q</span><span class="p">,</span> <span class="n">SLOT</span><span \
class="p">(</span><span class="n">ratingAttributesJobFinished</span><span \
class="p">(</span><span class="n">Bodega</span><span class="o">::</span><span \
class="n">NetworkJob</span> <span class="o">*</span><span \
class="p">)));</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">123</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">            <span class="n">q</span><span \
class="p">,</span> <span class="n">SLOT</span><span class="p">(</span><span \
class="n">ratingAttributesJobFinished</span><span class="p">(</span><span \
class="n">Bodega</span><span class="o">::</span><span class="n">NetworkJob</span> \
<span class="o">*</span><span class="p">)));</span></pre></td>  </tr>

  <tr>
    <th bgcolor="#f0f0f0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2">130</font></th>  <td bgcolor="#ffffff" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="p">}</span></pre></td>  <th bgcolor="#f0f0f0" style="border-left: 1px solid \
#C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font \
size="2">124</font></th>  <td bgcolor="#ffffff" width="50%"><pre style="font-size: \
8pt; line-height: 140%; margin: 0; ">    <span class="p">}</span></pre></td>  </tr>

 </tbody>

</table>

  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">far, far too many jobs \
are being sent off to make this happen:

* one job to request the participant ratings
* another job per asset to fetch the ratings

this makes no sense whatsoever.

what this shows is that there is a problem with the server-side implementation of \
participant/ratings.

it should be returning the data in the required end form itself already.

i&#39;ll look into making that change so as not to cause another set of lengthy \
reviews there that blocks this even further.</pre>  </blockquote>





</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">ok, \
participant ratings now returns data like this in the &quot;ratings&quot; object in \
the json:

                [
                    {
                        &quot;asset&quot;: 2,
                        &quot;name&quot;: &quot;Aquarium&quot;,
                        &quot;version&quot;: &quot;0.2&quot;,
                        &quot;description&quot;: &quot;Grow an aqarium full of \
fish!&quot;,  &quot;rated&quot;: 1375966634.14727,
                        &quot;ratings&quot;: [
                            {
                                &quot;attribute&quot;: 5,
                                &quot;name&quot;: &quot;perfomance&quot;,
                                &quot;rating&quot;: 1
                            }
                        ]
                    },
                    {
                        &quot;asset&quot;: 8,
                        &quot;name&quot;: &quot;Poker1&quot;,
                        &quot;version&quot;: &quot;0.1&quot;,
                        &quot;description&quot;: &quot;Poker 1&quot;,
                        &quot;rated&quot;: 1375966634.14727,
                        &quot;ratings&quot;: [
                            {
                                &quot;attribute&quot;: 2,
                                &quot;name&quot;: &quot;Usability&quot;,
                                &quot;rating&quot;: 5
                            }
                        ]
                    },
                    {
                        &quot;asset&quot;: 9,
                        &quot;name&quot;: &quot;Poker2&quot;,
                        &quot;version&quot;: &quot;0.2&quot;,
                        &quot;description&quot;: &quot;Poker 2&quot;,
                        &quot;rated&quot;: 1375966634.14727,
                        &quot;ratings&quot;: [
                            {
                                &quot;attribute&quot;: 3,
                                &quot;name&quot;: &quot;funny&quot;,
                                &quot;rating&quot;: 3
                            }
                        ]
                    }
                ]


so now it is very easy to show the user&#39;s ratings per asset. they are properly \
sorted in reverse chronological order, etc.</pre> <br />




<p>- Aaron J.</p>


<br />
<p>On September 12th, 2013, 11:29 a.m. UTC, Giorgos Tsiapaliokas wrote:</p>








<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" \
style="background-image: \
url('http://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); \
background-position: left top; background-repeat: repeat-x; border: 1px black \
solid;">  <tr>
  <td>

<div>Review request for Bodega.</div>
<div>By Giorgos Tsiapaliokas.</div>


<p style="color: grey;"><i>Updated Sept. 12, 2013, 11:29 a.m.</i></p>






<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" \
style="border: 1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">This patch implements the ratings feature</pre>  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: \
1px solid #b8b5a0">  <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: \
-moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: \
break-word;">check the attached images</pre>  </td>
 </tr>
</table>




<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>activeclient/package/contents/ui/SettingsPage.qml <span style="color: \
grey">(fb46eca)</span></li>

 <li>activeclient/package/contents/ui/settings/ParticipantRatings.qml <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>activeclient/package/contents/ui/storebrowser/AssetColumn.qml <span \
style="color: grey">(a678f16)</span></li>

 <li>activeclient/package/contents/ui/storebrowser/Ratings.js <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>activeclient/package/contents/ui/storebrowser/RatingsColumn.qml <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>activeclient/src/bodegastore.h <span style="color: grey">(1e5aac5)</span></li>

 <li>activeclient/src/bodegastore.cpp <span style="color: grey">(ba9dc27)</span></li>

 <li>lib/bodega/CMakeLists.txt <span style="color: grey">(8d382a7)</span></li>

 <li>lib/bodega/assetjob.h <span style="color: grey">(5aab88c)</span></li>

 <li>lib/bodega/assetjob.cpp <span style="color: grey">(5f539cb)</span></li>

 <li>lib/bodega/assetoperations.h <span style="color: grey">(7ce7900)</span></li>

 <li>lib/bodega/assetoperations.cpp <span style="color: grey">(9f9c2d5)</span></li>

 <li>lib/bodega/assetratingsjob.h <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/assetratingsjob.cpp <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/assetratingsjobmodel.h <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/assetratingsjobmodel.cpp <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/globals.h <span style="color: grey">(5ab45da)</span></li>

 <li>lib/bodega/participantratingsjob.h <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/participantratingsjob.cpp <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/participantratingsjobmodel.h <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/participantratingsjobmodel.cpp <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/ratingattributesjob.h <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/ratingattributesjob.cpp <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/ratingsmodel_p.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/ratingsmodel_p.cpp <span style="color: \
grey">(PRE-CREATION)</span></li>

 <li>lib/bodega/session.h <span style="color: grey">(d27d284)</span></li>

 <li>lib/bodega/session.cpp <span style="color: grey">(a7c7e94)</span></li>

 <li>lib/bodega/session_p.h <span style="color: grey">(ebefb4f)</span></li>

</ul>

<p><a href="http://git.reviewboard.kde.org/r/112533/diff/" style="margin-left: \
3em;">View Diff</a></p>



<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">File Attachments \
</h1>

<ul>

 <li><a href="http://git.reviewboard.kde.org/media/uploaded/files/2013/09/05/ratings-main.png">ratings-main.png</a></li>


 <li><a href="http://git.reviewboard.kde.org/media/uploaded/files/2013/09/05/participantratings.png">participantratings.png</a></li>


 <li><a href="http://git.reviewboard.kde.org/media/uploaded/files/2013/09/06/labelsnotcenter.png">labelsnotcenter.png</a></li>


 <li><a href="http://git.reviewboard.kde.org/media/uploaded/files/2013/09/06/delete2.png">delete2.png</a></li>


 <li><a href="http://git.reviewboard.kde.org/media/uploaded/files/2013/09/06/brokenParticipant.diff">brokenParticipant.diff</a></li>


 <li><a href="http://git.reviewboard.kde.org/media/uploaded/files/2013/09/06/participantbroken.png">participantbroken.png</a></li>


</ul>





  </td>
 </tr>
</table>








  </div>
 </body>
</html>



_______________________________________________
Active mailing list
Active@kde.org
https://mail.kde.org/mailman/listinfo/active


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic