Merge pull request #1037 from j0k3r/refactor-cs

CS
This commit is contained in:
Nicolas Lœuillet 2015-01-31 21:24:20 +01:00
commit 4cfbd5d893
47 changed files with 153 additions and 183 deletions

View file

@ -8,12 +8,10 @@ use Symfony\Component\HttpFoundation\Request;
use Wallabag\CoreBundle\Repository; use Wallabag\CoreBundle\Repository;
use Wallabag\CoreBundle\Entity\Entries; use Wallabag\CoreBundle\Entity\Entries;
use Wallabag\CoreBundle\Service\Extractor; use Wallabag\CoreBundle\Service\Extractor;
use Wallabag\CoreBundle\Helper\Tools;
use Wallabag\CoreBundle\Helper\Url; use Wallabag\CoreBundle\Helper\Url;
class EntryController extends Controller class EntryController extends Controller
{ {
/** /**
* @param Request $request * @param Request $request
* @Route("/new", name="new_entry") * @Route("/new", name="new_entry")
@ -32,7 +30,6 @@ class EntryController extends Controller
$form->handleRequest($request); $form->handleRequest($request);
if ($form->isValid()) { if ($form->isValid()) {
$content = Extractor::extract($entry->getUrl()); $content = Extractor::extract($entry->getUrl());
$entry->setTitle($content->getTitle()); $entry->setTitle($content->getTitle());

View file

@ -18,6 +18,7 @@ class SecurityController extends Controller
$error = $session->get(SecurityContext::AUTHENTICATION_ERROR); $error = $session->get(SecurityContext::AUTHENTICATION_ERROR);
$session->remove(SecurityContext::AUTHENTICATION_ERROR); $session->remove(SecurityContext::AUTHENTICATION_ERROR);
} }
return $this->render('WallabagCoreBundle:Security:login.html.twig', array( return $this->render('WallabagCoreBundle:Security:login.html.twig', array(
// last username entered by the user // last username entered by the user
'last_username' => $session->get(SecurityContext::LAST_USERNAME), 'last_username' => $session->get(SecurityContext::LAST_USERNAME),

View file

@ -3,7 +3,6 @@
namespace Wallabag\CoreBundle\Controller; namespace Wallabag\CoreBundle\Controller;
use Nelmio\ApiDocBundle\Annotation\ApiDoc; use Nelmio\ApiDocBundle\Annotation\ApiDoc;
use FOS\RestBundle\Controller\Annotations\View;
use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Request;
use Wallabag\CoreBundle\Entity\Entries; use Wallabag\CoreBundle\Entity\Entries;
@ -12,7 +11,6 @@ use Wallabag\CoreBundle\Service\Extractor;
class WallabagRestController extends Controller class WallabagRestController extends Controller
{ {
/** /**
* Retrieve all entries. It could be filtered by many options. * Retrieve all entries. It could be filtered by many options.
* *
@ -44,14 +42,13 @@ class WallabagRestController extends Controller
$entries = $this $entries = $this
->getDoctrine() ->getDoctrine()
->getRepository('WallabagCoreBundle:Entries') ->getRepository('WallabagCoreBundle:Entries')
->findEntries(1, (int)$isArchived, (int)$isStarred, (int)$isDeleted, $sort, $order); ->findEntries(1, (int) $isArchived, (int) $isStarred, (int) $isDeleted, $sort, $order);
if(!is_array($entries)) { if (!is_array($entries)) {
throw $this->createNotFoundException(); throw $this->createNotFoundException();
} }
return $entries; return $entries;
} }
/** /**
@ -119,7 +116,6 @@ class WallabagRestController extends Controller
*/ */
public function patchEntriesAction(Entries $entry) public function patchEntriesAction(Entries $entry)
{ {
} }
/** /**
@ -133,10 +129,8 @@ class WallabagRestController extends Controller
*/ */
public function deleteEntriesAction(Entries $entry) public function deleteEntriesAction(Entries $entry)
{ {
} }
/** /**
* Retrieve all tags for an entry * Retrieve all tags for an entry
* *
@ -146,8 +140,8 @@ class WallabagRestController extends Controller
* } * }
* ) * )
*/ */
public function getEntriesTagsAction(Entries $entry) { public function getEntriesTagsAction(Entries $entry)
{
} }
/** /**
@ -162,8 +156,8 @@ class WallabagRestController extends Controller
* } * }
* ) * )
*/ */
public function postEntriesTagsAction(Entries $entry) { public function postEntriesTagsAction(Entries $entry)
{
} }
/** /**
@ -178,7 +172,6 @@ class WallabagRestController extends Controller
*/ */
public function deleteEntriesTagsAction(Entries $entry, Tags $tag) public function deleteEntriesTagsAction(Entries $entry, Tags $tag)
{ {
} }
/** /**
@ -187,8 +180,8 @@ class WallabagRestController extends Controller
* @ApiDoc( * @ApiDoc(
* ) * )
*/ */
public function getTagsAction() { public function getTagsAction()
{
} }
/** /**
@ -200,8 +193,8 @@ class WallabagRestController extends Controller
* } * }
* ) * )
*/ */
public function getTagAction(Tags $tag) { public function getTagAction(Tags $tag)
{
} }
/** /**
@ -215,6 +208,5 @@ class WallabagRestController extends Controller
*/ */
public function deleteTagAction(Tags $tag) public function deleteTagAction(Tags $tag)
{ {
} }
} }

View file

@ -35,8 +35,6 @@ class Config
*/ */
private $value; private $value;
/** /**
* Get id * Get id
* *

View file

@ -66,8 +66,6 @@ class Entries
*/ */
private $userId; private $userId;
/** /**
* Get id * Get id
* *
@ -150,6 +148,7 @@ class Entries
public function toggleArchive() public function toggleArchive()
{ {
$this->isRead = $this->getIsRead() ^ 1; $this->isRead = $this->getIsRead() ^ 1;
return $this; return $this;
} }

View file

@ -28,8 +28,6 @@ class Tags
*/ */
private $value; private $value;
/** /**
* Get id * Get id
* *

View file

@ -35,8 +35,6 @@ class TagsEntries
*/ */
private $tagId; private $tagId;
/** /**
* Get id * Get id
* *

View file

@ -4,7 +4,6 @@ namespace Wallabag\CoreBundle\Entity;
use Doctrine\ORM\Mapping as ORM; use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\UserInterface; use Symfony\Component\Security\Core\User\UserInterface;
use Symfony\Component\Security\Core\User\EquatableInterface;
use Symfony\Component\Security\Core\User\AdvancedUserInterface; use Symfony\Component\Security\Core\User\AdvancedUserInterface;
/** /**
@ -208,7 +207,7 @@ class Users implements AdvancedUserInterface, \Serializable
*/ */
public function unserialize($serialized) public function unserialize($serialized)
{ {
list ( list(
$this->id, $this->id,
) = unserialize($serialized); ) = unserialize($serialized);
} }

View file

@ -42,8 +42,6 @@ class UsersConfig
*/ */
private $value; private $value;
/** /**
* Get id * Get id
* *

View file

@ -8,8 +8,8 @@ class Content
private $body; private $body;
public function __constructor() { public function __constructor()
{
} }
public function getTitle() public function getTitle()

View file

@ -2,9 +2,6 @@
namespace Wallabag\CoreBundle\Helper; namespace Wallabag\CoreBundle\Helper;
class Entries
class Entries { {
} }

View file

@ -2,9 +2,6 @@
namespace Wallabag\CoreBundle\Helper; namespace Wallabag\CoreBundle\Helper;
use \RecursiveIteratorIterator;
use \RecursiveDirectoryIterator;
final class Tools final class Tools
{ {
/** /**
@ -18,7 +15,7 @@ final class Tools
$timeout = 15; $timeout = 15;
$useragent = "Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101 Firefox/18.0"; $useragent = "Mozilla/5.0 (Windows NT 5.1; rv:18.0) Gecko/20100101 Firefox/18.0";
if (in_array ('curl', get_loaded_extensions())) { if (in_array('curl', get_loaded_extensions())) {
# Fetch feed from URL # Fetch feed from URL
$curl = curl_init(); $curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_URL, $url);
@ -30,8 +27,8 @@ final class Tools
curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl, CURLOPT_HEADER, false);
# for ssl, do not verified certificate # for ssl, do not verified certificate
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_AUTOREFERER, TRUE ); curl_setopt($curl, CURLOPT_AUTOREFERER, true);
# FeedBurner requires a proper USER-AGENT... # FeedBurner requires a proper USER-AGENT...
curl_setopt($curl, CURL_HTTP_VERSION_1_1, true); curl_setopt($curl, CURL_HTTP_VERSION_1_1, true);
@ -48,13 +45,13 @@ final class Tools
array( array(
'http' => array( 'http' => array(
'timeout' => $timeout, 'timeout' => $timeout,
'header' => "User-Agent: " . $useragent, 'header' => "User-Agent: ".$useragent,
'follow_location' => true 'follow_location' => true,
), ),
'ssl' => array( 'ssl' => array(
'verify_peer' => false, 'verify_peer' => false,
'allow_self_signed' => true 'allow_self_signed' => true,
) ),
) )
); );
@ -62,13 +59,12 @@ final class Tools
$data = @file_get_contents($url, false, $context, -1, 4000000); $data = @file_get_contents($url, false, $context, -1, 4000000);
if (isset($http_response_header) and isset($http_response_header[0])) { if (isset($http_response_header) and isset($http_response_header[0])) {
$httpcodeOK = isset($http_response_header) and isset($http_response_header[0]) and ((strpos($http_response_header[0], '200 OK') !== FALSE) or (strpos($http_response_header[0], '301 Moved Permanently') !== FALSE)); $httpcodeOK = isset($http_response_header) and isset($http_response_header[0]) and ((strpos($http_response_header[0], '200 OK') !== false) or (strpos($http_response_header[0], '301 Moved Permanently') !== false));
} }
} }
# if response is not empty and response is OK # if response is not empty and response is OK
if (isset($data) and isset($httpcodeOK) and $httpcodeOK) { if (isset($data) and isset($httpcodeOK) and $httpcodeOK) {
# take charset of page and get it # take charset of page and get it
preg_match('#<meta .*charset=.*>#Usi', $data, $meta); preg_match('#<meta .*charset=.*>#Usi', $data, $meta);
@ -77,19 +73,20 @@ final class Tools
preg_match('#charset="?(.*)"#si', $meta[0], $encoding); preg_match('#charset="?(.*)"#si', $meta[0], $encoding);
# if charset is found set it otherwise, set it to utf-8 # if charset is found set it otherwise, set it to utf-8
$html_charset = (!empty($encoding[1])) ? strtolower($encoding[1]) : 'utf-8'; $html_charset = (!empty($encoding[1])) ? strtolower($encoding[1]) : 'utf-8';
if (empty($encoding[1])) $encoding[1] = 'utf-8'; if (empty($encoding[1])) {
$encoding[1] = 'utf-8';
}
} else { } else {
$html_charset = 'utf-8'; $html_charset = 'utf-8';
$encoding[1] = ''; $encoding[1] = '';
} }
# replace charset of url to charset of page # replace charset of url to charset of page
$data = str_replace('charset=' . $encoding[1], 'charset=' . $html_charset, $data); $data = str_replace('charset='.$encoding[1], 'charset='.$html_charset, $data);
return $data; return $data;
} } else {
else { return false;
return FALSE;
} }
} }
@ -101,7 +98,7 @@ final class Tools
*/ */
public static function encodeString($string) public static function encodeString($string)
{ {
return sha1($string . SALT); return sha1($string.SALT);
} }
public static function generateToken() public static function generateToken()
@ -113,12 +110,10 @@ final class Tools
} else { } else {
$token = substr(base64_encode(file_get_contents('/dev/urandom', false, null, 0, 20)), 0, 15); $token = substr(base64_encode(file_get_contents('/dev/urandom', false, null, 0, 20)), 0, 15);
} }
} } else {
else {
$token = substr(base64_encode(uniqid(mt_rand(), true)), 0, 20); $token = substr(base64_encode(uniqid(mt_rand(), true)), 0, 20);
} }
return str_replace('+', '', $token); return str_replace('+', '', $token);
} }
} }

View file

@ -6,20 +6,23 @@ class Url
{ {
public $url; public $url;
function __construct($url) public function __construct($url)
{ {
$this->url = base64_decode($url); $this->url = base64_decode($url);
} }
public function getUrl() { public function getUrl()
{
return $this->url; return $this->url;
} }
public function setUrl($url) { public function setUrl($url)
{
$this->url = $url; $this->url = $url;
} }
public function isCorrect() { public function isCorrect()
return filter_var($this->url, FILTER_VALIDATE_URL) !== FALSE; {
return filter_var($this->url, FILTER_VALIDATE_URL) !== false;
} }
} }

View file

@ -6,7 +6,6 @@ use Doctrine\ORM\Query;
use Doctrine\ORM\EntityRepository; use Doctrine\ORM\EntityRepository;
use Doctrine\ORM\Tools\Pagination\Paginator; use Doctrine\ORM\Tools\Pagination\Paginator;
use Wallabag\CoreBundle\Entity\Entries; use Wallabag\CoreBundle\Entity\Entries;
use Wallabag\CoreBundle\Service\Extractor;
class EntriesRepository extends EntityRepository class EntriesRepository extends EntityRepository
{ {

View file

@ -25,5 +25,3 @@
</services> </services>
</container> </container>

View file

@ -37,4 +37,3 @@
<script src="{{ asset('themes/_global/js/saveLink.js') }}"></script> <script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
<script src="{{ asset('themes/_global/js/popupForm.js') }}"></script> <script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
<script src="{{ asset('themes/baggy/js/closeMessage.js') }}"></script> <script src="{{ asset('themes/baggy/js/closeMessage.js') }}"></script>

View file

@ -12,4 +12,3 @@
<li><a href={{ path('about') }}>{% trans %}about{% endtrans %}</a></li> <li><a href={{ path('about') }}>{% trans %}about{% endtrans %}</a></li>
<li><a class="icon icon-power" href="{{ path('logout') }}" title="{% trans %}logout{% endtrans %}">{% trans %}logout{% endtrans %}</a></li> <li><a class="icon icon-power" href="{{ path('logout') }}" title="{% trans %}logout{% endtrans %}">{% trans %}logout{% endtrans %}</a></li>
</ul> </ul>

View file

@ -11,4 +11,3 @@
</ul> </ul>
{% include '_pocheit-form.twig' %} {% include '_pocheit-form.twig' %}
{% include '_search-form.twig' %} {% include '_search-form.twig' %}

View file

@ -52,7 +52,6 @@ class WsseListener implements ListenerInterface
$response = new Response(); $response = new Response();
$response->setStatusCode(403); $response->setStatusCode(403);
$event->setResponse($response); $event->setResponse($response);
} }
} }
} }

View file

@ -7,14 +7,15 @@ use Wallabag\CoreBundle\Helper\Url;
final class Extractor final class Extractor
{ {
public static function extract($url) { public static function extract($url)
{
$pageContent = Extractor::getPageContent(new Url(base64_encode($url))); $pageContent = Extractor::getPageContent(new Url(base64_encode($url)));
$title = ($pageContent['rss']['channel']['item']['title'] != '') ? $pageContent['rss']['channel']['item']['title'] : _('Untitled'); $title = ($pageContent['rss']['channel']['item']['title'] != '') ? $pageContent['rss']['channel']['item']['title'] : _('Untitled');
$body = $pageContent['rss']['channel']['item']['description']; $body = $pageContent['rss']['channel']['item']['description'];
$content = new Content(); $content = new Content();
$content->setTitle($title); $content->setTitle($title);
$content->setBody($body);; $content->setBody($body);
return $content; return $content;
} }
@ -28,8 +29,8 @@ final class Extractor
{ {
// Saving and clearing context // Saving and clearing context
$REAL = array(); $REAL = array();
foreach( $GLOBALS as $key => $value ) { foreach ($GLOBALS as $key => $value) {
if( $key != 'GLOBALS' && $key != '_SESSION' && $key != 'HTTP_SESSION_VARS' ) { if ($key != 'GLOBALS' && $key != '_SESSION' && $key != 'HTTP_SESSION_VARS') {
$GLOBALS[$key] = array(); $GLOBALS[$key] = array();
$REAL[$key] = $value; $REAL[$key] = $value;
} }
@ -37,38 +38,39 @@ final class Extractor
// Saving and clearing session // Saving and clearing session
if (isset($_SESSION)) { if (isset($_SESSION)) {
$REAL_SESSION = array(); $REAL_SESSION = array();
foreach( $_SESSION as $key => $value ) { foreach ($_SESSION as $key => $value) {
$REAL_SESSION[$key] = $value; $REAL_SESSION[$key] = $value;
unset($_SESSION[$key]); unset($_SESSION[$key]);
} }
} }
// Running code in different context // Running code in different context
$scope = function() { $scope = function () {
extract( func_get_arg(1) ); extract(func_get_arg(1));
$_GET = $_REQUEST = array( $_GET = $_REQUEST = array(
"url" => $url->getUrl(), "url" => $url->getUrl(),
"max" => 5, "max" => 5,
"links" => "preserve", "links" => "preserve",
"exc" => "", "exc" => "",
"format" => "json", "format" => "json",
"submit" => "Create Feed" "submit" => "Create Feed",
); );
ob_start(); ob_start();
require func_get_arg(0); require func_get_arg(0);
$json = ob_get_contents(); $json = ob_get_contents();
ob_end_clean(); ob_end_clean();
return $json; return $json;
}; };
// Silence $scope function to avoid // Silence $scope function to avoid
// issues with FTRSS when error_reporting is to high // issues with FTRSS when error_reporting is to high
// FTRSS generates PHP warnings which break output // FTRSS generates PHP warnings which break output
$json = @$scope(__DIR__ . "/../../../../vendor/wallabag/Fivefilters_Libraries/makefulltextfeed.php", array("url" => $url)); $json = @$scope(__DIR__."/../../../../vendor/wallabag/Fivefilters_Libraries/makefulltextfeed.php", array("url" => $url));
// Clearing and restoring context // Clearing and restoring context
foreach ($GLOBALS as $key => $value) { foreach ($GLOBALS as $key => $value) {
if($key != "GLOBALS" && $key != "_SESSION" ) { if ($key != "GLOBALS" && $key != "_SESSION") {
unset($GLOBALS[$key]); unset($GLOBALS[$key]);
} }
} }
@ -78,11 +80,11 @@ final class Extractor
// Clearing and restoring session // Clearing and restoring session
if (isset($REAL_SESSION)) { if (isset($REAL_SESSION)) {
foreach($_SESSION as $key => $value) { foreach ($_SESSION as $key => $value) {
unset($_SESSION[$key]); unset($_SESSION[$key]);
} }
foreach($REAL_SESSION as $key => $value) { foreach ($REAL_SESSION as $key => $value) {
$_SESSION[$key] = $value; $_SESSION[$key] = $value;
} }
} }