diff --git a/controllers/data.php b/controllers/data.php index f1b7512..309b82a 100644 --- a/controllers/data.php +++ b/controllers/data.php @@ -260,8 +260,15 @@ $template->assign('readonly', $table_info['table']['readonly']); $template->assign('data_type', intval($table_info['table']['type'])); $template->assign('geometry_type', intval($table_info['table']['geometry_type'])); - $template->assign('min_scale', intval($table_info['table']['min_scale'])); - $template->assign('max_scale', intval($table_info['table']['max_scale'])); + if($table_info['table']['default_latitude']) $template->assign('default_latitude', $table_info['table']['default_latitude']); + #else $template->assign('default_latitude', $settings['default_latitude']); + if($table_info['table']['default_longitude']) $template->assign('default_longitude', $table_info['table']['default_longitude']); + #else $template->assign('default_longitude', $settings['default_longitude']); + if($table_info['table']['default_zoomlevel']) $template->assign('default_zoomlevel', $table_info['table']['default_zoomlevel']); + #else $template->assign('default_zoomlevel', $settings['default_zoomlevel']); + $template->assign('min_scale', floatval($table_info['table']['min_scale'])); + $template->assign('max_scale', floatval($table_info['table']['max_scale'])); + $template->assign('max_resolution', floatval($table_info['table']['max_resolution'])); if($table_info['table']['simplification_tolerance_extent_factor']) $template->assign('redraw', true); $template->assign('layer_overview', intval($table_info['table']['layer_overview'])); $template->assign('auxiliary_layer_1', intval($table_info['table']['auxiliary_layer_1'])); diff --git a/controllers/data_item.php b/controllers/data_item.php index 6ed0310..d03fb56 100644 --- a/controllers/data_item.php +++ b/controllers/data_item.php @@ -416,6 +416,7 @@ $template->assign('subtitle', $lang['data_item_details_title']); $template->assign('min_scale', intval($table_info['table']['min_scale'])); $template->assign('max_scale', intval($table_info['table']['max_scale'])); + $template->assign('max_resolution', floatval($table_info['table']['max_resolution'])); $template->assign('auxiliary_layer_1', intval($table_info['table']['auxiliary_layer_1'])); $template->assign('auxiliary_layer_1_title', htmlspecialchars($table_info['table']['auxiliary_layer_1_title'])); if($table_info['table']['auxiliary_layer_1_stef']) $template->assign('auxiliary_layer_1_redraw', true); diff --git a/controllers/data_model.php b/controllers/data_model.php index aafad33..b5aa096 100644 --- a/controllers/data_model.php +++ b/controllers/data_model.php @@ -127,7 +127,7 @@ if(isset($_GET['id']) && ($permission->granted(Permission::DATA_MANAGEMENT) || $permission->granted(Permission::DATA_ACCESS, intval($_GET['id']), Permission::MANAGE))) { // get table properties: - $dbr = Database::$connection->prepare("SELECT id, table_name, title, project, type, parent_table, geometry_type, latlong_entry, geometry_required, basemaps, min_scale, max_scale, simplification_tolerance, simplification_tolerance_extent_factor, layer_overview, boundary_layer, auxiliary_layer_1, status, readonly, data_images, item_images, description FROM ".$db_settings['data_models_table']." WHERE id=:id LIMIT 1"); + $dbr = Database::$connection->prepare("SELECT id, table_name, title, project, type, parent_table, geometry_type, latlong_entry, geometry_required, basemaps, default_latitude, default_longitude, default_zoomlevel, min_scale, max_scale, max_resolution, simplification_tolerance, simplification_tolerance_extent_factor, layer_overview, boundary_layer, auxiliary_layer_1, status, readonly, data_images, item_images, description FROM ".$db_settings['data_models_table']." WHERE id=:id LIMIT 1"); $dbr->bindParam(':id', $_GET['id'], PDO::PARAM_INT); $dbr->execute(); $data = $dbr->fetch(); @@ -143,8 +143,15 @@ $db_table['latlong_entry'] = intval($data['latlong_entry']); $db_table['geometry_required'] = intval($data['geometry_required']); $db_table['basemaps'] = explode(',',$data['basemaps']); + if(is_null($data['default_latitude'])) $db_table['default_latitude'] = NULL; + else $db_table['default_latitude'] = floatval($data['default_latitude']); + if(is_null($data['default_longitude'])) $db_table['default_longitude'] = NULL; + else $db_table['default_longitude'] = floatval($data['default_longitude']); + if(is_null($data['default_zoomlevel'])) $db_table['default_zoomlevel'] = NULL; + else $db_table['default_zoomlevel'] = intval($data['default_zoomlevel']); $db_table['min_scale'] = floatval($data['min_scale']); $db_table['max_scale'] = floatval($data['max_scale']); + $db_table['max_resolution'] = floatval($data['max_resolution']); $db_table['simplification_tolerance'] = floatval($data['simplification_tolerance']); $db_table['simplification_tolerance_extent_factor'] = floatval($data['simplification_tolerance_extent_factor']); $db_table['layer_overview'] = intval($data['layer_overview']); @@ -179,8 +186,12 @@ $latlong_entry = isset($_POST['latlong_entry']) ? 1 : 0; $geometry_required = isset($_POST['geometry_required']) ? 1 : 0; $basemaps = isset($_POST['basemaps']) && is_array($_POST['basemaps']) ? implode(',',$_POST['basemaps']) : null; + $default_latitude = isset($_POST['default_latitude']) && $_POST['default_latitude'] ? floatval($_POST['default_latitude']) : NULL; + $default_longitude = isset($_POST['default_longitude']) && $_POST['default_longitude'] ? floatval($_POST['default_longitude']) : NULL; + $default_zoomlevel = isset($_POST['default_zoomlevel']) && $_POST['default_zoomlevel'] ? intval($_POST['default_zoomlevel']) : NULL; $min_scale = isset($_POST['min_scale']) ? floatval($_POST['min_scale']) : 0; $max_scale = isset($_POST['max_scale']) ? floatval($_POST['max_scale']) : 0; + $max_resolution = isset($_POST['max_resolution']) ? floatval($_POST['max_resolution']) : 0; $simplification_tolerance = isset($_POST['simplification_tolerance']) ? floatval($_POST['simplification_tolerance']) : 0; $simplification_tolerance_extent_factor = isset($_POST['simplification_tolerance_extent_factor']) ? floatval($_POST['simplification_tolerance_extent_factor']) : 0; $layer_overview = isset($_POST['layer_overview']) ? intval($_POST['layer_overview']) : 0; @@ -230,7 +241,7 @@ { if(isset($_POST['id'])) // edit { - $dbr = Database::$connection->prepare("UPDATE ".$db_settings['data_models_table']." SET last_editor=:last_editor, last_edited=NOW(), title=:title, project=:project, parent_table=:parent_table, geometry_type=:geometry_type, latlong_entry=:latlong_entry, geometry_required=:geometry_required, basemaps=:basemaps, min_scale=:min_scale, max_scale=:max_scale, simplification_tolerance=:simplification_tolerance, simplification_tolerance_extent_factor=:simplification_tolerance_extent_factor, layer_overview=:layer_overview, boundary_layer=:boundary_layer, auxiliary_layer_1=:auxiliary_layer_1, status=:status, readonly=:readonly, data_images=:data_images, item_images=:item_images, description=:description WHERE id=:id"); + $dbr = Database::$connection->prepare("UPDATE ".$db_settings['data_models_table']." SET last_editor=:last_editor, last_edited=NOW(), title=:title, project=:project, parent_table=:parent_table, geometry_type=:geometry_type, latlong_entry=:latlong_entry, geometry_required=:geometry_required, basemaps=:basemaps, default_latitude=:default_latitude, default_longitude=:default_longitude, default_zoomlevel=:default_zoomlevel, min_scale=:min_scale, max_scale=:max_scale, max_resolution=:max_resolution, simplification_tolerance=:simplification_tolerance, simplification_tolerance_extent_factor=:simplification_tolerance_extent_factor, layer_overview=:layer_overview, boundary_layer=:boundary_layer, auxiliary_layer_1=:auxiliary_layer_1, status=:status, readonly=:readonly, data_images=:data_images, item_images=:item_images, description=:description WHERE id=:id"); $dbr->bindParam(':last_editor', $_SESSION[$settings['session_prefix'].'auth']['id'], PDO::PARAM_INT); #$dbr->bindParam(':table_name', $table_name, PDO::PARAM_STR); $dbr->bindParam(':title', $title, PDO::PARAM_STR); @@ -241,9 +252,16 @@ $dbr->bindParam(':latlong_entry', $latlong_entry, PDO::PARAM_INT); $dbr->bindParam(':geometry_required', $geometry_required, PDO::PARAM_INT); if($basemaps) $dbr->bindParam(':basemaps', $basemaps, PDO::PARAM_STR); - else $dbr->bindValue(':basemaps', null, PDO::PARAM_NULL); + else $dbr->bindValue(':basemaps', NULL, PDO::PARAM_NULL); + if(is_null($default_latitude)) $dbr->bindValue(':default_latitude', NULL, PDO::PARAM_NULL); + else $dbr->bindParam(':default_latitude', $default_latitude, PDO::PARAM_STR); + if(is_null($default_longitude)) $dbr->bindValue(':default_longitude', NULL, PDO::PARAM_NULL); + else $dbr->bindParam(':default_longitude', $default_longitude, PDO::PARAM_STR); + if(is_null($default_zoomlevel)) $dbr->bindValue(':default_zoomlevel', NULL, PDO::PARAM_NULL); + else $dbr->bindParam(':default_zoomlevel', $default_zoomlevel, PDO::PARAM_STR); $dbr->bindParam(':min_scale', $min_scale, PDO::PARAM_STR); $dbr->bindParam(':max_scale', $max_scale, PDO::PARAM_STR); + $dbr->bindParam(':max_resolution', $max_resolution, PDO::PARAM_STR); $dbr->bindParam(':simplification_tolerance', $simplification_tolerance, PDO::PARAM_STR); $dbr->bindParam(':simplification_tolerance_extent_factor', $simplification_tolerance_extent_factor, PDO::PARAM_STR); $dbr->bindParam(':layer_overview', $layer_overview, PDO::PARAM_INT); @@ -277,7 +295,7 @@ #$row = $dbr->fetch(); #if(isset($row['sequence'])) $new_sequence = $row['sequence'] + 1; $new_sequence = 1; - $dbr = Database::$connection->prepare("INSERT INTO ".$db_settings['data_models_table']." (sequence, creator, created, table_name, title, project, type, parent_table, geometry_type, latlong_entry, geometry_required, basemaps, min_scale, max_scale, simplification_tolerance, simplification_tolerance_extent_factor, layer_overview, boundary_layer, auxiliary_layer_1, status, readonly, data_images, item_images, description) VALUES (:sequence, :creator, NOW(), :table_name, :title, :project, :type, :parent_table, :geometry_type, :latlong_entry, :geometry_required, :basemaps, :min_scale, :max_scale, :simplification_tolerance, :simplification_tolerance_extent_factor, :layer_overview, :boundary_layer, :auxiliary_layer_1, :status, :readonly, :data_images, :item_images, :description)"); + $dbr = Database::$connection->prepare("INSERT INTO ".$db_settings['data_models_table']." (sequence, creator, created, table_name, title, project, type, parent_table, geometry_type, latlong_entry, geometry_required, basemaps, default_latitude, default_longitude, default_zoomlevel, min_scale, max_scale, max_resolution, simplification_tolerance, simplification_tolerance_extent_factor, layer_overview, boundary_layer, auxiliary_layer_1, status, readonly, data_images, item_images, description) VALUES (:sequence, :creator, NOW(), :table_name, :title, :project, :type, :parent_table, :geometry_type, :latlong_entry, :geometry_required, :basemaps, :default_latitude, :default_longitude, :default_zoomlevel, :min_scale, :max_scale, :max_resolution, :simplification_tolerance, :simplification_tolerance_extent_factor, :layer_overview, :boundary_layer, :auxiliary_layer_1, :status, :readonly, :data_images, :item_images, :description)"); $dbr->bindParam(':sequence', $new_sequence, PDO::PARAM_INT); $dbr->bindParam(':creator', $_SESSION[$settings['session_prefix'].'auth']['id'], PDO::PARAM_INT); $dbr->bindParam(':table_name', $table_name, PDO::PARAM_STR); @@ -291,8 +309,15 @@ $dbr->bindValue(':geometry_required', 1, PDO::PARAM_INT); if($basemaps) $dbr->bindParam(':basemaps', $basemaps, PDO::PARAM_STR); else $dbr->bindValue(':basemaps', null, PDO::PARAM_NULL); + if(is_null($default_latitude)) $dbr->bindValue(':default_latitude', NULL, PDO::PARAM_NULL); + else $dbr->bindParam(':default_latitude', $default_latitude, PDO::PARAM_STR); + if(is_null($default_longitude)) $dbr->bindValue(':default_longitude', NULL, PDO::PARAM_NULL); + else $dbr->bindParam(':default_longitude', $default_longitude, PDO::PARAM_STR); + if(is_null($default_zoomlevel)) $dbr->bindValue(':default_zoomlevel', NULL, PDO::PARAM_NULL); + else $dbr->bindParam(':default_zoomlevel', $default_zoomlevel, PDO::PARAM_STR); $dbr->bindParam(':min_scale', $min_scale, PDO::PARAM_STR); $dbr->bindParam(':max_scale', $max_scale, PDO::PARAM_STR); + $dbr->bindParam(':max_resolution', $max_resolution, PDO::PARAM_STR); $dbr->bindParam(':simplification_tolerance', $simplification_tolerance, PDO::PARAM_STR); $dbr->bindParam(':simplification_tolerance_extent_factor', $simplification_tolerance_extent_factor, PDO::PARAM_STR); $dbr->bindParam(':layer_overview', $layer_overview, PDO::PARAM_INT); @@ -337,8 +362,12 @@ $db_table['latlong_entry'] = intval($latlong_entry); $db_table['geometry_required'] = intval($geometry_required); $db_table['basemaps'] = explode(',', $basemaps); - $db_table['min_scale'] = intval($min_scale); - $db_table['max_scale'] = intval($max_scale); + $db_table['default_latitude'] = floatval($default_latitude); + $db_table['default_longitude'] = floatval($default_longitude); + $db_table['default_zoomlevel'] = intval($default_zoomlevel); + $db_table['min_scale'] = floatval($min_scale); + $db_table['max_scale'] = floatval($max_scale); + $db_table['max_resolution'] = floatval($max_resolution); $db_table['simplification_tolerance'] = floatval($simplification_tolerance); $db_table['simplification_tolerance_extent_factor'] = floatval($simplification_tolerance_extent_factor); $db_table['layer_overview'] = intval($layer_overview); @@ -1095,7 +1124,7 @@ if(isset($_REQUEST['id']) && $permission->granted(Permission::DATA_MANAGEMENT)) { // check if data model to be copied exists: - $dbr = Database::$connection->prepare("SELECT id, title, project, type, geometry_type, latlong_entry, geometry_required, basemaps, min_scale, max_scale, simplification_tolerance, simplification_tolerance_extent_factor, layer_overview, boundary_layer, auxiliary_layer_1, status, readonly, data_images, item_images FROM ".$db_settings['data_models_table']." WHERE id=:id LIMIT 1"); + $dbr = Database::$connection->prepare("SELECT id, title, project, type, geometry_type, latlong_entry, geometry_required, basemaps, default_latitude, default_longitude, default_zoomlevel, min_scale, max_scale, max_resolution, simplification_tolerance, simplification_tolerance_extent_factor, layer_overview, boundary_layer, auxiliary_layer_1, status, readonly, data_images, item_images FROM ".$db_settings['data_models_table']." WHERE id=:id LIMIT 1"); $dbr->bindParam(':id', $_REQUEST['id'], PDO::PARAM_INT); $dbr->execute(); $data = $dbr->fetch(); @@ -1169,7 +1198,7 @@ // save data model: $new_sequence = 1; - $dbr = Database::$connection->prepare("INSERT INTO ".$db_settings['data_models_table']." (sequence, creator, created, table_name, title, project, type, parent_table, geometry_type, latlong_entry, geometry_required, basemaps, min_scale, max_scale, simplification_tolerance, simplification_tolerance_extent_factor, layer_overview, boundary_layer, auxiliary_layer_1, status, readonly, data_images, item_images, description) VALUES (:sequence, :creator, NOW(), :table_name, :title, :project, :type, 0, :geometry_type, :latlong_entry, :geometry_required, :basemaps, :min_scale, :max_scale, :simplification_tolerance, :simplification_tolerance_extent_factor, :layer_overview, :boundary_layer, :auxiliary_layer_1, :status, :readonly, :data_images, :item_images, :description)"); + $dbr = Database::$connection->prepare("INSERT INTO ".$db_settings['data_models_table']." (sequence, creator, created, table_name, title, project, type, parent_table, geometry_type, latlong_entry, geometry_required, basemaps, min_scale, max_scale, max_resolution, simplification_tolerance, simplification_tolerance_extent_factor, layer_overview, boundary_layer, auxiliary_layer_1, status, readonly, data_images, item_images, description) VALUES (:sequence, :creator, NOW(), :table_name, :title, :project, :type, 0, :geometry_type, :latlong_entry, :geometry_required, :basemaps, :default_latitude, :default_logngitude, :default_zoomlevel, :min_scale, :max_scale, :max_resolution, :simplification_tolerance, :simplification_tolerance_extent_factor, :layer_overview, :boundary_layer, :auxiliary_layer_1, :status, :readonly, :data_images, :item_images, :description)"); $dbr->bindParam(':sequence', $new_sequence, PDO::PARAM_INT); $dbr->bindParam(':creator', $_SESSION[$settings['session_prefix'].'auth']['id'], PDO::PARAM_INT); $dbr->bindParam(':table_name', $table_name, PDO::PARAM_STR); @@ -1180,8 +1209,12 @@ $dbr->bindParam(':latlong_entry', $data['latlong_entry'], PDO::PARAM_INT); $dbr->bindParam(':geometry_required', $data['geometry_required'], PDO::PARAM_INT); $dbr->bindParam(':basemaps', $data['basemaps'], PDO::PARAM_STR); + $dbr->bindParam(':default_latitude', $data['default_latitude'], PDO::PARAM_STR); + $dbr->bindParam(':default_longitude', $data['default_longitude'], PDO::PARAM_STR); + $dbr->bindParam(':default_zoomlevel', $data['default_zoomlevel'], PDO::PARAM_STR); $dbr->bindParam(':min_scale', $data['min_scale'], PDO::PARAM_STR); $dbr->bindParam(':max_scale', $data['max_scale'], PDO::PARAM_STR); + $dbr->bindParam(':max_resolution', $data['max_resolution'], PDO::PARAM_STR); $dbr->bindParam(':simplification_tolerance', $data['simplification_tolerance'], PDO::PARAM_STR); $dbr->bindParam(':simplification_tolerance_extent_factor', $data['simplification_tolerance_extent_factor'], PDO::PARAM_STR); $dbr->bindParam(':layer_overview', $data['layer_overview'], PDO::PARAM_INT); diff --git a/controllers/edit_data_item.php b/controllers/edit_data_item.php index fbb9479..820ea3d 100644 --- a/controllers/edit_data_item.php +++ b/controllers/edit_data_item.php @@ -58,9 +58,9 @@ $template->assign('geometry_type', intval($table_info['table']['geometry_type'])); $template->assign('latlong_entry', intval($table_info['table']['latlong_entry'])); $template->assign('geometry_required', intval($table_info['table']['geometry_required'])); - - $template->assign('min_scale', intval($table_info['table']['min_scale'])); - $template->assign('max_scale', intval($table_info['table']['max_scale'])); + $template->assign('min_scale', floatval($table_info['table']['min_scale'])); + $template->assign('max_scale', floatval($table_info['table']['max_scale'])); + $template->assign('max_resolution', floatval($table_info['table']['max_resolution'])); $template->assign('auxiliary_layer_1', intval($table_info['table']['auxiliary_layer_1'])); $template->assign('auxiliary_layer_1_title', htmlspecialchars($table_info['table']['auxiliary_layer_1_title'])); if($table_info['table']['auxiliary_layer_1_stef']) $template->assign('auxiliary_layer_1_redraw', true); @@ -201,8 +201,9 @@ $template->assign('geometry_type', intval($table_info['table']['geometry_type'])); $template->assign('latlong_entry', intval($table_info['table']['latlong_entry'])); $template->assign('geometry_required', intval($table_info['table']['geometry_required'])); - $template->assign('min_scale', intval($table_info['table']['min_scale'])); - $template->assign('max_scale', intval($table_info['table']['max_scale'])); + $template->assign('min_scale', floatval($table_info['table']['min_scale'])); + $template->assign('max_scale', floatval($table_info['table']['max_scale'])); + $template->assign('max_resolution', floatval($table_info['table']['max_resolution'])); $template->assign('auxiliary_layer_1', intval($table_info['table']['auxiliary_layer_1'])); $template->assign('auxiliary_layer_1_title', htmlspecialchars($table_info['table']['auxiliary_layer_1_title'])); if($table_info['table']['auxiliary_layer_1_stef']) $template->assign('auxiliary_layer_1_redraw', true); @@ -741,15 +742,15 @@ } $template->assign('data_item', $data_item); - $template->assign('fk', $fk); $template->assign('table_data', $table_info['table']); $template->assign('data_type', $table_info['table']['type']); $template->assign('geometry_type', intval($table_info['table']['geometry_type'])); $template->assign('latlong_entry', intval($table_info['table']['latlong_entry'])); $template->assign('geometry_required', intval($table_info['table']['geometry_required'])); - $template->assign('min_scale', intval($table_info['table']['min_scale'])); - $template->assign('max_scale', intval($table_info['table']['max_scale'])); + $template->assign('min_scale', floatval($table_info['table']['min_scale'])); + $template->assign('max_scale', floatval($table_info['table']['max_scale'])); + $template->assign('max_resolution', floatval($table_info['table']['max_resolution'])); $template->assign('auxiliary_layer_1', intval($table_info['table']['auxiliary_layer_1'])); $template->assign('auxiliary_layer_1_title', htmlspecialchars($table_info['table']['auxiliary_layer_1_title'])); if($table_info['table']['auxiliary_layer_1_stef']) $template->assign('auxiliary_layer_1_redraw', true); diff --git a/controllers/feedback.php b/controllers/feedback.php index 3305a0d..77e87b8 100644 --- a/controllers/feedback.php +++ b/controllers/feedback.php @@ -33,6 +33,12 @@ $row = $dbr->fetch(); if(isset($row['id'])) { + // set default language if user uses a different one: + if(isset($_SESSION[$settings['session_prefix'].'language']) && $_SESSION[$settings['session_prefix'].'language']!=$settings['language']) + { + require(BASE_PATH.'lang/'.$settings['language'].'.lang.php'); + } + if(isset($_POST['help'])) $subject = $lang['feedback_subject_help']; else $subject = $lang['feedback_subject']; @@ -76,6 +82,12 @@ if(isset($mail_error)) $errors[] = 'mail_error'; else $template->assign('feedback_sent', true); + // reset language: + if(isset($_SESSION[$settings['session_prefix'].'language']) && $_SESSION[$settings['session_prefix'].'language']!=$settings['language'] && file_exists(BASE_PATH.'lang/'.$_SESSION[$settings['session_prefix'].'language'].'.lang.php')) + { + require(BASE_PATH.'lang/'.$_SESSION[$settings['session_prefix'].'language'].'.lang.php'); + } + } else { diff --git a/controllers/users.php b/controllers/users.php index 3933bb6..8601454 100644 --- a/controllers/users.php +++ b/controllers/users.php @@ -310,6 +310,12 @@ if($notify_user) { + // set default language if user uses a different one: + if(isset($_SESSION[$settings['session_prefix'].'language']) && $_SESSION[$settings['session_prefix'].'language']!=$settings['language']) + { + require(BASE_PATH.'lang/'.$settings['language'].'.lang.php'); + } + require(BASE_PATH.'lib/phpmailer/class.phpmailer.php'); $mail = new PHPMailer(); $mail->CharSet = $lang['charset']; @@ -324,6 +330,13 @@ $mail->Body = str_replace('[website_address]', BASE_URL, str_replace('[website_title]', $settings['website_title'], str_replace('[email]', $email, str_replace('[password]', $pw, str_replace('[user_name]', $name, $lang['add_user_notification_mail_text']))))); $mail->AddAddress($email); $mail->Send(); + + // reset language: + if(isset($_SESSION[$settings['session_prefix'].'language']) && $_SESSION[$settings['session_prefix'].'language']!=$settings['language'] && file_exists(BASE_PATH.'lang/'.$_SESSION[$settings['session_prefix'].'language'].'.lang.php')) + { + require(BASE_PATH.'lang/'.$_SESSION[$settings['session_prefix'].'language'].'.lang.php'); + } + } } diff --git a/lang/english.lang.php b/lang/english.lang.php index a4d73ee..94d2b21 100644 --- a/lang/english.lang.php +++ b/lang/english.lang.php @@ -270,8 +270,16 @@ $lang['db_table_basemaps_label'] = 'Basemaps:'; $lang['db_table_basemaps_defaut_label'] = '(default)'; $lang['db_table_basemaps_description'] = 'if none is selected the defaut basemaps are used'; + +$lang['db_table_default_latlon_input_label'] = 'Default latitude/longitude:'; +$lang['db_table_default_latlon_description'] = 'Default latitude/longitude (e.g. 47.99349 / 7.84507)'; +$lang['db_table_def_zoom_input_label'] = 'Default zoom level:'; +$lang['db_table_def_zoom_description'] = 'Default zoom level (e.g. 10)'; + $lang['db_table_scale_range_input_label'] = 'Scale range:'; $lang['db_table_scale_range_description'] = 'minimum/maximum scale (e.g. 50000 / 0) to display the layer from middle to highest zoom level)'; +$lang['db_table_max_res_input_label'] = 'Maximum resolution:'; +$lang['db_table_max_res_description'] = 'The maximum resolution that can be zoomed to (e.g. 1000)'; $lang['db_table_simp_tol_input_label'] = 'Geometry simplification tolerance:'; $lang['db_table_simp_tol_description'] = 'Fixed simplification tolerance (e.g. 0.1)'; $lang['db_table_simp_tol_sf_input_label'] = 'Geometry simplification tolerance/extent factor:'; diff --git a/lib/functions.php b/lib/functions.php index 7b7a6f0..8455f1f 100644 --- a/lib/functions.php +++ b/lib/functions.php @@ -896,8 +896,12 @@ function get_table_info($table, $overview_only=false) a.latlong_entry, a.geometry_required, a.basemaps, + a.default_latitude, + a.default_longitude, + a.default_zoomlevel, a.min_scale, a.max_scale, + a.max_resolution, a.simplification_tolerance, a.simplification_tolerance_extent_factor, a.layer_overview, diff --git a/static/js/ol_data.js b/static/js/ol_data.js index 1dc1966..a84bf33 100644 --- a/static/js/ol_data.js +++ b/static/js/ol_data.js @@ -1,5 +1,5 @@ var projData = new OpenLayers.Projection("EPSG:4326"); -var projDisplay = new OpenLayers.Projection("EPSG:900913"); +var projDisplay = new OpenLayers.Projection("EPSG:3857"); var featuresStyle = new OpenLayers.StyleMap({ "default": new OpenLayers.Style({ pointRadius: 5, diff --git a/static/js/ol_data_item.js b/static/js/ol_data_item.js index db9b5f6..cd9480d 100644 --- a/static/js/ol_data_item.js +++ b/static/js/ol_data_item.js @@ -1,5 +1,5 @@ var projData = new OpenLayers.Projection("EPSG:4326"); -var projDisplay = new OpenLayers.Projection("EPSG:900913"); +var projDisplay = new OpenLayers.Projection("EPSG:3857"); var featureLayerStyle = new OpenLayers.StyleMap({ "default": new OpenLayers.Style({ pointRadius: 10, diff --git a/static/js/ol_draw.js b/static/js/ol_draw.js index 6956218..bac4c95 100644 --- a/static/js/ol_draw.js +++ b/static/js/ol_draw.js @@ -1,5 +1,5 @@ var projData = new OpenLayers.Projection("EPSG:4326"); -var projDisplay = new OpenLayers.Projection("EPSG:900913"); +var projDisplay = new OpenLayers.Projection("EPSG:3857"); var vectorLayerStyle = new OpenLayers.StyleMap({ "default": new OpenLayers.Style({ externalGraphic: staticURL+"img/marker_edit_large.png", @@ -76,8 +76,7 @@ labelOutlineWidth: 4 var wkt = document.getElementById("_wkt").value; -var map = new OpenLayers.Map("mapcontainer", { projection: projDisplay, controls:[new OpenLayers.Control.Zoom(), new OpenLayers.Control.ScaleLine()]}); - +var map = new OpenLayers.Map("mapcontainer", { projection: projDisplay, controls:[new OpenLayers.Control.Zoom(), new OpenLayers.Control.ScaleLine()] }); vectorLayer = new OpenLayers.Layer.Vector("Feature Layer", { styleMap: vectorLayerStyle }); map.addLayer(vectorLayer); @@ -110,17 +109,6 @@ map.addControl(new OpenLayers.Control.MousePosition({ displayProjection:projData vectorLayer.events.on({"featuremodified":updateForm, "featureadded":addReady}); - - - - - - - - - - - OpenLayers.Event.observe(document, "keydown", function(evt) { var handled = false; switch (evt.keyCode) { diff --git a/templates/subtemplates/data.inc.tpl b/templates/subtemplates/data.inc.tpl index 1d7c10d..e97c9f2 100644 --- a/templates/subtemplates/data.inc.tpl +++ b/templates/subtemplates/data.inc.tpl @@ -390,7 +390,11 @@ - + + + + + 17) map.zoomTo(17);'; ?> +map.zoomToExtent(extentLayer.getDataExtent());'; ?> - + -  

'; diff --git a/templates/subtemplates/data_item.inc.tpl b/templates/subtemplates/data_item.inc.tpl index 1e6ab86..f71bffc 100644 --- a/templates/subtemplates/data_item.inc.tpl +++ b/templates/subtemplates/data_item.inc.tpl @@ -198,6 +198,12 @@ $js[] = 'var map = new OpenLayers.Map("mapcontainer", { projection:projDisplay, controls:[new OpenLayers.Control.Zoom(), new OpenLayers.Control.ScaleLine()] });'; ?> + + + + +?> + 17) map.zoomTo(17);'; +$js[] = 'map.zoomToExtent(featureLayer.getDataExtent());'; +?> + + - - diff --git a/templates/subtemplates/data_model.edit_model.inc.tpl b/templates/subtemplates/data_model.edit_model.inc.tpl index 33ec3cc..b232119 100644 --- a/templates/subtemplates/data_model.edit_model.inc.tpl +++ b/templates/subtemplates/data_model.edit_model.inc.tpl @@ -169,6 +169,29 @@ +
+ +
+
+
+ +
+
+ +
+
+ +
+
+ +
+ +
+ + +
+
+
@@ -184,6 +207,14 @@
+
+ +
+ + +
+
+
diff --git a/templates/subtemplates/edit_data_item.inc.tpl b/templates/subtemplates/edit_data_item.inc.tpl index 347b469..15b1a88 100644 --- a/templates/subtemplates/edit_data_item.inc.tpl +++ b/templates/subtemplates/edit_data_item.inc.tpl @@ -274,9 +274,12 @@
- - + + +