Merge remote-tracking branch 'origin/master' into homepage

This commit is contained in:
Jeremy Kauffman 2017-03-14 10:02:07 -04:00
commit 991383d732
12 changed files with 71 additions and 21 deletions

View file

@ -0,0 +1,16 @@
---
author: jeremy
title: 'We\'re on the Verge of Complete Cryptocurrency Deregulation'
date: '2017-03-08 11:38:00'
cover: 'crypto-dereg.jpg'
---
Is New Hampshire the best place to run a cryptocurrency business? It already has the highest per-capita Bitcoin usage. And very soon it is likely to have the most favorable regulatory climate.
While states like Hawaii are passing bills [so onerous](http://www.coindesk.com/coinbase-just-stopped-serving-bitcoin-hawaii/) that Bitcoin might as well be illegal, New Hampshire is passing legislation to completely deregulate cryptocurrencies. [House Bill 436](http://www.gencourt.state.nh.us/bill_status/Results.aspx?q=1&txtsessionyear=2017) exempts virtual currencies from all state regulation. Just minutes ago, it passed the New Hampshire statehouse, 185-170.
LBRY is thrilled to have been a part of this process. As the governor-appointed industry expert on virtual currencies, I'm glad I finally had the chance to give back to a technology that has given so much to me.
However, most of the credit goes to Represenatives [Barbara Biggie](http://www.gencourt.state.nh.us/house/members/member.aspx?member=377207) and [Keith Ammon](http://www.gencourt.state.nh.us/house/members/member.aspx?member=377204), who introduced the bill, as well as Representative [John Hunt](http://www.gencourt.state.nh.us/house/members/member.aspx?member=372375), who helped steer it out of committee and defended it on the floor. Additionally, the [Chamber of Digital Commerce](https://digitalchamber.org/) gave us invaluable advice and advocated heavily on behalf of the bill.
The battle is not over! If you support this effort, please [let the governor know](https://www.governor.nh.gov/contact/index.htm) and give thanks to the hard work of those mentioned above.

View file

@ -0,0 +1,25 @@
---
author: reilly
title: 'Play No Evil'
date: '2017-03-09 00:19:00'
cover: 'censored-banner.png'
---
One of the pillars of LBRY, and in fact cryptocurrencies on the whole, is censorship resistance.
Censorship is a problem to varying degrees in all media. LBRY seeks to minimize institutional censorship through decentralization of publishing and empowering creators everywhere.
One of the most interesting case studies of censorship is video games. From country to country, different cultures (or governments who enforce a particular culture) yield wildly different results for virtually identical content, depending on what is considered socially permissible.
No channel covers this better than Censored Gaming.
![Censored Gaming](/img/news/censored-inline2.jpg)
Since the dawn of video games and interactive media, what people should and shouldnt be able to do in a game has remained forever a hot button issue.
From 16bit “boobs” measuring a hefty 3 pixels bra size, to the hot coffee mod scandal of Grand Theft Auto: San Andreas, to the different cultural interpretations of meaning between Japanese and American game translations, to the Red Cross owning the IP to pictures of red crosses... no pixel is left unturned in Dan and the Censored Gaming teams pursuit of shining a light on censorship.
Free your voice while being delightfully entertaining. Censored Gaming and LBRY are a match made in 1st Amendment heaven.
Suppport Censored Gaming on Pateron right here: https://www.patreon.com/CensoredGaming
**Not on LBRY yet?** [Get an invite here](https://lbry.io/get). Feeling censored and want to stretch your expression a bit more? Email reilly@lbry.io for a ride on the wild side of publishing.

View file

@ -99,6 +99,7 @@ class Controller
$router->post('/log-upload', 'OpsActions::executeLogUpload');
$router->any('/list/subscribe', 'MailActions::executeSubscribe');
$router->any('/list/subscribed', 'MailActions::executeSubscribed');
$router->get('/list/confirm/{hash}', 'MailActions::executeConfirm');
$router->any('/dmca', 'ReportActions::executeDmca');

View file

@ -50,6 +50,11 @@ class MailActions extends Actions
return ['mail/subscribe', ['confirmSuccess' => true, 'learnFooter' => true]];
}
public static function executeSubscribed()
{
return ['mail/subscribe', ['confirmSuccess' => true, 'learnFooter' => true]];
}
public static function prepareSubscribeFormPartial(array $vars)

View file

@ -94,11 +94,11 @@ class Mailgun
return true;
}
protected static function getConfirmHash($email, $timestamp = null, $nonce = null, $useOldSecret = false)
protected static function getConfirmHash($email, $timestamp = null, $nonce = null)
{
$timestamp = $timestamp !== null ? $timestamp : time();
$nonce = $nonce !== null ? $nonce : bin2hex(random_bytes(8));
$secret = $useOldSecret ? 'testing' : Config::get('mailing_list_hmac_secret');
$secret = Config::get('mailing_list_hmac_secret');
if (!$secret)
{
@ -122,11 +122,7 @@ class Mailgun
if (!hash_equals(static::getConfirmHash($email, $timestamp, $nonce), $hash))
{
// TODO: once old hashes expire, just return null here
if (date('Y-m-d') >= '2016-11-18' || !hash_equals(static::getConfirmHash($email, $timestamp, $nonce, true), $hash))
{
return null;
}
return null;
}
if (!is_numeric($timestamp) || time() - $timestamp > 60 * 60 * 24 * 3)

View file

@ -8,7 +8,7 @@ lbry.quickstartForm('#form-new-publish-reward', "<?php echo $apiUrl ?>");
<div class="form-row">
<label for="wallet">Wallet Address</label>
<div class="form-input">
<input type="text" name="wallet_address" value="<?php echo $defaultWalletAddress ?>"
<input type="text" name="wallet_address" value="<?php echo htmlspecialchars($defaultWalletAddress) ?>"
class="required standard " placeholder="bYnFQUPTTDM1BYNCxgxKEav4FFQsrgDBoE">
</div>
</div>
@ -25,4 +25,4 @@ lbry.quickstartForm('#form-new-publish-reward', "<?php echo $apiUrl ?>");
<input type="hidden" name="access_token" value="<?php echo Session::get(Session::KEY_GITHUB_ACCESS_TOKEN) ?>" />
<input type="submit" value="Send" class="btn-primary" data-submit-label="Send" data-submitting-label="Sending credits..." />
</div>
</form>
</form>

View file

@ -8,7 +8,7 @@
<div class="form-row">
<label for="wallet">Wallet Address</label>
<div class="form-input">
<input type="text" name="wallet_address" value="<?php echo $defaultWalletAddress ?>"
<input type="text" name="wallet_address" value="<?php echo htmlspecialchars($defaultWalletAddress) ?>"
class="required standard " placeholder="bYnFQUPTTDM1BYNCxgxKEav4FFQsrgDBoE">
</div>
</div>
@ -20,4 +20,4 @@
</div>
<div class="meta">We require a GitHub account to prevent abuse. This will record your email (no spam) and mark you as interested in the lbry repo.
No GitHub account? No problem! Join our <a href="https://slack.lbry.io" class="link-primary">Slack channel</a> and post an introduction in #tech.</div>
</form>
</form>

View file

@ -11,23 +11,30 @@
<code class="code-bash"><span class="code-bash__prompt">$</span>curl 'http://localhost:5279/lbryapi' --data '{"method":"resolve_name","params":{"name":"what"}}'
<span class="code-bash__response">[
{
"ver": "0.0.3",
"description": "What is LBRY? An introduction with Alex Tabarrok",
"license": "LBRY inc",
"title": "What is LBRY?",
"author": "Samuel Bryan",
"content_type": "video/mp4",
"description": "What is LBRY? An introduction with Alex Tabarrok",
"language": "en",
"license": "LBRY inc",
"nsfw": false,
"sources": {
"lbry_sd_hash": "d5169241150022f996fa7cd6a9a1c421937276a3275eb912790bd07ba7aec1fac5fd45431d226b8fb402691e79aeb24b"
},
"content_type": "video\/mp4",
"nsfw": false,
"thumbnail": "https:\/\/s3.amazonaws.com\/files.lbry.io\/logo.png"
"thumbnail": "https://s3.amazonaws.com/files.lbry.io/logo.png",
"title": "What is LBRY?",
"ver": "0.0.3"
}
]</span></code>
<h3>First Download</h3>
<p>Above, we called the method <code class="code-inline"><a href="<?php echo DeveloperActions::API_DOC_URL ?>#resolve_name" class="link-primary">resolve_name</a></code> for the URL <code class="code-inline">lbry://what</code>. This returned the metadata associated with the URL.</p>
<p>Now let's download it. This time we're going to call the method <code class="code-inline">get</code> with the same parameters.</p>
<p>
Above, we called the method
<code class="code-inline"><a href="<?php echo DeveloperActions::API_DOC_URL ?>#resolve_name" class="link-primary">resolve_name</a></code>
for the URL <code class="code-inline">lbry://what</code>. This returned the metadata associated with the URL.
</p>
<p>
Now let's download it. This time we're going to call the method <code class="code-inline">get</code> with the same parameters.
</p>
<code class="code-bash"><span class="code-bash__prompt">$</span>curl 'http://localhost:5279/lbryapi' --data '{"method":"get","params":{"name":"what"} }'
<span class="code-bash__response">[
{

View file

@ -21,7 +21,7 @@
</p>
<h3>Run</h3>
<p>
Launch the deamon to run as a background process:
Unzip and launch the daemon:
</p>
<p>
<code class="code-bash"><span class="code-bash__prompt">$</span>lbrynet-daemon</code>

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 495 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 KiB