Created
August 16, 2013 13:22
-
-
Save machadogj/6249933 to your computer and use it in GitHub Desktop.
Example of global scope being a problem when code is converted from js.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
### | |
Include database config. | |
@var [Object] db | |
@api private | |
### | |
### | |
Set users collection | |
@var [JSON] urlsSchema | |
@api private | |
### | |
### | |
Get and set users collection | |
@var [Object] urls | |
@api private | |
### | |
### | |
Export urls modules for use in main app | |
@var [Object] module.exports.add | |
@var [Object] module.exports.findUrl | |
@return [Function] add | |
@return [Function] findUser | |
@api private | |
### | |
### | |
Add a doc to collection | |
@method add | |
@param [String] username | |
@param [String] email | |
@param [Number] id | |
@param [Function] callback | |
@return [Function][String] err | |
@return [Function][String] instance | |
@api public | |
### | |
add = (username, email, id, callback) -> | |
instance = new users() | |
instance.username = username | |
instance.email = email | |
instance.id = id | |
instance.save (err) -> | |
if err | |
callback err | |
else | |
callback null, instance | |
### | |
Find users list | |
@method usersList | |
@param [String] id | |
@param [Function] callback | |
@return [Function][String] err | |
@return [Function][String] data | |
@api public | |
### | |
usersList = (callback) -> | |
users = db.mongoose.model("users") | |
users.find (err, data) -> | |
if err | |
callback err | |
else | |
callback null, data | |
db = require("./db.js") | |
usersSchema = new db.Schema( | |
username: String | |
email: String | |
id: Number | |
) | |
users = db.mongoose.model("users", usersSchema) | |
module.exports.add = add | |
module.exports.usersList = usersList |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Include database config. | |
* | |
* @var [Object] db | |
* @api private | |
*/ | |
var db = require('./db.js'); | |
/** | |
* Set users collection | |
* | |
* @var [JSON] urlsSchema | |
* @api private | |
*/ | |
var usersSchema = new db.Schema({ | |
username : String, | |
email : String, | |
id : Number | |
}); | |
/** | |
* Get and set users collection | |
* | |
* @var [Object] urls | |
* @api private | |
*/ | |
var users = db.mongoose.model('users', usersSchema); | |
/** | |
* Export urls modules for use in main app | |
* | |
* @var [Object] module.exports.add | |
* @var [Object] module.exports.findUrl | |
* @return [Function] add | |
* @return [Function] findUser | |
* @api private | |
*/ | |
module.exports.add = add; | |
module.exports.usersList = usersList; | |
/** | |
* Add a doc to collection | |
* | |
* @method add | |
* @param [String] username | |
* @param [String] email | |
* @param [Number] id | |
* @param [Function] callback | |
* @return [Function][String] err | |
* @return [Function][String] instance | |
* @api public | |
*/ | |
function add(username, email, id, callback) { | |
var instance = new users(); | |
instance.username = username; | |
instance.email = email; | |
instance.id = id; | |
instance.save(function (err) { | |
if (err) { | |
callback(err); | |
} | |
else { | |
callback(null, instance); | |
} | |
}); | |
} | |
/** | |
* Find users list | |
* | |
* @method usersList | |
* @param [String] id | |
* @param [Function] callback | |
* @return [Function][String] err | |
* @return [Function][String] data | |
* @api public | |
*/ | |
function usersList(callback) { | |
var users = db.mongoose.model('users'); | |
users.find(function(err, data) { | |
if(err) { | |
callback(err); | |
} | |
else { | |
callback(null, data); | |
} | |
}); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment