diff --git a/application/controllers/admin/Members.php b/application/controllers/admin/Members.php index 8231c024c5d029f9c8e4c7c2680f30d9f7d725fd..97ec8b461317145935d7cf87aade43b11cb0b6ba 100644 --- a/application/controllers/admin/Members.php +++ b/application/controllers/admin/Members.php @@ -118,17 +118,26 @@ class Members extends MY_Controller { 'value' => $this->input->post('contactvalue'), 'member_id' => $id, ); - $data = $this->security->xss_clean($data); + //$data = $this->security->xss_clean($data); $result = $this->members_model->contact_insert($data); redirect(base_url('admin/members/view/'.$id)); } public function contact_delete($user_id) { - if($this->input->post('submit')) { - die(print_r($this->input->post('contactid'))); - $result = $this->members_model->contact_delete($this->input->post('contactid')); - $this->session->set_flashdata('msg', 'Kontakt gelöscht!'); - } + $data = array( + 'id' => $this->input->post('contactid'), + ); + $result = $this->members_model->contact_delete($data); + + redirect(base_url('admin/members/view/'.$user_id)); + } + + public function contact_edit($user_id) { + $data = array( + 'type_id' => $this->input->post('contact_type_id'), + 'value' => $this->input->post('contactvalue'), + ); + $result = $this->members_model->contact_edit($this->input->post('contactid'), $data); redirect(base_url('admin/members/view/'.$user_id)); } diff --git a/application/models/admin/Members_model.php b/application/models/admin/Members_model.php index ce80928d82c5f4ed38bfc2804a1ce24af971d481..21c5e1902e3a017c863fa77197d8155f237296d4 100644 --- a/application/models/admin/Members_model.php +++ b/application/models/admin/Members_model.php @@ -35,7 +35,7 @@ return $result = $query->row_array(); } public function get_user_contacts_by_userid($id) { - $this->db->select('contact_types.contact_type_name, contact.*'); + $this->db->select('contact_types.contact_type_name, contact.type_id AS contact_type_id, contact.*'); $this->db->where('member_id', $id); $this->db->from('contact'); $this->db->join('contact_types', 'contact_types.id=contact.type_id'); @@ -68,8 +68,13 @@ $this->db->insert('contact', $data); return true; } - public function contact_delete($id) { - $this->db->delete('contact', array('id' => $id)); + public function contact_delete($data) { + $this->db->delete('contact', $data); + return true; + } + public function contact_edit($contact_id, $data) { + $this->db->where('id', $contact_id); + $this->db->update('contact', $data); return true; } } diff --git a/application/views/admin/members/member_view.php b/application/views/admin/members/member_view.php index afb43d55a68e58030a850445abe51897ac8d1848..dab3cb3274512d63334dc3e8175901a0f0ecc655 100644 --- a/application/views/admin/members/member_view.php +++ b/application/views/admin/members/member_view.php @@ -73,7 +73,7 @@ <div class="form-group"> <div class="col-sm-4"><?= $condata['contact_type_name']; ?></div> <div class="col-sm-6"> -<!-- <button type="button" class="btn btn-info btn-sm" data-toggle="modal" data-target="#contact_edit"><i class="fa fa-edit"></i></button>--> + <button type="button" class="btn btn-info btn-sm" data-toggle="modal" data-target="#contact_edit" data-contactid="<?= $condata['id']?>" data-contactvalue="<?= $condata['value']?>" data-contact_type_id="<?= $condata['contact_type_id']?>"><i class="fa fa-edit"></i></button> <button type="button" class="btn btn-danger btn-sm" data-toggle="modal" data-target="#contact_delete" data-contactid="<?= $condata['id']?>"><i class="fa fa-trash"></i></button> <?= $condata['value']; ?></div> </div> @@ -121,12 +121,12 @@ <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Abbruch</span></button> - <h4 class="modal-title" id="myModalLabel">Kontaktdaten hinzufügen</h4> + <h4 class="modal-title" id="myModalLabel">Achtung!</h4> </div> + <?php echo form_open(base_url('admin/members/contact_delete/'.$user['id']), '' )?> <div class="modal-body"> Kontakt Eintrag wirklich löschen? - <?php echo form_open(base_url('admin/members/contact_delete/'.$user['id']), '' )?> - <input class="form-control" name="contactid" /> + <input type="hidden" class="form-control" name="contactid" id="contactid" data-cip-id="contactid" /> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">Abbruch</button> @@ -136,13 +136,57 @@ </div> </div> </div> + +<div class="modal fade" id="contact_edit" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> + <div class="modal-dialog"> + <div class="modal-content"> + <div class="modal-header"> + <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Abbruch</span></button> + <h4 class="modal-title" id="myModalLabel">Eintrag bearbeiten</h4> + </div> + <div class="modal-body"> + <?php echo form_open(base_url('admin/members/contact_edit/'.$user['id']), '' )?> + <div class="form-group"> + <div class="form-group"> + <label for="exampleInputEmail1"><b>Kontakt Typ auswählen</b></label> + <select name="contact_type_id" class="form-control"> + <?php foreach($contact_types as $contact_type): ?> + <option value="<?= $contact_type['id']; ?>"><?= $contact_type['contact_type_name']; ?></option> + <?php endforeach; ?> + </select> + </div> + </div> + <div class="form-group"> + <input type="hidden" class="form-control" name="contactid" id="contactid" data-cip-id="contactid" /> + <input type="text" class="form-control" name="contactvalue" id="contactvalue" data-cip-id="contactvalue" /> + </div> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-default" data-dismiss="modal">Abbruch</button> + <button type="submit" class="btn btn-success">Bearbeiten</button> + </div> + <?php echo form_close( ); ?> + </div> + </div> +</div> + <script> $('#contact_delete').on('show.bs.modal', function (event) { var button = $(event.relatedTarget) // Button that triggered the modal var recipient = button.data('contactid') // Extract info from data-* attributes var modal = $(this) - modal.find('.modal-title').text('New message to ' + recipient) - modal.find('.modal-body input').val(recipient) - }) + modal.find('.modal-body #contactid').val(recipient) + }); + $('#contact_edit').on('show.bs.modal', function (event) { + var button = $(event.relatedTarget) // Button that triggered the modal + var contactid = button.data('contactid') // Extract info from data-* attributes + var contactvalue = button.data('contactvalue') // Extract info from data-* attributes + var contact_type_id = button.data('contact_type_id') // Extract info from data-* attributes + + var modal = $(this) + modal.find('.modal-body #contactid').val(contactid) + modal.find('.modal-body #contactvalue').val(contactvalue) + modal.find('.modal-body select').val(contact_type_id) + }); </script> \ No newline at end of file