function JB_init_themes() { global $JBMarkup, $label; global $JB_LANG_THEMES; // set in lang/lang.php define('JB_DEFAULT_THEME', 'default'); define('SCW_INCLUDE', 'Y'); if (!defined('JB_THEME')) { define('JB_THEME', JB_DEFAULT_THEME); } if (isset($JB_LANG_THEMES[$_SESSION['LANG']])) { // Set the theme that was set in the session $JB_THEME = $JB_LANG_THEMES[$_SESSION['LANG']]; } else { $JB_THEME = JB_THEME; } if (JB_DEMO_MODE == 'YES') { // setting the theme using GET (overwrite the above setting) if (isset($_GET['set_theme'])) { preg_match('#([a-z0-9_\\-]+)#i', stripslashes($_GET['set_theme']), $m); if (file_exists(JB_get_theme_dir() . $m[1] . "/")) { $_SESSION['JB_THEME'] = $m[1]; // allow to change the theme by appending ?set_theme=theme_name to the URL . } } if (!isset($_SESSION['JB_THEME'])) { $_SESSION['JB_THEME'] = $JB_THEME; } $JB_THEME = $_SESSION['JB_THEME']; } if (!defined('JB_ADMIN_THEME')) { define('JB_ADMIN_THEME', JB_DEFAULT_THEME); } if (strpos($_SERVER['PHP_SELF'], '/admin') !== false) { $JB_THEME = JB_ADMIN_THEME; // admin/ uses default theme } JBPlug_do_callback('set_theme', $JB_THEME); // added in 3.7 define('JB_THEME_PATH', JB_get_theme_dir() . $JB_THEME . '/'); define('JB_THEME_URL', JB_BASE_HTTP_PATH . 'include/themes/' . $JB_THEME . '/'); define('JB_DEFAULT_THEME_PATH', dirname(__FILE__) . '/themes/' . JB_DEFAULT_THEME . '/'); define('JB_DEFAULT_THEME_URL', JB_BASE_HTTP_PATH . 'include/themes/' . JB_DEFAULT_THEME . '/'); // Load Global markup class $JBMarkup = JB_get_MarkupObject(); JBPlug_do_callback('init_themes', $JBMarkup, $JB_THEME); }
function JB_init() { umask(00); setlocale(LC_CTYPE, 'C'); // downgrade character type locale to the POSIX (C). It would mean functions like strtolower() are only considering characters in the ASCII range. Compatibile with all servers if (defined('JB_INIT_COMPLETED')) { return; } if (!defined('JB_NEW_DIR_CHMOD')) { define('JB_NEW_DIR_CHMOD', 0777); } if (!defined('JB_NEW_FILE_CHMOD')) { define('JB_NEW_FILE_CHMOD', 0666); } ########################################## # Initialize language cookies and variables ########################################## global $label; if (!defined('JB_OMIT_SESSION_START')) { session_start(); } JB_init_lang_cookie(); JB_init_lang_vars(); ########################################## // set the timezone to GMT, the internal time-zone used by the job board if (function_exists('date_default_timezone_set')) { // since PHP 5.1 date_default_timezone_set('GMT'); } else { // older versions @ini_set('date.timezone', 'GMT'); $_SERVER['TZ'] = 'GMT'; } if (!defined('JB_LIST_HOVER_COLOR')) { define('JB_LIST_HOVER_COLOR', '#FEFEED'); } if (!defined('JB_LIST_BG_COLOR')) { define('JB_LIST_BG_COLOR', '#FFFFFF'); } JBPLUG_require_plugins(); // plugins awake ########################################## JB_init_themes(); ########################################## JB_do_house_keeping(); // this function gets called at every request! JBPlug_do_callback('jb_init', $A = false); define('JB_INIT_COMPLETED', true); }
if (is_numeric($_REQUEST['z'])) { $zoom = (int) $_REQUEST['z']; } else { $zoom = JB_GMAP_ZOOM; } $coords = $GMAP->add_map($map_id, array('lat' => $_REQUEST['lat'], 'lng' => $_REQUEST['lng']), $zoom); $lat = $_REQUEST['lat']; $lng = $_REQUEST['lng']; } else { // use the default lat and lng $coords = $GMAP->add_map($map_id, array('lat' => JB_GMAP_LAT, 'lng' => JB_GMAP_LNG), JB_GMAP_ZOOM); $lat = JB_GMAP_LAT; $lng = JB_GMAP_LNG; } $GMAP->add_marker($map_id, $lat, $lng, 'Please move me!', '', true); JBPlug_do_callback('gmap_iframe', $GMAP, $map_id, $form_id); // plugin authors can do stuff on the $GMAP object here //$extra_str .= $GMAP->get_header_js(); //$extra_str .= $GMAP->get_map_js($map_id); //$JBMarkup->append_extra_markup('header', $extra_str); $JBMarkup->set_handler('header', $GMAP, 'get_header_js'); $JBMarkup->set_handler('header', $GMAP, 'get_map_js', $map_id); //$extra_str = ''; //$extra_str .= $GMAP->get_onload_js($map_id); //$JBMarkup->append_extra_markup('onload_function', $extra_str); $JBMarkup->set_handler('onload_function', $GMAP, 'get_onload_js', $map_id); $JBMarkup->markup_open(); $JBMarkup->head_open(); $JBMarkup->title_meta_tag('Google Map'); $JBMarkup->no_robots_meta_tag(); //$JBMarkup->stylesheet_link(JB_get_maincss_url());
<?php // Copyright Jamit Software - 2010 // A script for downloading files ini_set('max_execution_time', 60 * 2); // 2 minutes define('NO_HOUSE_KEEPING', true); require '../config.php'; JBPlug_do_callback('download_file', $A = false); $file_name = preg_replace('#[^a-z^0-9^\\.^-^_^;^&]+#i', "_", $_REQUEST['f']); // strip out unwanted characters $file_path = JB_get_upload_file_path($file_name); if (file_exists($file_path)) { $extension = strtolower(trim(end(explode(".", $file_name)))); if ($extension == '' || $extension == 'php') { die; } $mime_type = jb_get_mime_type($extension); header('Content-type: ' . $mime_type); header('Content-Disposition:attachment; filename=' . $file_name); $fh = fopen($file_path, 'rb'); while (!feof($fh)) { $chunk = fread($fh, 1024); echo $chunk; } fclose($fh); } function jb_get_mime_type($ext) { $mime_types = array("323" => "text/h323", "acx" => "application/internet-property-stream", "ai" => "application/postscript", "aif" => "audio/x-aiff", "aifc" => "audio/x-aiff", "aiff" => "audio/x-aiff", "asf" => "video/x-ms-asf", "asr" => "video/x-ms-asf", "asx" => "video/x-ms-asf", "au" => "audio/basic", "avi" => "video/x-msvideo", "axs" => "application/olescript", "bas" => "text/plain", "bcpio" => "application/x-bcpio", "bin" => "application/octet-stream", "bmp" => "image/bmp", "c" => "text/plain", "cat" => "application/vnd.ms-pkiseccat", "cdf" => "application/x-cdf", "cer" => "application/x-x509-ca-cert", "class" => "application/octet-stream", "clp" => "application/x-msclip", "cmx" => "image/x-cmx", "cod" => "image/cis-cod", "cpio" => "application/x-cpio", "crd" => "application/x-mscardfile", "crl" => "application/pkix-crl", "crt" => "application/x-x509-ca-cert", "csh" => "application/x-csh", "css" => "text/css", "dcr" => "application/x-director", "der" => "application/x-x509-ca-cert", "dir" => "application/x-director", "dll" => "application/x-msdownload", "dms" => "application/octet-stream", "doc" => "application/msword", "dot" => "application/msword", "docx" => "application/msword", "dotx" => "application/msword", "xls" => "application/msword", "xlsx" => "application/msword", "dvi" => "application/x-dvi", "dxr" => "application/x-director", "eps" => "application/postscript", "etx" => "text/x-setext", "evy" => "application/envoy", "exe" => "application/octet-stream", "fif" => "application/fractals", "flr" => "x-world/x-vrml", "gif" => "image/gif", "gtar" => "application/x-gtar", "gz" => "application/x-gzip", "h" => "text/plain", "hdf" => "application/x-hdf", "hlp" => "application/winhlp", "hqx" => "application/mac-binhex40", "hta" => "application/hta", "htc" => "text/x-component", "htm" => "text/html", "html" => "text/html", "htt" => "text/webviewhtml", "ico" => "image/x-icon", "ief" => "image/ief", "iii" => "application/x-iphone", "ins" => "application/x-internet-signup", "isp" => "application/x-internet-signup", "jfif" => "image/pipeg", "jpe" => "image/jpeg", "jpeg" => "image/jpeg", "jpg" => "image/jpeg", "js" => "application/x-javascript", "latex" => "application/x-latex", "lha" => "application/octet-stream", "lsf" => "video/x-la-asf", "lsx" => "video/x-la-asf", "lzh" => "application/octet-stream", "m13" => "application/x-msmediaview", "m14" => "application/x-msmediaview", "m3u" => "audio/x-mpegurl", "man" => "application/x-troff-man", "mdb" => "application/x-msaccess", "me" => "application/x-troff-me", "mht" => "message/rfc822", "mhtml" => "message/rfc822", "mid" => "audio/mid", "mny" => "application/x-msmoney", "mov" => "video/quicktime", "movie" => "video/x-sgi-movie", "mp2" => "video/mpeg", "mp3" => "audio/mpeg", "mpa" => "video/mpeg", "mpe" => "video/mpeg", "mpeg" => "video/mpeg", "mpg" => "video/mpeg", "mpp" => "application/vnd.ms-project", "mpv2" => "video/mpeg", "ms" => "application/x-troff-ms", "mvb" => "application/x-msmediaview", "nws" => "message/rfc822", "oda" => "application/oda", "p10" => "application/pkcs10", "p12" => "application/x-pkcs12", "p7b" => "application/x-pkcs7-certificates", "p7c" => "application/x-pkcs7-mime", "p7m" => "application/x-pkcs7-mime", "p7r" => "application/x-pkcs7-certreqresp", "p7s" => "application/x-pkcs7-signature", "pbm" => "image/x-portable-bitmap", "pdf" => "application/pdf", "pfx" => "application/x-pkcs12", "pgm" => "image/x-portable-graymap", "pko" => "application/ynd.ms-pkipko", "pma" => "application/x-perfmon", "pmc" => "application/x-perfmon", "pml" => "application/x-perfmon", "pmr" => "application/x-perfmon", "pmw" => "application/x-perfmon", "pnm" => "image/x-portable-anymap", "pot" => "application/vnd.ms-powerpoint", "ppm" => "image/x-portable-pixmap", "pps" => "application/vnd.ms-powerpoint", "ppt" => "application/vnd.ms-powerpoint", "prf" => "application/pics-rules", "ps" => "application/postscript", "pub" => "application/x-mspublisher", "qt" => "video/quicktime", "ra" => "audio/x-pn-realaudio", "ram" => "audio/x-pn-realaudio", "ras" => "image/x-cmu-raster", "rgb" => "image/x-rgb", "rmi" => "audio/mid", "roff" => "application/x-troff", "rtf" => "application/rtf", "rtx" => "text/richtext", "scd" => "application/x-msschedule", "sct" => "text/scriptlet", "setpay" => "application/set-payment-initiation", "setreg" => "application/set-registration-initiation", "sh" => "application/x-sh", "shar" => "application/x-shar", "sit" => "application/x-stuffit", "snd" => "audio/basic", "spc" => "application/x-pkcs7-certificates", "spl" => "application/futuresplash", "src" => "application/x-wais-source", "sst" => "application/vnd.ms-pkicertstore", "stl" => "application/vnd.ms-pkistl", "stm" => "text/html", "svg" => "image/svg+xml", "sv4cpio" => "application/x-sv4cpio", "sv4crc" => "application/x-sv4crc", "t" => "application/x-troff", "tar" => "application/x-tar", "tcl" => "application/x-tcl", "tex" => "application/x-tex", "texi" => "application/x-texinfo", "texinfo" => "application/x-texinfo", "tgz" => "application/x-compressed", "tif" => "image/tiff", "tiff" => "image/tiff", "tr" => "application/x-troff", "trm" => "application/x-msterminal", "tsv" => "text/tab-separated-values", "txt" => "text/plain", "uls" => "text/iuls", "ustar" => "application/x-ustar", "vcf" => "text/x-vcard", "vrml" => "x-world/x-vrml", "wav" => "audio/x-wav", "wcm" => "application/vnd.ms-works", "wdb" => "application/vnd.ms-works", "wks" => "application/vnd.ms-works", "wmf" => "application/x-msmetafile", "wps" => "application/vnd.ms-works", "wri" => "application/x-mswrite", "wrl" => "x-world/x-vrml", "wrz" => "x-world/x-vrml", "xaf" => "x-world/x-vrml", "xbm" => "image/x-xbitmap", "xla" => "application/vnd.ms-excel", "xlc" => "application/vnd.ms-excel", "xlm" => "application/vnd.ms-excel", "xls" => "application/vnd.ms-excel", "xlt" => "application/vnd.ms-excel", "xlw" => "application/vnd.ms-excel", "xof" => "x-world/x-vrml", "xpm" => "image/x-xpixmap", "xwd" => "image/x-xwindowdump", "z" => "application/x-compress", "zip" => "application/zip"); JBPLUG_do_callback('jb_get_mime_type', $mime_types, $ext);
function get_extra_markup($where) { static $DATE_CAL_HEADER_SET; static $EDITOR_HEADER_SET; static $GMAP_HEADER_SET; global $label, $JBMarkup; foreach ($this->tag_to_field_id as $field) { switch ($field['field_type']) { case 'DATE_CAL': if ($where == 'header' && $this->is_edit_mode()) { if (!isset($DATE_CAL_HEADER_SET)) { $extra_str .= $JBMarkup->get_stript_include_tag(jb_get_SCW_js_src()); $DATE_CAL_HEADER_SET = true; } } break; case 'EDITOR': if ($where == 'header' && $this->is_edit_mode()) { if (!isset($EDITOR_HEADER_SET)) { $DFM = $this->get_DynamicFormMarkup(); $extra_str .= $DFM->get_editor_field_header(); $EDITOR_HEADER_SET = true; } } break; case 'GMAP': $lat = $this->get_value($field['field_id'] . '_lat'); $lng = $this->get_value($field['field_id'] . '_lng'); $zoom = $this->get_value($field['field_id']); if (!$zoom) { $zoom = JB_GMAP_ZOOM; } // Only add extra markup if there is map data. if (is_numeric($lat) && is_numeric($lng) && $lat != 0) { require_once JB_basedirpath() . 'include/classes/JBGoogleMap.php'; $GMAP = JBGoogleMap::get_instance(); if ($where == 'header') { $GMAP->add_map($field['field_id'], array('lat' => $lat, 'lng' => $lng), $zoom); $GMAP->add_marker($field['field_id'], $lat, $lng, 'A', '', false); $args = array('gmap' => $GMAP, 'Form' => $this, 'field' => $field); JBPlug_do_callback('gmap_add_map_after', $args); // plugin authors can manipulate the map here, eg. add more markers, etc. if (!isset($GMAP_HEADER_SET)) { $extra_str .= $GMAP->get_header_js(); $GMAP_HEADER_SET = true; } $extra_str .= $GMAP->get_map_js($field['field_id']); } if ($where == 'onload_function') { $extra_str .= $GMAP->get_onload_js($field['field_id']); } } break; default: JBPlug_do_callback('before_body_end_markup', $extra_str, $field, $where); break; } } return $extra_str; }