2

This is currently the way i use nowjs, but is this wrong way to use it?

client:

$('#guestbook_form').validate({
    rules: {
        message: {
            required: true, maxlength: 1000
        }
    },
    submitHandler: function(form) {
        now.sendGb($(form).serializeObject());
    }
});

now.pushMessage = function(message) {
    $('#guestbook_records').append(message);
};

server:

everyone.now.sendGb = function(message) {
    client.query(
        'INSERT INTO guestbook SET owner_id = ?, user_id = ?, message = ?',
        [message.id, message.user_id, sanitize(message.message).entityEncode().trim()]
    );
    everyone.now.pushMessage(message.message);
};

(Of course theres a few other problems with this code, but but just as an example)

How else should i use nowjs?

Thanks for helping out

georgesamper
  • 4,989
  • 5
  • 40
  • 59
  • That looks fine. User submits a guestbook message, it gets inserted into the database, then everyone get's updated with the new guestbook message. – Raynos May 17 '11 at 19:20

1 Answers1

2

Just for general robustness I would recommend

everyone.now.sendGb = function(message) {
    client.query(
        'INSERT INTO guestbook SET owner_id = ?, user_id = ?, message = ?',
        [message.id, message.user_id, sanitize(message.message).entityEncode().trim()],
        function(err, info) {
            if (!err) {
                everyone.now.pushMessage(message.message);
            }
        }
    );
};

This double checked that the INSERT happened without an error before posting the message to everyone.

Raynos
  • 166,823
  • 56
  • 351
  • 396