Publicidade

Entre para seguir isso  
Seguidores 0
WagnerFilho

Exibir eventos fullcalendar codeigniter

Patrocínio:

Olá! Quero recuperar os eventos do banco de dados e exibi-los no calendário.

Podem me ajudar a fazer isto?

Até o momento, possuo os seguintes códigos:

Model:

Public function obter_noticias()
{
$sql = "SELECT * FROM noticias WHERE noticias.id";
return $this->db->query($sql, array($_GET['start'], $_GET['end']))->result();
}

controller:

Public function obter_noticias()
{
    $result=$this->Noticias_model->obter_noticias();
    echo json_encode($result);
    echo $this->db->last_query();            
    die();
}

No arquivo.js, estou utilizando o seguinte código:

var base_url='http://localhost/ci_adminlte/admin';
$(document).ready(function(){
	$('#calendar').fullCalendar({
	//alert('Teste de carregamento FullCalendar');
	header: {
            left: 'prev,next today',
            center: 'title',
            //right: 'month,basicWeek,basicDay'
            right: 'month,agendaWeek,agendaDay,listWeek,'
        },        
        editable: false,
	navLinks: true,
	//selectable: true,
	selectHelper: true,
	events: base_url+'noticias/obter_noticias'
	});
});

Abaixo, segue minha tabela:

id INT(11) NOT NULL AUTO_INCREMENT,
data DATETIME NOT NULL,
titulo TEXT NULL DEFAULT NULL,
noticia TEXT NULL DEFAULT NULL,
usuario_cadastro VARCHAR(40) NOT NULL,
usuario_alteracao VARCHAR(40) NOT NULL,
dt_cadastro DATETIME NOT NULL,
dt_alteracao DATETIME NULL DEFAULT NULL,
0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro amigo

Wagner

Não sou especialista em CODEIGNITER, tenho um sistema que estou estudando e tenho o seguinte código, que trabalha com DATA.

controller

    function editar() {

        $this->load->library('form_validation');
        $this->data['custom_error'] = '';

        if ($this->form_validation->run('vendas') == false) {
            $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false);
        } else {

            $dataVenda = $this->input->post('dataVenda');

            try {
                
                $dataVenda = explode('/', $dataVenda);
                $dataVenda = $dataVenda[2].'-'.$dataVenda[1].'-'.$dataVenda[0];


            } catch (Exception $e) {
               $dataVenda = date('Y/m/d'); 
            }

            $data = array(
                'dataVenda' => $dataVenda,
                'usuarios_id' => $this->input->post('usuarios_id'),
                'clientes_id' => $this->input->post('clientes_id')
            );

            if ($this->vendas_model->edit('vendas', $data, 'idVendas', $this->input->post('idVendas')) == TRUE) {
                $this->session->set_flashdata('success','Venda editada com sucesso!');
                redirect(base_url() . 'index.php/vendas/editar/'.$this->input->post('idVendas'));
            } else {
                $this->data['custom_error'] = '<div class="form_error"><p>Ocorreu um erro</p></div>';
            }
        }

        $this->data['result'] = $this->vendas_model->getById($this->uri->segment(3));
        $this->data['produtos'] = $this->vendas_model->getProdutos($this->uri->segment(3));
        $this->data['view'] = 'vendas/editarVenda';
        $this->load->view('tema/topo', $this->data);
   
    }

no .js está assim:

//Calendar.js



$(document).ready(function(){
	
	unicorn.init();
	
	$('#add-event-submit').click(function(){
		unicorn.add_event();
	});
	
	$('#event-name').keypress(function(e){
		if(e.which == 13) {	
			unicorn.add_event();
		}
	});	
});

unicorn = {	
	
	
	init: function() {	

		var date = new Date();
		var d = date.getDate();
		var m = date.getMonth();
		var y = date.getFullYear();	
		
		$('#fullcalendar').fullCalendar({
			header: {
				left: 'prev,next',
				center: 'title',
				right: 'month,basicWeek,basicDay'
			},
			editable: true,
			droppable: true, 
			drop: function(date, allDay) { 
				

				var originalEventObject = $(this).data('eventObject');
					
				
				var copiedEventObject = $.extend({}, originalEventObject);
					
			
				copiedEventObject.start = date;
				copiedEventObject.allDay = allDay;
					

				$('#fullcalendar').fullCalendar('renderEvent', copiedEventObject, true);
					
				
					$(this).remove();
				
			}
		});
		this.external_events();		
	},
	
	
	add_event: function(){
		if($('#event-name').val() != '') {
			var event_name = $('#event-name').val();
			$('#external-events .panel-content').append('<div class="external-event ui-draggable label label-inverse">'+event_name+'</div>');
			this.external_events();
			$('#modal-add-event').modal('hide');
			$('#event-name').val('');
		} else {
			this.show_error();
		}
	},
	
	
	external_events: function(){
	
		$('#external-events div.external-event').each(function() {		
		
			var eventObject = {
				title: $.trim($(this).text()) 
			};
				
		
			$(this).data('eventObject', eventObject);
				
		
			$(this).draggable({
				zIndex: 999,
				revert: true,      /
				revertDuration: 0  
			});		
		});		
	},
	

	show_error: function(){
		$('#modal-error').remove();
		$('<div style="border-radius: 5px; top: 70px; font-size:14px; left: 50%; ; position: absolute;width: 140px; background-color: #f00; text-align: center; padding: 5px; color: #ffffff;" id="modal-error">Enter event name!</div>').appendTo('#modal-add-event .modal-body');
		$('#modal-error').delay('1500').fadeOut(700,function() {
			$(this).remove();
		});
	}
	
	
};

Espero ter ajudado com sua dúvida.

Abraços,

Renato

0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!


Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.


Entrar Agora
Entre para seguir isso  
Seguidores 0