[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"><</span><span \
class="n">ParticipantRatings</span><span class="o">></span> <span \
class="n">participantRatings</span> <span class="o">=</span> <span \
class="n">participantRatingsJob</span><span class="o">-></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"><</span><span \
class="n">ParticipantRatings</span><span class="o">></span> <span \
class="n">participantRatings</span> <span class="o">=</span> <span \
class="n">participantRatingsJob</span><span class="o">-></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">&</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">&</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"><<</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"><<</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"><<</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"><<</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">-></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">-></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">-></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">-></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'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 "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.</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