add bootstrap
This commit is contained in:
@@ -1,3 +1,82 @@
|
||||
var Tools = {
|
||||
serialize: function(sFormId)
|
||||
{
|
||||
var asForm = {};
|
||||
$.each($('#'+sFormId).serializeArray(), function(key, item){
|
||||
asForm[item.name] = item.value;
|
||||
});
|
||||
return asForm;
|
||||
},
|
||||
|
||||
ajax: function(sAction, fOnSuccess, oData, fOnFail, $Loader, sType, sDataType)
|
||||
{
|
||||
sType = sType || 'GET';
|
||||
sDataType = sDataType || 'json';
|
||||
oData = oData || {};
|
||||
var asData = {};
|
||||
|
||||
if($.type(oData)=='string') {
|
||||
asData = this.serialize(oData);
|
||||
}
|
||||
else asData = oData;
|
||||
|
||||
if($Loader)
|
||||
{
|
||||
$Loader
|
||||
.data('load_html', $Loader.html())
|
||||
.data('load_class', $Loader.attr('class'))
|
||||
.removeClassPrefix('fa-')
|
||||
.addClass('loader')
|
||||
.html($('<img>', {'class':'onlyimg', src: Config.paths.dir.theme_image+"ajax.svg"}));
|
||||
}
|
||||
|
||||
asData['a'] = sAction;
|
||||
$.ajax({
|
||||
url: oMyThoughts.consts.context.process_page,
|
||||
type: sType,
|
||||
data: asData,
|
||||
dataType: sDataType
|
||||
})
|
||||
.done(function(oData) {
|
||||
if(oData.result==oMyThoughts.consts.error) {
|
||||
if(!fOnFail) Tools.feedback('error', oData.desc);
|
||||
else fOnFail(oData.desc);
|
||||
}
|
||||
else fOnSuccess(oData.data, oData.desc);
|
||||
|
||||
if($Loader) {
|
||||
$Loader
|
||||
.removeClass()
|
||||
.addClass($Loader.data('load_class'))
|
||||
.html($Loader.data('load_html'));
|
||||
}
|
||||
})
|
||||
.fail(function(jqXHR, textStatus, errorThrown) {
|
||||
if(!fOnFail) Tools.feedback('error', textStatus+' '+errorThrown);
|
||||
else fOnFail(textStatus);
|
||||
}
|
||||
);
|
||||
},
|
||||
|
||||
getIcon: function(sIcon, bFull){
|
||||
bFull = bFull || false;
|
||||
return $('<i>', {'class': bFull?sIcon:('fal fa-'+sIcon)});
|
||||
},
|
||||
|
||||
feedback: function(sClass, sMsg, $Box)
|
||||
{
|
||||
$Box = $Box || $('#feedback');
|
||||
sMsg = sMsg || '';
|
||||
if(sClass=='error' && typeof sMsg == 'string' && sMsg=='') sMsg = 'Oops ! An unknown error occured';
|
||||
$('<div>', {'class':'alert shadow rounded alert-'+(sClass=='error'?'danger':sClass), role:'alert'})
|
||||
.append(sMsg)
|
||||
.appendTo($Box)
|
||||
.slideDown('fast')
|
||||
.delay(5000)
|
||||
.slideUp('fast', function(){$(this).remove();});
|
||||
}
|
||||
};
|
||||
|
||||
function emptyBox(element, text)
|
||||
{
|
||||
//var textarea = $('#thoughts_form textarea[name="thoughts"]');
|
||||
@@ -19,11 +98,6 @@ function setHeight(element)
|
||||
element.style.height = height+'px';
|
||||
}
|
||||
|
||||
function goTo(url)
|
||||
{
|
||||
window.location.href = url;
|
||||
}
|
||||
|
||||
function addInput(form, name, type, value)
|
||||
{
|
||||
var registerInput = document.createElement('input');
|
||||
@@ -33,26 +107,6 @@ function addInput(form, name, type, value)
|
||||
document.forms[form].appendChild(registerInput);
|
||||
}
|
||||
|
||||
/*
|
||||
texts = new Object();
|
||||
texts['thoughts'] = 'Talk to me.';
|
||||
texts['login'] = 'Nickname';
|
||||
texts['pass'] = 'Password';
|
||||
|
||||
window.onload = function ()
|
||||
{
|
||||
for (i in texts)
|
||||
{
|
||||
var id = document.getElementById(i);
|
||||
if(id)
|
||||
{
|
||||
id.addEventListener('focus', function() {emptyBox(this, texts[this.name]);}, false);
|
||||
id.addEventListener('blur', function() {emptyBox(this, texts[this.name]);}, false);
|
||||
}
|
||||
}
|
||||
};
|
||||
*/
|
||||
|
||||
function getInfo(action, fOnSuccess, vars, fOnError, sType/*, bProcessIcon*/)
|
||||
{
|
||||
if(!vars) vars = {};
|
||||
@@ -93,11 +147,8 @@ function feedback(sClass, sMsg, $Box)
|
||||
{
|
||||
$Box = $Box || $('#feedback');
|
||||
sMsg = sMsg || '';
|
||||
var sHeight = 20;
|
||||
$('.feedback').each(function(){sHeight += $(this).outerHeight() + 10;});
|
||||
if(sClass=='error' && sMsg=='') sMsg = 'Oops ! An unknown error occured';
|
||||
$('<span>', {'class':'feedback round '+sClass})
|
||||
.css('top', sHeight+'px')
|
||||
$('<div>', {'class':'alert shadow rounded alert-'+(sClass=='error'?'danger':sClass), role:'alert'})
|
||||
//.append($('<i>', {'class':'fa fa-standalone fa-'+sClass}))
|
||||
.append(addPunctuation(sMsg))
|
||||
.appendTo($Box)
|
||||
@@ -169,12 +220,39 @@ $.prototype.checkForm = function(sSelector)
|
||||
sSelector = sSelector || 'input[type="password"], input[type="text"], textarea';
|
||||
var $This = $(this);
|
||||
var bOk = true;
|
||||
$This.find(sSelector).each(function()
|
||||
var $Desc = $('<span>');
|
||||
var $Fields = $This.find(sSelector);
|
||||
|
||||
$Fields.each(function()
|
||||
{
|
||||
$This = $(this);
|
||||
bOk = bOk && $This.val()!='' && $This.val()!=$This.data('default_value');
|
||||
var sFieldValue = $This.val();
|
||||
var sFieldName = $This.attr('placeholder');
|
||||
|
||||
//Icon
|
||||
var sFieldIcon = $This.prev().find('.input-group-text').find('.fal').attr('class');
|
||||
var $FieldIcon = (sFieldIcon==undefined)?'':Tools.getIcon(sFieldIcon, true).addClass('fa-fw bold');
|
||||
|
||||
if(sFieldValue=='' || sFieldValue==$This.data('default_value')) {
|
||||
bOk = false;
|
||||
$Desc.append('Field ').append($FieldIcon).append($('<strong>').text(sFieldName)).append(' is empty');
|
||||
}
|
||||
|
||||
switch($This.attr('type')) {
|
||||
case 'password':
|
||||
var $Conf = $Fields.filter('#'+$This.attr('id')+'_conf');
|
||||
if($Conf.length!==0 && $Conf.val()!=sFieldValue){
|
||||
bOk = false;
|
||||
$Desc.append('Passwords do not match');
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
//Break loop
|
||||
if(!bOk) return false;
|
||||
});
|
||||
return bOk;
|
||||
|
||||
return {success: bOk, desc: $Desc};
|
||||
};
|
||||
|
||||
$.fn.toEm = function(settings){
|
||||
|
||||
Reference in New Issue
Block a user