New networkmaps in progress... (Added new migration system and new design elements to js)

This commit is contained in:
Arturo Gonzalez 2016-10-10 16:11:15 +02:00
parent 63b280e5d3
commit eb9390cad6
4 changed files with 101 additions and 68 deletions

View File

@ -1468,7 +1468,7 @@ function networkmap_open_graph ($layout, $nooverlap, $pure, $zoom,
$head .= "ratio=fill;";
$head .= "root=0;";
$head .= "nodesep=\"0.5\";";
$head .= "nodesep=\"0.02\";";
$head .= "size=\"$size\";";
$head .= "\n";

View File

@ -1152,48 +1152,62 @@ function is_in_rel_array ($relations, $relation) {
return $is_in_array;
}
function migrate_older_open_maps() {
global $config;
function map_migrated($id) {
$new_maps = db_get_all_rows_sql("SELECT filter FROM tmap");
$new_map_filter = json_decode($new_maps, true);
$older_networkmaps = db_get_all_rows_sql("SELECT * FROM tnetwork_map");
foreach ($older_networkmaps as $old_networkmap) {
$map_values = array();
$map_values['id_group'] = $old_networkmap['id_group'];
$map_values['id_user'] = $old_networkmap['id_user'];
$map_values['type'] = 0;
$map_values['subtype'] = 0;
$map_values['name'] = $old_networkmap['name'];
$new_map_filter = array();
$new_map_filter['dont_show_subgroups'] = $old_networkmap['dont_show_subgroups'];
$new_map_filter['node_radius'] = 40;
$map_values['filter'] = json_encode($new_map_filter);
$map_values['description'] = "Mapa open migrado";
$map_values['width'] = 4000;
$map_values['height'] = 4000;
$map_values['center_x'] = 2000;
$map_values['center_y'] = 2000;
$map_values['background'] = "";
$map_values['background_options'] = 0;
$map_values['source_period'] = 60;
$map_values['source'] = 0;
$map_values['source_data'] = $old_networkmap['id_group'];
if ($old_networkmap['type'] == 'radial_dinamic') {
$map_values['generation_method'] = 6;
}
else {
$map_values['generation_method'] = 4;
}
$map_values['generated'] = 0;
$id_new_map = db_process_sql_insert('tmap', $map_values);
if (!$id_new_map) {
return false;
foreach ($new_map_filter as $filter) {
if ((isset($filter['id_migrate_map'])) && ($filter['id_migrate_map'] == $id)) {
return true;
}
}
return false;
}
function migrate_older_open_maps($id) {
global $config;
$old_networkmap = db_get_row_filter('tnetwork_map',
array('id_networkmap' => $id));
$map_values = array();
$map_values['id_group'] = $old_networkmap['id_group'];
$map_values['id_user'] = $old_networkmap['id_user'];
$map_values['type'] = 0;
$map_values['subtype'] = 0;
$map_values['name'] = $old_networkmap['name'];
$new_map_filter = array();
$new_map_filter['dont_show_subgroups'] = $old_networkmap['dont_show_subgroups'];
$new_map_filter['node_radius'] = 40;
$new_map_filter['id_migrate_map'] = $id;
$map_values['filter'] = json_encode($new_map_filter);
$map_values['description'] = "Mapa open migrado";
$map_values['width'] = 4000;
$map_values['height'] = 4000;
$map_values['center_x'] = 2000;
$map_values['center_y'] = 2000;
$map_values['background'] = "";
$map_values['background_options'] = 0;
$map_values['source_period'] = 60;
$map_values['source'] = 0;
$map_values['source_data'] = $old_networkmap['id_group'];
if ($old_networkmap['type'] == 'radial_dinamic') {
$map_values['generation_method'] = 6;
}
else {
$map_values['generation_method'] = 4;
}
$map_values['generated'] = 0;
$id_new_map = db_process_sql_insert('tmap', $map_values);
if (!$id_new_map) {
return false;
}
return true;
}

View File

@ -1049,13 +1049,18 @@ function set_positions_graph() {
.attr("y", function(d) {
return d.y - (d.image_height / 2);
});
var position_text = 40;
if (node_radius > 100) {
position_text = 60;
}
node.selectAll(".node_text")
.attr("x", function(d) {
return d.x;
})
.attr("y", function(d) {
return d.y + node_radius + 24;
return d.y + node_radius + position_text;
});
draw_minimap();
@ -2661,10 +2666,15 @@ function draw_elements_graph() {
node_temp.append("title")
.text(function(d) {return d.text; });
var font_size = "32px";
if (node_radius > 100) {
font_size = "64px";
}
node_temp.append("text")
.attr("class", "node_text")
.attr("style", "font-size: 32px; font-style:normal; font-weight:normal; line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Verdana")
.attr("style", "font-style:normal; font-weight:normal; line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;")
.attr("x", function(d) {
return d.x;
})
@ -2672,7 +2682,7 @@ function draw_elements_graph() {
return d.y + node_radius + 12;
})
.append("tspan")
.attr("style", "text-align:center; text-anchor:middle; fill:#000000")
.attr("style", "font-size: " + font_size + " !important; font-family:Verdana; text-align:center; text-anchor:middle; fill:#000000")
.text(function(d) {
return d.text;
})

View File

@ -37,7 +37,6 @@ $update_networkmap = (bool) get_parameter('update_networkmap', false);
$copy_networkmap = (bool) get_parameter('copy_networkmap', false);
$delete = (bool) get_parameter('delete', false);
$tab = (string) get_parameter('tab', 'list');
$migrate_networkmap = (string) get_parameter('migrate_networkmap', false);
$result_txt = '';
// The networkmap doesn't exist yet
@ -271,19 +270,6 @@ else if ($update_networkmap || $copy_networkmap || $delete) {
true);
}
}
else if ($migrate_networkmap) {
$result = migrate_older_open_maps();
if (enterprise_installed()) {
enterprise_include_once ('include/functions_pandora_networkmap.php');
$result = migrate_older_networkmap_enterprise();
}
$result_txt = ui_print_result_message($result,
__('Succesfully migrated (New map, I AM YOUR FATHER)'), __('Could not be migrated'), '',
true);
}
switch ($tab) {
case 'edit':
@ -293,6 +279,38 @@ switch ($tab) {
require('pandora_networkmap.view.php');
break;
case 'list':
$old_networkmaps_enterprise = array();
$old_networkmaps_open = array();
if (enterprise_installed()) {
$old_networkmaps_enterprise = db_get_all_rows_sql("SELECT id FROM tnetworkmap_enterprise");
}
$old_networkmaps_open = db_get_all_rows_sql("SELECT id_networkmap FROM tnetwork_map");
foreach ($old_networkmaps_enterprise as $old_map_ent) {
if (!map_migrated($old_map_ent['id'])) {
if (enterprise_installed()) {
enterprise_include_once ('include/functions_pandora_networkmap.php');
$return = migrate_older_networkmap_enterprise($old_map_ent['id']);
if (!$return) {
break;
}
}
}
}
foreach ($old_networkmaps_enterprise as $old_map_ent) {
if (!map_migrated($old_map_ent['id'])) {
$return = migrate_older_open_maps($old_map_ent['id']);
}
if (!$return) {
break;
}
}
ui_print_page_header(__('Networkmap'),
"images/op_network.png", false, "network_map_enterprise",
false);
@ -376,7 +394,6 @@ switch ($tab) {
$network_map['name'] . '</a>';
}
if ($network_map['id_group'] > 0) {
$nodes = db_get_all_rows_sql("SELECT style FROM titem WHERE id_map = " . $network_map['id'] . " AND deleted = 0");
$count = 0;
@ -394,7 +411,6 @@ switch ($tab) {
WHERE id_map = ' . $network_map['id'] . ' AND deleted = 0');
}
if (empty($count))
$count = 0;
@ -445,13 +461,6 @@ switch ($tab) {
html_print_submit_button (__('Create networkmap'), 'crt', false, 'class="sub next" style="float: right;"');
echo "</form>";
echo "</div>";
echo "<div style='width: " . $table->width . "; margin-top: 5px;'>";
echo '<form method="post" action="index.php?sec=network&amp;sec2=operation/agentes/pandora_networkmap">';
html_print_input_hidden ('migrate_networkmap', 1);
html_print_submit_button (__('Migrate older networkmaps'), 'crt', false, 'class="sub next" style="float: left;"');
echo "</form>";
echo "</div>";
}
break;