clipbucket/upload/admin_area/styles/cbv3/layout/functions.js
Arslan Hassan ea10f2989b Added : New Category System inc SQL updates
Added : Amplify 
Added : bootstrap and jQuery UI
Added : Amlpify on front-end
Added : Category iCons
Updated : Admin Area Template
2012-05-19 13:42:45 +00:00

326 lines
No EOL
7.5 KiB
JavaScript

/**
*Function used to display an error message popup box
*/
function displayError(err)
{
$('#error .modal-body p').html('');
$.each(err,function(index,data){
$('#error .modal-body p').append(data+'<br />');
})
$('#error').modal('show');
}
/**
*Function used to display an error message popup box
*/
function displayMsg(msg)
{
$('#msg .modal-body p').html('');
$.each(msg,function(index,data){
$('#msg .modal-body p').append(data+'<br />');
})
$('#msg').modal('show');
}
/**
* toggles the sidebar for widgets
* @param object
*/
function toggleSidebar($obj)
{
$('.sidebar').hide();
var text = $($obj).text();
var ref = $($obj).attr('ref');
$('#sidebar-dd-text').text(text);
$('#'+ref).show();
}
/**
* Create a widget inside the sidebar so that it can be used
*/
function createWidget($widgetId,$sideBarId)
{
var $widget = $('#'+$widgetId);
var $sidebar = $('#'+$sideBarId);
var $widgetList = $('#'+$sideBarId+' .widgets-list');
var $widgetTitle = $('#'+$widgetId+' .admin-widget-box-title').text();
$sideBarId = $('#'+$sideBarId+' input[name=sidebar_id]').val();
var $sideBarTitle = $('a[ref='+$sideBarId+']').text();
if($('#'+$widgetId+'-'+$sideBarId).html())
{
alert($widgetTitle+' is already in '+$sideBarTitle)
return false;
}
var $newWidget = '<div class="widget-bar" id="'+$widgetId+'-'+$sideBarId+'" >';
$newWidget += '<div class="btn-group">';
$newWidget += '<span class="btn widget-btn-long relative">';
$newWidget += '<img src="'+imageurl+'/loaders/1.gif"';
$newWidget += 'class="loader absolute" style="left:5px"/>';
$newWidget += $widgetTitle+'</span>';
$newWidget += '<button class="btn dropdown-toggle"';
$newWidget += ' data-toggle="modal" ';
$newWidget += ' data-target="#'+$widgetId+'-'+$sideBarId+'-modal" ';
$newWidget += '><i class="caret"></i></button>';
$newWidget += '</div>';
$newWidget += '<input type="hidden" name="widgets[]" value="'+$widgetId+'"/>';
$newWidget += '</div>';
/*Widget Modal
var WidgetModal = '<div class="modal hide fade"';
WidgetModal += 'id="'+$widgetId+'-'+$sideBarId+'-modal">';
WidgetModal +=$('#'+$widgetId+'--modal').html();
WidgetModal +='</div>'
//Append widget...*/
$widgetList.append($newWidget);
saveAndFetch($sideBarId,$widgetId);
return true;
}
/**
* Save Sidebar ..
*/
function saveSidebar($Id,$widgetId)
{
var FormData = $('#'+$Id+'-form').serialize();
FormData = FormData + '&mode=update-sidebar';
amplify.request( "update-sidebar",FormData,
function( data ) {
}
);
}
/**
* Save and fetch widget form as well....
*/
function saveAndFetch($Id,$widgetId)
{
var FormData = $('#'+$Id+'-form').serialize();
FormData = FormData + '&mode=update-sidebar&fetch-widget='+$widgetId;
amplify.request("update-sidebar",FormData,
function(data){
$('#modal-forms-'+$Id).append(data.data);
$('#'+$widgetId+'-'+$Id+' .loader' ).hide();
}
);
}
/**
* Save widget
*/
function saveWidget($bttn,$id)
{
$($bttn).attr('disabled','disabled');
$($bttn).addClass('disabled');
$($bttn).text('Saving...');
var FormData = $('#'+$id+'-form').serialize();
FormData = FormData+'&mode=update-widget';
amplify.request("update-sidebar",FormData,
function(data){
$($bttn).removeAttr('disabled');
$($bttn).removeClass('disabled');
$($bttn).text('Save');
$($bttn).prev().trigger('click');
}
);
}
/**
* Remove widget from sidebar...
*/
function deleteWidget($widgetId,$sidebarId){
if($('#'+$widgetId+'-'+$sidebarId).html())
{
$('#'+$widgetId+'-'+$sidebarId).remove();
saveSidebar($sidebarId);
$('#'+$widgetId+'-'+$sidebarId+'-modal').modal('hide').remove();
}
}
/**
* Add Category..
*/
function add_category()
{
var formData = $('#add-category').serialize();
formData += '&mode=add_category';
loading('add-category');
amplify.request("categories",formData,
function(data){
if(data.err)
{
displayError(data.err);
}else if(data.data)
{
$('#categories-list').append(data.data);
$('#category-'+data.cid).hide().fadeIn('slow');
loading('add-category','hide');
scrollTo('#category-'+data.cid);
}
}
);
}
/**
* Scroll to an elemet
*/
function scrollTo($element){
$('html, body').animate({
scrollTop: $($element).offset().top
}, 'fast');
}
/**
* Delete category
* @param cid STRING
*/
function delete_category(cid)
{
amplify.request("categories",{cid : cid,'mode' : 'delete_category'},
function(data){
if(data.err)
{
displayError(data.err);
}else
{
$('#category-'+cid).fadeOut();
}
}
);
}
/**
* Make Default
* @param cid STRING
*/
function make_default(cid,category_name)
{
amplify.request("categories",{cid : cid,'mode' : 'make_default','name':category_name},
function(data){
if(data.err)
{
displayError(data.err);
}else
{
displayMsg(data.msg)
}
}
);
}
/**
* function used to hide or show loading pointer
*
*/
function loading_pointer(ID,toDo)
{
var pointer = $('#'+ID+'-loader');
if(toDo=='hide')
{
pointer.hide();
}
else{
pointer.show();
}
}
function loading(ID,ToDo)
{
return loading_pointer(ID,ToDo)
}
/**
* edit category...
*/
function edit_category(id)
{
amplify.request("categories",{'mode' : 'edit_category',cid:id},
function(data){
if(data.success)
{
$('#edit-category-modal .form-basic').html(data.template);
$('#edit-category-modal h3').html(data.title);
$('#edit-category-modal .update-message').html('');
$('#edit-category-modal').modal('show');
}else
if(data.err)
displayError(data.err);
}
);
}
/**
* Change Category
* @param id INT
*/
function save_category(id)
{
$('#save-category-button').addClass('disable');
loading('save-category');
var formData = $('#edit-category').serialize();
formData += '&mode=save_category';
amplify.request("categories",formData,
function(data){
if(data.err)
$('#edit-category-modal .update-message').html('<div class="alert alert-danger">'+data.err+'</div>')
else
$('#edit-category-modal .update-message').html('<div class="alert alert-success">'+data.msg+'</div>')
loading('save-category','hide');
$('#save-category-button').removeClass('disable');
}
);
}
/**
* Update Order
*
* @param id INT
* @param order INT
* @param type STRING
*/
function update_order(id,order,type)
{
if(type=='category')
var amplify_type = 'categories';
loading(type+'-'+id);
amplify.request(amplify_type,{"mode":"update_order","cid":id,'order':order},
function(data){
if(data.err)
displayError(data.err);
loading(type+'-'+id,"hide");
}
);
}