add columns, bugs fixed, column type for change, add row /2

1.0
Javier Álvarez Medina 14 years ago
parent f780a7b246
commit 193b1c36ba

@ -114,7 +114,7 @@
<div class="select">
<label>LATITUDE COLUMN</label>
<span class="select latitude">
<a id="latitude" class="option" href="#" c="">Retreiving columns...</a>
<a id="latitude" class="option" href="#" c="">Retrieving columns...</a>
<div class="select_content">
<ul class="scrollPane"></ul>
</div>
@ -123,7 +123,7 @@
<div class="select longitude last">
<label>LONGITUDE COLUMN</label>
<span class="select">
<a id="longitude" class="option" href="#" c="">Retreiving columns...</a>
<a id="longitude" class="option" href="#" c="">Retrieving columns...</a>
<div class="select_content">
<ul class="scrollPane"></ul>
</div>
@ -133,6 +133,7 @@
<li class="disabled"><a>This is an address column</a></li>
<li class="disabled"><a>KML or PostGIS geometry</a></li>
</ul>
<p class="error">You have to select latitude and longitude</p>
</span>
<span class="bottom">
<a href="#close_window" class="cancel">cancel</a>
@ -160,6 +161,33 @@
</span>
</div>
</div>
<div class="column_window">
<a href="#close_window" class="close_delete"></a>
<div class="inner_">
<span class="top">
<h3>Create a new column</h3>
<p>Just select the type of the column and write the name of it.</p>
<div class="options">
<label>COLUMN NAME</label>
<input type="text" value=""/>
<label>COLUMN TYPE</label>
<span class="select">
<a class="option" href="#">Retrieving types...</a>
<div class="select_content">
<ul class="scrollPane"></ul>
</div>
</span>
</div>
<p class="error">You have to select a column type</p>
</span>
<span class="bottom">
<a href="#close_window" class="cancel">cancel</a>
<a href="#add_column" class="column_add">Add column</a>
</span>
</div>
</div>
</div>
<% end %>

@ -21,6 +21,7 @@
(function( $ ){
var first = true;
var table;
var loading = false;
var minPage = 0;
@ -40,6 +41,7 @@
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
init : function() {
return this.each(function(){
if (first) !first;
table = $(this)[0];
methods.getData(defaults, 'next');
methods.keepSize();
@ -120,11 +122,10 @@
var column_types = '<span class="col_types">' +
'<p>'+element[1]+'</p>' +
'<ul>' +
'<li class="selected"><a href="#">String</a></li>' +
'<li><a href="#">Number</a></li>' +
'<li><a href="#">Date</a></li>' +
'<li><a href="#">Lat/Lng</a></li>' +
'<li><a href="#">Geometry</a></li>' +
'<li><a href="#String">String</a></li>' +
'<li><a href="#Number">Number</a></li>' +
'<li><a href="#Date">Date</a></li>' +
'<li><a href="#Boolean">Boolean</a></li>' +
'</ul>' +
'</span>';
@ -145,10 +146,10 @@
'<div class="line"></div>'+
'<h5>CREATE</h5>' +
'<ul>' +
'<li class="last"><a href="#">Add new column</a></li>' +
'<li class="last"><a href="#add_column" class="add_column">Add new column</a></li>' +
'</ul>' +
'</span>';
thead += '<th>'+
thead += '<th c="'+element[0]+'" type="'+element[1]+'">'+
'<div '+((index==0)?'style="width:75px"':' style="width:'+cell_size+'px"') + '>'+
'<span class="long">'+
'<h3 class="'+((element[0]=="cartodb_id" || element[0]=="created_at" || element[0]=="updated_at")?'static':'')+'">'+element[0]+'</h3>'+
@ -167,15 +168,23 @@
});
thead += "</thead></tr>";
$(table).append(thead);
if (first) {
first = false;
//Print correct column types
methods.getColumnTypes();
//Scroll event
methods.addScroll();
//Scroll event
methods.addScroll();
//Cell click event
methods.bindCellEvents();
//Cell click event
methods.bindEvents();
//Create elements
methods.createElements();
//Create elements
methods.createElements();
}
closeAllWindows();
},
@ -203,7 +212,7 @@
'<div class="line"></div>'+
'<h5>CREATE</h5>' +
'<ul>' +
'<li class="last"><a href="#">Add new row</a></li>' +
'<li class="last"><a href="#" class="add_row">Add new row</a></li>' +
'</ul>' +
'</span>';
tbody += '<tr r="'+element.cartodb_id+'"><td class="first" r="'+ element.cartodb_id +'"><div><a href="#" class="options">options</a>'+options_list+'</div></td>';
@ -225,11 +234,30 @@
} else {
(direction=="previous")?$(table).children('tbody').prepend(tbody):$(table).children('tbody').append(tbody);
}
methods.checkReuse(direction);
},
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// GET COLUMN TYPES AND PRINT THEM
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
getColumnTypes: function() {
$.ajax({
method: "GET",
url: '/api/json/column_types',
success: function(data) {
$('span.col_types').each(function(index,element){
$(element).children('ul').children('li').remove();
for (var i = 0; i<data.length; i++) {
$(element).children('ul').append('<li><a href="#'+data[i]+'">'+data[i]+'</a></li>');
}
});
}
});
},
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// CHECK COLUMNS USED FOR REUSING
@ -277,8 +305,8 @@
'<div class="general_options">'+
'<ul>'+
'<li><a class="sql" href="#"><span>SQL</span></a></li>'+
'<li><a href="#"><span>Add row</span></a></li>'+
'<li><a href="#"><span>Add column</span></a></li>'+
'<li><a href="#add_row" class="add_row"><span>Add row</span></a></li>'+
'<li><a href="#add_column" class="add_column"><span>Add column</span></a></li>'+
'<li><a href="#"><span class="dropdown">Views (2)</span></a></li>'+
'<li class="other"><a href="#"><span class="dropdown">Other queries (2)</span></a></li>'+
'</ul>'+
@ -335,7 +363,7 @@
$(table).parent().append(
'<div class="empty_table">'+
'<h5>Add some rows to your table</h5>'+
'<p>You can <a href="#">add it manually</a> or <a href="#">import a file</a></p>'+
'<p>You can <a class="add_row" href="#add_row">add it manually</a> or <a href="#">import a file</a></p>'+
'</div>'
);
methods.resizeTable();
@ -343,6 +371,91 @@
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// CREATE NEW ROW
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
addRow: function() {
//Tabla desactivada
//Ver si es vacía o no
if ($('div.empty_table').length>0) {
$('div.empty_table').remove();
$.ajax({
method: "GET",
url: '/api/json/tables/'+table_id+'/schema',
success: function(data) {
var options_list = '<span>' +
'<h5>EDIT</h5>' +
'<ul>' +
'<li><a href="#">Duplicate row</a></li>' +
'<li><a href="#">Delete row</a></li>' +
'</ul>' +
'<div class="line"></div>'+
'<h5>CREATE</h5>' +
'<ul>' +
'<li class="last"><a href="#" class="add_row">Add new row</a></li>' +
'</ul>' +
'</span>';
var row = '<tbody style="padding-top:52px"><tr><td class="first"><div><a href="#" class="options">options</a>'+options_list+'</div></td>';
for (var i = 0; i<data.length; i++) {
row += '<td '+((data[i][0]=="cartodb_id" || data[i][0]=="created_at" || data[i][0]=="updated_at")?'class="special"':'')+' c="'+ data[i][0] +'"><div '+((data[i][0]=='cartodb_id')?'':' style="width:'+cell_size+'px"') + '>'+((data[i][0]=="cartodb_id" || data[i][0]=="created_at" || data[i][0]=="updated_at")?'You cannot modify this cell':'')+'</div></td>';
}
var start = row.lastIndexOf('"width:');
var end = row.lastIndexOf('px"');
row = row.substring(0,start) + '"width:' + last_cell_size + row.substring(end);
row += '</tr></tbody>';
$(table).append(row);
}
});
} else {
//Si no es vacía - ir a la última página, desactivar tabla
}
//Activamos la tabla
enabled = true;
},
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// CREATE NEW COLUMN
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
addColumn: function(name,type) {
var params = {};
params['what'] = "add";
params['column'] = {};
params['column']['name'] = sanitizeText(name);
params['column']['type'] = type.charAt(0).toUpperCase() + type.slice(1);
methods.updateTable('/update_schema',params,params.column,null,"new_column");
},
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// DELETE ROWS
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
deleteRows: function() {
},
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// DELETE COLUMNS
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
deleteColumns: function() {
},
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ADD SCROLL PAGINATE BINDING
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
@ -425,9 +538,9 @@
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// BIND CELL EVENTS
// BIND EVENTS
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
bindCellEvents: function() {
bindEvents: function() {
///////////////////////////////////////
// DOUBLE CLICK -> Open editor //
@ -680,12 +793,11 @@
});
///////////////////////////////////////
// Header options events //
///////////////////////////////////////
//Head options even
$('thead tr a.options').click(function(ev){
$('thead tr a.options').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
@ -711,14 +823,19 @@
$('body').unbind('click');
}
});
$('thead tr a.column_type').click(function(ev){
$('thead tr a.column_type').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
$('thead tr th div a.options').removeClass('selected');
$('thead tr th div span.col_ops_list').hide();
$('thead tr span.col_types').hide();
var position = $(this).position();
$(this).parent().parent().children('span.col_types').find('li').removeClass('selected');
var column_type = $(this).parent().parent().children('p.long').children('a').text();
column_type = column_type.charAt(0).toUpperCase() + column_type.slice(1);
$(this).parent().parent().children('span.col_types').children('p').text(column_type);
$(this).parent().parent().children('span.col_types').children('ul').children('li').children('a:contains("'+column_type+'")').parent().addClass('selected');
$(this).parent().parent().children('span.col_types').css('top',position.top-5+'px');
$(this).parent().parent().children('span.col_types').show();
$('body').click(function(event) {
if (!$(event.target).closest('thead tr span.col_types').length) {
@ -729,11 +846,29 @@
};
});
});
$('thead tr th div h3,thead tr th div input,thead tr span.col_types,thead tr span.col_ops_list').click(function(ev){
$('span.col_types ul li a').livequery('click',function(){
var parent_element = $(this).closest('span.col_types').parent().children('p.long').children('a');
if ($(this).text().toLowerCase()!=parent_element.text()) {
var old_value = parent_element.text();
var new_value = $(this).text().toLowerCase();
var column = $(this).closest('th').attr('c');
parent_element.text(new_value);
var params = {};
params['what'] = "modify";
params['column'] = {};
params['column']['name'] = column;
params['column']['type'] = new_value;
methods.updateTable('/update_schema',params,new_value,old_value,"column_type");
}
$('thead tr span.col_types').hide();
});
$('thead tr th div h3,thead tr th div input,thead tr span.col_types,thead tr span.col_ops_list').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
});
$('thead tr th div h3').dblclick(function(){
$('thead tr th div h3').livequery('dblclick',function(){
var title = $(this);
var input = $(this).parent().children('input');
input.attr('value',title.text());
@ -776,28 +911,28 @@
});
$('thead a.rename_column').click(function(ev){
$('thead a.rename_column').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
$(this).closest('div').find('a.options').removeClass('selected');
$(this).closest('div').find('span.col_ops_list').hide();
$(this).closest('div').find('h3').trigger('dblclick');
});
$('thead a.change_data_type').click(function(ev){
$('thead a.change_data_type').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
$(this).closest('div').find('a.options').removeClass('selected');
$(this).closest('div').find('span.col_ops_list').hide();
$(this).closest('div').find('a.column_type').trigger('click');
});
$('thead a.delete_column').click(function(ev){
$('thead a.delete_column').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
$(this).closest('div').find('a.options').removeClass('selected');
$(this).closest('div').find('span.col_ops_list').hide();
});
//TODO change data type list values
$('thead tr th').click(function(ev){
$('thead tr th').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
$(this).find('a.options').trigger('click');
@ -807,14 +942,15 @@
///////////////////////////////////////
// Georeference window events //
///////////////////////////////////////
$('a.open_georeference,p.geo').click(function(ev){
$('a.open_georeference,p.geo').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
enabled = false;
$('div.column_window').hide();
$('div.georeference_window span.select').addClass('disabled');
$('div.georeference_window span.select a:eq(0)').text('Retreiving columns...').attr('c','');
$('div.georeference_window span.select a:eq(0)').text('Retrieving columns...').attr('c','');
$('div.georeference_window a.confirm_georeference').addClass('disabled');
$('div.georeference_window span.select').removeClass('clicked');
@ -854,11 +990,10 @@
}
$('div.georeference_window span.select:eq(1) ul').append('<li><a href="#no_geo">Empty</a></li>');
$('div.georeference_window span.select:eq(0) ul').append('<li><a href="#no_geo">Empty</a></li>');
$('div.georeference_window span.select').removeClass('disabled');
$('div.georeference_window span.select a.option').each(function(i,ele){
if ($(ele).text()=="Retreiving columns...") {
if ($(ele).text()=="Retrieving columns...") {
$(ele).text('Select a column').attr('c','');
}
});
@ -871,7 +1006,7 @@
$('div.mamufas').fadeIn();
});
$('span.select a.option').click(function(ev){
$('div.georeference_window span.select a.option').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
if ($(this).parent().hasClass('clicked')) {
@ -887,7 +1022,7 @@
$(this).parent().find('ul').jScrollPane();
}
});
$('span.select ul li a').livequery('click',function(ev){
$('div.georeference_window span.select ul li a').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
$(this).closest('span.select').children('a.option').text($(this).text());
@ -914,7 +1049,7 @@
$('span.select:eq('+other_index+') ul li a:contains("'+$(this).text()+'")').parent().addClass('choosen');
}
});
$('a.confirm_georeference').click(function(ev){
$('a.confirm_georeference').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
var latitude = $('a#latitude').attr('c');
@ -924,24 +1059,129 @@
params['lat_column'] = (latitude=="Empty")? "nil" : latitude;
params['lon_column'] = (longitude=="Empty")? "nil" : longitude;
methods.updateTable("/set_geometry_columns",params,null,null,'update_geometry');
}
} else {
$('div.georeference_window p.error').text('You have to select latitude and longitude');
$('div.georeference_window p.error').css('opacity',0);
$('div.georeference_window p.error').css('display','block');
$('div.georeference_window p.error').fadeTo(300,1);
$('div.georeference_window p.error').delay(3000).fadeTo(300,0,function(){
$('div.georeference_window p.error').css('display','none');
});
}
});
$('div.mamufas div.georeference_window a.close_delete').click(function(ev){
$('div.mamufas div.georeference_window a.close_delete').livequery('click',function(ev){
ev.preventDefault();
ev.stopPropagation();
enabled = true;
closeAllWindows();
});
///////////////////////////////////////
// Add row events //
///////////////////////////////////////
$('a.add_row').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
methods.addRow();
});
///////////////////////////////////////
// Add column events //
///////////////////////////////////////
$('a.add_column').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
$('div.mamufas').fadeOut('fast',function(){
$('div.mamufas div.delete_window').hide();
$('body').trigger('click');
enabled = false;
$('div.column_window span.select').addClass('disabled');
$('div.column_window span.select a:eq(0)').text('Retreiving types...').attr('type','');
$('div.column_window a.column_add').addClass('disabled');
$('div.column_window span.select').removeClass('clicked');
$.ajax({
method: "GET",
url: '/api/json/column_types',
success: function(data) {
//Remove ScrollPane
var custom_scrolls = [];
$('.scrollPane').each(function(){
custom_scrolls.push($(this).jScrollPane().data().jsp);
});
$.each(custom_scrolls,function(i) {
this.destroy();
});
$('div.column_window span.select ul li').remove();
for (var i = 0; i<data.length; i++) {
$('div.column_window span.select ul').append('<li><a href="#'+data[i]+'">'+data[i]+'</a></li>');
}
$('div.column_window span.select').removeClass('disabled');
$('div.column_window span.select a.option').each(function(i,ele){
if ($(ele).text()=="Retreiving types...") {
$(ele).text('Select a type').attr('type','');
}
});
$('div.column_window a.column_add').removeClass('disabled');
}
});
var document_events = $.data( $(document).get(0), 'events' ).click;
for (var i=0; i<document_events.length; i++) {
if (document_events[i].type=="scroll") {
return false;
}
$('div.mamufas div.column_window').show();
$('div.mamufas').fadeIn();
//methods.addColumn();
});
$('div.column_window span.select a.option').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
if ($(this).parent().hasClass('clicked')) {
$(this).parent().removeClass('clicked');
} else {
$('div.column_window span.select').removeClass('clicked');
$(document).bind('click',function(ev){
if (!$(ev.target).closest('span.select').length) {
$('div.column_window span.select').removeClass('clicked');
};
});
$(this).parent().addClass('clicked');
$(this).parent().find('ul').jScrollPane();
}
methods.addScroll();
});
$('div.column_window span.select ul li a').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
$(this).closest('span.select').children('a.option').text($(this).text());
$(this).closest('span.select').children('a.option').attr('type',$(this).text());
$('div.column_window span.select').removeClass('clicked');
});
$('a.column_add').livequery('click',function(ev){
ev.stopPropagation();
ev.preventDefault();
if ($('div.column_window input').attr('value')!='' && $('div.column_window a.option').attr('type')!='') {
methods.addColumn($('div.column_window input').attr('value'),$('div.column_window a.option').attr('type'));
$('div.column_window input').attr('value','');
} else {
if ($('div.column_window input').attr('value')=='' && $('div.column_window a.option').attr('type')=='') {
$('div.column_window p.error').text('You have to select a type and write a name.');
} else {
if ($('div.column_window input').attr('value')=='') {
$('div.column_window p.error').text('You have to write a name.');
} else {
$('div.column_window p.error').text('You have to select a column type.');
}
}
$('div.column_window p.error').css('opacity',0);
$('div.column_window p.error').css('display','block');
$('div.column_window p.error').fadeTo(300,1);
$('div.column_window p.error').delay(3000).fadeTo(300,0,function(){
$('div.column_window p.error').css('display','none');
});
}
});
@ -960,7 +1200,6 @@
});
///////////////////////////////////////
// Move table -> left/right //
///////////////////////////////////////
@ -1066,7 +1305,11 @@
methods.successRequest(params,new_value,old_value,type);
},
error: function(e, textStatus) {
requests_queue.responseRequest(requestId,'error',$.parseJSON(e.responseText).errors[0]);
try {
requests_queue.responseRequest(requestId,'error',$.parseJSON(e.responseText).errors[0]);
} catch (e) {
requests_queue.responseRequest(requestId,'error','Seems like you don\'t have Internet connection');
}
methods.errorRequest(params,new_value,old_value,type);
}
});
@ -1085,6 +1328,9 @@
$('thead tr th h3:contains('+params.lat_column+')').parent().append('<p class="geo latitude">geo</p>');
$('thead tr th h3:contains('+params.lon_column+')').parent().append('<p class="geo longitude">geo</p>');
closeAllWindows();
break;
case "new_column": methods.refreshTable();
break;
default: break;
}
},
@ -1110,9 +1356,31 @@
});
break;
case "update_geometry": closeAllWindows();
break;
case "column_type": var element = $('th[c="'+params.column.name+'"]').find('p.long').children('a');
element.text(old_value);
element.animate({color:'#FF3300'},300,function(){
setTimeout(function(){element.animate({color:'#b4b4b4'},300);},1000);
});
break;
case "new_column": closeAllWindows();
default: break;
}
},
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// REFRESH TABLE
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
refreshTable: function() {
loading = true;
minPage = 0;
maxPage = -1;
$(table).children('thead').remove();
$(table).children('tbody').remove();
methods.getData(defaults, 'next');
enabled = true;
}
};

@ -6,4 +6,6 @@
loadingMessages["update_cell"] = "The value of the cell has been changed";
loadingMessages["rename_column"] = "The name of the column has been renamed";
loadingMessages["update_geometry"] = "The geometry has been updated";
loadingMessages["column_type"] = "The type of the column has been changed";
loadingMessages["new_column"] = "New column added!";

@ -333,6 +333,7 @@
$('div.mamufas div.delete_window').hide();
$('div.mamufas div.georeference_window').hide();
$('div.mamufas div.export_window').hide();
$('div.mamufas div.column_window').hide();
});
$(document).unbind('keydown');

@ -406,7 +406,6 @@
horizontalTrackWidth -= $(this).outerWidth();
}
);
console.log(horizontalTrackWidth);
horizontalTrack.width(horizontalTrackWidth + 'px');
horizontalDragPosition = 0;
}

@ -0,0 +1,34 @@
ADD ROW
- BLAT -> Creo que la mejor solución sería, crear una fila vacía (sin que se de cuenta el usuario), haciendo una petición al servidor de añadir una fila nueva,
que me la devuelvas con los campos rellenos en el caso de cartodb_id, created_at, updated_at, y ya haría mi trapi para controlar cuando pinche fuera de
la fila para mandarte los cambios. Total, si te parece bien, necesitaría que en el servicio de creación de fila me respondieras con las columnas, tipo
y lo que hay dentro :).
GEOREFERENCIAR
- BLAT -> Poder georeferenciar por address, como sería el nuevo servicio, mandando el address y no lat_column o lon_column.
- BLAT -> Mandar nil como objecto en el la geolocalización no se puede ´por Javascript, hay que cambiar el método.
ERRORS
- SALEIVA -> Mostrar los errores en la ventana cuando intentas georeferenciar pero no has elegido nada, por ejemplo.
TIPO DE DATOS
- BLAT -> Falta el tipo Boolean
- BLAT -> Falla al cambiar el tipo a Number o a String
BORRADO DE COLUMNAS Y FILAS
- Que sea posible borrar filas y columnas (no solo de una en una)
ADD COLUMN
- No se puede crear columnas si no son del tipo Date

@ -176,25 +176,26 @@ div.mamufas div.georeference_window div.inner_ span.top ul li div.select span.se
-moz-border-radius-bottomright: 5px; -moz-border-radius-bottomleft: 5px; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; z-index:20;}
div.mamufas div.georeference_window div.inner_ span.top ul li div.select span.select.clicked ul {float:left; display:default; width:137px; max-height:100px; margin:1px 0 0; padding:0 7px 5px; overflow-y:auto; overflow-x:hidden;}
div.mamufas div.georeference_window div.inner_ span.top ul li div.select span.select.clicked ul li a {width:137px; padding:0; background:none; font-weight:normal; text-overflow:ellipsis; overflow:hidden; white-space:nowrap;}
div.mamufas div.georeference_window .jspContainer{overflow:hidden;position:relative;}
div.mamufas div.georeference_window .jspPane{position:absolute;}
div.mamufas div.georeference_window .jspVerticalBar{position:absolute;top:0px;right:3px;width:10px;height:100%; background:none;}
div.mamufas div.georeference_window .jspHorizontalBar{position:absolute;bottom:0;left:0;width:100%;height:16px;background:none;}
div.mamufas div.georeference_window .jspVerticalBar *,
div.mamufas div.georeference_window .jspHorizontalBar *{margin:0;padding:0;}
div.mamufas div.georeference_window .jspCap{display:none;}
div.mamufas div.georeference_window .jspHorizontalBar .jspCap{float:left;}
div.mamufas div.georeference_window .jspTrack{background:#ccc;position:relative; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;}
div.mamufas div.georeference_window .jspDrag{background:#666;position:relative;top:0;left:0;cursor:pointer; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;}
div.mamufas div.georeference_window .jspDrag:hover {background:#333;}
div.mamufas div.georeference_window .jspHorizontalBar .jspTrack,
div.mamufas div.georeference_window .jspHorizontalBar .jspDrag{float:left;height:100%;}
div.mamufas div.georeference_window .jspArrow{background:#50506d;text-indent:-20000px;display:block;cursor:pointer;}
div.mamufas div.georeference_window .jspArrow.jspDisabled{cursor:default;background:#80808d;}
div.mamufas div.georeference_window .jspVerticalBar .jspArrow{height:16px;}
div.mamufas div.georeference_window .jspHorizontalBar .jspArrow{width:16px;float:left;height:100%;}
div.mamufas div.georeference_window .jspVerticalBar .jspArrow:focus{outline:none;}
div.mamufas div.georeference_window .jspCorner{background:#eeeef4;float:left;height:100%;}
div.mamufas .jspContainer{overflow:hidden;position:relative;}
div.mamufas .jspPane{position:absolute;}
div.mamufas .jspVerticalBar{position:absolute;top:0px;right:3px;width:10px;height:100%; background:none;}
div.mamufas .jspHorizontalBar{position:absolute;bottom:0;left:0;width:100%;height:16px;background:none;}
div.mamufas .jspVerticalBar *,
div.mamufas .jspHorizontalBar *{margin:0;padding:0;}
div.mamufas .jspCap{display:none;}
div.mamufas .jspHorizontalBar .jspCap{float:left;}
div.mamufas .jspTrack{background:#ccc;position:relative; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;}
div.mamufas .jspDrag{background:#666;position:relative;top:0;left:0;cursor:pointer; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;}
div.mamufas .jspDrag:hover {background:#333;}
div.mamufas .jspHorizontalBar .jspTrack,
div.mamufas .jspHorizontalBar .jspDrag{float:left;height:100%;}
div.mamufas .jspArrow{background:#50506d;text-indent:-20000px;display:block;cursor:pointer;}
div.mamufas .jspArrow.jspDisabled{cursor:default;background:#80808d;}
div.mamufas .jspVerticalBar .jspArrow{height:16px;}
div.mamufas .jspHorizontalBar .jspArrow{width:16px;float:left;height:100%;}
div.mamufas .jspVerticalBar .jspArrow:focus{outline:none;}
div.mamufas .jspCorner{background:#eeeef4;float:left;height:100%;}
div.mamufas div.georeference_window div.inner_ span.top p.error {display:none; width:auto; margin:15px 0 0 0!important; padding:5px 7px!important; border:1px solid #E06C6C; color:red; background:#FFC9CF; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;}
div.mamufas div.georeference_window div.inner_ span.bottom {float:left; width:385px; padding:0 0 10px; border-top:1px solid white;}
div.mamufas div.georeference_window div.inner_ span.bottom a.cancel {float:left; margin:15px 0 0 15px; font:normal 13px "Helvetica",Arial; color:#666666;}
div.mamufas div.georeference_window div.inner_ span.bottom a.cancel:hover {color:#333333;}
@ -222,10 +223,42 @@ div.mamufas div.export_window div.inner_ span.top ul li a {float:left; margin:0
div.mamufas div.export_window div.inner_ span.top ul li.selected {padding:10px 0; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; background:white; -webkit-box-shadow:1px 3px 5px 1px #dddddd; -moz-box-shadow:1px 3px 5px 1px #dddddd; box-shadow:1px 3px 5px 1px #dddddd;}
div.mamufas div.export_window div.inner_ span.top ul li.selected a {width:315px; background-position: 0 -28px; color:#333333;}
div.mamufas div.export_window div.inner_ span.top ul li a:hover {background-position:0 -28px; color:#333333;}
div.mamufas div.export_window div.inner_ span.bottom {float:left; width:385px; padding:0 0 10px; border-top:1px solid white;}
div.mamufas div.export_window div.inner_ span.bottom a.cancel {float:left; margin:15px 0 0 15px; font:normal 13px "Helvetica",Arial; color:#666666;}
div.mamufas div.export_window div.inner_ span.bottom a.cancel:hover {color:#333333;}
div.mamufas div.export_window div.inner_ span.bottom a.download {float:right; height:14px; margin:10px 10px 0 0; padding:6px 9px; font:bold 12px Arial; color:#333333; text-align:center; border:1px solid #999999; text-decoration:none; text-shadow:0 1px white;
-webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; background-image:-moz-linear-gradient(100% 100% 90deg, #CACBCE, #FFFFFF); background-image:-webkit-gradient(linear, 0% 0%, 0% 100%, from(#FFFFFF), to(#CACBCE));}
div.mamufas div.export_window div.inner_ span.bottom a.download:hover {background-image:-moz-linear-gradient(100% 100% 90deg, #FFFFFF, #CACBCE); background-image:-webkit-gradient(linear, 0% 0%, 0% 100%, from(#CACBCE), to(#FFFFFF)); cursor:pointer;}
div.mamufas div.column_window {position:absolute; display:none; top:50%; left:50%; width:389px; margin:-150px 0 0 -217px; padding:8px; background:white; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; -webkit-box-shadow:0 0 50px 3px #111111;
-moz-box-shadow:0 0 50px 3px #111111;}
div.mamufas div.column_window a.close_delete {position:absolute; right:-8px; top:-7px; width:23px; height:23px; background:url('/images/admin/table/export_close.png') no-repeat 0 0;}
div.mamufas div.column_window a.close_delete:hover {background-position:0 -23px;}
div.mamufas div.column_window div.inner_ {float:left; width:387px; border:1px solid #ccc; -webkit-border-radius:3px; -moz-border-radius:3px; border-radius:3px; background:#EDEEF0;}
div.mamufas div.column_window div.inner_ span.top {float:left; width:357px; padding:14px; border-bottom:1px solid #CCCCCC;}
div.mamufas div.column_window div.inner_ span.top h3 {float:left; width:100%; font:bold 15px Helvetica,Arial; color:#333333; text-shadow:0 1px white;}
div.mamufas div.column_window div.inner_ span.top p {position:relative; float:left!important; height:auto; width:100%; padding:8px 0 0 0!important; margin:0!important; font:normal 13px Helvetica,Arial; color:#666666; text-shadow:0 1px white;}
div.mamufas div.column_window div.inner_ span.top p a {color:#444444;}
div.mamufas div.column_window div.inner_ span.top p a:hover {color:#222222;}
div.mamufas div.column_window div.inner_ span.top div.options {float:left; width:337px; margin:5px 0 0 0;}
div.mamufas div.column_window div.inner_ span.top div.options input {float:left; width:137px; padding:5px 7px; margin:5px 0 0 0; border:1px solid #CCCCCC; background:white; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;
border:1px solid #999999; font:normal 13px Arial; color:#666666;}
div.mamufas div.column_window div.inner_ span.top label {float:left; width:100%; margin:10px 0 0 0; text-transform:uppercase; font:normal 10px "Helvetica",Arial; color:#999999;}
div.mamufas div.column_window div.inner_ span.top span.select {position:relative; float:left; width:137px; height:11px; margin:5px 0 0 0; padding:8px 7px; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; border:1px solid #999999;
background-image:-moz-linear-gradient(100% 100% 90deg, #DBDCDF, #FFFFFF); background-image:-webkit-gradient(linear, 0% 0%, 0% 100%, from(#FFFFFF), to(#DBDCDF));}
div.mamufas div.column_window div.inner_ span.top span.select div.select_content {display:none;}
div.mamufas div.column_window div.inner_ span.top span.select a {float:left; width:127px!important; margin:0!important; padding:0 10px 0 0!important; background:none; font:bold 11px "Helvetica",Arial; color:#333333; text-shadow:0 1px white;
text-overflow:ellipsis; overflow:hidden; white-space:nowrap; background:url('/images/admin/icons/select_arrows.png') no-repeat 130px 5px; text-decoration:none;}
div.mamufas div.column_window div.inner_ span.top span.select a:hover {color:#000000;}
div.mamufas div.column_window div.inner_ span.top span.select select {display:none;}
div.mamufas div.column_window div.inner_ span.top span.select.clicked {-webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px; -moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px;
border-top-left-radius: 5px; border-top-right-radius: 5px; border-bottom-right-radius:0; border-bottom-left-radius:0; -webkit-border-bottom-left-radius:0; -webkit-border-bottom-right-radius:0; -moz-border-radius-bottomleft:0; -moz-border-radius-bottomright:0; border-bottom:1px solid #aaaaaa; }
div.mamufas div.column_window div.inner_ span.top span.select.clicked a {background-position:130px -15px;}
div.mamufas div.column_window div.inner_ span.top span.select.clicked div.select_content {position:absolute; top:28px; left:-1px; display:block; margin:0!important; padding:2px 0px; border:1px solid #999999; border-top:none;
background-image:-moz-linear-gradient(100% 100% 90deg, #DBDCDF, #FFFFFF); background-image:-webkit-gradient(linear, 0% 0%, 0% 100%, from(#DFE0E2), to(#FFFFFF)); -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;
-moz-border-radius-bottomright: 5px; -moz-border-radius-bottomleft: 5px; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px; z-index:20;}
div.mamufas div.column_window div.inner_ span.top span.select.clicked ul {float:left; display:default; width:137px; max-height:100px; margin:1px 0 0; padding:0 7px 5px; overflow-y:auto; overflow-x:hidden;}
div.mamufas div.column_window div.inner_ span.top span.select.clicked ul li a {width:137px; padding:0; background:none; font-weight:normal; text-overflow:ellipsis; overflow:hidden; white-space:nowrap;}
div.mamufas div.column_window div.inner_ span.top span.select.clicked ul li {float:left; margin:3px 0!important;}
div.mamufas div.column_window div.inner_ span.top p.error {display:none; width:auto; margin:15px 0 0 0!important; padding:5px 7px!important; border:1px solid #E06C6C; color:red; background:#FFC9CF; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px;}
div.mamufas div.column_window div.inner_ span.bottom {float:left; width:385px; padding:0 0 10px; border-top:1px solid white;}
div.mamufas div.column_window div.inner_ span.bottom a.cancel {float:left; margin:15px 0 0 15px; font:normal 13px "Helvetica",Arial; color:#666666;}
div.mamufas div.column_window div.inner_ span.bottom a.cancel:hover {color:#333333;}
div.mamufas div.column_window div.inner_ span.bottom a.column_add {float:right; height:14px; margin:10px 10px 0 0; padding:6px 9px; font:bold 12px Arial; color:#333333; text-align:center; border:1px solid #999999; text-decoration:none; text-shadow:0 1px white;
-webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; background-image:-moz-linear-gradient(100% 100% 90deg, #CACBCE, #FFFFFF); background-image:-webkit-gradient(linear, 0% 0%, 0% 100%, from(#FFFFFF), to(#CACBCE));}
div.mamufas div.column_window div.inner_ span.bottom a.column_add:hover {background-image:-moz-linear-gradient(100% 100% 90deg, #FFFFFF, #CACBCE); background-image:-webkit-gradient(linear, 0% 0%, 0% 100%, from(#CACBCE), to(#FFFFFF)); cursor:pointer;}

Loading…
Cancel
Save