/home/dvjjulio/softtrash/public/js/PowerNetwork.js
/**
* Created by oliver on 13/05/16.
*/
var PowerNetwork = function(){
return {
init: function(){
$('#send-btn').click( function( event ){
event.preventDefault();
var form = new FormData();
form.append( 'actor_id', $( '#actor_id option:selected' ).val() );
form.append( 'related_actor_id', $( '#related_actor_id option:selected' ).val() );
form.append( 'typerelationship_id', $( '#typerelationship_id option:selected' ).val() );
form.append( '_token', $( '#csrf-token' ).val() );
$.ajax({
url: main_path + '/redespoder/actor/add_relationship',
data: form,
type: 'POST',
processData: false,
contentType: false,
success: function( response ){
var type = 'success'
if( response.status !== true ){
type = 'danger';
}
$.bootstrapGrowl( response.message , {
type: type,
delay: 5000,
allow_dismis: true });
$('#actor_id').val('').prop( 'selected', false ).trigger("chosen:updated");
$('#related_actor_id').val('').prop( 'selected', false ).trigger("chosen:updated");
$('#typerelationship_id').val('').prop( 'selected', false ).trigger("chosen:updated");
},
fail: function( response ){
var message = 'Algo horrible sucedio :S';
if( typeof response.message !== 'undefined' ){
message = response.message;
}
$.bootstrapGrowl( message , {
type: 'danger',
delay: 5000,
allow_dismis: true });
}
});
});
$( '#btn-modal-delete' ).click( function( event ){
event.preventDefault();
var _id = $('#del-rel-actor-id option:selected').val();
var _name = $('#del-rel-actor-id option:selected').text();
$( '#lbl-actor-name' ).html( '' );
$( '#lbl-actor-name' ).append( '<h3>'+_name+'</h3>' );
$("table#table-relationships tbody").html( '' );
$.ajax( {
url: main_path + '/redespoder/actor/relationships/' + _id,
type: 'GET',
success: function( response ){
if( response.status === true ){
var _html = '';
$.each( response.data, function( i, item ){
_html += '<tr>';
_html += ' <td style="width: 180px;">' + item.related_actors.name + '</td>';
_html += ' <td class="text-right" style="width: 70px;">';
_html += ' <div class="btn-group btn-group-xs">';
_html += ' <button class="btn btn-xs btn-danger btn-delete-rel" data-id="' + item.id + '"><i class="gi gi-remove_2"></i></button>';
_html += ' </div>';
_html += ' </td>';
_html += '</tr>';
});
$("table#table-relationships tbody").append( _html );
PowerNetwork.assignEvents();
}
}, fail: function( response ){
$.bootstrapGrowl( response.message , {
type: 'danger',
daley: 5000,
allow_dismiss: true
});
}
});
$('#modal-delete-relationship').modal('show');
});
$('#network-btn').click(function( event ){
event.preventDefault();
var actor_id = $( '#network-actor-id option:selected' ).val();
var type_id = $( '#type-relationship-id option:selected' ).val();
var depth = $( '#search-depth option:selected' ).val();
if( type_id !== '-1' || depth !== '1' )
var path = main_path + '/redespoder/relationships/' + actor_id + '/' + type_id + '/' + depth
else
var path = main_path + '/redespoder/relationships/' + actor_id
$.ajax({
url: path ,
type: 'GET',
success: function( response ){
var _parent = $('#my_svg').parent();
$('#my_svg').remove();
_parent.append( '<svg id="my_svg"></svg>' );
if( response.data.nodes === null ){
$.bootstrapGrowl( 'No hay datos que mostrar para la consulta solicitada...', {
type: 'danger',
delay: 5000,
allow_dismiss: true
});
} else{
Graph.nodes = response.data.nodes;
Graph.lastNodeId = response.data.lastNodeId;
Graph.links = response.data.links;
Graph.init();
}
}, fail: function( response ){
$.bootstrapGrowl( 'Error: Hubo un problema a recopilar la informacion', {
type: 'danger',
delay: 5000,
allow_dismiss: true
})
}
});
});
},
assignEvents : function(){
$('.btn-delete-rel').click( function(){
var _rel_id = $( this ).data( 'id' );
var _row = $( this ).closest('tr');
$.ajax({
url: main_path + '/redespoder/actor/remove_relationship',
type: 'POST',
data: { _delete_rel_id: _rel_id, _token: $('#_token').val() },
success: function( response ){
if( response.status === true){
_row.remove();
$.bootstrapGrowl( response.message, {
type: 'success',
delay: 5200,
allow_dismiss: true
});
} else {
$.bootstrapGrowl( response.message, {
type: 'danger',
delay: 5200,
allow_dismiss: true
});
}
}, fails: function( response ){
}
});
});
}
}
}();