use Wallabag\CoreBundle\Repository;
use Wallabag\CoreBundle\Entity\Entries;
use Wallabag\CoreBundle\Service\Extractor;
-use Wallabag\CoreBundle\Helper\Tools;
use Wallabag\CoreBundle\Helper\Url;
class EntryController extends Controller
{
-
/**
- * @param Request $request
+ * @param Request $request
* @Route("/new", name="new_entry")
* @return \Symfony\Component\HttpFoundation\Response
*/
$form->handleRequest($request);
if ($form->isValid()) {
-
$content = Extractor::extract($entry->getUrl());
$entry->setTitle($content->getTitle());
/**
* Shows entry content
*
- * @param Entries $entry
+ * @param Entries $entry
* @Route("/view/{id}", requirements={"id" = "\d+"}, name="view")
* @return \Symfony\Component\HttpFoundation\Response
*/
/**
* Changes read status for an entry
*
- * @param Request $request
- * @param Entries $entry
+ * @param Request $request
+ * @param Entries $entry
* @Route("/archive/{id}", requirements={"id" = "\d+"}, name="archive_entry")
* @return \Symfony\Component\HttpFoundation\RedirectResponse
*/
/**
* Changes favorite status for an entry
*
- * @param Request $request
- * @param Entries $entry
+ * @param Request $request
+ * @param Entries $entry
* @Route("/star/{id}", requirements={"id" = "\d+"}, name="star_entry")
* @return \Symfony\Component\HttpFoundation\RedirectResponse
*/
/**
* Deletes entry
*
- * @param Request $request
- * @param Entries $entry
+ * @param Request $request
+ * @param Entries $entry
* @Route("/delete/{id}", requirements={"id" = "\d+"}, name="delete_entry")
* @return \Symfony\Component\HttpFoundation\RedirectResponse
*/
$error = $session->get(SecurityContext::AUTHENTICATION_ERROR);
$session->remove(SecurityContext::AUTHENTICATION_ERROR);
}
+
return $this->render('WallabagCoreBundle:Security:login.html.twig', array(
// last username entered by the user
'last_username' => $session->get(SecurityContext::LAST_USERNAME),
'error' => $error,
));
}
-}
\ No newline at end of file
+}
namespace Wallabag\CoreBundle\Controller;
use Nelmio\ApiDocBundle\Annotation\ApiDoc;
-use FOS\RestBundle\Controller\Annotations\View;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Wallabag\CoreBundle\Entity\Entries;
class WallabagRestController extends Controller
{
-
/**
* Retrieve all entries. It could be filtered by many options.
*
$entries = $this
->getDoctrine()
->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();
}
return $entries;
-
}
/**
*/
public function patchEntriesAction(Entries $entry)
{
-
}
/**
*/
public function deleteEntriesAction(Entries $entry)
{
-
}
-
/**
* Retrieve all tags for an entry
*
* }
* )
*/
- public function getEntriesTagsAction(Entries $entry) {
-
+ public function getEntriesTagsAction(Entries $entry)
+ {
}
/**
* }
* )
*/
- public function postEntriesTagsAction(Entries $entry) {
-
+ public function postEntriesTagsAction(Entries $entry)
+ {
}
/**
*/
public function deleteEntriesTagsAction(Entries $entry, Tags $tag)
{
-
}
/**
* @ApiDoc(
* )
*/
- public function getTagsAction() {
-
+ public function getTagsAction()
+ {
}
/**
* }
* )
*/
- public function getTagAction(Tags $tag) {
-
+ public function getTagAction(Tags $tag)
+ {
}
/**
*/
public function deleteTagAction(Tags $tag)
{
-
}
-}
\ No newline at end of file
+}
public function addConfiguration(NodeDefinition $node)
{
}
-}
\ No newline at end of file
+}
*/
private $value;
-
-
/**
* Get id
*
- * @return integer
+ * @return integer
*/
public function getId()
{
/**
* Set name
*
- * @param string $name
+ * @param string $name
* @return Config
*/
public function setName($name)
/**
* Get name
*
- * @return string
+ * @return string
*/
public function getName()
{
/**
* Set value
*
- * @param string $value
+ * @param string $value
* @return Config
*/
public function setValue($value)
/**
* Get value
*
- * @return string
+ * @return string
*/
public function getValue()
{
*/
private $userId;
-
-
/**
* Get id
*
- * @return integer
+ * @return integer
*/
public function getId()
{
/**
* Set title
*
- * @param string $title
+ * @param string $title
* @return Entries
*/
public function setTitle($title)
/**
* Get title
*
- * @return string
+ * @return string
*/
public function getTitle()
{
/**
* Set url
*
- * @param string $url
+ * @param string $url
* @return Entries
*/
public function setUrl($url)
/**
* Get url
*
- * @return string
+ * @return string
*/
public function getUrl()
{
/**
* Set isRead
*
- * @param string $isRead
+ * @param string $isRead
* @return Entries
*/
public function setIsRead($isRead)
/**
* Get isRead
*
- * @return string
+ * @return string
*/
public function getIsRead()
{
public function toggleArchive()
{
$this->isRead = $this->getIsRead() ^ 1;
+
return $this;
}
/**
* Set isFav
*
- * @param string $isFav
+ * @param string $isFav
* @return Entries
*/
public function setIsFav($isFav)
/**
* Get isFav
*
- * @return string
+ * @return string
*/
public function getIsFav()
{
/**
* Set content
*
- * @param string $content
+ * @param string $content
* @return Entries
*/
public function setContent($content)
/**
* Get content
*
- * @return string
+ * @return string
*/
public function getContent()
{
/**
* Set userId
*
- * @param string $userId
+ * @param string $userId
* @return Entries
*/
public function setUserId($userId)
/**
* Get userId
*
- * @return string
+ * @return string
*/
public function getUserId()
{
*/
private $value;
-
-
/**
* Get id
*
- * @return integer
+ * @return integer
*/
public function getId()
{
/**
* Set value
*
- * @param string $value
+ * @param string $value
* @return Tags
*/
public function setValue($value)
/**
* Get value
*
- * @return string
+ * @return string
*/
public function getValue()
{
*/
private $tagId;
-
-
/**
* Get id
*
- * @return integer
+ * @return integer
*/
public function getId()
{
/**
* Set entryId
*
- * @param integer $entryId
+ * @param integer $entryId
* @return TagsEntries
*/
public function setEntryId($entryId)
/**
* Get entryId
*
- * @return integer
+ * @return integer
*/
public function getEntryId()
{
/**
* Set tagId
*
- * @param integer $tagId
+ * @param integer $tagId
* @return TagsEntries
*/
public function setTagId($tagId)
/**
* Get tagId
*
- * @return integer
+ * @return integer
*/
public function getTagId()
{
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\UserInterface;
-use Symfony\Component\Security\Core\User\EquatableInterface;
use Symfony\Component\Security\Core\User\AdvancedUserInterface;
/**
/**
* Get id
*
- * @return integer
+ * @return integer
*/
public function getId()
{
/**
* Set username
*
- * @param string $username
+ * @param string $username
* @return Users
*/
public function setUsername($username)
/**
* Get username
*
- * @return string
+ * @return string
*/
public function getUsername()
{
/**
* Set password
*
- * @param string $password
+ * @param string $password
* @return Users
*/
public function setPassword($password)
/**
* Get password
*
- * @return string
+ * @return string
*/
public function getPassword()
{
/**
* Set name
*
- * @param string $name
+ * @param string $name
* @return Users
*/
public function setName($name)
/**
* Get name
*
- * @return string
+ * @return string
*/
public function getName()
{
/**
* Set email
*
- * @param string $email
+ * @param string $email
* @return Users
*/
public function setEmail($email)
/**
* Get email
*
- * @return string
+ * @return string
*/
public function getEmail()
{
*/
public function unserialize($serialized)
{
- list (
+ list(
$this->id,
) = unserialize($serialized);
}
*/
private $value;
-
-
/**
* Get id
*
- * @return integer
+ * @return integer
*/
public function getId()
{
/**
* Set userId
*
- * @param string $userId
+ * @param string $userId
* @return UsersConfig
*/
public function setUserId($userId)
/**
* Get userId
*
- * @return string
+ * @return string
*/
public function getUserId()
{
/**
* Set name
*
- * @param string $name
+ * @param string $name
* @return UsersConfig
*/
public function setName($name)
/**
* Get name
*
- * @return string
+ * @return string
*/
public function getName()
{
/**
* Set value
*
- * @param string $value
+ * @param string $value
* @return UsersConfig
*/
public function setValue($value)
/**
* Get value
*
- * @return string
+ * @return string
*/
public function getValue()
{
private $body;
- public function __constructor() {
-
+ public function __constructor()
+ {
}
public function getTitle()
{
$this->body = $body;
}
-}
\ No newline at end of file
+}
namespace Wallabag\CoreBundle\Helper;
-
-class Entries {
-
-
-
-}
\ No newline at end of file
+class Entries
+{
+}
namespace Wallabag\CoreBundle\Helper;
-use \RecursiveIteratorIterator;
-use \RecursiveDirectoryIterator;
-
final class Tools
{
/**
$timeout = 15;
$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
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, false);
# for ssl, do not verified certificate
- curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
- curl_setopt($curl, CURLOPT_AUTOREFERER, TRUE );
+ curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
+ curl_setopt($curl, CURLOPT_AUTOREFERER, true);
# FeedBurner requires a proper USER-AGENT...
curl_setopt($curl, CURL_HTTP_VERSION_1_1, true);
array(
'http' => array(
'timeout' => $timeout,
- 'header' => "User-Agent: " . $useragent,
- 'follow_location' => true
+ 'header' => "User-Agent: ".$useragent,
+ 'follow_location' => true,
),
'ssl' => array(
'verify_peer' => false,
- 'allow_self_signed' => true
- )
+ 'allow_self_signed' => true,
+ ),
)
);
$data = @file_get_contents($url, false, $context, -1, 4000000);
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 (isset($data) and isset($httpcodeOK) and $httpcodeOK) {
-
# take charset of page and get it
preg_match('#<meta .*charset=.*>#Usi', $data, $meta);
preg_match('#charset="?(.*)"#si', $meta[0], $encoding);
# if charset is found set it otherwise, set it to 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 {
$html_charset = 'utf-8';
$encoding[1] = '';
}
# 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;
- }
- else {
- return FALSE;
+ } else {
+ return false;
}
}
*/
public static function encodeString($string)
{
- return sha1($string . SALT);
+ return sha1($string.SALT);
}
public static function generateToken()
} else {
$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);
}
return str_replace('+', '', $token);
}
-
}
{
public $url;
- function __construct($url)
+ public function __construct($url)
{
$this->url = base64_decode($url);
}
- public function getUrl() {
+ public function getUrl()
+ {
return $this->url;
}
- public function setUrl($url) {
+ public function setUrl($url)
+ {
$this->url = $url;
}
- public function isCorrect() {
- return filter_var($this->url, FILTER_VALIDATE_URL) !== FALSE;
+ public function isCorrect()
+ {
+ return filter_var($this->url, FILTER_VALIDATE_URL) !== false;
}
-}
\ No newline at end of file
+}
use Doctrine\ORM\EntityRepository;
use Doctrine\ORM\Tools\Pagination\Paginator;
use Wallabag\CoreBundle\Entity\Entries;
-use Wallabag\CoreBundle\Service\Extractor;
class EntriesRepository extends EntityRepository
{
*
* @param $userId
* @param $firstResult
- * @param int $maxResults
+ * @param int $maxResults
* @return Paginator
*/
public function findUnreadByUser($userId, $firstResult, $maxResults = 12)
*
* @param $userId
* @param $firstResult
- * @param int $maxResults
+ * @param int $maxResults
* @return Paginator
*/
public function findArchiveByUser($userId, $firstResult, $maxResults = 12)
*
* @param $userId
* @param $firstResult
- * @param int $maxResults
+ * @param int $maxResults
* @return Paginator
*/
public function findStarredByUser($userId, $firstResult, $maxResults = 12)
_wllbg:
resource: "@WallabagCoreBundle/Controller/EntryController.php"
- type: annotation
\ No newline at end of file
+ type: annotation
entries:
type: rest
resource: "WallabagCoreBundle:WallabagRest"
- name_prefix: api_
\ No newline at end of file
+ name_prefix: api_
</services>
</container>
-
-
});
});
</script>
-{% endblock %}
\ No newline at end of file
+{% endblock %}
{% block content %}
{{ form(form) }}
-{% endblock %}
\ No newline at end of file
+{% endblock %}
<p>{% trans %}wallabag is a read-it-later application: you can save a web page by keeping only content. Elements like ads or menus are deleted.{% endtrans %}</p>
<h2>{% trans %}Getting help{% endtrans %}</h2>
-
+
<dl>
<dt>{% trans %}Documentation{% endtrans %}</dt>
<dd><a href="https://doc.wallabag.org/">Online documentation</a></dd>
-
+
<dt>{% trans %}Support{% endtrans %}</dt>
<dd><a href="http://support.wallabag.org/">http://support.wallabag.org/</a></dd>
</dl>
<script type="text/javascript">
top["bookmarklet-url@wallabag.org"]=""+"<!DOCTYPE html>"+"<html>"+"<head>"+"<title>bag it!</title>"+'<link rel="icon" href="tpl/img/favicon.ico" />'+"</head>"+"<body>"+"<script>"+"window.onload=function(){"+"window.setTimeout(function(){"+"history.back();"+"},250);"+"};"+"</scr"+"ipt>"+"</body>"+"</html>"
- </script>
\ No newline at end of file
+ </script>
<footer class="w600p center mt3 mb3 smaller txtright">
<p>{% trans %}powered by{% endtrans %} <a href="http://wallabag.org">wallabag</a></p>
- </footer>
\ No newline at end of file
+ </footer>
<script src="{{ asset('themes/_global/js/saveLink.js') }}"></script>
<script src="{{ asset('themes/_global/js/popupForm.js') }}"></script>
<script src="{{ asset('themes/baggy/js/closeMessage.js') }}"></script>
-
<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>
</ul>
-
</div>
</fieldset>
</form>
-
+
<h2>{% trans "Delete account" %}</h2>
{% if not only_user %}<form method="post" action="?deluser">
<p>{% trans "You can delete your account by entering your password and validating." %}<br /><b>{% trans "Be careful, data will be erased forever (that is a very long time)." %}</b></p>
</div>
{% include '_footer.twig' %}
</body>
-</html>
\ No newline at end of file
+</html>
<input class="col" type="password" id="password" name="password" placeholder="{% trans "Password" %}" tabindex="2" {% if constant('MODE_DEMO') == 1 %}value="poche"{% endif %} />
</div>
<div class="row">
-
+
<div class="col">
<input type="checkbox" id="longlastingsession" name="longlastingsession" tabindex="3" /> <label for="longlastingsession">{% trans "Stay signed in" %}</label><br />
<small class="inbl">{% trans "(Do not check on public computers)" %}</small>
<script type="text/javascript">
top["bookmarklet-url@wallabag.org"]=""+"<!DOCTYPE html>"+"<html>"+"<head>"+"<title>bag it!</title>"+'<link rel="icon" href="{{poche_url}}tpl/img/favicon.ico" />'+"</head>"+"<body>"+"<script>"+"window.onload=function(){"+"window.setTimeout(function(){"+"history.back();"+"},250);"+"};"+"</scr"+"ipt>"+"</body>"+"</html>"
- </script>
\ No newline at end of file
+ </script>
<footer class="w600p center mt3 mb3 smaller txtright">
<p>{% trans "powered by" %} <a href="http://wallabag.org">wallabag</a></p>
{% if constant('DEBUG_POCHE') == 1 %}<p><strong>{% trans "debug mode is on so cache is off." %} {% trans "your wallabag version:" %}{{constant('WALLABAG')}}. {% trans "storage:" %} {{constant('STORAGE')}}</strong></p>{% endif %}
- </footer>
\ No newline at end of file
+ </footer>
<!--
$(document).ready(function() {
$("body").css("cursor", "wait");
-
+
setTimeout(function(){
window.location = './?import';
}, {{ import.delay }} );
</ul>
{% include '_pocheit-form.twig' %}
{% include '_search-form.twig' %}
-
- {{ messages | raw }}
\ No newline at end of file
+ {{ messages | raw }}
-<div id="search-form" class="messages info">
+<div id="search-form" class="messages info">
<form method="get" action="index.php">
<p>
<input type="hidden" name="view" value="search"></input>
<dt>PHPePub</dt>
<dd><a href="https://github.com/Grandt/PHPePub/">https://github.com/Grandt/PHPePub/</a></dd>
- </dl>
+ </dl>
{% endblock %}
{% trans "You can regenerate your token: <a href='?feed&action=generate'>generate!</a>." %}
</p>
{% endif %}
-
+
<h2>{% trans "Change your theme" %}</h2>
<form method="post" action="?updatetheme" name="changethemeform">
<fieldset class="w500p inline">
-{{ export }}
\ No newline at end of file
+{{ export }}
</div>
{% include '_footer.twig' %}
</body>
-</html>
\ No newline at end of file
+</html>
{% endfor %}
</div>
-{% endblock %}
\ No newline at end of file
+{% endblock %}
<script src="{{ poche_url }}themes/_global/js/restoreScroll.js"></script>
<script type="text/javascript">
$(document).ready(function() {
-
+
// toggle read property of current article
$('#markAsRead').click(function(){
$("body").css("cursor", "wait");
function( data ) {
if ( data == '1' ) {
if ( $('#markAsRead').hasClass("archive-off") ) {
- $('#markAsRead').removeClass("archive-off");
+ $('#markAsRead').removeClass("archive-off");
$('#markAsRead').addClass("archive");
}
else {
- $('#markAsRead').removeClass("archive");
+ $('#markAsRead').removeClass("archive");
$('#markAsRead').addClass("archive-off");
}
}
});
$("body").css("cursor", "auto");
});
-
+
// toggle favorite property of current article
$('#setFav').click(function(){
$("body").css("cursor", "wait");
function( data ) {
if ( data == '1' ) {
if ( $('#setFav').hasClass("fav-off") ) {
- $('#setFav').removeClass("fav-off");
+ $('#setFav').removeClass("fav-off");
$('#setFav').addClass("fav");
}
else {
- $('#setFav').removeClass("fav");
+ $('#setFav').removeClass("fav");
$('#setFav').addClass("fav-off");
}
}
});
$("body").css("cursor", "auto");
});
-
- // set percent of read on startup
+
+ // set percent of read on startup
if ( $(document).height() <= $(window).innerHeight() ) {
pp = 100;
}
pp = 0;
}
$('#readLeftPercent').text( pp + '%' );
-
+
$(window).scroll(function(e){
var scrollTop = $(window).scrollTop();
var scrollPercent = (scrollTop) / (docHeight);
var scrollPercentRounded = Math.round(scrollPercent*100)/100;
savePercent({{ entry.id|e }}, scrollPercentRounded);
-
+
// change percent of read on scroll
pp = Math.round(scrollTop * 100 / ( docHeight - $(window).innerHeight() ));
$('#readLeftPercent').text( pp + '%' );
</div>
{% include "WallabagCoreBundle::_footer.html.twig" %}
</body>
-</html>
\ No newline at end of file
+</html>
</div>
{% include "WallabagCoreBundle::_footer.html.twig" %}
</body>
-</html>
\ No newline at end of file
+</html>
{
return $token instanceof WsseUserToken;
}
-}
\ No newline at end of file
+}
{
return '';
}
-}
\ No newline at end of file
+}
$response = new Response();
$response->setStatusCode(403);
$event->setResponse($response);
-
}
}
-}
\ No newline at end of file
+}
final class Extractor
{
- public static function extract($url) {
+ public static function extract($url)
+ {
$pageContent = Extractor::getPageContent(new Url(base64_encode($url)));
$title = ($pageContent['rss']['channel']['item']['title'] != '') ? $pageContent['rss']['channel']['item']['title'] : _('Untitled');
$body = $pageContent['rss']['channel']['item']['description'];
$content = new Content();
$content->setTitle($title);
- $content->setBody($body);;
+ $content->setBody($body);
return $content;
}
/**
* Get the content for a given URL (by a call to FullTextFeed)
*
- * @param Url $url
+ * @param Url $url
* @return mixed
*/
public static function getPageContent(Url $url)
{
// Saving and clearing context
$REAL = array();
- foreach( $GLOBALS as $key => $value ) {
- if( $key != 'GLOBALS' && $key != '_SESSION' && $key != 'HTTP_SESSION_VARS' ) {
+ foreach ($GLOBALS as $key => $value) {
+ if ($key != 'GLOBALS' && $key != '_SESSION' && $key != 'HTTP_SESSION_VARS') {
$GLOBALS[$key] = array();
$REAL[$key] = $value;
}
// Saving and clearing session
if (isset($_SESSION)) {
$REAL_SESSION = array();
- foreach( $_SESSION as $key => $value ) {
+ foreach ($_SESSION as $key => $value) {
$REAL_SESSION[$key] = $value;
unset($_SESSION[$key]);
}
}
// Running code in different context
- $scope = function() {
- extract( func_get_arg(1) );
+ $scope = function () {
+ extract(func_get_arg(1));
$_GET = $_REQUEST = array(
"url" => $url->getUrl(),
"max" => 5,
"links" => "preserve",
"exc" => "",
"format" => "json",
- "submit" => "Create Feed"
+ "submit" => "Create Feed",
);
ob_start();
require func_get_arg(0);
$json = ob_get_contents();
ob_end_clean();
+
return $json;
};
// Silence $scope function to avoid
// issues with FTRSS when error_reporting is to high
// 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
foreach ($GLOBALS as $key => $value) {
- if($key != "GLOBALS" && $key != "_SESSION" ) {
+ if ($key != "GLOBALS" && $key != "_SESSION") {
unset($GLOBALS[$key]);
}
}
// Clearing and restoring session
if (isset($REAL_SESSION)) {
- foreach($_SESSION as $key => $value) {
+ foreach ($_SESSION as $key => $value) {
unset($_SESSION[$key]);
}
- foreach($REAL_SESSION as $key => $value) {
+ foreach ($REAL_SESSION as $key => $value) {
$_SESSION[$key] = $value;
}
}
return json_decode($json, true);
}
-}
\ No newline at end of file
+}
{
return 'wallabag_extension';
}
-}
\ No newline at end of file
+}