MINI
C:
/
xampp
/
htdocs
/
.backend
/
dev
/
Upload File:
files >> C:/xampp/htdocs/.backend/dev/modules-generator.php
<?php defined( '_LANGSUNG' ) or die(''); include('.library/content.php'); $q_modg = $sambungan->prepare(" SELECT m.id_mod, m.parent_mod, if(m.parent_mod!=0,concat('.backend/',p.name_mod,'/',m.name_mod,'.php'),concat('.backend/',m.name_mod,'.php')) mod_path, if(m.parent_mod!=0,concat('admin/',p.name_mod,'/',m.name_mod,'.html'),concat('admin/',m.name_mod,'.html')) mod_url, if(m.parent_mod!=0,concat('adminx/',p.name_mod,'/',m.name_mod,'.html'),concat('adminx/',m.name_mod,'.html')) mod_ajax_url, if(m.parent_mod!=0,concat(p.title_mod,' - ',m.title_mod),concat(m.title_mod)) mod_title_box, m.breadcrumb_mod, m.title_mod, m.name_mod, m.order_mod, m.icon_mod FROM bet_modules m LEFT JOIN bet_modules p ON p.id_mod = m.parent_mod WHERE m.id_mod=:id_mod ORDER BY p.order_mod, m.order_mod "); $q_modg -> bindvalue(':id_mod',$_SESSION['IdModGen'],PDO::PARAM_INT); $q_modg -> execute(); $modg = $q_modg -> fetch (PDO::FETCH_ASSOC); function MainHeader(){ echo '<h1>MODULES GENERATOR</h1>'; } function MainContent() { global $modg; global $sql_details; global $sambungan; $q_table = $sambungan -> prepare(" SELECT TABLE_NAME nama_tabel FROM information_schema.TABLES WHERE TABLE_TYPE='BASE TABLE' AND TABLE_SCHEMA=:db "); $q_table -> bindValue(':db',$sql_details['db'],PDO::PARAM_STR); $q_table -> execute(); ?> <div class="row"> <div class="col-lg-12"> <div class="box"> <div class="box-header"> <h3 class="box-title">GENERATE MODUL FOR <?php echo $modg['title_mod']; ?></h3> </div> <div class="box-body"> <form id="edit" name="edit" method="post" class="form-horizontal" action=""> <div class="form-group"> <label class="control-label col-lg-4">SELECT TABLE</label> <div class="col-lg-4"> <select name="table" id="table" class="validate[required] form-control"> <option value="0">SELECT TABLE</option> <?php while ($table = $q_table ->fetch (PDO::FETCH_ASSOC)){ ?> <option value="<?php echo $table['nama_tabel']; ?>"><?php echo $table['nama_tabel']; ?></option> <?php } ?> </select> </div> </div> <div id="tfield"> </div> </form> <div class="row text-center"> <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button> <button id="save" type="button" class="btn btn-default">Save</button> </div> </div> </div> </div> </div> <?php } function HeaderCss(){ echo ' <link href="'.APP_URI.'/plugins/validationEngine/validationEngine.jquery.css" rel="stylesheet" type="text/css"/> <link href="'.APP_URI.'/plugins/datatables/datatables.css" rel="stylesheet" type="text/css"/> '; } function FooterJs(){ ?> <script> var base_ajax = "<?php echo APP_URI; ?>/adminx/dev/modules-generator.html"; $(document).ready(function(){ $("#table").on("change",function(){ var NamaTabel = $("#table").children('option:selected').val(); $.ajax({ type: "POST", url: base_ajax, data: "act=load-table&nama-tabel="+NamaTabel, success: function(data) { $("#tfield").html(data); } }); }); $("#save").on("click",function(){ var datasave = $("#edit").serializeArray(); datasave.push({ name: "act", value: "generator-save" }); $(".chkselect:checked").each(function () { IdField = $(this).attr('id'), TField = $(this).data('tfield'), LField = $(this).data('lfield'), datasave.push({ name: "T"+IdField, value: TField }); datasave.push({ name: "L"+IdField, value: LField }); }); // console.log(datasave); $.ajax({ type: "POST", url: base_ajax, data: datasave, success: function(data) { if (data === "sukses") { DtNotif("success", "Success generate data", ""); } else { DtNotif("error", data, ""); } } }); }); }); </script> <?php } if(isset($_POST['act'])) { if($_POST['act']=='load-table'){ $q_ltab = $sambungan->query("DESCRIBE ".$_POST['nama-tabel']); $fieldid = 0; echo '<div class="row text-center"><strong>DAFTAR FIELD</strong></div>'; while($column = $q_ltab->fetch(PDO::FETCH_ASSOC)){ $fType = explode("(",str_replace(")","",$column['Type'])); echo ' <div class="form-group"> <label class="control-label col-lg-4">'.$column['Field'].'</label> <div class="col-lg-2"> <div class="checkbox"> <label> <input class="chkselect" name="field['.$fieldid.']" id="field['.$fieldid.']" type="checkbox" value="'.$column['Field'].'" data-tfield="'.$fType[0].'" data-lfield="'.$fType[1].'"> </label> </div> </div> </div> '; $fieldid++; } } elseif ($_POST['act']=='generator-save'){ $filename = $modg['mod_path']; if (file_exists($filename)) { echo "The file $filename exists"; } else { $myfile = fopen($filename, "w") or die("Unable to open file!"); $txt = ' <?php defined( \'_LANGSUNG\' ) or die(\'\'); _CekAkses(\'master\'); _CekAkses(\'minstansi\'); include(\'.library/crud.php\'); $table = \'bet_account\'; $primaryKey = \'id_account\'; $columns = array( array( \'db\' => \'id_account\', \'dt\' => 0, \'field\' => \'id_account\', \'name\' => \'id_account\', \'type\' => \'int\', \'label\' => \'ID ACCOUNT\', \'skipupdate\' => true, \'skipinsert\'=>true, \'fhide\' => false ), array( \'db\' => \'name\', \'dt\' => 1, \'field\' => \'name\', \'name\' => \'name\', \'type\'=>\'text\', \'label\'=>\'NAMA PENGGUNA\', \'fieldcol\' => 6, \'validation\'=>\'validate[required]\' ), ); $joinQuery = " FROM bet_account "; $extraWhere = "id_account > 1"; function TitlePage(){ echo "'.$modg['title_mod'].'"; } function MainHeader(){ echo "<h1>'.$modg['breadcrumb_mod'].'</h1>"; } function MainContent() { global $columns; ?> <div class="row"> <div class="col-xs-12"> <div class="box"> <div class="box-header"> <h3 class="box-title"></h3> </div> <div class="box-body"> <?php echo CRUD::TableView($columns); ?> </div> </div> </div> </div> <?php } function HeaderCss(){ echo \' <link href="\'.APP_URI.\'/plugins/validationEngine/validationEngine.jquery.css" rel="stylesheet" type="text/css"/> <link href="\'.APP_URI.\'/plugins/datatables/datatables.css" rel="stylesheet" type="text/css"/> <link href="\'.APP_URI.\'/plugins/select2/select2.min.css" rel="stylesheet" type="text/css"/> <link href="\'.APP_URI.\'/plugins/datepicker/datepicker3.css" rel="stylesheet" type="text/css"/> \'; } function FooterJs(){ echo \' <script src="\'.APP_URI.\'/plugins/datatables/datatables.js" type="text/javascript"></script> <script src="\'.APP_URI.\'/plugins/accounting/accounting.js" type="text/javascript"></script> <script src="\'.APP_URI.\'/plugins/chained/jquery.chained.js" type="text/javascript"></script> <script src="\'.APP_URI.\'/plugins/validationEngine/jquery.validationEngine.js" type="text/javascript"></script> <script src="\'.APP_URI.\'/plugins/validationEngine/jquery.validationEngine-en.js" type="text/javascript"></script> <script src="\'.APP_URI.\'/plugins/select2/select2.full.min.js" type="text/javascript"></script> <script src="\'.APP_URI.\'/plugins/datepicker/bootstrap-datepicker.js" type="text/javascript"></script> \'; } function FooterScript() { global $columns; ?> <script type="text/javascript" language="javascript" class="init" > var base_ajax = "<?php echo APP_URI."/".APP_ADMINPATH."x/master/".basename(__FILE__, \'.php\').".html"; ?>"; $(document).ready(function() { $.fn.dataTable.ext.errMode = "none"; $("#example tfoot th").each(function() { var title = $(this).text(); $(this).html("<input type=\"text\" class=\"col-lg-12\" placeholder=\"" + title + "\" />"); }); var oTable = $("#example") .on("error.dt", function(e, settings, techNote, message) { DtNotif("warning", message, ""); }) .DataTable({ "autoWidth": false, "paging": true, "pagingType": "full_numbers", "stateSave": true, "processing": true, "select": true, "serverSide": true, "ajax": { "url": base_ajax, "type": "POST", "data": { "act": "read-data" } }, "scrollX": "100%", "scrollXInner": "105%", "columnDefs": [ { className: "dt-hide", "targets": [<?php CRUD::FHide($columns); ?>] }, { className: "dt-body-nowrap dt-head-nowrap", "targets": [<?php CRUD::FWrap($columns); ?>] } ], lengthMenu: [ [5, 10, 25, 50, -1], ["5 rows", "10 rows", "25 rows", "50 rows", "Show all"] ], dom: "<\"pull-left\"B><\"pull-right\"l>tr<\"pull-left\"i><\"pull-right\"p>", buttons: [ { text: "<i class=\"fa fa-file-pdf-o\"></i><span class=\"hidden-sm hidden-xs\"> PDF</span>", extend: "pdfHtml5", className: "btn btn-default", orientation: "landscape", pageSize: "A4", }, { text: "<i class=\"fa fa-file-excel-o\"></i><span class=\"hidden-sm hidden-xs\"> EXCEL</span>", extend: "excelHtml5", className: "btn btn-default", }, { text: "<i class=\"fa fa-plus\"></i> <span class=\"hidden-sm hidden-xs\">TAMBAH</span>", className: "btn btn-primary", action: function ( e, dt, node, config ){$.ajax({ type:"POST", url :base_ajax,data: "act=add-cek", success: function(data){ var result = $.parseJSON(data); if(result.status === "success"){ $.ajax({ type:"POST", url:base_ajax, data: "act=add", success: function(data){ $("#maction").html(data); $("#maction").removeClass().addClass("modal fade modal-primary"); $("#maction").modal("show"); $("#save").on("click", function(){ if($("#add").validationEngine("validate")){ var datasave = $("#add").serializeArray(); datasave.push({name: "act", value: "add-save"}); $.ajax({ type:"POST", url :base_ajax, data: datasave, success: function(data){ var result = $.parseJSON(data); if (result.status==="success"){ $("#maction").modal("hide"); DtNotif(result.status,result.message,""); oTable.draw(false); } else{ DtNotif(result.status,result.message,""); } } }); } }); $("#add").validationEngine({ showOneMessage:false, autoHidePrompt: true, autoHideDelay: 3000, promptPosition : "bottomLeft", fadeDuration: 200 }); $("#add").attr("autocomplete","off"); $(".datepicker").datepicker({autoclose: true,format: \'yyyy-mm-dd\'}); } }); } else{ DtNotif(result.status,result.message,""); } }, }); }, enabled: true }, { text: "<i class=\"fa fa-pencil\"></i> <span class=\"hidden-sm hidden-xs\">UBAH</span>", className: "btn btn-info", action: function ( e, dt, node, config ){ var yData = $.map(oTable.rows(".selected").data(), function (item) { return item[0] }); $.ajax({ type:"POST", url :base_ajax,data: "act=edit-cek&id="+yData, success: function(data){ var result = $.parseJSON(data); if(result.status === "success"){ $.ajax({ type:"POST", url:base_ajax, data: "act=edit", success: function(data){ $("#maction").html(data); $("#maction").removeClass().addClass("modal fade modal-info"); $("#maction").modal("show"); $("#save").on("click", function(){ if($("#edit").validationEngine("validate")){ var datasave = $("#edit").serializeArray(); datasave.push({name: "act", value: "edit-save"}); $.ajax({ type:"POST", url :base_ajax, data: datasave, success: function(data){ var result = $.parseJSON(data); if (result.status==="success"){ $("#maction").modal("hide"); DtNotif(result.status,result.message,""); oTable.draw(false); } else{ DtNotif(result.status,result.message,""); } } }); } }); $("#edit").validationEngine({ showOneMessage:false, autoHidePrompt: true, autoHideDelay: 3000, promptPosition : "bottomLeft", fadeDuration: 200 }); $("#edit").attr("autocomplete","off"); $(".datepicker").datepicker({autoclose: true,format: \'yyyy-mm-dd\'}); } }); } else{ DtNotif(result.status,result.message,""); } }, }); }, enabled: false }, { text: "<i class=\"fa fa-trash\"></i> <span class=\"hidden-sm hidden-xs\">HAPUS</span>", className: "btn btn-warning", action: function ( e, dt, node, config ){ if(oTable.rows(".selected").data().length>1){ var yData = $.map(oTable.rows(".selected").data(), function (item) { return item[0] }); $.ajax({ type:"POST", url :base_ajax,data: "act=deletem-cek&id="+yData, success: function(data){ var result = $.parseJSON(data); if(result.status == "success"){ $.ajax({ type:"POST", url:base_ajax, data: "act=delete", success: function(data){ $("#maction").html(data); $("#maction").removeClass().addClass("modal fade modal-warning"); $("#maction").modal("show"); $("#save").on("click", function(){ if($("#deletem").validationEngine("validate")){ var datasave = $("#delete").serializeArray(); datasave.push({name: "act", value: "deletem-save"}); $.ajax({ type:"POST", url :base_ajax, data: datasave, success: function(data){ var result = $.parseJSON(data); if (result.status==="success"){ $("#maction").modal("hide"); DtNotif(result.status,resut.message,""); oTable.draw(false); } else{ DtNotif(result.status,result.message,""); } } }); } }); $("#deletem").validationEngine({ showOneMessage:false, autoHidePrompt: true, autoHideDelay: 3000, promptPosition : "bottomLeft", fadeDuration: 200 }); $("#deletem").attr("autocomplete","off"); } }); } else{ DtNotif(result.status,result.message,""); } }, }); } else { var yData = $.map(oTable.rows(".selected").data(), function (item) { return item[0] }); $.ajax({ type:"POST", url :base_ajax,data: "act=delete-cek&id="+yData, success: function(data){ var result = $.parseJSON(data); if(result.status === "success"){ $.ajax({ type:"POST", url:base_ajax, data: "act=delete", success: function(data){ $("#maction").html(data); $("#maction").removeClass().addClass("modal fade modal-warning"); $("#maction").modal("show"); $("#save").on("click", function(){ if($("#delete").validationEngine("validate")){ var datasave = $("#delete").serializeArray(); datasave.push({name: "act", value: "delete-save"}); $.ajax({ type:"POST", url :base_ajax, data: datasave, success: function(data){ var result = $.parseJSON(data); if (result.status==="success"){ $("#maction").modal("hide"); DtNotif(result.status,result.message,""); oTable.draw(false); } else{ DtNotif(result.status,result.message,""); } } }); } }); $("#delete").validationEngine({ showOneMessage:false, autoHidePrompt: true, autoHideDelay: 3000, promptPosition : "bottomLeft", fadeDuration: 200 }); $("#delete").attr("autocomplete","off"); } }); } else{ DtNotif(result.status,result.message,""); } }, }); } }, enabled: false }, { text: "<i class=\"fa fa-refresh\"><span class=\"hidden-sm hidden-xs\"> REFRESH</span</i>", className: "btn btn-default", action: function (e,dt,node,config){ function fnResetAllFilters(){ oTable.columns().eq(0).each(function(colIdx){ $("input", oTable.column(colIdx).footer()).val(""); oTable.columns(colIdx).search("", true ); }); oTable.search("", true ).draw(); } fnResetAllFilters(); } }, { text: "<i class=\"fa fa-table\"><span class=\"hidden-sm hidden-xs\"> KOLOM</span></i>", extend: "colvis", className: "btn btn-default", collectionLayout: "fixed two-column" }, ], language: { "emptyTable": "Data tidak tersedia", "info": "Menampilkan _START_ - _END_ dari _TOTAL_ data", "infoEmpty": "Tidak ada data yang ditampilkan", "infoFiltered": " - di saring dari _MAX_ data", "decimal": ",", "thousands": ".", "lengthMenu": "Menampilkan _MENU_ data", "loadingRecords": "Silahkan tunggu - loading...", "processing": "Silahkan tunggu, processing....", "search": "Menyaring data</em>:", "search": "Apply filter _INPUT_ to table", "zeroRecords": "No records to display", buttons: { colvis: "Atur Kolom" }, paginate: { "first": "<i class=\"fa fa-angle-double-left\"></i><span class=\"hidden-xs hidden-sm\"> First page</span>", "last": "<i class=\"fa fa-angle-double-right\"></i><span class=\"hidden-xs hidden-sm\"> Last page</span>", "next": "<i class=\"fa fa-angle-right\"></i><span class=\"hidden-xs hidden-sm\"> Next page</span>", "previous": "<i class=\"fa fa-angle-left\"></i><span class=\"hidden-xs hidden-sm\"> Previous page</span>" } } }); oTable.on("select", function(){ if(oTable.rows(".selected").data().length==0){ oTable.button(3).enable(false); oTable.button(4).enable(false); } else if(oTable.rows(".selected").data().length==1){ oTable.button(3).enable(true); oTable.button(4).enable(true); } else{ oTable.button(3).enable(false); oTable.button(4).enable(false); } }); oTable.on("deselect", function(){ if(oTable.rows(".selected").data().length==0){ oTable.button(3).enable(false); oTable.button(4).enable(false); } else if(oTable.rows(".selected").data().length==1){ oTable.button(3).enable(true); oTable.button(4).enable(true); } else{ oTable.button(3).enable(false); oTable.button(4).enable(false); } }); oTable.columns().every(function() { var that = this; $("input", this.footer()).on("keyup change", function(e) { if (that.search() !== this.value && e.keyCode == 13) { that .search(this.value) .draw(); } }); }); }); </script> <?php } if(isset($_POST[\'act\']) && !empty($_POST[\'act\'])){ if($_POST[\'act\']==\'add-cek\'){ $response = array( \'status\' => \'success\' ); echo json_encode($response); } elseif($_POST[\'act\']==\'add\'){ CRUD::ModalAddForm2("INPUT DATA", $table, $primaryKey, \'\', \'int\', $columns, \'xl\', 1); } elseif($_POST[\'act\']==\'add-save\'){ CRUD::InsertData($table,$columns); } elseif($_POST[\'act\']==\'edit-cek\'){ $_SESSION[\'Edit\'.$table]=CleanId($_POST[\'id\']); $response = array( \'status\'=>\'success\' ); echo json_encode($response); } elseif($_POST[\'act\']==\'edit\'){ echo CRUD::ModalEditForm2("EDIT DATA", $table, $primaryKey, $_SESSION[\'Edit\'.$table], \'int\', $columns, \'xl\', 1); } elseif($_POST[\'act\']==\'edit-save\'){ if(CRUD::UpdateData($table,$primaryKey,$_SESSION[\'Edit\'.$table],\'int\',$columns)){ $response = array( \'status\' => \'success\', \'message\' => \'Success update data\' ); echo json_encode($response); }else{ CRUD::UpdateData($table,$primaryKey,$_SESSION[\'Edit\'.$table],\'int\',$columns); } } elseif($_POST[\'act\']==\'delete-cek\'){ $_SESSION[\'Delete\'.$table]=CleanId($_POST[\'id\']); $response = array( \'status\'=>\'success\' ); echo json_encode($response); } elseif($_POST[\'act\']==\'delete\'){ echo CRUD::ModalDeleteForm(\'DELETE DATA\',$table,$primaryKey,$_SESSION[\'Delete\'.$table],\'int\',$columns); } elseif($_POST[\'act\']==\'delete-save\'){ if(CRUD::DeleteData($table,$primaryKey,$_SESSION[\'Delete\'.$table],\'int\',$columns)){ $response = array( \'status\' => \'success\', \'message\' => \'Success delete data\' ); echo json_encode($response); }else{ CRUD::DeleteData($table,$primaryKey,$_SESSION[\'Delete\'.$table],\'int\',$columns); } } elseif($_POST[\'act\']==\'detail-cek\'){ $_SESSION[\'Detail\'.$table]=CleanId($_POST[\'id\']); $response = array( \'status\'=>\'success\' ); echo json_encode($response); } elseif($_POST[\'act\']==\'read-data\'){ $response = CRUD::simple($sql_details, $table, $primaryKey, $columns, $joinQuery, $extraWhere); echo json_encode($response); } else { $response = array( \'status\'=>\'error\', \'message\'=>\'Unknown action\' ); echo json_encode($response); } } ?> '; fwrite($myfile, $txt); fclose($myfile); echo 'sukses'; } } }
Copyright ©2021 || Defacer Indonesia