]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
rename myTool -> pocheTool and delete some stuff
authorNicolas Lœuillet <nicolas.loeuillet@gmail.com>
Fri, 2 Aug 2013 19:40:29 +0000 (21:40 +0200)
committerNicolas Lœuillet <nicolas.loeuillet@gmail.com>
Fri, 2 Aug 2013 19:40:29 +0000 (21:40 +0200)
inc/MyTool.class.php [deleted file]
inc/class.messages.php [deleted file]
inc/pocheTool.class.php [new file with mode: 0644]

diff --git a/inc/MyTool.class.php b/inc/MyTool.class.php
deleted file mode 100644 (file)
index b11f18e..0000000
+++ /dev/null
@@ -1,265 +0,0 @@
-<?php
-/**
- * poche, a read it later open source system
- *
- * @category   poche
- * @author     Nicolas Lœuillet <support@inthepoche.com>
- * @copyright  2013
- * @license    http://www.wtfpl.net/ see COPYING file
- */
-class MyTool
-{
-    public static function initPhp()
-    {
-        define('START_TIME', microtime(true));
-
-        if (phpversion() < 5) {
-            die(_('Oops, it seems you don\'t have PHP 5.'));
-        }
-
-        error_reporting(E_ALL);
-
-        function stripslashesDeep($value) {
-            return is_array($value)
-                ? array_map('stripslashesDeep', $value)
-                : stripslashes($value);
-        }
-
-        if (get_magic_quotes_gpc()) {
-            $_POST = array_map('stripslashesDeep', $_POST);
-            $_GET = array_map('stripslashesDeep', $_GET);
-            $_COOKIE = array_map('stripslashesDeep', $_COOKIE);
-        }
-
-        ob_start();
-        register_shutdown_function('ob_end_flush');
-    }
-
-    public static function isUrl($url)
-    {
-        // http://neo22s.com/check-if-url-exists-and-is-online-php/
-        $pattern='|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i';
-
-        return preg_match($pattern, $url);
-    }
-
-    public static function isEmail($email)
-    {
-        $pattern = "/^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2, 4}$/i";
-
-        return (preg_match($pattern, $email));
-    }
-
-    public static function formatBBCode($text)
-    {
-        $replace = array(
-            '/\[m\](.+?)\[\/m\]/is'
-            => '/* moderate */',
-            '/\[b\](.+?)\[\/b\]/is'
-            => '<strong>$1</strong>',
-            '/\[i\](.+?)\[\/i\]/is'
-            => '<em>$1</em>',
-            '/\[s\](.+?)\[\/s\]/is'
-            => '<del>$1</del>',
-            '/\[u\](.+?)\[\/u\]/is'
-            => '<span style="text-decoration: underline;">$1</span>',
-            '/\[url\](.+?)\[\/url]/is'
-            => '<a href="$1">$1</a>',
-            '/\[url=(\w+:\/\/[^\]]+)\](.+?)\[\/url]/is'
-            => '<a href="$1">$2</a>',
-            '/\[quote\](.+?)\[\/quote\]/is'
-            => '<blockquote>$1</blockquote>',
-            '/\[code\](.+?)\[\/code\]/is'
-            => '<code>$1</code>',
-            '/\[([^[]+)\|([^[]+)\]/is'
-            => '<a href="$2">$1</a>'
-            );
-        $text = preg_replace(
-            array_keys($replace),
-            array_values($replace),
-            $text
-        );
-
-        return $text;
-    }
-
-    public static function formatText($text)
-    {
-        $text = preg_replace_callback(
-            '/<code_html>(.*?)<\/code_html>/is',
-            create_function(
-                '$matches',
-                'return htmlspecialchars($matches[1]);'
-            ),
-            $text
-        );
-        $text = preg_replace_callback(
-            '/<code_php>(.*?)<\/code_php>/is',
-            create_function(
-                '$matches',
-                'return highlight_string("<?php $matches[1] ?>", true);'
-            ),
-            $text
-        );
-        $text = preg_replace('/<br \/>/is', '', $text);
-
-        $text = preg_replace(
-            '#(^|\s)([a-z]+://([^\s\w/]?[\w/])*)(\s|$)#im',
-            '\\1<a href="\\2">\\2</a>\\4',
-            $text
-        );
-        $text = preg_replace(
-            '#(^|\s)wp:?([a-z]{2}|):([\w]+)#im',
-            '\\1<a href="http://\\2.wikipedia.org/wiki/\\3">\\3</a>',
-            $text
-        );
-        $text = str_replace(
-            'http://.wikipedia.org/wiki/',
-            'http://www.wikipedia.org/wiki/',
-            $text
-        );
-        $text = str_replace('\wp:', 'wp:', $text);
-        $text = str_replace('\http:', 'http:', $text);
-        $text = MyTool::formatBBCode($text);
-        $text = nl2br($text);
-
-        return $text;
-    }
-
-    public static function getUrl()
-    {
-        $https = (!empty($_SERVER['HTTPS'])
-                  && (strtolower($_SERVER['HTTPS']) == 'on'))
-            || (isset($_SERVER["SERVER_PORT"])
-                && $_SERVER["SERVER_PORT"] == '443'); // HTTPS detection.
-        $serverport = (!isset($_SERVER["SERVER_PORT"])
-                       || $_SERVER["SERVER_PORT"] == '80'
-                       || ($https && $_SERVER["SERVER_PORT"] == '443')
-                       ? ''
-                       : ':' . $_SERVER["SERVER_PORT"]);
-
-        $scriptname = str_replace('/index.php', '/', $_SERVER["SCRIPT_NAME"]);
-
-        if (!isset($_SERVER["SERVER_NAME"])) {
-            return $scriptname;
-        }
-
-        return 'http' . ($https ? 's' : '') . '://'
-            . $_SERVER["SERVER_NAME"] . $serverport . $scriptname;
-    }
-
-    public static function rrmdir($dir)
-    {
-        if (is_dir($dir) && ($d = @opendir($dir))) {
-            while (($file = @readdir($d)) !== false) {
-                if ( $file == '.' || $file == '..' ) {
-                    continue;
-                } else {
-                    unlink($dir . '/' . $file);
-                }
-            }
-        }
-    }
-
-    public static function humanBytes($bytes)
-    {
-        $siPrefix = array( 'bytes', 'KB', 'MB', 'GB', 'TB', 'EB', 'ZB', 'YB' );
-        $base = 1024;
-        $class = min((int) log($bytes, $base), count($siPrefix) - 1);
-        $val = sprintf('%1.2f', $bytes / pow($base, $class));
-
-        return $val . ' ' . $siPrefix[$class];
-    }
-
-    public static function returnBytes($val)
-    {
-        $val = trim($val);
-        $last = strtolower($val[strlen($val)-1]);
-        switch($last)
-        {
-        case 'g': $val *= 1024;
-        case 'm': $val *= 1024;
-        case 'k': $val *= 1024;
-        }
-
-        return $val;
-    }
-
-    public static function getMaxFileSize()
-    {
-        $sizePostMax = MyTool::returnBytes(ini_get('post_max_size'));
-        $sizeUploadMax = MyTool::returnBytes(ini_get('upload_max_filesize'));
-
-        // Return the smaller of two:
-        return min($sizePostMax, $sizeUploadMax);
-    }
-
-    public static function smallHash($text)
-    {
-        $t = rtrim(base64_encode(hash('crc32', $text, true)), '=');
-        // Get rid of characters which need encoding in URLs.
-        $t = str_replace('+', '-', $t);
-        $t = str_replace('/', '_', $t);
-        $t = str_replace('=', '@', $t);
-
-        return $t;
-    }
-
-    public static function renderJson($data)
-    {
-        header('Cache-Control: no-cache, must-revalidate');
-        header('Expires: Sat, 26 Jul 1997 05:00:00 GMT');
-        header('Content-type: application/json; charset=UTF-8');
-
-        echo json_encode($data);
-        exit();
-    }
-
-    public static function grabToLocal($url, $file, $force = false)
-    {
-        if ((!file_exists($file) || $force) && in_array('curl', get_loaded_extensions())){
-            $ch = curl_init ($url);
-            curl_setopt($ch, CURLOPT_HEADER, false);
-            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
-            curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
-            $raw = curl_exec($ch);
-            if (curl_getinfo($ch, CURLINFO_HTTP_CODE) == 200) {
-                $fp = fopen($file, 'x');
-                fwrite($fp, $raw);
-                fclose($fp);
-            }
-            curl_close ($ch);
-        }
-    }
-
-    public static function redirect($rurl = '')
-    {
-        if ($rurl === '') {
-            // if (!empty($_SERVER['HTTP_REFERER']) && strcmp(parse_url($_SERVER['HTTP_REFERER'],PHP_URL_HOST),$_SERVER['SERVER_NAME'])==0)
-            $rurl = (empty($_SERVER['HTTP_REFERER'])?'?':$_SERVER['HTTP_REFERER']);
-            if (isset($_POST['returnurl'])) {
-                $rurl = $_POST['returnurl'];
-            }
-        }
-
-        // prevent loop
-        if (empty($rurl) || parse_url($rurl, PHP_URL_QUERY) === $_SERVER['QUERY_STRING']) {
-            $rurl = MyTool::getUrl();
-        }
-
-        if (substr($rurl, 0, 1) !== '?') {
-            $ref = MyTool::getUrl();
-            if (substr($rurl, 0, strlen($ref)) !== $ref) {
-                $rurl = $ref;
-            }
-        }
-        header('Location: '.$rurl);
-        exit();
-    }
-
-    public static function silence_errors($num, $str)
-    {
-// No-op
-    }
-}
\ No newline at end of file
diff --git a/inc/class.messages.php b/inc/class.messages.php
deleted file mode 100644 (file)
index 6d515bf..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-<?php
-//--------------------------------------------------------------------------------------------------
-// Session-Based Flash Messages v1.0
-// Copyright 2012 Mike Everhart (http://mikeeverhart.net)
-//
-//   Licensed under the Apache License, Version 2.0 (the "License");
-//   you may not use this file except in compliance with the License.
-//   You may obtain a copy of the License at
-//
-//     http://www.apache.org/licenses/LICENSE-2.0
-//
-//   Unless required by applicable law or agreed to in writing, software
-//   distributed under the License is distributed on an "AS IS" BASIS,
-//   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-//   See the License for the specific language governing permissions and
-//      limitations under the License.
-//      
-//------------------------------------------------------------------------------
-// Description:
-//------------------------------------------------------------------------------
-//
-//     Stores messages in Session data to be easily retrieved later on.
-//     This class includes four different types of messages:
-//  - Success
-//  - Error
-//  - Warning
-//  - Information
-// 
-//  See README for basic usage instructions, or see samples/index.php for more advanced samples
-//
-//--------------------------------------------------------------------------------------------------
-// Changelog
-//--------------------------------------------------------------------------------------------------
-// 
-//     2011-05-15 - v1.0 - Initial Version
-//
-//--------------------------------------------------------------------------------------------------
-
-class Messages {
-       
-       //-----------------------------------------------------------------------------------------------
-       // Class Variables
-       //-----------------------------------------------------------------------------------------------       
-       var $msgId;
-       var $msgTypes = array( 'help', 'info', 'warning', 'success', 'error' );
-       var $msgClass = 'messages';
-       var $msgWrapper = "<div class='%s %s'><a href='#' class='closeMessage'></a>\n%s</div>\n";
-       var $msgBefore = '<p>';
-       var $msgAfter = "</p>\n";
-
-       
-       /**
-        * Constructor
-        * @author Mike Everhart
-        */
-       public function __construct() {
-       
-               // Generate a unique ID for this user and session
-               $this->msgId = md5(uniqid());
-               
-               // Create the session array if it doesnt already exist
-               if( !array_key_exists('flash_messages', $_SESSION) ) $_SESSION['flash_messages'] = array();
-               
-       }
-       
-       /**
-        * Add a message to the queue
-        * 
-        * @author Mike Everhart
-        * 
-        * @param  string   $type               The type of message to add
-        * @param  string   $message            The message
-        * @param  string   $redirect_to        (optional) If set, the user will be redirected to this URL
-        * @return  bool 
-        * 
-        */
-       public function add($type, $message, $redirect_to=null) {
-               
-               if( !isset($_SESSION['flash_messages']) ) return false;
-               
-               if( !isset($type) || !isset($message[0]) ) return false;
-
-               // Replace any shorthand codes with their full version
-               if( strlen(trim($type)) == 1 ) {
-                       $type = str_replace( array('h', 'i', 'w', 'e', 's'), array('help', 'info', 'warning', 'error', 'success'), $type );
-               
-               // Backwards compatibility...
-               } elseif( $type == 'information' ) {
-                       $type = 'info'; 
-               }
-               
-               // Make sure it's a valid message type
-               if( !in_array($type, $this->msgTypes) ) die('"' . strip_tags($type) . '" is not a valid message type!' );
-               
-               // If the session array doesn't exist, create it
-               if( !array_key_exists( $type, $_SESSION['flash_messages'] ) ) $_SESSION['flash_messages'][$type] = array();
-               
-               $_SESSION['flash_messages'][$type][] = $message;
-
-               if( !is_null($redirect_to) ) {
-                       header("Location: $redirect_to");
-                       exit();
-               }
-               
-               return true;
-               
-       }
-       
-       //-----------------------------------------------------------------------------------------------
-       // display()
-       // print queued messages to the screen
-       //-----------------------------------------------------------------------------------------------
-       /**
-        * Display the queued messages
-        * 
-        * @author Mike Everhart
-        * 
-        * @param  string   $type     Which messages to display
-        * @param  bool         $print    True  = print the messages on the screen
-        * @return mixed              
-        * 
-        */
-       public function display($type='all', $print=true) {
-               $messages = '';
-               $data = '';
-               
-               if( !isset($_SESSION['flash_messages']) ) return false;
-               
-               if( $type == 'g' || $type == 'growl' ) {
-                       $this->displayGrowlMessages();
-                       return true;
-               }
-               
-               // Print a certain type of message?
-               if( in_array($type, $this->msgTypes) ) {
-                       foreach( $_SESSION['flash_messages'][$type] as $msg ) {
-                               $messages .= $this->msgBefore . $msg . $this->msgAfter;
-                       }
-
-                       $data .= sprintf($this->msgWrapper, $this->msgClass, $type, $messages);
-                       
-                       // Clear the viewed messages
-                       $this->clear($type);
-               
-               // Print ALL queued messages
-               } elseif( $type == 'all' ) {
-                       foreach( $_SESSION['flash_messages'] as $type => $msgArray ) {
-                               $messages = '';
-                               foreach( $msgArray as $msg ) {
-                                       $messages .= $this->msgBefore . $msg . $this->msgAfter; 
-                               }
-                               $data .= sprintf($this->msgWrapper, $this->msgClass, $type, $messages);
-                       }
-                       
-                       // Clear ALL of the messages
-                       $this->clear();
-               
-               // Invalid Message Type?
-               } else { 
-                       return false;
-               }
-               
-               // Print everything to the screen or return the data
-               if( $print ) { 
-                       echo $data; 
-               } else { 
-                       return $data; 
-               }
-       }
-       
-       
-       /**
-        * Check to  see if there are any queued error messages
-        * 
-        * @author Mike Everhart
-        * 
-        * @return bool  true  = There ARE error messages
-        *               false = There are NOT any error messages
-        * 
-        */
-       public function hasErrors() { 
-               return empty($_SESSION['flash_messages']['error']) ? false : true;      
-       }
-       
-       /**
-        * Check to see if there are any ($type) messages queued
-        * 
-        * @author Mike Everhart
-        * 
-        * @param  string   $type     The type of messages to check for
-        * @return bool                   
-        * 
-        */
-       public function hasMessages($type=null) {
-               if( !is_null($type) ) {
-                       if( !empty($_SESSION['flash_messages'][$type]) ) return $_SESSION['flash_messages'][$type];     
-               } else {
-                       foreach( $this->msgTypes as $type ) {
-                               if( !empty($_SESSION['flash_messages']) ) return true;  
-                       }
-               }
-               return false;
-       }
-       
-       /**
-        * Clear messages from the session data
-        * 
-        * @author Mike Everhart
-        * 
-        * @param  string   $type     The type of messages to clear
-        * @return bool 
-        * 
-        */
-       public function clear($type='all') { 
-               if( $type == 'all' ) {
-                       unset($_SESSION['flash_messages']); 
-               } else {
-                       unset($_SESSION['flash_messages'][$type]);
-               }
-               return true;
-       }
-       
-       public function __toString() { return $this->hasMessages();     }
-
-       public function __destruct() {
-               //$this->clear();
-       }
-
-
-} // end class
-?>
\ No newline at end of file
diff --git a/inc/pocheTool.class.php b/inc/pocheTool.class.php
new file mode 100644 (file)
index 0000000..9aab76b
--- /dev/null
@@ -0,0 +1,101 @@
+<?php
+/**
+ * poche, a read it later open source system
+ *
+ * @category   poche
+ * @author     Nicolas Lœuillet <support@inthepoche.com>
+ * @copyright  2013
+ * @license    http://www.wtfpl.net/ see COPYING file
+ */
+class pocheTools
+{
+    public static function initPhp()
+    {
+        define('START_TIME', microtime(true));
+
+        if (phpversion() < 5) {
+            die(_('Oops, it seems you don\'t have PHP 5.'));
+        }
+
+        error_reporting(E_ALL);
+
+        function stripslashesDeep($value) {
+            return is_array($value)
+                ? array_map('stripslashesDeep', $value)
+                : stripslashes($value);
+        }
+
+        if (get_magic_quotes_gpc()) {
+            $_POST = array_map('stripslashesDeep', $_POST);
+            $_GET = array_map('stripslashesDeep', $_GET);
+            $_COOKIE = array_map('stripslashesDeep', $_COOKIE);
+        }
+
+        ob_start();
+        register_shutdown_function('ob_end_flush');
+    }
+
+    public static function isUrl($url)
+    {
+        // http://neo22s.com/check-if-url-exists-and-is-online-php/
+        $pattern='|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i';
+
+        return preg_match($pattern, $url);
+    }
+
+    public static function getUrl()
+    {
+        $https = (!empty($_SERVER['HTTPS'])
+                    && (strtolower($_SERVER['HTTPS']) == 'on'))
+            || (isset($_SERVER["SERVER_PORT"])
+                    && $_SERVER["SERVER_PORT"] == '443'); // HTTPS detection.
+        $serverport = (!isset($_SERVER["SERVER_PORT"])
+            || $_SERVER["SERVER_PORT"] == '80'
+            || ($https && $_SERVER["SERVER_PORT"] == '443')
+            ? '' : ':' . $_SERVER["SERVER_PORT"]);
+
+        $scriptname = str_replace('/index.php', '/', $_SERVER["SCRIPT_NAME"]);
+
+        if (!isset($_SERVER["SERVER_NAME"])) {
+            return $scriptname;
+        }
+
+        return 'http' . ($https ? 's' : '') . '://'
+            . $_SERVER["SERVER_NAME"] . $serverport . $scriptname;
+    }
+
+    public static function renderJson($data)
+    {
+        header('Cache-Control: no-cache, must-revalidate');
+        header('Expires: Sat, 26 Jul 1997 05:00:00 GMT');
+        header('Content-type: application/json; charset=UTF-8');
+
+        echo json_encode($data);
+        exit();
+    }
+
+    public static function redirect($rurl = '')
+    {
+        if ($rurl === '') {
+            $rurl = (empty($_SERVER['HTTP_REFERER'])?'?':$_SERVER['HTTP_REFERER']);
+            if (isset($_POST['returnurl'])) {
+                $rurl = $_POST['returnurl'];
+            }
+        }
+
+        // prevent loop
+        if (empty($rurl) || parse_url($rurl, PHP_URL_QUERY) === $_SERVER['QUERY_STRING']) {
+            $rurl = pocheTool::getUrl();
+        }
+
+        if (substr($rurl, 0, 1) !== '?') {
+            $ref = pocheTool::getUrl();
+            if (substr($rurl, 0, strlen($ref)) !== $ref) {
+                $rurl = $ref;
+            }
+        }
+        header('Location: '.$rurl);
+        exit();
+    }
+}
\ No newline at end of file