Skip to content
Snippets Groups Projects
Select Git revision
  • f89a23b463884e1a9b89c84fdcb1c34afba62645
  • master default protected
2 results

app.php

Blame
  • helper.php 21.63 KiB
    <?php
    /**
     * ownCloud
     *
     * @author Frank Karlitschek
     * @author Jakob Sack
     * @copyright 2012 Frank Karlitschek frank@owncloud.org
     *
     * This library is free software; you can redistribute it and/or
     * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
     * License as published by the Free Software Foundation; either
     * version 3 of the License, or any later version.
     *
     * This library is distributed in the hope that it will be useful,
     * but WITHOUT ANY WARRANTY; without even the implied warranty of
     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
     *
     * You should have received a copy of the GNU Affero General Public
     * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
     *
     */
    
    /**
     * Collection of useful functions
     */
    class OC_Helper {
    	private static $mimetypes=array();
    	private static $tmpFiles=array();
    
    	/**
    	 * @brief Creates an url using a defined route
    	 * @param $route
    	 * @param $parameters
    	 * @param $args array with param=>value, will be appended to the returned url
    	 * @returns the url
    	 *
    	 * Returns a url to the given app and file.
    	 */
    	public static function linkToRoute( $route, $parameters = array() ) {
    		$urlLinkTo = OC::getRouter()->generate($route, $parameters);
    		return $urlLinkTo;
    	}
    
    	/**
    	 * @brief Creates an url
    	 * @param string $app app
    	 * @param string $file file
    	 * @param array $args array with param=>value, will be appended to the returned url
    	 * 	The value of $args will be urlencoded
    	 * @return string the url
    	 *
    	 * Returns a url to the given app and file.
    	 */
    	public static function linkTo( $app, $file, $args = array() ) {
    		if( $app != '' ) {
    			$app_path = OC_App::getAppPath($app);
    			// Check if the app is in the app folder
    			if( $app_path && file_exists( $app_path.'/'.$file )) {
    				if(substr($file, -3) == 'php' || substr($file, -3) == 'css') {
    					$urlLinkTo =  OC::$WEBROOT . '/index.php/apps/' . $app;
    					$urlLinkTo .= ($file!='index.php') ? '/' . $file : '';
    				}else{
    					$urlLinkTo =  OC_App::getAppWebPath($app) . '/' . $file;
    				}
    			}
    			else{
    				$urlLinkTo =  OC::$WEBROOT . '/' . $app . '/' . $file;
    			}
    		}