diff --git a/browser/api/likes.js b/browser/api/likes.js
index 35884cd..89067f3 100644
--- a/browser/api/likes.js
+++ b/browser/api/likes.js
@@ -79,6 +79,27 @@ function nodeLikesApp (options, callback) {
}
});
}
+ function getMyLikes (callback) {
+ if (twIsTwitterConnected ()) {
+ var params = {
+ oauth_token: localStorage.twOauthToken,
+ oauth_token_secret: localStorage.twOauthTokenSecret
+ };
+ serverCall ("mylikes", params, function (err, jsontext) {
+ if (err) {
+ console.log ("getMyLikes: err == " + jsonStringify (err));
+ callback (err);
+ }
+ else {
+ var jstruct = JSON.parse (jsontext);
+ callback (undefined, jstruct);
+ }
+ });
+ }
+ else {
+ callback (undefined, new Array ());
+ }
+ }
function viewLikes (likesObject, myUrl, likes) {
function getThumbIcon (thumbDirection, flopen) {
var open = "";
@@ -126,8 +147,13 @@ function nodeLikesApp (options, callback) {
});
});
}
+ if (options === undefined) {
+ options = {
+ };
+ }
twStorageData.urlTwitterServer = (options.urlLikesServer) ? options.urlLikesServer : "http://likes.scripting.com/";
twGetOauthParams (); //part of the oAuth dance
+ this.getMyLikes = getMyLikes;
startLikes ();
if (callback !== undefined) {
callback ();
diff --git a/browser/index.html b/browser/index.html
index 6b21b2e..6ebe582 100644
--- a/browser/index.html
+++ b/browser/index.html
@@ -17,6 +17,7 @@
+
diff --git a/server/likes.js b/server/likes.js
index 1dfdf8e..e14a988 100644
--- a/server/likes.js
+++ b/server/likes.js
@@ -1,4 +1,4 @@
-var myProductName = "nodeLikes", myVersion = "0.4.7";
+var myProductName = "nodeLikes", myVersion = "0.4.8";
const mysql = require ("mysql");
const utils = require ("daveutils");
@@ -6,13 +6,13 @@ const fs = require ("fs");
const request = require ("request");
const davetwitter = require ("davetwitter");
const dateFormat = require ("dateformat");
-const s3 = require ("daves3");
var config = {
fnameStats: "data/stats.json",
flLogSql: false,
- urlServerHomePageSource: "http://scripting.com/code/nodelikes/myhomepage.html",
- ctSecsHomepageCache: 1
+ urlServerHomePageSource: "http://scripting.com/code/nodelikes/serverhomepage/",
+ ctSecsHomepageCache: 1,
+ urlFavicon: "http://scripting.com/favicon.ico"
};
const fnameConfig = "config.json";
@@ -136,6 +136,20 @@ function getLikes (url, callback) {
}
});
}
+function getMyLikes (username, callback) { //11/17/18 by DW
+ var sqltext = "select url from likes where username = " + encode (username) + " order by whencreated desc;";
+ runSqltext (sqltext, function (err, result) {
+ if (!err) {
+ }
+ if (callback !== undefined) {
+ var theList = new Array ();
+ for (var i = 0; i < result.length; i++) {
+ theList.push (result [i].url);
+ }
+ callback (err, theList);
+ }
+ });
+ }
function toggleLike (username, url, callback) {
var flLiked = false;
getLikes (url, function (err, theArray) {
@@ -213,6 +227,13 @@ function handleHttpRequest (theRequest) {
returnData (jstruct);
}
}
+ function returnRedirect (url, code) {
+ if (code === undefined) {
+ code = 302;
+ }
+ theRequest.httpReturn (code, "text/plain", code + " REDIRECT");
+ }
+
function returnServerHomePage () { //return true if we handled it
if (config.urlServerHomePageSource === undefined) {
return (false);
@@ -248,6 +269,9 @@ function handleHttpRequest (theRequest) {
switch (theRequest.lowerpath) {
case "/":
return (returnServerHomePage ());
+ case "/favicon.ico":
+ returnRedirect (config.urlFavicon);
+ return (true);
case "/now":
returnPlainText (new Date ());
return (true);
@@ -262,6 +286,11 @@ function handleHttpRequest (theRequest) {
case "/likes":
getLikes (params.url, httpReturn);
return (true);
+ case "/mylikes":
+ callWithScreenname (function (screenname) {
+ getMyLikes (screenname, httpReturn);
+ });
+ return (true);
}
return (false); //we didn't handle it
}
diff --git a/server/package.json b/server/package.json
index eb4a569..bf1b001 100644
--- a/server/package.json
+++ b/server/package.json
@@ -2,14 +2,13 @@
"name": "nodeLikes",
"description": "Tell us what you like!",
"author": "Dave Winer ",
- "version": "0.4.7",
+ "version": "0.4.8",
"dependencies" : {
"mysql": "*",
"request": "2.81.0",
"dateformat": "*",
"davetwitter": "*",
"daveopml": "*",
- "daves3": "*",
"daveutils": "*"
},
"license": "MIT",