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

List:       kde-active
Subject:    Re: Review Request 112478: map the assets with the discourse categories
From:       "Aaron J. Seigo" <aseigo () kde ! org>
Date:       2013-09-03 10:21:22
Message-ID: 20130903102122.7689.83509 () vidsolbach ! de
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


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


that we are using discourse is an implementation detail. it should not bleed out into \
the API, including in the returned json. instead of calling the key "discourseLink" \
just call it "forum"


server/config.json.sample
<http://git.reviewboard.kde.org/r/112478/#comment28947>

    domain is not obvious since there is also host. perhaps call this externalUrl?
    
    that way there is discourse.host and discourse.externalUrl



server/lib/db/assetinfo.js
<http://git.reviewboard.kde.org/r/112478/#comment28946>

    setting it to {} will change the value from a string, so if the database query \
returned nothing .. then the URL in the returned json will not be a string.  
    this should be:
    
    assetInfo.json.asset.discourseLink = '';



sql/discourse.plsql
<http://git.reviewboard.kde.org/r/112478/#comment28948>

    this is unecessary; the "on delete cascade" on the assetId column provides this \
behavior for free.


- Aaron J. Seigo


On Sept. 3, 2013, 10:09 a.m., Giorgos Tsiapaliokas wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/112478/
> -----------------------------------------------------------
> 
> (Updated Sept. 3, 2013, 10:09 a.m.)
> 
> 
> Review request for Bodega.
> 
> 
> Description
> -------
> 
> Hello,
> 
> this patch maps the assets with the links from the discourse categories.
> The json from asset/:assetId will contain a property named "discourseLink" with the \
>  appropriate link
> 
> 
> Diffs
> -----
> 
> server/config.json.sample 1b5ea7f 
> server/lib/db/assetinfo.js b52af3b 
> sql/discourse.plsql 7d108a4 
> 
> Diff: http://git.reviewboard.kde.org/r/112478/diff/
> 
> 
> Testing
> -------
> 
> the output from asset/8
> 
> {
> "authStatus": true,
> "device": "KDE-1",
> "store": "KDE-1",
> "points": 9925,
> "success": true,
> "asset": {
> "id": 8,
> "license": "GPL",
> "partnerId": 1002,
> "version": "0.1",
> "created": "2013-09-02T17:50:10.386Z",
> "filename": "org.kde.poker1.plasmoid",
> "image": "poker1.png",
> "name": "Poker1",
> "description": "Poker 1",
> "points": 15,
> "canDownload": true,
> "tags": [
> {
> "grouping": "name_p"
> },
> {
> "mimetype": "application/x-plasma"
> },
> {
> "contentrating": "Early Childhood"
> },
> {
> "assetType": "game"
> },
> {
> "category": "Card Game"
> }
> ],
> "discourseLink": "localhost:3000/category/Forum%20for%20Poker1"
> }
> }
> 
> 
> 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/112478/">http://git.reviewboard.kde.org/r/112478/</a>
  </td>
    </tr>
   </table>
   <br />





 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: \
-pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">that we are using \
discourse is an implementation detail. it should not bleed out into the API, \
including in the returned json. instead of calling the key &quot;discourseLink&quot; \
just call it &quot;forum&quot;</pre>  <br />







<div>




<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/112478/diff/1/?file=186707#file186707line43" \
style="color: black; font-weight: bold; text-decoration: \
underline;">server/config.json.sample</a>  <span style="font-weight: normal;">

     (Diff revision 1)

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



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th>  <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">43</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">            \
&quot;domain&quot;: &quot;&quot;</pre></td>  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">domain is \
not obvious since there is also host. perhaps call this externalUrl?

that way there is discourse.host and discourse.externalUrl</pre>
</div>
<br />

<div>




<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/112478/diff/1/?file=186708#file186708line33" \
style="color: black; font-weight: bold; text-decoration: \
underline;">server/lib/db/assetinfo.js</a>  <span style="font-weight: normal;">

     (Diff revision 1)

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



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th>  <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">33</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="nx">assetInfo</span><span class="p">.</span><span class="nx">json</span><span \
class="p">.</span><span class="nx">asset</span><span class="p">.</span><span \
class="nx">discourseLink</span> <span class="o">=</span> <span \
class="p">{};</span></pre></td>  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">setting it \
to {} will change the value from a string, so if the database query returned nothing \
.. then the URL in the returned json will not be a string.

this should be:

assetInfo.json.asset.discourseLink = &#39;&#39;;</pre>
</div>
<br />

<div>




<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/112478/diff/1/?file=186709#file186709line7" \
style="color: black; font-weight: bold; text-decoration: \
underline;">sql/discourse.plsql</a>  <span style="font-weight: normal;">

     (Diff revision 1)

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



 
 

 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th>  <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">7</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">CREATE OR \
REPLACE FUNCTION ct_checkDiscourseLinks() RETURNS TRIGGER AS $$</pre></td>  </tr>

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

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

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th>  <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">10</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">    DELETE \
FROM discourseLinks WHERE assetId = OLD.id;</pre></td>  </tr>

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

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

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" \
align="right"><font size="2"></font></th>  <td bgcolor="#c5ffc4" width="50%"><pre \
style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>  <th \
bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid \
#C0C0C0;" align="right"><font size="2">13</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">$$ LANGUAGE \
plpgsql;</pre></td>  </tr>

 </tbody>

</table>

<pre style="margin-left: 2em; white-space: pre-wrap; white-space: -moz-pre-wrap; \
white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">this is \
unecessary; the &quot;on delete cascade&quot; on the assetId column provides this \
behavior for free.</pre> </div>
<br />



<p>- Aaron J.</p>


<br />
<p>On September 3rd, 2013, 10:09 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. 3, 2013, 10:09 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;">Hello,

this patch maps the assets with the links from the discourse categories.
The json from asset/:assetId will contain a property named &quot;discourseLink&quot; \
with the  appropriate link</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;">the output from asset/8

{
  &quot;authStatus&quot;: true,
  &quot;device&quot;: &quot;KDE-1&quot;,
  &quot;store&quot;: &quot;KDE-1&quot;,
  &quot;points&quot;: 9925,
  &quot;success&quot;: true,
  &quot;asset&quot;: {
    &quot;id&quot;: 8,
    &quot;license&quot;: &quot;GPL&quot;,
    &quot;partnerId&quot;: 1002,
    &quot;version&quot;: &quot;0.1&quot;,
    &quot;created&quot;: &quot;2013-09-02T17:50:10.386Z&quot;,
    &quot;filename&quot;: &quot;org.kde.poker1.plasmoid&quot;,
    &quot;image&quot;: &quot;poker1.png&quot;,
    &quot;name&quot;: &quot;Poker1&quot;,
    &quot;description&quot;: &quot;Poker 1&quot;,
    &quot;points&quot;: 15,
    &quot;canDownload&quot;: true,
    &quot;tags&quot;: [
      {
        &quot;grouping&quot;: &quot;name_p&quot;
      },
      {
        &quot;mimetype&quot;: &quot;application/x-plasma&quot;
      },
      {
        &quot;contentrating&quot;: &quot;Early Childhood&quot;
      },
      {
        &quot;assetType&quot;: &quot;game&quot;
      },
      {
        &quot;category&quot;: &quot;Card Game&quot;
      }
    ],
    &quot;discourseLink&quot;: \
&quot;localhost:3000/category/Forum%20for%20Poker1&quot;  }
}</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>server/config.json.sample <span style="color: grey">(1b5ea7f)</span></li>

 <li>server/lib/db/assetinfo.js <span style="color: grey">(b52af3b)</span></li>

 <li>sql/discourse.plsql <span style="color: grey">(7d108a4)</span></li>

</ul>

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







  </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