Skip to content
This repository has been archived by the owner on Jan 9, 2019. It is now read-only.

Commit

Permalink
Merge pull request #32 from daeks/sqlite
Browse files Browse the repository at this point in the history
sqlite
  • Loading branch information
daeks authored Mar 9, 2017
2 parents cd8e734 + 3361b26 commit cc4e922
Show file tree
Hide file tree
Showing 71 changed files with 8,853 additions and 637 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
data/
data/*
!data/README
!data/index.php
!data/cache/README
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ install:
script:
- ./vendor/bin/phpcs ./
--standard=ruleset.xml
--ignore="vendor/*,core/js/*,core/css/*"
--ignore="data/*,vendor/*,core/js/*,core/css/*"
--colors
--extensions=php,js,css
2 changes: 2 additions & 0 deletions config.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
define('DATA', BASE.DIRECTORY_SEPARATOR.'data');
define('CACHE', BASE.DIRECTORY_SEPARATOR.'data'.DIRECTORY_SEPARATOR.'cache');
define('MODULES', BASE.DIRECTORY_SEPARATOR.'modules');
define('SCRIPTS', BASE.DIRECTORY_SEPARATOR.'core'.DIRECTORY_SEPARATOR.'scripts');

define('MODULE', 'config.json');
define('URL_SEPARATOR', '/');
Expand All @@ -21,6 +22,7 @@

config::includes(INC);
session::construct();
db::instance()->construct();

class config
{
Expand Down
2 changes: 1 addition & 1 deletion core/cache.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ class cache
public static function setClientVariable($key, $val, $time = COOKIE_LIFETIME)
{
$_SESSION[$key] = $val;
setcookie($key, rawurlencode($val), time() + $time, URL_SEPARATOR);
@setcookie($key, rawurlencode($val), time() + $time, URL_SEPARATOR);
}

public static function unsetClientVariable($key)
Expand Down
98 changes: 90 additions & 8 deletions core/core.async.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,19 @@

var async = (function () {

var time;
var time = [];

var init = function () {
$(document).ajaxSend(function (event, request, settings) {
$('#loading').removeClass('hidden');
core.async.time = new Date().getTime();
core.async.time[btoa(settings.url)] = new Date().getTime();
});

$(document).ajaxComplete(function (event, request, settings) {
$('#loading').addClass('hidden');
core.async.time = (new Date().getTime() - core.async.time) / 1000;
$('#async').html('- queried in ' + core.async.time + 's');
core.async.time[btoa(settings.url)] = (new Date().getTime() - core.async.time[btoa(settings.url)]) / 1000;
$('#async').html('- queried in ' + core.async.time[btoa(settings.url)] + 's');
delete core.async.time[btoa(settings.url)];
});

$(document.body).on('click', '[data-toggle="async"]', function (e) {
Expand Down Expand Up @@ -42,12 +43,49 @@
core.message.toast('danger', true, obj.data);
}
} catch (e) {
core.message.infobox('danger', 0, e.message + data);
core.message.infobox('danger', 0, e.message + '<br>' + data);
}
});
$('.dropdown.open .dropdown-toggle').dropdown('toggle');
return false;
});


$(document.body).on('click', '[data-toggle="tab"]', function (e) {
e.preventDefault();
$('.nav').children('li').each(function () {
$(this).removeClass('active');
});
$(this).parent().addClass('active');
var loadurl = $(this).attr('data-query');
var target = $($(this).attr('data-target'));
$.get(loadurl, function (data) {
try {
var obj = $.parseJSON(data);
if (obj.status == 200) {
if (obj.event.length > 0) {
if (obj.data.length > 0) {
core.message.toast('success', false, obj.data);
}
eval(obj.event);
} else {
var data = $('<textarea/>').html(obj.data).val();
target.html(data);
core.validator.init();
core.form.init();
core.proxy.init();
}
} else if (obj.status == 500) {
core.message.toast('danger', false, obj.data);
} else {
core.message.toast('danger', true, obj.data);
}
} catch (e) {
core.message.infobox('danger', 0, e.message + '<br>' + data);
}
});
return false;
});

$('[data-toggle="select"]').on('change', function (e) {
e.preventDefault();
var loadurl = $(this).attr('data-query') + encodeURIComponent($(this).val());
Expand All @@ -74,7 +112,7 @@
core.message.toast('danger', true, obj.data);
}
} catch (e) {
core.message.infobox('danger', 0, e.message + data);
core.message.infobox('danger', 0, e.message + '<br>' + data);
}
});
return false;
Expand Down Expand Up @@ -103,8 +141,52 @@
core.message.toast('danger', true, obj.data);
}
} catch (e) {
core.message.infobox('danger', 0, e.message + data);
core.message.infobox('danger', 0, e.message + '<br>' + data);
}
$('button[data-validate="post"]').prop('disabled', true);
});
return false;
});

$(document.body).on('submit', '[data-toggle="form"]', function (e) {
e.preventDefault();
var loadurl = $(this).attr('data-query');
var target = $($(this).attr('data-target'));

var dataset = [];
$(this).find('tr').each(function () {
if ($(this).attr('id')) {
var tmp = new Object();
tmp['id'] = $(this).attr('id');
$(this).find('input').each(function () {
tmp[$(this).attr('id')] = $(this).val();
});
dataset.push(tmp);
}
});

$.post(loadurl, {data: JSON.stringify(dataset)}, function (data) {
try {
var obj = $.parseJSON(data);
if (obj.status == 200) {
if (obj.event.length > 0) {
if (obj.data.length > 0) {
core.message.toast('success', false, obj.data);
}
eval(obj.event);
} else {
var data = $('<textarea/>').html(obj.data).val();
target.html(data);
}
} else if (obj.status == 500) {
core.message.toast('danger', false, obj.data);
} else {
core.message.toast('danger', true, obj.data);
}
} catch (e) {
core.message.infobox('danger', 0, e.message + '<br>' + data);
}
$('button[data-validate="form"]').prop('disabled', true);
});
return false;
});
Expand Down
12 changes: 12 additions & 0 deletions core/core.charts.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,18 @@
var charts = (function () {
var init = function () {
$('[data-provider="gauge"]').each(function () {
if (typeof $(this).attr('height') == 'undefined') {
$(this).css('height', '150px');
} else {
$(this).css('height', $(this).attr('height') + 'px');
}

if (typeof $(this).attr('width') == 'undefined') {
$(this).css('width', '200px');
} else {
$(this).css('width', $(this).attr('width') + 'px');
}

var g = new JustGage({
id: $(this).attr('id'),
value: $(this).attr('data-query'),
Expand Down
9 changes: 9 additions & 0 deletions core/core.css
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,13 @@ body {
background: white;
cursor: inherit;
display: block;
}
.dropzone {
display: block;
outline: 2px dashed #92b0b3;
padding: 50px 20px;
text-align: center;
font-size: 20px;
font-weight: bold;
color: #d7cfcf;
}
6 changes: 5 additions & 1 deletion core/core.form.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,11 @@
var form = (function () {
var init = function () {
$('[data-provider="datepicker"]').datepicker({
format: "yyyy/mm/dd"
format: "yyyy/mm/dd"
});
$("[data-title='tooltip']").tooltip();
$("[data-title='popover']").popover({
trigger: 'hover'
});
};

Expand Down
115 changes: 115 additions & 0 deletions core/core.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
(function ($) {

var core = (function () {

var init = function () {
$.get('/modules/setup/controller.php?action=init', function (data) {
try {
var obj = $.parseJSON(data);
if (obj.status == 200) {
if (obj.data > 0) {
$('.modal-content').load('/modules/setup/dialog.php?action=sync',function (result) {
$('.modal').modal({
show:true,
backdrop: 'static',
keyboard: false
});
$('.modal').css('display', 'block');
var $dialog = $('.modal').find('.modal-dialog');
var offset = ($(window).height() - $dialog.height()) / 2;
var bottomMargin = $dialog.css('marginBottom');
bottomMargin = parseInt(bottomMargin);
if (offset < bottomMargin) {
offset = bottomMargin;
}
$dialog.css("margin-top", offset);
$('button[data-query="modal-install"]').on('click', function (event) {
event.preventDefault();
$(this).html('<i class="fa fa-spinner fa-spin"></i> ' + $(this).html());
$(this).prop('disabled', true);
core.sync();
return false;
});
});
}
} else if (obj.status == 500) {
core.toast('danger', false, obj.data);
} else {
core.toast('danger', true, obj.data);
}
} catch (e) {
core.infobox('danger', 0, e.message + data);
}
});
};

var sync = function () {
if ($('#modal-data').length > 0) {
var $form = $('#modal-data');
var $target = $($form.attr('data-target'));

$.ajax({
type: $form.attr('method'),
url: $form.attr('action'),
data: $form.serialize(),

success: function (data, status) {
try {
var obj = $.parseJSON(data);
if (obj.status == 200) {
$('.modal').modal('hide');
if (obj.data.length > 0) {
core.toast('success', false, obj.data);
}
eval(obj.event);
} else if (obj.status == 301) {
var data = $('<textarea/>').html(obj.data).val();
$target.html(data);
$(".progress-bar").addClass('active');
eval(obj.event);
}
} catch (e) {
$('.modal').modal('hide');
core.infobox('danger', 0, e.message + data);
}
}
});
}
};

var infobox = function (type, time, value) {
$('#infobox').html('<div class="alert alert-' + type + '" tabindex="-1"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button><span>' + value.replace('Unexpected token <', '').trim() + '</span></div>');
$('#infobox').show();
if (time > 0) {
setTimeout(function () {
$("#infobox").hide();
}, time);
}
};

var toast = function (type, sticky, value) {
$().toastmessage('showToast', {
text: value,
sticky: sticky,
position: 'bottom-right',
type: type
});
};

return {
init: init,
infobox: infobox,
toast: toast,
sync: sync
};
})();

$.extend(true, window, {
core: core
});

$(function () {
core.init();
});

}(jQuery));
11 changes: 7 additions & 4 deletions core/core.modal.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,22 @@

var modal = (function () {
var init = function () {
$('.modal').on('show.bs.modal', core.modal.center);
$('.modal').on('loaded.bs.modal', core.modal.center);
$('.modal').on('hidden.bs.modal', function (e) {
$('.modal').removeData('bs.modal');
$('#modal-content').html('');
$('#modal-content').html('<br>&nbsp;&nbsp;<i class="fa fa-spinner fa-spin"></i> Loading...<br><br>');
});

$(window).on('resize', function () {
$('.modal:visible').each(core.modal.center);
});

$('.modal').on('success.form.fv', function (event) {
if ($('form[data-toggle="modal"]').length > 0) {
var $form = $('form[data-toggle="modal"]');
$('button[data-query="modal-data"]').html('<i id="loading" class="fa fa-spinner fa-spin"></i> ' + $('button[data-query="modal-data"]').html());
$('button[data-query="modal-data"]').prop('disabled', true);
if ($('#modal-data').length > 0) {
var $form = $('#modal-data');
var $target = $($form.attr('data-target'));

$.ajax({
Expand Down Expand Up @@ -45,7 +48,7 @@
}
} catch (e) {
$('.modal').modal('hide');
core.message.infobox('danger', 0, e.message + data);
core.message.infobox('danger', 0, e.message + '<br>' + data);
}
}
});
Expand Down
Loading

0 comments on commit cc4e922

Please sign in to comment.