Author

Topic: [BRAINSTORM] Any requests for custom extensions/user scripts for BitcoinTalk? (Read 1309 times)

legendary
Activity: 3024
Merit: 2148
Quote
2. Shows user's total earned merit in last 120 days on thread page
This data can be extracted from http://loyce.club/Merit/merit.all.txt (also updated weekly).

You need to setup CORS headers on https://loyce.club for that to work, otherwise browsers won't allow requesting it from other sites. Also make sure that https is always available, because http requests are also rejected.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Writing a post on another thread, thinking of having a data on active profile.
An extension/script which can show the number of active users within the last 24 hours along with the rank.
For ex:
Total Active Users within last 24 hours- 2500
Legendary- XXX
Hero- XXX
Sr- XXX
Full- XXX
Member- XXX
Jr- XXX
Newbie- XXX
This would be somewhat hard to do without keeping a massive collection of information.

AFAIK, the only services which would be able to do this on the backend side are BitcoinTalk itself, and then maybe BPIP.org (considered they have a last active status with their members I believe)

Would have to wait for BPIP to have some sort of API.
Yea I actually looked at BPIP, thinking they would have something like this but apparently not. They need to add sort options or an API like you said. Trying to scrape all that data on your own would take forever.
This only needs data from the past 24 hours, which I have already. Update: It requires more scraping, recent doesn't show Ranks.
Although I'm not sure what this can be used for, it sounds like a nice Sunday afternoon project (it's too hot to go out today). I'll see what I can come up with. Update: see Active users and top posters in the past 24h.



I have 3 (useless?) ideas :
1. Shows user's total earned merit (all-time) on thread page
If someone wants to make this, I have some input data: http://loyce.club/Merit/userID_merit.txt (updated weekly, usually on Friday/Saturday).

Quote
2. Shows user's total earned merit in last 120 days on thread page
This data can be extracted from http://loyce.club/Merit/merit.all.txt (also updated weekly).
hero member
Activity: 1582
Merit: 759
hero member
Activity: 1582
Merit: 759
Writing a post on another thread, thinking of having a data on active profile.
An extension/script which can show the number of active users within the last 24 hours along with the rank.
For ex:
Total Active Users within last 24 hours- 2500
Legendary- XXX
Hero- XXX
Sr- XXX
Full- XXX
Member- XXX
Jr- XXX
Newbie- XXX

This would be somewhat hard to do without keeping a massive collection of information.

AFAIK, the only services which would be able to do this on the backend side are BitcoinTalk itself, and then maybe BPIP.org (considered they have a last active status with their members I believe)

Would have to wait for BPIP to have some sort of API.

Yea I actually looked at BPIP, thinking they would have something like this but apparently not. They need to add sort options or an API like you said. Trying to scrape all that data on your own would take forever.

Well, the point is its already been done, so no point re-inventing the wheel.
member
Activity: 244
Merit: 43
Writing a post on another thread, thinking of having a data on active profile.
An extension/script which can show the number of active users within the last 24 hours along with the rank.
For ex:
Total Active Users within last 24 hours- 2500
Legendary- XXX
Hero- XXX
Sr- XXX
Full- XXX
Member- XXX
Jr- XXX
Newbie- XXX

This would be somewhat hard to do without keeping a massive collection of information.

AFAIK, the only services which would be able to do this on the backend side are BitcoinTalk itself, and then maybe BPIP.org (considered they have a last active status with their members I believe)

Would have to wait for BPIP to have some sort of API.

Yea I actually looked at BPIP, thinking they would have something like this but apparently not. They need to add sort options or an API like you said. Trying to scrape all that data on your own would take forever.
hero member
Activity: 1582
Merit: 759
Writing a post on another thread, thinking of having a data on active profile.
An extension/script which can show the number of active users within the last 24 hours along with the rank.
For ex:
Total Active Users within last 24 hours- 2500
Legendary- XXX
Hero- XXX
Sr- XXX
Full- XXX
Member- XXX
Jr- XXX
Newbie- XXX

This would be somewhat hard to do without keeping a massive collection of information.

AFAIK, the only services which would be able to do this on the backend side are BitcoinTalk itself, and then maybe BPIP.org (considered they have a last active status with their members I believe)

Would have to wait for BPIP to have some sort of API.
sr. member
Activity: 1372
Merit: 322
Writing a post on another thread, thinking of having a data on active profile.
An extension/script which can show the number of active users within the last 24 hours along with the rank.
For ex:
Total Active Users within last 24 hours- 2500
Legendary- XXX
Hero- XXX
Sr- XXX
Full- XXX
Member- XXX
Jr- XXX
Newbie- XXX
member
Activity: 244
Merit: 43
I love this thread and would like to get some more ideas since I have a lot of extra time to program. So far the main task seems to be an "auto bumper". I have made a program in Python that logs in and posts to a specified thread with a specified message (support for multiple messages / random selection).

Example:

Login: username, password

Post: topic, random msg => [msg 1, msg2, msg3]

I still need some input for this last part: do you want it to be standalone? Meaning that you would have something to schedule posts? I think that having a program running all the time is a bit of a hassle so I'm unsure what to do at this point. Also, as far as bumping goes, would it be every 24 hours or every 24 hours ONLY if there hasn't been a reply?

Would love to hear your thoughts!

Sounds awesome. I agree, needs to be standalone. Should be ever 24 only if no other reply/bump imo... Cheesy

I'm trying to find someone to write a script to help me prune my watchlist - unwatching topics I don't care about, but on boards I should monitor is a real fucking pain in the ass. Open thread, click unwatch, close tab or go back twice. fucking a drives me crazy daily lol. I'd pay  .005 for that one! Tongue

Thanks!

Sure I can definitely do that, wouldn't be intrusive at all as it runs completely headless (using python requests, basically fastest possible), could you PM me some more details on that, I'd love to make it Smiley



Edit:

So far I the script scrapes topic titles + specified links (amazingly takes .5 seconds), example output:
Code:
[["Don't Judge a Book By Its Cover ", 'https://bitcointalk.org/index.php?topic=5167698.0;topicseen'], ["Impossibility of a gambling system (Why methods don't work)", 'https://bitcointalk.org/index.php?topic=5167303.0;topicseen'], ['Windice.io Signature Campaign(1 open slot)', 'https://bitcointalk.org/index.php?topic=5118542.0;topicseen'], ['REEE: [US Only] Impeachment Vote', 'https://bitcointalk.org/index.php?topic=5168188.0;topicseen'], ['How to safely store big amounts of BTC?', 'https://bitcointalk.org/index.php?topic=5152308.0;topicseen'], ['Something I noticed when sending USD from Coinbase to my bank account', 'https://bitcointalk.org/index.php?topic=5166175.0;topicseen'], ['Bitcoin trading is a big challenge. ', 'https://bitcointalk.org/index.php?topic=5163840.0;topicseen'], ['Which countries are more friendlier to crypto?', 'https://bitcointalk.org/index.php?topic=5152015.0;topicseen'], ['I think a lot of people just missed their chance', 'https://bitcointalk.org/index.php?topic=5113317.0;topicseen'], ['People who gamble are degenerates, change my mind.', 'https://bitcointalk.org/index.php?topic=5117386.0;topicseen'], ['Bitcoin can go to 42000$???', 'https://bitcointalk.org/index.php?topic=5168445.0;topicseen']]

You currently have 11 topics in your watchlist.

Then I added an "unwatch" function which currently accepts either topic link or topic #, this is just for single use as of now but it's scalable.

Output:

Code:
Successfully unwatched topic: [I think a lot of people just missed their chance]

I can pretty much do anything going forward, whether it's inverse (you only input threads you want to keep) or even keyword oriented. Just let me know!
legendary
Activity: 3570
Merit: 1959
I love this thread and would like to get some more ideas since I have a lot of extra time to program. So far the main task seems to be an "auto bumper". I have made a program in Python that logs in and posts to a specified thread with a specified message (support for multiple messages / random selection).

Example:

Login: username, password

Post: topic, random msg => [msg 1, msg2, msg3]

I still need some input for this last part: do you want it to be standalone? Meaning that you would have something to schedule posts? I think that having a program running all the time is a bit of a hassle so I'm unsure what to do at this point. Also, as far as bumping goes, would it be every 24 hours or every 24 hours ONLY if there hasn't been a reply?

Would love to hear your thoughts!

Sounds awesome. I agree, needs to be standalone. Should be ever 24 only if no other reply/bump imo... Cheesy

I'm trying to find someone to write a script to help me prune my watchlist - unwatching topics I don't care about, but on boards I should monitor is a real fucking pain in the ass. Open thread, click unwatch, close tab or go back twice. fucking a drives me crazy daily lol. I'd pay  .005 for that one! Tongue

Thanks!
member
Activity: 244
Merit: 43
Bumping this, any further ideas?

I love this thread and would like to get some more ideas since I have a lot of extra time to program. So far the main task seems to be an "auto bumper". I have made a program in Python that logs in and posts to a specified thread with a specified message (support for multiple messages / random selection).

Example:

Login: username, password

Post: topic, random msg => [msg 1, msg2, msg3]

I still need some input for this last part: do you want it to be standalone? Meaning that you would have something to schedule posts? I think that having a program running all the time is a bit of a hassle so I'm unsure what to do at this point. Also, as far as bumping goes, would it be every 24 hours or every 24 hours ONLY if there hasn't been a reply?

Would love to hear your thoughts!
hero member
Activity: 1582
Merit: 759
Bumping this, any further ideas?
hero member
Activity: 1582
Merit: 759
Are you talking about the nested quotes? If so, you can check User Script: Automatically remove nested quotes v1.1.1
see here Is not important But if there was a tool hide the large quote
Something like https://i.ibb.co/7JQgFYN/image.png

I'll make an attempt to try to build that when I get a chance.
hero member
Activity: 1498
Merit: 596
Are you talking about the nested quotes? If so, you can check User Script: Automatically remove nested quotes v1.1.1
see here Is not important But if there was a tool hide the large quote
Something like https://i.ibb.co/7JQgFYN/image.png
I don't think your suggested script is available as of yet.
Maybe the script can be helpful to those users who don't like to remove the large quotes manually or care to remove. Maybe some users like me want to do this thing manually.

I have a self-moderated thread with my local rule not to quote the whole OP, yet users quotes and I don't have the option other than to delete. So the script can be handy to those type of users.

Let's see what answer comes up from a dev... Smiley
sr. member
Activity: 490
Merit: 275
Are you talking about the nested quotes? If so, you can check User Script: Automatically remove nested quotes v1.1.1
see here Is not important But if there was a tool hide the large quote
Something like https://i.ibb.co/7JQgFYN/image.png
member
Activity: 241
Merit: 98
I think we need something like archiving the specific thread in a specific board,especially iff you're hunting EIO/ICOs to invest in,we need that archiving features.
hero member
Activity: 1498
Merit: 596
is there any tool cut (hide) long Quote?
Are you talking about the nested quotes? If so, you can check User Script: Automatically remove nested quotes v1.1.1
sr. member
Activity: 490
Merit: 275
is there any tool cut (hide) long Quote?
hero member
Activity: 1582
Merit: 759
Getting a bump on this.

Still gathering potential ideas.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
I'll have time for it tomorrow. I'll also make a new topic tomorrow (something like: "loyce.club crowdsourced user scripts"), because (although very interesting) I think we're a bit off-topic here.
For anyone who's interested on continuing this, I've created [project] api.loyce.club: crowdsourcing Bitcointalk data.
hero member
Activity: 1582
Merit: 759
Would also be nice to have a script that automatically bumps a thread every 24 hours, ideally deleting the previous bump so as not to spam up the thread.

If this could be combined with custom texts that are randomly cycled that would be even better.

If something like this already exists, please do let me know as I play to launch a service thread soon and this would be very useful (+5 merits for the link!)
https://github.com/buxlover/autobump

I didn't create this personally, nor have I inspected it.

People have sold similar bots in the past, and even tried to use this as a service.

Yea, as I expected, you'll need a server setup for this though. Not something simple like a chrome extension.
copper member
Activity: 2926
Merit: 2348
Would also be nice to have a script that automatically bumps a thread every 24 hours, ideally deleting the previous bump so as not to spam up the thread.

If this could be combined with custom texts that are randomly cycled that would be even better.

If something like this already exists, please do let me know as I play to launch a service thread soon and this would be very useful (+5 merits for the link!)
https://github.com/buxlover/autobump

I didn't create this personally, nor have I inspected it.

People have sold similar bots in the past, and even tried to use this as a service.
hero member
Activity: 1582
Merit: 759
Would also be nice to have a script that automatically bumps a thread every 24 hours, ideally deleting the previous bump so as not to spam up the thread.

If this could be combined with custom texts that are randomly cycled that would be even better.

If something like this already exists, please do let me know as I play to launch a service thread soon and this would be very useful (+5 merits for the link!)

At the very least this would have to be an extension, and not sure how easy this would be, or if it's even possible within the scopes of a browser extension.

Would probably have to be something server side.
legendary
Activity: 2030
Merit: 1189
Would also be nice to have a script that automatically bumps a thread every 24 hours, ideally deleting the previous bump so as not to spam up the thread.

If this could be combined with custom texts that are randomly cycled that would be even better.

If something like this already exists, please do let me know as I play to launch a service thread soon and this would be very useful (+5 merits for the link!)
hero member
Activity: 1582
Merit: 759
No worries man. Yea, I think there's a difference of interpretation between Windows versions of PHP & Linux, which may be why. I'm running on Mac right now.

I'll make a combined version tonight/tomorrow, and switch it to a regex just in case.

Thx, please share afterwards. Smiley
I gonna run the old code on my Mac later/tomorrow. I'm curious. Grin

Could just be my machine lol. I'll let you know Smiley
full member
Activity: 504
Merit: 137
Nope.
No worries man. Yea, I think there's a difference of interpretation between Windows versions of PHP & Linux, which may be why. I'm running on Mac right now.

I'll make a combined version tonight/tomorrow, and switch it to a regex just in case.

Thx, please share afterwards. Smiley
I gonna run the old code on my Mac later/tomorrow. I'm curious. Grin
hero member
Activity: 1582
Merit: 759
~snip

Good job man! You're fast.

What system/PHP version are you running?

I tried running on my local system. When you pull merit.all.txt, is it showing spaces for you, or tabs? For me, locally, it's showing tabs, so the top had to be changed to the following.

Code:
$url = "http://loyce.club/Merit/merit.all.txt"; 
$file = file($url);
$file = str_replace("\t", ",", $file);
$file = str_replace("\r\n", "",$file);

I'm not sure why there's a difference, perhaps it's environmental. But, I'd maybe switch to a regex to permit both spaces/tabs just in case.

Also, the return null; within the functions aren't allowing the table to be finished semantically (no ), so I'd drop those, or move the echo up.

Code:
echo "";
return null;

For todos, it's probably a good idea to accept no parameters as well, combining the script to allow the user to specify a output method (JSON, or table format)

I can help out providing modifications to your code, but I wanna grab your permission first. Your code after all.

Good job though, and thanks!

Hi, thanks for you inputs.
As I said: It's been a while since I actively coded a lot. Grin
Of course you can use and modify this code. Feel free.

For me it is tabs aswell, but it works like a charme (win xamp v3.2.2. w/ std ini's).
regex are far better! I am just suffering from forgotten knowledge and lazyness. (see above: it has been a while Grin)

Return and Echo is obv incorrect and has to be changed.
Parameters: I was not sure what was exactly needed. So I made just two versions. But afterall a good idea to just add another bool for JSON output or not, or something like this. Also I initially wanted to work with switch() and parse the whole array as a default.

Holy grail would be a read-only database access to the effected tables. Would be much faster and easier.

Cheers!

No worries man. Yea, I think there's a difference of interpretation between Windows versions of PHP & Linux, which may be why. I'm running on Mac right now.

I'll make a combined version tonight/tomorrow, and switch it to a regex just in case.
full member
Activity: 504
Merit: 137
Nope.
~snip

Good job man! You're fast.

What system/PHP version are you running?

I tried running on my local system. When you pull merit.all.txt, is it showing spaces for you, or tabs? For me, locally, it's showing tabs, so the top had to be changed to the following.

Code:
$url = "http://loyce.club/Merit/merit.all.txt"; 
$file = file($url);
$file = str_replace("\t", ",", $file);
$file = str_replace("\r\n", "",$file);

I'm not sure why there's a difference, perhaps it's environmental. But, I'd maybe switch to a regex to permit both spaces/tabs just in case.

Also, the return null; within the functions aren't allowing the table to be finished semantically (no ), so I'd drop those, or move the echo up.

Code:
echo "";
return null;

For todos, it's probably a good idea to accept no parameters as well, combining the script to allow the user to specify a output method (JSON, or table format)

I can help out providing modifications to your code, but I wanna grab your permission first. Your code after all.

Good job though, and thanks!

Hi, thanks for you inputs.
As I said: It's been a while since I actively coded a lot. Grin
Of course you can use and modify this code. Feel free.

For me it is tabs aswell, but it works like a charme (win xamp v3.2.2. w/ std ini's).
regex are far better! I am just suffering from forgotten knowledge and lazyness. (see above: it has been a while Grin)

Return and Echo is obv incorrect and has to be changed.
Parameters: I was not sure what was exactly needed. So I made just two versions. But afterall a good idea to just add another bool for JSON output or not, or something like this. Also I initially wanted to work with switch() and parse the whole array as a default.

Holy grail would be a read-only database access to the effected tables. Would be much faster and easier.

Cheers!
hero member
Activity: 1582
Merit: 759
~snip

Good job man! You're fast.

What system/PHP version are you running?

I tried running on my local system. When you pull merit.all.txt, is it showing spaces for you, or tabs? For me, locally, it's showing tabs, so the top had to be changed to the following.

Code:
$url = "http://loyce.club/Merit/merit.all.txt"; 
$file = file($url);
$file = str_replace("\t", ",", $file);
$file = str_replace("\r\n", "",$file);

I'm not sure why there's a difference, perhaps it's environmental. But, I'd maybe switch to a regex to permit both spaces/tabs just in case.

Also, the return null; within the functions aren't allowing the table to be finished semantically (no ), so I'd drop those, or move the echo up.

Code:
echo "";
return null;

For todos, it's probably a good idea to accept no parameters as well, combining the script to allow the user to specify a output method (JSON, or table format)

I can help out providing modifications to your code, but I wanna grab your permission first. Your code after all.

Good job though, and thanks!
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
@CryptoNeed: I haven't had the time to thoroughly look at it, but thanks for the code!

Call this file anything-you-want.php and just upload it in the same folder as the merit.all.txt file.

But if you don’t want, I could try making my own as well. I thought I had to scrape each user merit page or similar.

Edit:@Loyce how do you get the name of the users and posts?
I'll have time for it tomorrow. I'll also make a new topic tomorrow (something like: "loyce.club crowdsourced user scripts"), because (although very interesting) I think we're a bit off-topic here.

All my public Merit data is summarized in this post, including usernames. Post titles are published in a 98 MB large file, I can make a less bloated version if needed.
full member
Activity: 504
Merit: 137
Nope.
Hope it fits the needs.  Smiley
Is this something I run on the server?
(complete n00b here)
Call this file anything-you-want.php and just upload it in the same folder there is the merit.all.txt file.

But if you don’t want, I could try making my own as well. I thought I had to scrape each user merit page or similar.

Exactly. Sorry, I forgot to mention it. I made two files.
The HTML-Output file will generate clickable links for everyone and the other file will provide other users with a "light API" for your file.
If you safe these files in the same directory on your server where the merit.all.txt is located, you can set $url to "merit.all.txt". If not, you may need to adjust the variable.
legendary
Activity: 2758
Merit: 6830
Hope it fits the needs.  Smiley
Is this something I run on the server?
(complete n00b here)
Call this file anything-you-want.php and just upload it in the same folder as the merit.all.txt file.

But if you don’t want, I could try making my own as well. I thought I had to scrape each user merit page or similar.

Edit:@Loyce how do you get the name of the users and posts?
full member
Activity: 504
Merit: 137
Nope.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Hope it fits the needs.  Smiley
Is this something I run on the server?
(complete n00b here)
full member
Activity: 504
Merit: 137
Nope.
Seems to work, could be improved for sure.
I think you're overestimating my php-knowledge: I have no idea what to do with this Tongue

Quote
it would be much faster to send individual request to the database (e.g. by GET).
If you tell us the structure of the database, it is actually super easy to implement.
I don't have a database, just static HTML. That makes it very fast to browse as the server just has to read the file from disk, but I'm also at the point that adding more functionality becomes exceedingly difficult. I know nothing about databases and php Sad

Np, I will write an example script based on your .txt.
Database details for such functionalities would have to be provided by btct admin anyways.

Will adjust the script now ...

Output in HTML:

Quote

//GET Request by: merithtml.php?donor=USERID

$url = "http://loyce.club/Merit/merit.all.txt";
$file = file($url);
$file = str_replace("   ", ",",$file);
$file = str_replace("\r\n", "",$file);
// put the array together
foreach ($file as $line => $value) {
   $value = explode(",", $value);
    $bigArray[] = array("Donor" => $value[3], "Recipient" => $value[4], "Merits" => $value[1], "Msg" => $value[2], "DTG" => $value[0]);
}

function searchForDonor($uid, $array) {
   echo "";
   foreach ($array as $key => $val) {
      if($val["Donor"] === $uid) {
         //print_r($array[$key]);
         echo "
               
               
               
               
               
            ";
      }
   }
   return null;
   echo "
".date("d.m.Y H:i:s", $val["DTG"])."".$val["Msg"]."".$val["Donor"]."-(".$val["Merits"].")->".$val["Recipient"]."
";
}

function searchForRecipient($uid, $array) {
   echo "";
   foreach ($array as $key => $val) {
      if($val["Recipient"] === $uid) {
         //print_r($array[$key]);
         echo "
               
               
               
               
               
            ";
      }
   }
   return null;
   echo "
".date("d.m.Y H:i:s", $val["DTG"])."".$val["Msg"]."".$val["Recipient"]."<-(".$val["Merits"].")-".$val["Donor"]."
";
}

if(isset($_GET["donor"])) {
   searchForDonor($_GET["donor"], $bigArray);
}

if(isset($_GET["recipient"])) {
   searchForRecipient($_GET["recipient"], $bigArray);
}

?>


Output as JSON array:

Quote

//GET Request by: meritjson.php?donor=USERID
header('Content-Type: application/json');
$url = "http://loyce.club/Merit/merit.all.txt";
$file = file($url);
$file = str_replace("   ", ",",$file);
$file = str_replace("\r\n", "",$file);
// put the array together
foreach ($file as $line => $value) {
   $value = explode(",", $value);
    $bigArray[] = array("Donor" => $value[3], "Recipient" => $value[4], "Merits" => $value[1], "Msg" => $value[2], "DTG" => $value[0]);
}

function searchForDonor($uid, $array) {
   foreach ($array as $key => $val) {
      if($val["Donor"] === $uid) {
         echo json_encode($array[$key], JSON_PRETTY_PRINT);
      }
   }
   return null;
}

function searchForRecipient($uid, $array) {
   foreach ($array as $key => $val) {
      if($val["Recipient"] === $uid) {
         echo json_encode($array[$key], JSON_PRETTY_PRINT);
      }
   }
   return null;
}

if(isset($_GET["donor"])) {
   searchForDonor($_GET["donor"], $bigArray);
}

if(isset($_GET["recipient"])) {
   searchForRecipient($_GET["recipient"], $bigArray);
}


?>


Once uploaded, you can search your .txt for merits given and received by users through file.php?donor=USERID and ?recipient=USERID
Hope it fits the needs.  Smiley
full member
Activity: 504
Merit: 137
Nope.
Seems to work, could be improved for sure.
I think you're overestimating my php-knowledge: I have no idea what to do with this Tongue

Quote
it would be much faster to send individual request to the database (e.g. by GET).
If you tell us the structure of the database, it is actually super easy to implement.
I don't have a database, just static HTML. That makes it very fast to browse as the server just has to read the file from disk, but I'm also at the point that adding more functionality becomes exceedingly difficult. I know nothing about databases and php Sad

Np, I will write an example script based on your .txt.
Database details for such functionalities would have to be provided by btct admin anyways.

Will adjust the script now ...
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
Seems to work, could be improved for sure.
I think you're overestimating my php-knowledge: I have no idea what to do with this Tongue

Quote
it would be much faster to send individual request to the database (e.g. by GET).
If you tell us the structure of the database, it is actually super easy to implement.
I don't have a database, just static HTML. That makes it very fast to browse as the server just has to read the file from disk, but I'm also at the point that adding more functionality becomes exceedingly difficult. I know nothing about databases and php Sad
full member
Activity: 504
Merit: 137
Nope.
I'm assuming he's just talking about producing an API endpoint. Sort of, a URL which supports a GET request and returns a valid format (JSON). No library needed.

Pretty much what you have here (http://loyce.club/Merit/merit.all.txt), just converted to a JSON format w/ the ability to filter based off parameters (sending user, receiving user, etc)

It could be done w/ 1 front-facing PHP script.
I don't know JSON/PHP (and don't really have the time to learn it now), so it's not something I can easily produce. But if someone (you?) wants to create it based on the full Merit data, go ahead. I can create for instance api.loyce.club to host it. Just tell me what I need to do Tongue

Has been a while since I did PHP but I hope this helps:

Quote
header("Content-type:application/json");

//dtg, merit, msg, giver, receiver
$url = "merits.txt";
$file = file($url);
$file = str_replace("   ", ",",$file);
$file = str_replace("\r\n", "",$file);
$jsonObj = array();
foreach ($file as $line => $value) {
   $value = explode(",", $value);
   // unsorted (line numbers)
   //$file[$line] = array("DTG" => $value[0], "Merit" => $value[1], "Message" => $value[2], "Donor" => $value[3], "Receiver" => $value[4]);

   //array sorted by DTG
   $jsonObj[]= array($value[0] => array("Merit" => $value[1], "Message" => $value[2], "Donor" => $value[3], "Receiver" => $value[4]));
}
echo json_encode($jsonObj, JSON_PRETTY_PRINT);

?>




Seems to work, could be improved for sure. But otherwise ... it has been a while. Besides this and as already stated, it would be much faster to send individual request to the database (e.g. by GET).
If you tell us the structure of the database, it is actually super easy to implement.

I have forgotten my actual request for this topic ...  Roll Eyes Grin

Got it again:
Sometimes quoting a full text makes posts less well structured. While there is a function to full-quote other posts, I would like to have a function to mark and insert text you actually want to quote from other posts.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
I'm assuming he's just talking about producing an API endpoint. Sort of, a URL which supports a GET request and returns a valid format (JSON). No library needed.

Pretty much what you have here (http://loyce.club/Merit/merit.all.txt), just converted to a JSON format w/ the ability to filter based off parameters (sending user, receiving user, etc)

It could be done w/ 1 front-facing PHP script.
I don't know JSON/PHP (and don't really have the time to learn it now), so it's not something I can easily produce. But if someone (you?) wants to create it based on the full Merit data, go ahead. I can create for instance api.loyce.club to host it. Just tell me what I need to do Tongue
hero member
Activity: 1582
Merit: 759
The main problem is probably getting the merit data. You would need to make your own scraper to get merit data and then build an API or maybe ask Vod or Loyce for an API.
I have no plans on making an API (and have no idea how to do this). Besides, I don't scrape Merit continuously, only weekly (full list: merit.all.txt).

I'm assuming he's just talking about producing an API endpoint. Sort of, a URL which supports a GET request and returns a valid format (JSON). No library needed.

Pretty much what you have here (http://loyce.club/Merit/merit.all.txt), just converted to a JSON format w/ the ability to filter based off parameters (sending user, receiving user, etc)

It could be done w/ 1 front-facing PHP script.

For example,
http://loyce.club/Merit/merit.all.php?sending_user=2458002

@TryNinja, I'm not sure but I recall that Vod may have mentioned about an API in the past. So I'm not sure if one is in development right now.
Could have been me asking about it tho, so not 100% certain.
legendary
Activity: 3290
Merit: 16489
Thick-Skinned Gang Leader and Golden Feather 2021
The main problem is probably getting the merit data. You would need to make your own scraper to get merit data and then build an API or maybe ask Vod or Loyce for an API.
I have no plans on making an API (and have no idea how to do this). Besides, I don't scrape Merit continuously, only weekly (full list: merit.all.txt).

API probably is best solution, but i was thinking about parsing HTML from user's merit summary page & built a list/dictionary contains total merit sent & count of merit transaction to an user.
Instead of scraping individual user's merit summaries, it's much less work to just scrape Recent merits and keep track (that's what BPIP does).

I think Piggy updated it to where it does actually support PMs.
Correct. Maggiordome was polluting the list of unread posts too much.
hero member
Activity: 1582
Merit: 759
FYI, when I get the chance, I'll be adding post links to the reserved sections just to keep this a tad more organized. See responses below.

A script that automatically sends you a PM me with any threads you were mentioned in would be good.

I'd also like a script that adds a chatbox to the site, allowing users to casually chat with one another.
It doesn't send PMs but there is this "Maggiordomo" bot that posts in your "mentions" thread or send you a message on Telegram everytime you get mentioned/quoted.

[RELEASED] @mention notification bot - now with Telegram

I think Piggy updated it to where it does actually support PMs.

I've thought that it'd be interesting to publish an adblocker subscription for signatures. You can block individual users' signatures with eg. bitcointalk.org##.sig186520, and/or you can try to block signature ads generally with filters like bitcointalk.org##.signature table.



Userscripts are a good idea. Let me know if some small change on my end will help your userscript a lot.

Awesome! Thank you, I will for sure let you know if anything comes up Smiley

I've thought that it'd be interesting to publish an adblocker subscription for signatures. You can block individual users' signatures with eg. bitcointalk.org##.sig186520, and/or you can try to block signature ads generally with filters like bitcointalk.org##.signature table.



Userscripts are a good idea. Let me know if some small change on my end will help your userscript a lot.
Does it affect on forums signature(which comes from your auctions?)?

Singature adblocker is really bad idea for the campaigns. If every forum member will start using this then there will be low result for signature campaigns.
And it will prevent upcoming campaigns.

and yeah there will be development(ad blocker for signature, not for specific users, for every users) in this ad blocker will come and it will attract users to use this ad blocker and this will affect on campaigns(likely not on running but upcoming campaigns).

I think he only meant thread signature campaigns. The ones you join.

Out of respect for the forums operations & theymos, I wouldn't build an adblock for the actual forum ads themselves.

@theymos, It'd be nice to block entire signature campaigns in general (incase one becomes rather annoying w/ their ads). For example, you block one user w/ the signature ad + tick a box that says "Block others with the same signature as well". It would block the original users signature + look for matching BBcode/HTML and block the rest.
legendary
Activity: 2758
Merit: 6830
A script that automatically sends you a PM me with any threads you were mentioned in would be good.

I'd also like a script that adds a chatbox to the site, allowing users to casually chat with one another.
It doesn't send PMs but there is this "Maggiordomo" bot that posts in your "mentions" thread or send you a message on Telegram everytime you get mentioned/quoted.

[RELEASED] @mention notification bot - now with Telegram
legendary
Activity: 2030
Merit: 1189
A script that automatically sends you a PM me with any threads you were mentioned in would be good.

I'd also like a script that adds a chatbox to the site, allowing users to casually chat with one another.
legendary
Activity: 2758
Merit: 6830
I've been thinking about script similar with Enhanced merit UI [1.1], but showing total merit sent & count of merit transaction to the merited user from user's merit summary (which means total & count in last 4 months)

My concern is loading time to obtain and process the data, is it possible to make such script but works quickly?
With an API that returns the merit data and if the script is only activated when you click on an specific user rather than preloading it for every user on the page, then yes.

The main problem is probably getting the merit data. You would need to make your own scraper to get merit data and then build an API or maybe ask Vod or Loyce for an API.
legendary
Activity: 3178
Merit: 1363
Slava Ukraini!
Does it affect on forums signature(which comes from your auctions?)?
Probably no. Forum ads is HTML code, signatures are made using BBCode, so it's two different things.
member
Activity: 422
Merit: 52
I've thought that it'd be interesting to publish an adblocker subscription for signatures. You can block individual users' signatures with eg. bitcointalk.org##.sig186520, and/or you can try to block signature ads generally with filters like bitcointalk.org##.signature table.



Userscripts are a good idea. Let me know if some small change on my end will help your userscript a lot.
Does it affect on forums signature(which comes from your auctions?)?

Singature adblocker is really bad idea for the campaigns. If every forum member will start using this then there will be low result for signature campaigns.
And it will prevent upcoming campaigns.

and yeah there will be development(ad blocker for signature, not for specific users, for every users) in this ad blocker will come and it will attract users to use this ad blocker and this will affect on campaigns(likely not on running but upcoming campaigns).
administrator
Activity: 5222
Merit: 13032
I've thought that it'd be interesting to publish an adblocker subscription for signatures. You can block individual users' signatures with eg. bitcointalk.org##.sig186520, and/or you can try to block signature ads generally with filters like bitcointalk.org##.signature table.



Userscripts are a good idea. Let me know if some small change on my end will help your userscript a lot.
copper member
Activity: 2926
Merit: 2348
I would like the ability to click on a link on a post that starts a PM to the author of the post that says:
Quote
Hi [username],

Regarding [link to post]

One click links on a post to view a person's post history and thread creation history would also be nice. As would a one click link to a user's gettopics link from a post.

I strongly prefer something that can be run from greesemonkey.

Thanks.

That wouldn't be too difficult, I can repurpose https://github.com/Initscri/BPIP-Chrome-Extension/blob/master/content-script.js for this

Icons or just text links?
Text links are preferable. Thanks.
legendary
Activity: 2758
Merit: 6830
I was wondering if TryNinja already did this but if not maybe I should ask this here.
Totally forgot about this one. Tongue

I'll give it a try (if OP doesn't do it first).

Edit: I managed to make it work, but I'm trying to fix a problem that happens when the post you're trying to post has another quote inside. Hard stuff for someone who sucks at js Tongue

Edit 2: ok so... due to the way I made the script, there was some issues like not breaking lines correctly and bugging out when there are multiple quotes in the post. Because of that, I'll remake the script so it has less bugs.
legendary
Activity: 3570
Merit: 1959
Is it only me, or does anyone else wake up to a 2-page watchlist of mostly crap they don't care about? Then having to click on each one and "unwatch" it.... Roll Eyes

How about a quick un-watch button on the watchlist page?   I would love this myself! Cheesy

Thanks!
hero member
Activity: 2030
Merit: 578
No God or Kings, only BITCOIN.
I was wondering if TryNinja already did this but if not maybe I should ask this here.
You can alredy make a quote manually (by getting the unixtime, link, author and using it in the quote format). So, Maybe I can try creating a script for this, if anyone is interested.

This is opened by iasenko on his topic Quote posts from locked topics? Why it's not allowed?, I guess this will be better script for a hassle-free quoting of replies even it is locked.
legendary
Activity: 2240
Merit: 3150
₿uy / $ell ..oeleo ;(
How about a reporting bot based on a given text/link. Monitoring resent posts and reports.
It would be very useful for my CLUB Smiley

Something we can chase stuff like this >
***

The link of spam has changed
old t.me/joinchat/AAAAAEvVWaRnXNQkA0G-aA
new t.me/joinchat/AAAAAEvVWaR_kl9EzH_b2g


Another change
old t.me/joinchat/AAAAAEvVWaRnXNQkA0G-aA
old t.me/joinchat/AAAAAEvVWaR_kl9EzH_b2g
New t.me/joinchat/AAAAAEvVWaQByBeaoezapA

edit
not even time to write, that any new spam has been removed  Grin

 Smiley
hero member
Activity: 1582
Merit: 759
I would like the ability to click on a link on a post that starts a PM to the author of the post that says:
Quote
Hi [username],

Regarding [link to post]

One click links on a post to view a person's post history and thread creation history would also be nice. As would a one click link to a user's gettopics link from a post.

I strongly prefer something that can be run from greesemonkey.

Thanks.

That wouldn't be too difficult, I can repurpose https://github.com/Initscri/BPIP-Chrome-Extension/blob/master/content-script.js for this

Icons or just text links?
member
Activity: 422
Merit: 52
scripts such which shows the most merited post of specific user on his profile(asce/desc). shows most red trust user. shows list of posts, thread.

EDITED: Add-on which allows users to view all page even if thread has more than 50 or 100 pages.

users can view all messages on one page.
copper member
Activity: 2926
Merit: 2348
I would like the ability to click on a link on a post that starts a PM to the author of the post that says:
Quote
Hi [username],

Regarding [link to post]

One click links on a post to view a person's post history and thread creation history would also be nice. As would a one click link to a user's gettopics link from a post.

I strongly prefer something that can be run from greesemonkey.

Thanks.
hero member
Activity: 1582
Merit: 759
Yes, mainly to avoid phishing sites. Because there are so many image storage/ upload providers, that we are not able to know them all. It's better if we can see images without clicking on links and visit those sites. My trick works fine if images attached in posts published recently, we can easily visit post history and find that post. However, it will costs a little more time if we have to find posts made months ago, just to view images.
So, the question is, if you want to see images posted by Newbies (and don't buy Copper Membership). You can directly click on links to see images, but this way will put you under risks of phising link traps. Clicking on links is fine if you know well about those sites, but the fact is there are so many sites provide image uploads, so you are not able to know them all.  Consequently, if you have such habit, you might instantly click on links to unknow sites, that are potentially phising sites. Be careful!

TBH, that's not a super hard ask.

If I get the time, I'll see if I can code something up.
full member
Activity: 462
Merit: 155
Yes, mainly to avoid phishing sites. Because there are so many image storage/ upload providers, that we are not able to know them all. It's better if we can see images without clicking on links and visit those sites. My trick works fine if images attached in posts published recently, we can easily visit post history and find that post. However, it will costs a little more time if we have to find posts made months ago, just to view images.
So, the question is, if you want to see images posted by Newbies (and don't buy Copper Membership). You can directly click on links to see images, but this way will put you under risks of phising link traps. Clicking on links is fine if you know well about those sites, but the fact is there are so many sites provide image uploads, so you are not able to know them all.  Consequently, if you have such habit, you might instantly click on links to unknow sites, that are potentially phising sites. Be careful!
hero member
Activity: 1582
Merit: 759
Excellent idea! It is just a beginning of amazing upcoming things (userscripts/ addons). It is too soon to think of groups (categories) of userscripts or add-ons, but I believe when suggestion from community become larger, OP should sort them out into groups (categories). To clarify, some sort of groups (categories) like:
- Forum UI
- Archive tool
- Signature screening tool
- Flag screening tool
- etc.

BTW, you reminded me that months ago, I saw addons for Bitcointalk Theme, there: ✔️ GREEN THEME/STYLE for Bitcointalk.org | 2019.
Suggestion:
Orginated from that topic, I created my topic: [Guide] Viewing images without quoting posts/ OPs.
Can you (or others) can build an userscript to view Images without quoting posts/ OPs, and don't have to spend a little time to visit post histories?

So, essentially, just an extension that would perhaps put a minor link near the original link to the image, which says "Show image from newbie".
If clicked, it would pull the image essentially replacing the link w/ the image in the DOM.

You essentially just don't want to have to open it up in a new window?

Sort of like this: https://i.imgur.com/9TFT3sJ.png

Did i get that right?
full member
Activity: 462
Merit: 155
Excellent idea! It is just a beginning of amazing upcoming things (userscripts/ addons). It is too soon to think of groups (categories) of userscripts or add-ons, but I believe when suggestion from community become larger, OP should sort them out into groups (categories). To clarify, some sort of groups (categories) like:
- Forum UI
- Archive tool
- Signature screening tool
- Flag screening tool
- etc.

BTW, you reminded me that months ago, I saw addons for Bitcointalk Theme, there: ✔️ GREEN THEME/STYLE for Bitcointalk.org | 2019.
Suggestion:
Orginated from that topic, I created my topic: [Guide] Viewing images without quoting posts/ OPs.
Can you (or others) can build an userscript to view Images without quoting posts/ OPs, and don't have to spend a little time to visit post histories?
hero member
Activity: 1582
Merit: 759
After looking through the extension list here, along with creating a few extensions/scripts of my own, I'm more or less curious to see what the community actually wants in terms of scripts/extensions.

I thought I'd open up a thread to gauge interest, and see if anyone who doesn't code may have ideas regarding extensions/scripts.

If you have a script idea you'd like to see, post it below, and maybe I or another programmer will pick it up.

Provide as much detail/examples as you can to explain you idea!

Cheers!



Reserved, will attempt to organize links to ideas here...
Jump to: