Pull Placeholder out of editor, too

This commit is contained in:
Eston Bond
2010-11-12 15:09:15 -08:00
parent 1aeabc79b8
commit 6a9c9ac0fe
2 changed files with 59 additions and 53 deletions
@@ -5,7 +5,7 @@
* Usage: * Usage:
* $.GollumEditor(); on DOM ready. * $.GollumEditor(); on DOM ready.
*/ */
// (function($) { (function($) {
// Editor options // Editor options
var DefaultOptions = { var DefaultOptions = {
@@ -35,10 +35,10 @@
} }
if ( EditorHas.editSummaryMarkup() ) { if ( EditorHas.editSummaryMarkup() ) {
Placeholder.add( $('#gollum-editor-edit-summary input') ) $.GollumEditor.Placeholder.add($('#gollum-editor-edit-summary input'));
$('#gollum-editor form[name="gollum-editor"]').submit(function( e ) { $('#gollum-editor form[name="gollum-editor"]').submit(function( e ) {
e.preventDefault(); e.preventDefault();
Placeholder.clearAll(); $.GollumEditor.Placeholder.clearAll();
debug('submitting'); debug('submitting');
$(this).unbind('submit'); $(this).unbind('submit');
$(this).submit(); $(this).submit();
@@ -456,54 +456,6 @@
FunctionBar.replaceFieldSelection( $('#gollum-editor-body'), repText ); FunctionBar.replaceFieldSelection( $('#gollum-editor-body'), repText );
} }
$.GollumEditor.Placeholder = $.GollumPlaceholder;
var Placeholder = { })(jQuery);
_PLACEHOLDERS : [],
_p : function( $field ) {
this.fieldObject = $field;
this.placeholderText = $field.val();
var placeholderText = $field.val();
$field.addClass('ph');
$field.blur(function() {
if ( $(this).val() == '' ) {
$(this).val( placeholderText );
$(this).addClass('ph');
}
});
$field.focus(function() {
$(this).removeClass('ph');
if ( $(this).val() == placeholderText ) {
$(this).val('');
} else {
$(this)[0].select();
}
});
},
add : function( $field ) {
Placeholder._PLACEHOLDERS.push( new Placeholder._p( $field ) );
},
clearAll: function() {
for ( var i=0; i < Placeholder._PLACEHOLDERS.length; i++ ) {
if ( Placeholder._PLACEHOLDERS[i].fieldObject.val() ==
Placeholder._PLACEHOLDERS[i].placeholderText ) {
Placeholder._PLACEHOLDERS[i].fieldObject.val('');
}
}
},
exists : function() {
return ( _PLACEHOLDERS.length );
}
};
// })(jQuery);
@@ -0,0 +1,54 @@
(function($) {
var Placeholder = {
_PLACEHOLDERS : [],
_p : function( $field ) {
this.fieldObject = $field;
this.placeholderText = $field.val();
var placeholderText = $field.val();
$field.addClass('ph');
$field.blur(function() {
if ( $(this).val() == '' ) {
$(this).val( placeholderText );
$(this).addClass('ph');
}
});
$field.focus(function() {
$(this).removeClass('ph');
if ( $(this).val() == placeholderText ) {
$(this).val('');
} else {
$(this)[0].select();
}
});
},
add : function( $field ) {
Placeholder._PLACEHOLDERS.push( new Placeholder._p( $field ) );
},
clearAll: function() {
for ( var i=0; i < Placeholder._PLACEHOLDERS.length; i++ ) {
if ( Placeholder._PLACEHOLDERS[i].fieldObject.val() ==
Placeholder._PLACEHOLDERS[i].placeholderText ) {
Placeholder._PLACEHOLDERS[i].fieldObject.val('');
}
}
},
exists : function() {
return ( _PLACEHOLDERS.length );
}
};
$.GollumPlaceholder = Placeholder;
})(jQuery);