Nice, but I get a soda-beverage-feeling when looking at it. More of a flat design guy myself.
hek
Posts
-
Nodebb logo concept -
[nodebb-plugin-affiliate] Affiliate PluginYes, it works fine on 1.0(ish). I'm currently running it on forum.mysensors.org.
But I removed it from binpress as there were zero interest in buying it.
Well, if someone still is interested they can contact me on [email protected]. I would need some time to prepare a new release.
Cost is €79, where 25% is donated back to the NodeBB project.
What is affiliate marketing?
Affiliate marketing is internet advertising that allows any online business to affiliate themselves with web site owners (known as affiliates or publishers) using affiliate programs. Affiliates make money by generating sales, leads and traffic for the Merchants business.
How does it work?
The NodeBB Affiliation Plugin will try to replace outgoing links in your NodeBB forum on-the-fly to a variant you can monetize from. Some of the affiliation programs allow the plugin to fetch product and stock information which optionally can be displayed directly in post. This increases the chances of a successful sales lead and adds valuable information for the forum visitor.
How much money can I make?
It all depends on the affiliation program you've signed up for and what type of link content your forum members create. The commissions for referring a buyer can range from 1% to up to 25% of the sales price depending on product category. The average commission usually ends up in the 3-5% range.
Will my users notice any difference?
The normal users will not see any difference on your forum. Some of the outgoing links will contain an extra parameter to inform the affiliation program that you referred the link. If you choose to enable the product information in posts (supported by amazon, ebay, aliexpress and flipkart) the user will see something like the picture above.
Why does the plugin cost money?
The time invested developing and support this plugin isn't free. Sensnology is a pro Open Source company and we contribute to many different open source projects. But for the Affiliation Plugin, which most probably will render your site an substantial income we'd like to try a new way of supporting open source projects by sending off 25% of the income from this plugin back to the NodeBB team. Hopefully it will buy the guys a couple of beers.
Installation instruction
Installing the plugin is easy but you have to have access to the NodeBB server.
Unpack the plugin files recevived after puchase in your NodeBB npm_modules directory.
> cd <NodeBB Installation Folder>/npm_modules > tar xvfz <Download Directory>/nodebb-plugin-affiliate.tag.gz
Restart forum.
Activate plugin under "Extend"->"Plugins"
Configure plugin under "Installed Plugins"->"Affiliate". Sign up to the affiliation programs you find interesting and enter the information as instructed.
Restart forum and you're ready to go.Supported Affiliate Programs
ALIEXPRESS PORTALS
AliExpress is a global retail marketplace targeted at consumers worldwide.
AMAZON ASSOCIATES
Amazon is the largest Internet-based retailer in the world.
EBAY PARTNER NETWORK (EPN)
Ebay is one of the largest online auction and shopping website in the world.
FLIPKART
Flipkart is the leading Indian e-commerce marketplace.
VIGLINK
VigLink can monetize links to over 35,000 retailers.
AVANTLINK
Avantlink has 250 retailers in their network.
Fancy product "box" image -
A thread in Swedish just for fun -
Firewall Issues when installing NodeBB on Centos@nhl.pl said:
You have to add firewall rule to allow traffic on port 8000 (WebSockets).
wot? Using websockets don't require you to open any other port than the ordinary one for http/https traffic.
-
Anybody using ES6 yet?I've been using promises for a long time. Mostly bluebird and native when possible. Such a relief and makes code readable again!
@julian, you won't miss the callback hell. Promise.
-
How to remove recent posts?...or edit static css in admin and include:
.teaser { display:none; }
-
All hail our global mods! -
What happened with the "users viewing a topic" feature?Maybe the composer popover would be the right place for the "someone-else-is-writing-an-answer" icon?
That is the situation (at least I) want to know about it.
And skip the whos-watching-topic thing. It's a bit creepy anyway.
-
What happened with the "users viewing a topic" feature?Understandable.
Could be simplified to a "number" of viewers + the typing thing (which is good!) should render much less websocket/redis traffic.
-
What happened with the "users viewing a topic" feature?In 0.9.3 and above?
There also was a small keyboard popping up when someone was answering...
-
NodeBB Websocket QuestionOne per (online) user.
-
websocket domainNo. They dont
I just had a chat with their support. Websockets enabled on all plans. Someone should do a comparison with Cloudflare pros/cons when running nodebb.
-
Group Chat ChangesYes, I know... it was this message that led me to this particular thread.
TypeError: Cannot read property 'messageId' of undefined
Unfortunately the the call-stack doesn't contain more info.. Well let's hope it stabilises itself.
-
Group Chat ChangesYep, persona v4.0.45
-
Group Chat ChangesI've just experienced a series of rapid restarts on 0.9.3 (cf5decf5de6f3b1e0690d2c4deab1565c21989ef) with a similar exception as mentioned above.
Jan 28 17:24:52 www msforum[17939]: 28/1 17:24 [7158] - #033[31merror#033[39m: TypeError: Cannot read property 'messageId' of undefined Jan 28 17:24:52 www msforum[17939]: at processImmediate [as _immediateCallback] (timers.js:383:17) Jan 28 17:24:52 www msforum[17939]: TypeError: Cannot read property 'messageId' of undefined Jan 28 17:24:52 www msforum[17939]: at processImmediate [as _immediateCallback] (timers.js:383:17) Jan 28 17:24:52 www msforum[17939]: 28/1 17:24 [7158] - #033[32minfo#033[39m: [app] Shutdown (SIGTERM/SIGINT) Initialised. Jan 28 17:24:52 www msforum[17939]: 28/1 17:24 [7158] - #033[32minfo#033[39m: [app] Database connection closed. Jan 28 17:24:52 www msforum[17939]: 28/1 17:24 [7158] - #033[32minfo#033[39m: [app] Web server closed to connections. Jan 28 17:24:52 www msforum[17939]: 28/1 17:24 [7158] - #033[32minfo#033[39m: [app] Shutdown complete. Jan 28 17:24:52 www msforum[17939]: [cluster] Child Process (7158) has exited (code: 1, signal: null) Jan 28 17:24:52 www msforum[17939]: [cluster] Spinning up another process... Jan 28 17:24:53 www msforum[17939]: 28/1 17:24 [7203] - #033[32minfo#033[39m: Time: Thu Jan 28 2016 17:24:53 GMT+0100 (CET) Jan 28 17:24:53 www msforum[17939]: 28/1 17:24 [7203] - #033[32minfo#033[39m: Initializing NodeBB v0.9.3
Anyone else seeing this?
I had this 4-5 times during the last hour now. Everything has worked fine for over a week prior to this. -
[nodebb-plugin-blog-comments] Blog Commenting Engine (Ghost, Wordpress widget)I did a integration between forum.mysensors.org and my new open hardware sharing site https://www.openhardware.io using parts of the blog-comments plugin to allow commenting on each project.
From the forum side: http://forum.mysensors.org/category/30/openhardware-io
And from openhardware: https://www.openhardware.io/view/4/EasyNewbie-PCB-for-MySensors#tab-commentsBut as we have to keep title/tags in forum in-sync with the open-hardware-site I had to create a new endpoint which besides creating, also updates the post each time someone published changes. The publishing/update request is sent from our backend.
Here is the interesting part of the code:
Comments.publishProject = function(req, res, callback) { var markdown = req.body.markdown, title = req.body.title, url = req.body.url, commentID = req.body.id, tags = req.body.tags, uid = xxx; if (req.body.token !== "XXXXXXXXXXXXXX") return res.json({error: "Unknown token"}); Comments.getTopicIDByCommentID(commentID, function(err, tid) { if (err || !tid) { var hostUrls = (meta.config['blog-comments:url'] || '').split(','), position = 0; hostUrls.forEach(function(hostUrl, i) { hostUrl = hostUrl.trim(); if (hostUrl[hostUrl.length - 1] === '/') { hostUrl = hostUrl.substring(0, hostUrl.length - 1); } if (hostUrl === req.get('origin')) { position = i; } }); var cid = meta.config['blog-comments:cid'].toString() || ''; cid = parseInt(cid.split(',')[position], 10) || parseInt(cid.split(',')[0], 10) || 1; topics.post({ uid: uid, title: title, content: markdown, tags: tags, req: req, cid: cid }, function(err, result) { //console.log(err); //console.log(err.stack); if (!err && result && result.postData && result.postData.tid) { posts.setPostField(result.postData.pid, 'blog-comments:url', url, function(err) { if (err) { return res.json({error: "Unable to post topic", result: result}); } db.setObjectField('blog-comments', commentID, result.postData.tid); res.redirect((req.header('Referer') || '/') + '#tabs-comments'); }); } else { res.json({error: "Unable to post topic", result: result}); } }); } else { topics.getMainPost(tid, uid, function(err, post) { if (err) return res.json({ok:false}); var payload = { title: title, uid: uid, pid: post.pid, content: markdown, tags: tags, options: { tags: tags } }; posts.edit(payload, function(err, returnData) { if (err) return res.json({ok:false}); //errorHandler.handle(err, res, returnData); res.json({ok:true}); }); }); } }); };