Fork me on GitHub
  1. Setup & Mise à jour de CakePHP en un clic

    Ayant plusieurs serveurs à gérer avec CakePHP, avoir un système de mise à jour rapide peut se révéler très utile ! C’est la vocation de ce petit script bash (fonctionne sous windows via cygwin).

    Placez ce script dans votre application, par exemple dans app/libs/mg_scripts, puis lancez le script de la racine de votre application (la où se trouve le dossier cake). Il suffit alors de lancer ./app/lib/mg_scripts/setup_cakephp.sh.

    #!/bin/bash
    
    # reset console
    if [ "$2" != "false" ]
    then echo -e "\033c"
    else echo -e "\n"
    fi
    
    # work directory
    if [ ! -z "$1" ]
    then mkdir -p $1; cd $1; dir=$1
    else dir=$PWD
    fi
    
    echo -e "Executing $0\n"
    
    # variables
    tmpFolder="_tmp"
    
    # clean
    echo "Cleaning ..."
    rm -rf "${tmpFolder}"
    mkdir "${tmpFolder}"
    
    # version retreive
    echo "Retreiving version number ..."
    wget --quiet --no-check-certificate "https://github.com/cakephp/cakephp/raw/master/cake/VERSION.txt" -O "_tmp/version.txt"
    ver=`awk '/./'  "_tmp/version.txt" | tail -1`
    if [ -z "$ver" ]
    then
    echo "Unable to retreive version number"
    echo "Cleaning ..."
    rm -rf "${tmpFolder}"
    exit
    fi
    echo "Last version appears to be ${ver}"
    
    # variables
    appName="cakephp-${ver}"
    destFolder="cake"
    url="https://github.com/cakephp/cakephp/tarball/${ver}"
    
    # setup confirm
    echo -e "\nSetup started:"
    echo -e "- app	: ${appName}"
    echo -e "- from	: ${url}"
    echo -e "- to	: ${dir}/cake\n"
    read -p "Proceed ? [Y/n]:" s
    if [ "$s" = "n" ]
    then
    echo "Cleaning ..."
    rm -rf "${tmpFolder}"
    exit
    fi
    
    # download
    echo -e "\nDownloading ..."
    wget --quiet --no-check-certificate "${url}" -O "${tmpFolder}/${appName}.tar.gz"
    
    # install
    echo "Installing ..."
    tar -C "${tmpFolder}" -xzf "${tmpFolder}/${appName}.tar.gz"
    rm -rf "${dir}/${destFolder}" && mv "${tmpFolder}/`ls ${tmpFolder} | grep -i cakephp-cakephp`/cake" "${dir}/${destFolder}"
    
    # clean
    echo "Cleaning ..."
    rm -rf "${tmpFolder}"
    
    # exit
    echo -e "\nSetup of ${appName} ended."
    exit

    Retrouvez, commentez, éditez ce bout de code sur github.

    2 years ago  /  35 notes  / 

  2. Utiliser une police personnalisée avec Tumblr

    Après SyntaxHighlighter, regardons comment intégrer une fonte originale à Tumblr. Pour cela, la meilleure option semble d’utiliser le nouveau service GoogleWebFonts, il suffit de placer la balise suivante dans votre </head> pour charger la police Android Sans par example :

    <link href='http://fonts.googleapis.com/css?family=Droid+Sans:regular,bold' rel='stylesheet' type='text/css'>
    

    Il suffit ensuite de surcharger les css (dans l’onglet avancé par exemple), en ajoutant :

    body { font-family: 'Droid Sans', helvetica, sans; }
    

    2 years ago  /  4 notes  / 

  3. Utiliser SyntaxHighlighter 3.0 sur Tumblr

    Voici ci-dessous la manière la plus efficace d’intégrer SyntaxHighlighter à Tumblr, en utilisant l’autoloader dynamique de brushes, qui permet d’économiser de très nombreuses/précieuses requêtes lors du chargement de la page.

    1. Ajoutez le chargement des styles de SyntaxHighlighter accompagné de la librairie javascript jQuery (si vous ne l’avez pas déjà) juste avant la balise </head> :

    <!-- SyntaxHighlighter -->
    <link rel="stylesheet" type="text/css" href="http://alexgorbatchev.com/pub/sh/current/styles/shCore.css">
    <link rel="stylesheet" type="text/css" href="http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css">
    <!-- jQuery -->
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>

    2. Enfin, ajoutez le javascript de SyntaxHighlighter & son script d’autoload juste avant la balise </body> :

    <!-- SyntaxHighlighter -->
    <script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js"></script>
    <script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/current/scripts/shAutoloader.js"></script>
    
    <script type="text/javascript">
    function path(){
      var args = arguments,
          result = []
          ;
           
      for(var i = 0; i < args.length; i++)
          result.push(args[i].replace('@', 'http://alexgorbatchev.com/pub/sh/current/scripts/'));
           
      return result
    };
    SyntaxHighlighter.autoloader.apply(null, path(
      'applescript            @shBrushAppleScript.js',
      'actionscript3 as3      @shBrushAS3.js',
      'bash shell             @shBrushBash.js',
      'coldfusion cf          @shBrushColdFusion.js',
      'cpp c                  @shBrushCpp.js',
      'c# c-sharp csharp      @shBrushCSharp.js',
      'css                    @shBrushCss.js',
      'delphi pascal          @shBrushDelphi.js',
      'diff patch pas         @shBrushDiff.js',
      'erl erlang             @shBrushErlang.js',
      'groovy                 @shBrushGroovy.js',
      'java                   @shBrushJava.js',
      'jfx javafx             @shBrushJavaFX.js',
      'js jscript javascript  @shBrushJScript.js',
      'perl pl                @shBrushPerl.js',
      'php                    @shBrushPhp.js',
      'text plain             @shBrushPlain.js',
      'py python              @shBrushPython.js',
      'ruby rails ror rb      @shBrushRuby.js',
      'sass scss              @shBrushSass.js',
      'scala                  @shBrushScala.js',
      'sql                    @shBrushSql.js',
      'vb vbnet               @shBrushVb.js',
      'xml xhtml xslt html    @shBrushXml.js'
    ));
    SyntaxHighlighter.all();
    </script>
    

    3. C’est fini, il vous suffit désormais d’ajouter du code wrappé dans une balise <pre class="brush: js;"> : pour charger le parser javascript par exemple.

    2 years ago  /  21 notes  / 

  4. 2 years ago  /  0 notes  /