From e1f40329ea6a19d38efc2b39196527a271050f02 Mon Sep 17 00:00:00 2001 From: Ev Bogue Date: Sun, 1 Dec 2019 08:34:01 -0600 Subject: generate an ad if there is not one already --- ads.js | 9 ++++++++- server.js | 50 +++++++++++++++++++++++++------------------------- 2 files changed, 33 insertions(+), 26 deletions(-) diff --git a/ads.js b/ads.js index efa1bc8..b8ecab9 100644 --- a/ads.js +++ b/ads.js @@ -8,7 +8,7 @@ var addir = homedir + '/.bogbook/ads/' if (!fs.existsSync(homedir + '/.bogbook/')) {fs.mkdirSync(homedir + '/.bogbook/')} if (!fs.existsSync(addir)){fs.mkdirSync(addir)} -function makeAd (ad) { +function make (ad) { console.log(ad) var hex = Buffer.from(nacl.hash(nacl.util.decodeUTF8(ad))).toString('hex') @@ -27,6 +27,13 @@ function makeAd (ad) { if (process.argv[2]) { var ad = process.argv[2] makeAd(ad) +} if (ad) { + console.log(ad) + makeAd(ad) } else { console.log('Please write an ad. Ex: `node ads.js "Hello World"') } + +module.exports = { + make +} diff --git a/server.js b/server.js index 6d22135..ad23040 100644 --- a/server.js +++ b/server.js @@ -3,7 +3,8 @@ const WSPORT = 8080 const URL = 'localhost' const ADVERTISEMENTS = true -// const fullURL = 'http://bogbook.com/' +var ads = require('./ads') + const fullURL = 'http://' + URL + ':' + HTTPPORT + '/' if (process.argv[2] === 'verbose') { @@ -98,8 +99,6 @@ if (!fs.existsSync(bogdir)){fs.mkdirSync(bogdir)} var wserve = new WS.Server({ port: WSPORT }) -var adContents = JSON.parse(fs.readFileSync(__dirname + '/ads.json')) - bog.keys().then(key => { wserve.on('connection', function (ws) { ws.on('message', function (message) { @@ -120,30 +119,31 @@ bog.keys().then(key => { if (ADVERTISEMENTS) { if (Math.floor(Math.random() * 4) == 2) { fs.readdir(addir, function (err, adfiles) { - var num = Math.floor(Math.random() * (adfiles.length)) - console.log(num) - fs.readFile(addir + adfiles[num], 'UTF-8', function (err, adFile) { - console.log(adFile) - var obj = JSON.parse(adFile) - console.log(obj) - var ad = { - author: key.publicKey, - name: fullURL, - content: obj.ad, - timestamp: Date.now(), - views: obj.views - } - obj.views++ - fs.writeFileSync(addir + obj.hash, JSON.stringify(obj), 'UTF-8') - printSendAd(ad, req) - bog.box(JSON.stringify(ad), req.requester, key).then(boxed => { - sendobj = { - requester: key.publicKey, - box: boxed + if (adfiles[0]) { + var num = Math.floor(Math.random() * (adfiles.length)) + fs.readFile(addir + adfiles[num], 'UTF-8', function (err, adFile) { + var obj = JSON.parse(adFile) + var ad = { + author: key.publicKey, + name: fullURL, + content: obj.ad, + timestamp: Date.now(), + views: obj.views } - ws.send(JSON.stringify(sendobj)) + obj.views++ + fs.writeFileSync(addir + obj.hash, JSON.stringify(obj), 'UTF-8') + printSendAd(ad, req) + bog.box(JSON.stringify(ad), req.requester, key).then(boxed => { + sendobj = { + requester: key.publicKey, + box: boxed + } + ws.send(JSON.stringify(sendobj)) + }) }) - }) + } else { + ads.make('Hello World.') + } }) } } -- cgit v1.2.3-70-g09d2