Update geo location UI for notice form where the geo data info is only

visible on @title of the enable/disable button.
This commit is contained in:
Sarven Capadisli 2010-01-14 01:48:57 +00:00
parent 25ed2d2c87
commit acc48289e5
5 changed files with 16 additions and 113 deletions

View File

@ -481,8 +481,9 @@ var SN = { // StatusNet
var NDGe = $('#'+SN.C.S.NoticeDataGeo); var NDGe = $('#'+SN.C.S.NoticeDataGeo);
function removeNoticeDataGeo() { function removeNoticeDataGeo() {
$('label[for='+SN.C.S.NoticeDataGeo+']').removeClass('checked').attr('title', jQuery.trim($('label[for='+SN.C.S.NoticeDataGeo+']').text())); $('label[for='+SN.C.S.NoticeDataGeo+']')
$('#'+SN.C.S.NoticeDataGeoSelected).hide(); .attr('title', jQuery.trim($('label[for='+SN.C.S.NoticeDataGeo+']').text()))
.removeClass('checked');
$('#'+SN.C.S.NoticeLat).val(''); $('#'+SN.C.S.NoticeLat).val('');
$('#'+SN.C.S.NoticeLon).val(''); $('#'+SN.C.S.NoticeLon).val('');
@ -514,17 +515,8 @@ var SN = { // StatusNet
NLN_text = location.name; NLN_text = location.name;
} }
$('#'+SN.C.S.NoticeGeoName) $('label[for='+SN.C.S.NoticeDataGeo+']')
.replaceWith('<a id="notice_data-geo_name"/>'); .attr('title', NoticeDataGeo_text.ShareDisable + ' (' + NLN_text + ')');
$('#'+SN.C.S.NoticeGeoName)
.attr('href', location.url)
.text(NLN_text)
.click(function() {
window.open(location.url);
return false;
});
$('#'+SN.C.S.NoticeLat).val(data.lat); $('#'+SN.C.S.NoticeLat).val(data.lat);
$('#'+SN.C.S.NoticeLon).val(data.lon); $('#'+SN.C.S.NoticeLon).val(data.lon);
@ -539,8 +531,7 @@ var SN = { // StatusNet
'NLID': lid, 'NLID': lid,
'NLN': NLN_text, 'NLN': NLN_text,
'NLNU': location.url, 'NLNU': location.url,
'NDG': true, 'NDG': true
'NDGSM': false
}; };
$.cookie(SN.C.S.NoticeDataGeoCookie, JSON.stringify(cookieValue)); $.cookie(SN.C.S.NoticeDataGeoCookie, JSON.stringify(cookieValue));
}); });
@ -558,62 +549,14 @@ var SN = { // StatusNet
var geocodeURL = NGW.attr('title'); var geocodeURL = NGW.attr('title');
NGW.removeAttr('title'); NGW.removeAttr('title');
$('label[for='+SN.C.S.NoticeDataGeo+']').attr('title', jQuery.trim($('label[for='+SN.C.S.NoticeDataGeo+']').text())); $('label[for='+SN.C.S.NoticeDataGeo+']')
.attr('title', jQuery.trim($('label[for='+SN.C.S.NoticeDataGeo+']').text()));
NDGe.change(function() { NDGe.change(function() {
var NLN = $('#'+SN.C.S.NoticeGeoName);
if (NLN.length > 0) {
NLN.remove();
}
if ($('#'+SN.C.S.NoticeDataGeo).attr('checked') === true || $.cookie(SN.C.S.NoticeDataGeoCookie) === null) { if ($('#'+SN.C.S.NoticeDataGeo).attr('checked') === true || $.cookie(SN.C.S.NoticeDataGeoCookie) === null) {
$('label[for='+SN.C.S.NoticeDataGeo+']').addClass('checked').attr('title', NoticeDataGeo_text.ShareDisable); $('label[for='+SN.C.S.NoticeDataGeo+']')
.attr('title', NoticeDataGeo_text.ShareDisable)
var S = '<div id="'+SN.C.S.NoticeDataGeoSelected+'" class="'+SN.C.S.Success+'"/>'; .addClass('checked');
var NDGS = $('#'+SN.C.S.NoticeDataGeoSelected);
if (NDGS.length > 0) {
NDGS.replaceWith(S);
}
else {
$('#'+SN.C.S.FormNotice).append(S);
}
NDGS = $('#'+SN.C.S.NoticeDataGeoSelected);
NDGS.prepend('<span id="'+SN.C.S.NoticeGeoName+'">Geo</span> <button class="minimize" title="'+NoticeDataGeo_text.InfoMinimize+'">&#95;</button> <button class="close" title="'+NoticeDataGeo_text.ShareDisable+'">&#215;</button>');
var NLN = $('#'+SN.C.S.NoticeGeoName);
NLN.addClass('processing');
$('#'+SN.C.S.NoticeDataGeoSelected+' button.close').click(function(){
removeNoticeDataGeo();
$('#'+SN.C.S.NoticeDataGeoSelected).remove();
$('#'+SN.C.S.NoticeDataText).focus();
return false;
});
$('#'+SN.C.S.NoticeDataGeoSelected+' button.minimize').click(function(){
$('#'+SN.C.S.NoticeDataGeoSelected).hide();
var cookieValue = {
'NLat': $('#'+SN.C.S.NoticeLat).val(),
'NLon': $('#'+SN.C.S.NoticeLat).val(),
'NLNS': $('#'+SN.C.S.NoticeLocationNs).val(),
'NLID': $('#'+SN.C.S.NoticeLocationId).val(),
'NLN': $('#'+SN.C.S.NoticeGeoName).text(),
'NLNU': $('#'+SN.C.S.NoticeGeoName).attr('href'),
'NDG': true,
'NDGSM': true
};
$.cookie(SN.C.S.NoticeDataGeoCookie, JSON.stringify(cookieValue));
$('#'+SN.C.S.NoticeDataText).focus();
return false;
});
if ($.cookie(SN.C.S.NoticeDataGeoCookie) === null || $.cookie(SN.C.S.NoticeDataGeoCookie) == 'disabled') { if ($.cookie(SN.C.S.NoticeDataGeoCookie) === null || $.cookie(SN.C.S.NoticeDataGeoCookie) == 'disabled') {
if (navigator.geolocation) { if (navigator.geolocation) {
@ -637,7 +580,6 @@ var SN = { // StatusNet
removeNoticeDataGeo(); removeNoticeDataGeo();
break; break;
case error.TIMEOUT: case error.TIMEOUT:
$('#'+SN.C.S.NoticeGeoName).text(NoticeDataGeo_text.ErrorTimeout).removeClass('processing');
$('#'+SN.C.S.NoticeDataGeo).attr('checked', false); $('#'+SN.C.S.NoticeDataGeo).attr('checked', false);
break; break;
} }
@ -668,27 +610,15 @@ var SN = { // StatusNet
else { else {
var cookieValue = JSON.parse($.cookie(SN.C.S.NoticeDataGeoCookie)); var cookieValue = JSON.parse($.cookie(SN.C.S.NoticeDataGeoCookie));
if (cookieValue.NDGSM === true) {
$('#'+SN.C.S.NoticeDataGeoSelected).hide();
}
$('#'+SN.C.S.NoticeLat).val(cookieValue.NLat); $('#'+SN.C.S.NoticeLat).val(cookieValue.NLat);
$('#'+SN.C.S.NoticeLon).val(cookieValue.NLon); $('#'+SN.C.S.NoticeLon).val(cookieValue.NLon);
$('#'+SN.C.S.NoticeLocationNs).val(cookieValue.NLNS); $('#'+SN.C.S.NoticeLocationNs).val(cookieValue.NLNS);
$('#'+SN.C.S.NoticeLocationId).val(cookieValue.NLID); $('#'+SN.C.S.NoticeLocationId).val(cookieValue.NLID);
$('#'+SN.C.S.NoticeDataGeo).attr('checked', cookieValue.NDG); $('#'+SN.C.S.NoticeDataGeo).attr('checked', cookieValue.NDG);
$('#'+SN.C.S.NoticeGeoName) $('label[for='+SN.C.S.NoticeDataGeo+']')
.replaceWith('<a id="notice_data-geo_name"/>'); .attr('title', NoticeDataGeo_text.ShareDisable + ' (' + cookieValue.NLN + ')')
.addClass('checked');
$('#'+SN.C.S.NoticeGeoName)
.attr('href', cookieValue.NLNU)
.text(cookieValue.NLN)
.click(function() {
window.open($(this).attr('href'));
return false;
});
} }
} }
else { else {

View File

@ -213,7 +213,6 @@ class NoticeForm extends Form
$this->out->elementEnd('div'); $this->out->elementEnd('div');
$this->out->inlineScript(' var NoticeDataGeo_text = {'. $this->out->inlineScript(' var NoticeDataGeo_text = {'.
'ShareDisable: "'._('Do not share my location').'",'. 'ShareDisable: "'._('Do not share my location').'",'.
'InfoMinimize: "'._('Hide this info').'",'.
'ErrorTimeout: "'._('Sorry, retrieving your geo location is taking longer than expected, please try again later').'"'. 'ErrorTimeout: "'._('Sorry, retrieving your geo location is taking longer than expected, please try again later').'"'.
'}'); '}');
} }

View File

@ -554,27 +554,19 @@ width:81.5%;
margin-bottom:0; margin-bottom:0;
line-height:1.618; line-height:1.618;
} }
.form_notice #notice_data-attach_selected code, .form_notice #notice_data-attach_selected code {
.form_notice #notice_data-geo_name {
float:left; float:left;
width:80%; width:80%;
display:block; display:block;
overflow:auto; overflow:auto;
margin-right:2.5%; margin-right:2.5%;
}
.form_notice #notice_data-attach_selected code {
font-size:1.1em; font-size:1.1em;
} }
.form_notice #notice_data-attach_selected button.close, .form_notice #notice_data-attach_selected button.close {
.form_notice #notice_data-geo_selected button.close {
float:right; float:right;
font-size:0.8em; font-size:0.8em;
} }
.form_notice #notice_data-geo_selected button.minimize {
float:left;
}
.form_notice #notice_data-geo_wrap label { .form_notice #notice_data-geo_wrap label {
position:absolute; position:absolute;
top:25px; top:25px;
@ -594,10 +586,6 @@ font-size:1em;
margin-bottom:0; margin-bottom:0;
text-indent:-9999px; text-indent:-9999px;
} }
.form_notice #notice_data-geo_name {
display:block;
padding-left:21px;
}
button.close, button.close,
button.minimize { button.minimize {

View File

@ -111,12 +111,6 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.1);
text-shadow:none; text-shadow:none;
} }
.form_notice span#notice_data-geo_name {
background-position:0 47%;
}
.form_notice a#notice_data-geo_name {
background-position:0 -1711px;
}
.form_notice label[for=notice_data-geo] { .form_notice label[for=notice_data-geo] {
background-position:0 -1780px; background-position:0 -1780px;
} }
@ -192,7 +186,6 @@ button.close,
.entity_silence input.submit, .entity_silence input.submit,
.entity_delete input.submit, .entity_delete input.submit,
.notice-options .repeated, .notice-options .repeated,
.form_notice a#notice_data-geo_name,
.form_notice label[for=notice_data-geo], .form_notice label[for=notice_data-geo],
button.minimize { button.minimize {
background-image:url(../../base/images/icons/icons-01.gif); background-image:url(../../base/images/icons/icons-01.gif);

View File

@ -111,12 +111,6 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.1);
text-shadow:none; text-shadow:none;
} }
.form_notice span#notice_data-geo_name {
background-position:0 47%;
}
.form_notice a#notice_data-geo_name {
background-position:0 -1711px;
}
.form_notice label[for=notice_data-geo] { .form_notice label[for=notice_data-geo] {
background-position:0 -1780px; background-position:0 -1780px;
} }
@ -192,7 +186,6 @@ button.close,
.entity_silence input.submit, .entity_silence input.submit,
.entity_delete input.submit, .entity_delete input.submit,
.notice-options .repeated, .notice-options .repeated,
.form_notice a#notice_data-geo_name,
.form_notice label[for=notice_data-geo], .form_notice label[for=notice_data-geo],
button.minimize { button.minimize {
background-image:url(../../base/images/icons/icons-01.gif); background-image:url(../../base/images/icons/icons-01.gif);