witten
/
luminotes
Archived
1
0
Fork 0

Fixed mouse click handling brokenness introduced by 03b6a15e86e1. Also Beginning to phase out special-case hack for form submission.

This commit is contained in:
Dan Helfman 2008-05-30 17:10:57 -07:00
parent fe83423845
commit 3f2c51e338
6 changed files with 31 additions and 37 deletions

View File

@ -13,7 +13,7 @@ No account yet? Want to make a wiki? You can <a href="/users/demo" target="_top"
href="/pricing" target="_top">sign up</a> for a free account.
</p>
<form id="login_form">
<form id="login_form" target="/users/login">
<p>
<b>username</b><br />
<input type="text" name="username" id="username" class="text_field" size="30" maxlength="30" />

View File

@ -19,7 +19,7 @@ You'll also get a username reminder.
support@luminotes.com to your whitelist.
</p>
<form id="send_reset_form">
<form id="send_reset_form" target="/users/send_reset">
<p>
<b>email address</b><br />
<input type="text" name="email_address" id="email_address" class="text_field" size="30" maxlength="60" />

View File

@ -19,7 +19,7 @@ yet, <a href="/users/demo" target="_top">try the demo</a> first!
<p>
<form id="signup_form">
<form id="signup_form" target="/users/signup">
<p>
<b>username</b><br />
<input type="text" name="username" id="username" class="text_field" size="30" maxlength="30" />

View File

@ -153,41 +153,34 @@ Editor.prototype.finish_init = function () {
connect( this.document.body, "onfocus", function ( event ) { self.focused( event ); } );
connect( this.iframe.contentWindow, "onblur", function ( event ) { self.blurred( event ); } );
connect( this.iframe.contentWindow, "onfocus", function ( event ) { self.focused( event ); } );
connect( this.document, "onclick", function ( event ) { self.mouse_clicked( event ); } );
// handle each form submit event by forwarding it on as a custom event
var forms = getElementsByTagAndClassName( "form", null, this.document );
for ( var i in forms ) {
var form = forms[ i ];
connect( form, "onsubmit", function ( event ) {
signal( self, "submit_form", form.getAttribute( "target" ), form );
event.stop();
} );
}
// connect each (non-submit) button to issue an event
var buttons = getElementsByTagAndClassName( "input", "button", this.document );
for ( var i in buttons ) {
var button = buttons[ i ];
if ( button.getAttribute( "type" ) == "submit")
continue;
connect( button, "onclick", function ( event ) {
signal( self, "button_clicked", this, button );
event.stop();
} );
}
// special-case: connect any submit buttons within the contents of this note
// TODO: phase out entirely
withDocument( this.document, function () {
var signup_button = getElement( "signup_button" );
if ( signup_button ) {
var signup_form = getElement( "signup_form" );
connect( signup_button, "onclick", function ( event ) {
signal( self, "submit_form", "/users/signup", signup_form ); event.stop();
} );
}
var login_button = getElement( "login_button" );
if ( login_button ) {
var login_form = getElement( "login_form" );
connect( login_button, "onclick", function ( event ) {
signal( self, "submit_form", "/users/login", login_form ); event.stop();
} );
}
var send_reset_button = getElement( "send_reset_button" );
if ( send_reset_button ) {
var send_reset_form = getElement( "send_reset_form" );
connect( send_reset_button, "onclick", function ( event ) {
signal( self, "submit_form", "/users/send_reset", send_reset_form ); event.stop();
} );
}
var reset_button = getElement( "reset_button" );
if ( reset_button ) {
var reset_form = getElement( "reset_form" );
connect( reset_button, "onclick", function ( event ) {
signal( self, "submit_form", "/users/reset_password", reset_form ); event.stop();
} );
}
var invite_button = getElement( "invite_button" );
if ( invite_button ) {
var invite_form = getElement( "invite_form" );

View File

@ -1588,7 +1588,7 @@ Wiki.prototype.share_notebook = function () {
this.display_invites( invite_area );
var div = createDOM( "div", {},
createDOM( "form", { "id": "invite_form" },
createDOM( "form", { "id": "invite_form", "target": "/users/send_invites" },
createDOM( "input", { "type": "hidden", "name": "notebook_id", "value": this.notebook_id } ),
createDOM( "p", {},
createDOM( "b", {}, "people to invite" ),
@ -1708,7 +1708,7 @@ Wiki.prototype.display_settings = function () {
var group_list = createDOM( "ul" );
var div = createDOM( "div", {},
createDOM( "form", { "id": "settings_form" },
createDOM( "form", { "id": "settings_form", "target": "/users/update_settings" },
createDOM( "p", {},
createDOM( "b", {}, "email address" ),
createDOM( "br", {} ),

View File

@ -35,6 +35,7 @@ class Redeem_reset_note( Span ):
value = ( len( users ) > 1 ) and u"reset passwords" or u"reset password" ),
),
id = "reset_form",
target = "/users/reset_password",
),
P(
Strong( u"tip:" ),