diff --git a/Temp/name b/Temp/name new file mode 100644 index 00000000..50b74eec Binary files /dev/null and b/Temp/name differ diff --git a/Temp/name22 b/Temp/name22 new file mode 100644 index 00000000..50b74eec Binary files /dev/null and b/Temp/name22 differ diff --git a/Temp/namef b/Temp/namef new file mode 100644 index 00000000..50b74eec Binary files /dev/null and b/Temp/namef differ diff --git a/Temp/names b/Temp/names new file mode 100644 index 00000000..04ef15af Binary files /dev/null and b/Temp/names differ diff --git a/helpers/lbryApi.js b/helpers/lbryApi.js index 8a09f13e..199c2ec7 100644 --- a/helpers/lbryApi.js +++ b/helpers/lbryApi.js @@ -38,7 +38,7 @@ function orderTopClaims(claimsListArray){ } function getClaimWithUri(uri, resolve, reject){ - console.log(">> making get request to lbry daemon") + console.log(">> making get request to lbry daemon"); axios.post('http://localhost:5279/lbryapi', { method: "get", params: { uri: uri } @@ -64,6 +64,10 @@ function getClaimWithUri(uri, resolve, reject){ }); } +function findAllClaims(name, resolve, reject){ + // abstract claim_list function to here +} + module.exports = { publishClaim: function(publishObject){ @@ -76,12 +80,14 @@ module.exports = { console.log(" [x] Done"); // return the claim we got //res.status(200).send(JSON.stringify({msg: "you succsessfully published!", txData: response.data})); + return; }).catch(function(error){ // receive response from LBRY // if not successfull, (1) delete file and (2) send response to the client console.log(">> 'publish' error.response.data:", error.response.data); console.log(" [x] Done"); //res.status(500).send(JSON.stringify({msg: "your file was not published", err: error.response.data.error.message})); + return; }) }, @@ -95,14 +101,14 @@ module.exports = { params: { name: claimName } }) .then(function (response) { - console.log(">> Claim_list success"); + console.log(">> 'claim_list' success"); var claimsList = response.data.result.claims; console.log(">> Number of claims:", claimsList.length) // return early if no claims were found if (claimsList.length === 0){ - reject("no claims were found"); + reject("NO_CLAIMS"); console.log("exiting due to lack of claims"); return; } @@ -112,7 +118,7 @@ module.exports = { // return early if no free, public claims were found if (!freePublicClaims || (freePublicClaims.length === 0)){ - reject("no free, public claims were found"); + reject("NO_FREE_PUBLIC_CLAIMS"); console.log("exiting due to lack of free or public claims"); return; } @@ -121,18 +127,22 @@ module.exports = { var orderedPublcClaims = orderTopClaims(freePublicClaims); // create the uri for the first (selected) claim - console.log(">> ordered free public claims", orderedPublcClaims); + console.log(">> ordered free public claims"); var freePublicClaimUri = "lbry://" + orderedPublcClaims[0].name + "#" + orderedPublcClaims[0].claim_id; - console.log(">> your free public claim uri:", freePublicClaimUri); + console.log(">> your free public claim URI:", freePublicClaimUri); // fetch the image to display getClaimWithUri(freePublicClaimUri, resolve, reject); }) .catch(function(error){ - console.log(">> error:", error); + console.log(">> 'claim_list' error:", error); // reject the promise with an approriate message - reject(error.response.data.error); + if (error.code === "ECONNREFUSED"){ + reject("Connection refused. The daemon may not be running.") + } else { + reject(error.response.data.error); + }; return; }); }); @@ -146,7 +156,7 @@ module.exports = { to do: need to pass the URI through a test (use 'resolve') to see if it is free and public. Right now it is jumping straight to 'get'ing and serving the asset. */ var deferred = new Promise(function (resolve, reject){ - console.log(">> your uri:", uri); + console.log(">> get claim based on URI:", uri); // fetch the image to display getClaimWithUri(uri, resolve, reject); }); @@ -154,39 +164,45 @@ module.exports = { }, - serveAllClaims: function(claimName, res){ // note: work in progress - // make a call to the daemon to get the claims list - axios.post('http://localhost:5279/lbryapi', { - method: "claim_list", - params: { name: claimName } - } - ).then(function (response) { - console.log(">> Claim_list success"); - console.log(">> Number of claims:", response.data.result.claims.length) - // return early if no claims were found - if (response.data.result.claims.length === 0){ - res.status(200).sendFile(path.join(__dirname, '../public', 'noClaims.html')); - return; - } - // filter the claims to return free, public claims - var freePublicClaims = filterForFreePublicClaims(response.data.result.claims); - // return early if no free, public claims were found - if (!freePublicClaims || (freePublicClaims.length === 0)){ - res.status(200).sendFile(path.join(__dirname, '../public', 'noClaims.html')); - return; - } - console.log(">> Number of free public claims:", freePublicClaims.length); - // order the claims - var orderedPublicClaims = orderTopClaims(freePublicClaims); - // serve the response - /* - to do: rather than returning json, serve a page of all these claims - */ - res.status(200).send(orderedPublicClaims); - }).catch(function(error){ - console.log(">> /c/ error:", error.response.data); - // serve the response - res.status(500).send(JSON.stringify({msg: "An error occurred while finding the claim list.", err: error.response.data.error.message})); - }) + getAllClaims: function(claimName, res){ // note: work in progress + var deferred = new Promise(function(resolve, reject){ + console.log(">> get all claims data for", claimName) + // make a call to the daemon to get the claims list + axios.post('http://localhost:5279/lbryapi', { + method: "claim_list", + params: { name: claimName } + } + ).then(function (response) { + console.log(">> 'claim_list' success"); + console.log(">> Number of claims:", response.data.result.claims.length) + // return early if no claims were found + if (response.data.result.claims.length === 0){ + res.status(307).sendFile(path.join(__dirname, '../public', 'noClaims.html')); + return; + } + // filter the claims to return free, public claims + var freePublicClaims = filterForFreePublicClaims(response.data.result.claims); + // return early if no free, public claims were found + if (!freePublicClaims || (freePublicClaims.length === 0)){ + res.status(307).sendFile(path.join(__dirname, '../public', 'noClaims.html')); + return; + } + console.log(">> Number of free public claims:", freePublicClaims.length); + // order the claims + var orderedPublicClaims = orderTopClaims(freePublicClaims); + // serve the response + /* + to do: rather than returning json, serve a page of all these claims + */ + res.status(200).send(orderedPublicClaims); + }).catch(function(error){ + console.log(">> 'claim_list' error:", error.response.data); + // serve the response + res.status(500).send(JSON.stringify({msg: "An error occurred while finding the claim list.", err: error.response.data.error.message})); + }) + + }); + return deffered; + } } diff --git a/public/claim.html b/public/claimPlus.html similarity index 100% rename from public/claim.html rename to public/claimPlus.html diff --git a/public/index.html b/public/index.html index d5af3d08..42000b2f 100644 --- a/public/index.html +++ b/public/index.html @@ -18,33 +18,35 @@