<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 03/16/2013 10:34 PM, aaron.messner
      wrote:<br>
    </div>
    <blockquote cite="mid:5144E574.4080905@student.uibk.ac.at"
      type="cite">
      <meta http-equiv="content-type" content="text/html;
        charset=ISO-8859-1">
      <meta http-equiv="CONTENT-TYPE" content="text/html;
        charset=ISO-8859-1">
      <p style="margin-bottom: 0cm">Hello </p>
      <p style="margin-bottom: 0cm"><br>
      </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">I work on the
        Project FaceFinder an application for Owncloud </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">The goal of thisa
        application is to help the user to manage the images.</p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">To do this the
        application has various functions. </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">It supports the
        extraction of Exif data like camera type and focal length.</p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">It is also able to
        extract tags and you can tag the images.</p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">There is also the
        possibility to search for the images and to check the equality
        of all images .</p>
      <p style="margin-bottom: 0cm" align="JUSTIFY"><br>
      </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">The project is in a
        early state. I would be interested in your opinion. </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY"><br>
      </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY"><br>
      </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">This is the git
        Repository if you are interested</p>
      <p style="margin-bottom: 0cm" align="JUSTIFY"><br>
      </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY"><<a
          moz-do-not-send="true"
          href="https://github.com/noldmess/facefinder.git">https://github.com/noldmess/facefinder.git</a>></p>
      <p style="margin-bottom: 0cm" align="JUSTIFY"><br>
      </p>
      <p style="margin-bottom: 0cm" align="JUSTIFY">thanks for helping
        me to make my application better</p>
      <title></title>
      <meta name="GENERATOR" content="LibreOffice 3.5 (Linux)">
      <style type="text/css">
        <!--
                @page { margin: 2cm }
                P { margin-bottom: 0.21cm }
                A:link { so-language: zxx }
        -->
        </style> <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Owncloud mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Owncloud@kde.org">Owncloud@kde.org</a>
<a class="moz-txt-link-freetext" href="https://mail.kde.org/mailman/listinfo/owncloud">https://mail.kde.org/mailman/listinfo/owncloud</a>
</pre>
    </blockquote>
    Hi, i looked into the code a bit, and just some stuff that i found
    ;) so just some constructive feedback (i know the code is in an
    early stage). I'm writing the apps development docs, so just some
    code feedback from me ;)<br>
    <br>
    * You are missing CSRF checks in the ajax/ folder files<br>
    * Theres also an XSS vulnerability in templates/search.php<br>
    * by using json_encode directly your code is vulnerable to sniffing
    in IE, please use the built in OCP\JSON::success() or the
    JSONResponse class from the appframework app.<br>
    <br>
    Please see
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a
href="http://doc.owncloud.org/server/master/developer_manual/app/general/security.html">http://doc.owncloud.org/server/master/developer_manual/app/general/security.html</a><br>
    <br>
    Also i dont know what the module loader is, but you might also want
    to check the built in classloader:
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a
href="http://doc.owncloud.org/server/master/developer_manual/app/app/classloader.html">http://doc.owncloud.org/server/master/developer_manual/app/app/classloader.</a><br>
    <br>
    Some coding tipps: <br>
    * If you name a class manager it probably has to many
    responsibilities. Check SOLID:
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a
      href="http://en.wikipedia.org/wiki/SOLID_%28object-oriented_design%29">http://en.wikipedia.org/wiki/SOLID_(object-oriented_design)</a><br>
    * Singleton is a bad pattern because its essentially a global. See
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a href="http://www.youtube.com/watch?v=-FRm3VPhseI">http://www.youtube.com/watch?v=-FRm3VPhseI</a><br>
    <br>
    Its cool that you use tests (cheers!) but you might want to reduce
    the pain and lines of code dramatically by using dependency
    injection (
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a
href="http://doc.owncloud.org/server/master/developer_manual/app/general/dependencyinjection.html">http://doc.owncloud.org/server/master/developer_manual/app/general/dependencyinjection.html</a>)
    (a hint: my appframework app helps you out with that one ;D read the
    docs)
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
  </body>
</html>