mirror of
https://github.com/LBRYFoundation/lbry.com.git
synced 2025-08-23 17:47:26 +00:00
weekend work
This commit is contained in:
parent
4d43eec1a6
commit
361e974d2a
38 changed files with 252 additions and 234 deletions
|
@ -11,7 +11,9 @@ class Controller
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
list($viewTemplate, $viewParameters) = static::execute($uri);
|
$viewAndParams = static::execute($uri);
|
||||||
|
$viewTemplate = $viewAndParams[0];
|
||||||
|
$viewParameters = isset($viewAndParams[1]) ? $viewAndParams[1] : [];
|
||||||
|
|
||||||
if ($viewTemplate === null)
|
if ($viewTemplate === null)
|
||||||
{
|
{
|
||||||
|
@ -42,7 +44,12 @@ class Controller
|
||||||
case '/fund':
|
case '/fund':
|
||||||
return CreditActions::executeFund();
|
return CreditActions::executeFund();
|
||||||
case '/get':
|
case '/get':
|
||||||
return ContentActions::executeGet();
|
case '/windows':
|
||||||
|
case '/ios':
|
||||||
|
case '/android':
|
||||||
|
case '/linux':
|
||||||
|
case '/osx':
|
||||||
|
return DownloadActions::executeGet();
|
||||||
case '/postcommit':
|
case '/postcommit':
|
||||||
return OpsActions::executePostCommit();
|
return OpsActions::executePostCommit();
|
||||||
case '/log-upload':
|
case '/log-upload':
|
||||||
|
|
|
@ -14,52 +14,4 @@ class ContentActions extends Actions
|
||||||
'totalPeople' => CreditApi::getTotalPeople()
|
'totalPeople' => CreditApi::getTotalPeople()
|
||||||
]];
|
]];
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function executeGet()
|
|
||||||
{
|
|
||||||
$hasEmail = isset($_GET['email']) && $_GET['email'];
|
|
||||||
if ($hasEmail && Session::get(Session::KEY_LIST_SUB_ERROR))
|
|
||||||
{
|
|
||||||
Controller::redirect('/get');
|
|
||||||
}
|
|
||||||
return ['page/get', [
|
|
||||||
'isSubscribed' => $hasEmail || in_array(Mailchimp::LIST_GENERAL_ID, Session::get(Session::KEY_MAILCHIMP_LIST_IDS, []))
|
|
||||||
]];
|
|
||||||
}
|
|
||||||
//
|
|
||||||
// protected static function validateDownloadAccess()
|
|
||||||
// {
|
|
||||||
// $seshionKey = 'has-download-access';
|
|
||||||
// if (Session::get($seshionKey))
|
|
||||||
// {
|
|
||||||
// return true;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// if ($_SERVER['REQUEST_METHOD'] === 'POST')
|
|
||||||
// {
|
|
||||||
// $accessCodes = include ROOT_DIR . '/data/secret/access_list.php';
|
|
||||||
// $today = date('Y-m-d H:i:s');
|
|
||||||
// foreach($accessCodes as $code => $date)
|
|
||||||
// {
|
|
||||||
// if ($_POST['invite'] == $code && $today <= $date)
|
|
||||||
// {
|
|
||||||
// Session::set($seshionKey, true);
|
|
||||||
// Controller::redirect('/get', 302);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// if ($_POST['invite'])
|
|
||||||
// {
|
|
||||||
// Session::set('invite_error', 'Please provide a valid invite code.');
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// Session::set('invite_error', 'Please provide an invite code.');
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// Controller::redirect('/get', 401);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// return false;
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,7 +11,7 @@ class CreditActions extends Actions
|
||||||
{
|
{
|
||||||
$fundStartTime = strtotime('2015-11-15');
|
$fundStartTime = strtotime('2015-11-15');
|
||||||
$daysActive = floor((time() - $fundStartTime) / (60*60*24));
|
$daysActive = floor((time() - $fundStartTime) / (60*60*24));
|
||||||
return ['page/fund', [
|
return ['fund/fund', [
|
||||||
'creditsPerDollar' => CreditApi::getCreditsPerDollar($daysActive),
|
'creditsPerDollar' => CreditApi::getCreditsPerDollar($daysActive),
|
||||||
'creditsPerDollarTomorrow' => CreditApi::getCreditsPerDollar($daysActive + 1),
|
'creditsPerDollarTomorrow' => CreditApi::getCreditsPerDollar($daysActive + 1),
|
||||||
]];
|
]];
|
||||||
|
|
107
controller/action/DownloadActions.class.php
Normal file
107
controller/action/DownloadActions.class.php
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Description of DownloadActions
|
||||||
|
*
|
||||||
|
* @author jeremy
|
||||||
|
*/
|
||||||
|
class DownloadActions extends Actions
|
||||||
|
{
|
||||||
|
const OS_LINUX = 'linux',
|
||||||
|
OS_WINDOWS = 'windows',
|
||||||
|
OS_OSX = 'osx',
|
||||||
|
OS_ANDROID = 'android',
|
||||||
|
OS_IOS = 'ios';
|
||||||
|
|
||||||
|
public static function getOses()
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
static::OS_LINUX => ['/linux', 'Linux', 'icon-linux', '_linux'],
|
||||||
|
static::OS_ANDROID => ['/android', 'Android', 'icon-android', '_android'],
|
||||||
|
static::OS_OSX => ['/osx', 'OS X', 'icon-apple', '_osx'],
|
||||||
|
static::OS_WINDOWS => ['/windows', 'Windows', 'icon-windows', '_windows'],
|
||||||
|
static::OS_IOS => ['/ios', 'iOS', 'icon-ios', '_ios']
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function executeGet()
|
||||||
|
{
|
||||||
|
$osChoices = static::getOses();
|
||||||
|
$os = static::guessOs();
|
||||||
|
if (isset($osChoices[$os]))
|
||||||
|
{
|
||||||
|
list($uri, $osTitle, $osIcon, $partial) = $osChoices[$os];
|
||||||
|
return ['download/get2', [
|
||||||
|
'os' => $os,
|
||||||
|
'osTitle' => $osTitle,
|
||||||
|
'osIcon' => $osIcon,
|
||||||
|
'downloadHtml' => View::exists('download/' . $partial) ?
|
||||||
|
View::render('download/' . $partial) :
|
||||||
|
false
|
||||||
|
]];
|
||||||
|
}
|
||||||
|
return ['download/get', [
|
||||||
|
'isSubscribed' => in_array(Mailchimp::LIST_GENERAL_ID, Session::get(Session::KEY_MAILCHIMP_LIST_IDS, []))
|
||||||
|
]];
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function prepareListPartial(array $vars)
|
||||||
|
{
|
||||||
|
return $vars + ['osChoices' => isset($vars['excludeOs']) ?
|
||||||
|
array_diff_key(static::getOses(), [$vars['excludeOs'] => null]) :
|
||||||
|
static::getOses()
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
//implement me!
|
||||||
|
protected static function guessOs()
|
||||||
|
{
|
||||||
|
$uri = strtok($_SERVER['REQUEST_URI'], '?');
|
||||||
|
foreach(static::getOses() as $os => $osChoice)
|
||||||
|
{
|
||||||
|
if ($osChoice[0] == $uri)
|
||||||
|
{
|
||||||
|
return $os;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// $oses = ['linux', 'windows', 'osx', 'ios', 'android'];
|
||||||
|
$oses = ['linux', 'windows', 'osx'];
|
||||||
|
return $oses[rand(0, count($oses) - 1)];
|
||||||
|
}
|
||||||
|
|
||||||
|
// protected static function validateDownloadAccess()
|
||||||
|
// {
|
||||||
|
// $seshionKey = 'has-get-access';
|
||||||
|
// if (Session::get($seshionKey))
|
||||||
|
// {
|
||||||
|
// return true;
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// if ($_SERVER['REQUEST_METHOD'] === 'POST')
|
||||||
|
// {
|
||||||
|
// $accessCodes = include ROOT_DIR . '/data/secret/access_list.php';
|
||||||
|
// $today = date('Y-m-d H:i:s');
|
||||||
|
// foreach($accessCodes as $code => $date)
|
||||||
|
// {
|
||||||
|
// if ($_POST['invite'] == $code && $today <= $date)
|
||||||
|
// {
|
||||||
|
// Session::set($seshionKey, true);
|
||||||
|
// Controller::redirect('/get', 302);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// if ($_POST['invite'])
|
||||||
|
// {
|
||||||
|
// Session::set('invite_error', 'Please provide a valid invite code.');
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// Session::set('invite_error', 'Please provide an invite code.');
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// Controller::redirect('/get', 401);
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// return false;
|
||||||
|
// }
|
||||||
|
}
|
|
@ -21,11 +21,11 @@ class MailActions extends Actions
|
||||||
$email = $_POST['email'];
|
$email = $_POST['email'];
|
||||||
if (!$email|| !filter_var($email, FILTER_VALIDATE_EMAIL))
|
if (!$email|| !filter_var($email, FILTER_VALIDATE_EMAIL))
|
||||||
{
|
{
|
||||||
Session::set('list_error', $email ? __('Please provide a valid email address.') : __('Please provide an email address.'));
|
Session::set(Session::KEY_LIST_SUB_ERROR, $email ? __('Please provide a valid email address.') : __('Please provide an email address.'));
|
||||||
}
|
}
|
||||||
elseif (!$_POST['listId'])
|
elseif (!$_POST['listId'])
|
||||||
{
|
{
|
||||||
Session::set('list_error', __('List not provided.'));
|
Session::set(Session::KEY_LIST_SUB_ERROR, __('List not provided.'));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -42,7 +42,7 @@ class MailActions extends Actions
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$error = $mcApi->errorMessage ?: __('Something went wrong adding you to the list.');
|
$error = $mcApi->errorMessage ?: __('Something went wrong adding you to the list.');
|
||||||
Session::set('list_error', $error);
|
Session::set(Session::KEY_LIST_SUB_ERROR, $error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -56,8 +56,8 @@ class MailActions extends Actions
|
||||||
|
|
||||||
if (Session::get(Session::KEY_LIST_SUB_SIGNATURE) == $vars['listSig'])
|
if (Session::get(Session::KEY_LIST_SUB_SIGNATURE) == $vars['listSig'])
|
||||||
{
|
{
|
||||||
$vars['error'] = Session::get('list_error');
|
$vars['error'] = Session::get(Session::KEY_LIST_SUB_ERROR);
|
||||||
Session::unsetKey('list_error');
|
Session::unsetKey(Session::KEY_LIST_SUB_ERROR);
|
||||||
|
|
||||||
$vars['success'] = Session::get(Session::KEY_LIST_SUB_SUCCESS) ? __('Great success! Welcome to LBRY.') : false;
|
$vars['success'] = Session::get(Session::KEY_LIST_SUB_SUCCESS) ? __('Great success! Welcome to LBRY.') : false;
|
||||||
$vars['fbEvent'] = Session::get(Session::KEY_LIST_SUB_FB_EVENT) ?: 'Lead';
|
$vars['fbEvent'] = Session::get(Session::KEY_LIST_SUB_FB_EVENT) ?: 'Lead';
|
||||||
|
@ -72,5 +72,4 @@ class MailActions extends Actions
|
||||||
|
|
||||||
return $vars;
|
return $vars;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
|
@ -1,11 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Used to immediately end execution
|
|
||||||
*
|
|
||||||
* @author jeremy
|
|
||||||
*/
|
|
||||||
class StopException extends Exception
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
|
@ -19,7 +19,7 @@ class CreditApi
|
||||||
|
|
||||||
public static function getTotalPeople()
|
public static function getTotalPeople()
|
||||||
{
|
{
|
||||||
$rawJSON = file_get_contents('https://spreadsheets.google.com/feeds/cells/1iOC1o5jq_4ySwRzsy2tZPPltw6Tbky2e3lDFdsWV8dU/okf1n52/public/full/R1C1?alt=json');
|
$rawJSON = @file_get_contents('https://spreadsheets.google.com/feeds/cells/1iOC1o5jq_4ySwRzsy2tZPPltw6Tbky2e3lDFdsWV8dU/okf1n52/public/full/R1C1?alt=json');
|
||||||
$json = $rawJSON ? json_decode($rawJSON, true) : [];
|
$json = $rawJSON ? json_decode($rawJSON, true) : [];
|
||||||
return isset($json['entry']) && isset($json['entry']['content']) && is_numeric($json['entry']['content']['$t'] ) ?
|
return isset($json['entry']) && isset($json['entry']['content']) && is_numeric($json['entry']['content']['$t'] ) ?
|
||||||
$json['entry']['content']['$t'] :
|
$json['entry']['content']['$t'] :
|
||||||
|
|
|
@ -29,8 +29,9 @@ class View
|
||||||
|
|
||||||
list($module, $view) = explode('/', $template);
|
list($module, $view) = explode('/', $template);
|
||||||
|
|
||||||
|
$isPartial = $view[0] === '_';
|
||||||
$actionClass = ucfirst($module) . 'Actions';
|
$actionClass = ucfirst($module) . 'Actions';
|
||||||
$method = 'prepare' . ucfirst($view);
|
$method = 'prepare' . ucfirst(ltrim($view, '_')) . ($isPartial ? 'Partial' : '');
|
||||||
|
|
||||||
if (method_exists($actionClass, $method))
|
if (method_exists($actionClass, $method))
|
||||||
{
|
{
|
||||||
|
|
4
view/template/download/_betaNotice.php
Normal file
4
view/template/download/_betaNotice.php
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<div class="spacer1">
|
||||||
|
<em>This is a pre-release, beta version of LBRY.</em>
|
||||||
|
Something something something.
|
||||||
|
</div>
|
3
view/template/download/_developers.php
Normal file
3
view/template/download/_developers.php
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
<div class="cover cover-light content content-light">
|
||||||
|
<h2>Developers</h2>
|
||||||
|
</div>
|
17
view/template/download/_linux.php
Normal file
17
view/template/download/_linux.php
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
<div class="meta text-center">Choose your install level.</div>
|
||||||
|
<div class="row-fluid">
|
||||||
|
<div class="span6">
|
||||||
|
<h3>Casuals</h3>
|
||||||
|
<p>
|
||||||
|
<a class="btn-primary" download href="//lbry.io/lbry-linux-latest.deb">Download .deb</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="span6">
|
||||||
|
<h3><strike>Masochists</strike> Professionals</h3>
|
||||||
|
<ol>
|
||||||
|
<li>Clone and follow the build steps for <a href="https://github.com/lbryio/lbryum" class="link-primary">lbryum</a>, a lightweight client for LBRY.</li>
|
||||||
|
<li>Clone and follow the build steps for <a href="https://github.com/lbryio/lbry" class="link-primary">lbry</a>, a console based application for using the LBRY protocol.</li>
|
||||||
|
</ol>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
11
view/template/download/_list.php
Normal file
11
view/template/download/_list.php
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
<div class="cover cover-dark cover-dark-grad content content-dark">
|
||||||
|
<h3>Other Systems</h3>
|
||||||
|
<?php foreach($osChoices as $osChoice): ?>
|
||||||
|
<?php list($url, $title, $icon) = $osChoice ?>
|
||||||
|
<h4>
|
||||||
|
<a href="<?php echo $url ?>" class="link-primary">
|
||||||
|
<span class="<?php echo $icon ?>"></span> <?php echo $title ?>
|
||||||
|
</a>
|
||||||
|
</h4>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</div>
|
6
view/template/download/_osx.php
Normal file
6
view/template/download/_osx.php
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<p>
|
||||||
|
<a class="btn-primary" href="//lbry.io/lbry-osx-latest.dmg">Download for OS X</a>
|
||||||
|
</p>
|
||||||
|
<p class="meta">Or, view the source and compile instructions on
|
||||||
|
<a href="https://github.com/lbryio/lbry-setup/blob/master/README_OSX.md" class="link-primary">GitHub</a>.
|
||||||
|
</p>
|
35
view/template/download/_reward.php
Normal file
35
view/template/download/_reward.php
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
<?php $reward = CreditApi::getCurrentTestCreditReward() ?>
|
||||||
|
<div class="cover cover-light-alt cover-light-alt-grad content content-light">
|
||||||
|
<h1>Test and Earn</h1>
|
||||||
|
<?php echo View::render('download/feedback-prompt') ?>
|
||||||
|
<h3>Test Your Install</h3>
|
||||||
|
<ol>
|
||||||
|
<li>Double click the app (LBRY will open in your browser)</li>
|
||||||
|
<li>Search and stream <code>wonderfullife</code></li>
|
||||||
|
<li>Continue to play as you desire</li>
|
||||||
|
</ol>
|
||||||
|
<h3>Feedback</h3>
|
||||||
|
<p>
|
||||||
|
In addition to <?php echo i18n::formatCredits($reward) ?>, your feedback will be personally read by the developers and help signal
|
||||||
|
interest in LBRY to investors.
|
||||||
|
</p>
|
||||||
|
<a href="/feedback" class="btn-alt">Provide Your Feedback</a>
|
||||||
|
</div>
|
||||||
|
<?php /*
|
||||||
|
<?php $reward = CreditApi::getCurrentTestCreditReward() ?>
|
||||||
|
<div class="cover cover-dark cover-dark-grad content content-dark">
|
||||||
|
<h1>Test and Earn</h1>
|
||||||
|
<?php echo View::render('download/feedback-prompt') ?>
|
||||||
|
<h3>Test Your Install</h3>
|
||||||
|
<ol>
|
||||||
|
<li>Double click the app (LBRY will open in your browser)</li>
|
||||||
|
<li>Search and stream <code>wonderfullife</code></li>
|
||||||
|
<li>Continue to play as you desire</li>
|
||||||
|
</ol>
|
||||||
|
<h3>Feedback</h3>
|
||||||
|
<p>
|
||||||
|
In addition to <?php echo i18n::formatCredits($reward) ?>, your feedback will be personally read by the developers and help signal
|
||||||
|
interest in LBRY to investors.
|
||||||
|
</p>
|
||||||
|
<a href="/feedback" class="btn-alt">Provide Your Feedback</a>
|
||||||
|
</div> */ ?>
|
1
view/template/download/_unavailable.php
Normal file
1
view/template/download/_unavailable.php
Normal file
|
@ -0,0 +1 @@
|
||||||
|
not avail
|
28
view/template/download/get2.php
Normal file
28
view/template/download/get2.php
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
<?php Response::setMetaDescription(__('Download/install the latest version of LBRY for %os%.', ['%os%' => $osTitle])) ?>
|
||||||
|
<?php NavActions::setNavUri('/get') ?>
|
||||||
|
<?php echo View::render('nav/header', ['isDark' => false]) ?>
|
||||||
|
|
||||||
|
<main class="column-fluid">
|
||||||
|
<div class="span6">
|
||||||
|
<div class="cover cover-light content">
|
||||||
|
<h1>LBRY for <?php echo $osTitle ?> <span class="<?php echo $osIcon ?>"></span></h1>
|
||||||
|
<?php if ($downloadHtml): ?>
|
||||||
|
<?php echo View::render('download/_betaNotice') ?>
|
||||||
|
<?php echo $downloadHtml ?>
|
||||||
|
<?php else: ?>
|
||||||
|
<?php echo View::render('download/_unavailable') ?>
|
||||||
|
<?php endif ?>
|
||||||
|
</div>
|
||||||
|
<?php if ($downloadHtml): ?>
|
||||||
|
<?php echo View::render('download/_reward') ?>
|
||||||
|
<?php endif ?>
|
||||||
|
</div>
|
||||||
|
<div class="span6">
|
||||||
|
<?php echo View::render('download/_list', [
|
||||||
|
'excludeOs' => $os
|
||||||
|
]) ?>
|
||||||
|
<?php echo View::render('download/_developers') ?>
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<?php echo View::render('nav/footer') ?>
|
|
@ -1,4 +0,0 @@
|
||||||
<div class="spacer1">
|
|
||||||
<em>This is a pre-release, alpha version of LBRY.</em> It is only designed to show what LBRY makes possible.
|
|
||||||
Future releases will involve a full network reboot.
|
|
||||||
</div>
|
|
|
@ -1,31 +0,0 @@
|
||||||
<?php NavActions::setNavUri('/get') ?>
|
|
||||||
<?php echo View::render('nav/header', ['isDark' => false]) ?>
|
|
||||||
|
|
||||||
<main class="column-fluid">
|
|
||||||
<div class="span6">
|
|
||||||
<div class="cover cover-light content">
|
|
||||||
<?php echo $installHtml ?>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="span6">
|
|
||||||
<?php $reward = CreditApi::getCurrentTestCreditReward() ?>
|
|
||||||
<div class="cover cover-dark cover-dark-grad content content-dark">
|
|
||||||
<h1>Test and Earn</h1>
|
|
||||||
<?php echo View::render('get/feedback-prompt') ?>
|
|
||||||
<h3>Test Your Install</h3>
|
|
||||||
<ol>
|
|
||||||
<li>Double click the app (LBRY will open in your browser)</li>
|
|
||||||
<li>Search and stream <code>wonderfullife</code></li>
|
|
||||||
<li>Continue to play as you desire</li>
|
|
||||||
</ol>
|
|
||||||
<h3>Feedback</h3>
|
|
||||||
<p>
|
|
||||||
In addition to <?php echo i18n::formatCredits($reward) ?>, your feedback will be personally read by the developers and help signal
|
|
||||||
interest in LBRY to investors.
|
|
||||||
</p>
|
|
||||||
<a href="/feedback" class="btn-alt">Provide Your Feedback</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<?php echo View::render('nav/footer') ?>
|
|
|
@ -12,7 +12,7 @@
|
||||||
'LBRY' ?>
|
'LBRY' ?>
|
||||||
<title><?php echo $title ?></title>
|
<title><?php echo $title ?></title>
|
||||||
|
|
||||||
<link href='https://fonts.googleapis.com/css?family=Merriweather:300,300italic,700,700italic|Raleway:400,400italic,500,500italic' rel='stylesheet' type='text/css'>
|
<link href='https://fonts.googleapis.com/css?family=Merriweather:300,300italic,700,700italic|Raleway:300,300italic,400,400italic' rel='stylesheet' type='text/css'>
|
||||||
<link href="/css/all.css" rel="stylesheet" type="text/css" media="screen,print" />
|
<link href="/css/all.css" rel="stylesheet" type="text/css" media="screen,print" />
|
||||||
<link rel="apple-touch-icon" sizes="60x60" href="/img/fav/apple-touch-icon-60x60.png">
|
<link rel="apple-touch-icon" sizes="60x60" href="/img/fav/apple-touch-icon-60x60.png">
|
||||||
<link rel="apple-touch-icon" sizes="114x114" href="/img/fav/apple-touch-icon-114x114.png">
|
<link rel="apple-touch-icon" sizes="114x114" href="/img/fav/apple-touch-icon-114x114.png">
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
<div class="row-fluid" style="height: 100%">
|
<div class="row-fluid" style="height: 100%">
|
||||||
<div class="span9">
|
<div class="span9">
|
||||||
<h1><?php echo __('Feedback') ?></h1>
|
<h1><?php echo __('Feedback') ?></h1>
|
||||||
<?php echo View::render('get/feedback-prompt') ?>
|
<?php echo View::render('download/feedback-prompt') ?>
|
||||||
<iframe id="feedback-form-iframe" src="https://docs.google.com/forms/d/1zqa5jBYQMmrZO1utoF2Ok9ka-gXzXLDZKXNNoprufC8/viewform?embedded=true"
|
<iframe id="feedback-form-iframe" src="https://docs.google.com/forms/d/1zqa5jBYQMmrZO1utoF2Ok9ka-gXzXLDZKXNNoprufC8/viewform?embedded=true"
|
||||||
width="760" height="1720" frameborder="0" marginheight="0" marginwidth="0">Loading...</iframe>
|
width="760" height="1720" frameborder="0" marginheight="0" marginwidth="0">Loading...</iframe>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,71 +0,0 @@
|
||||||
<div class="bg-image-full" style="background-image: url(/img/cover-home2.jpg)"></div>
|
|
||||||
<?php Response::setMetaTitle(__('LBRY - Watch, Share, Earn')) ?>
|
|
||||||
<?php Response::setMetaDescription(__('Learn about LBRY, a peer-to-peer, decentralized content marketplace.')) ?>
|
|
||||||
<?php echo View::render('nav/header', ['isDark' => true]) ?>
|
|
||||||
<main class="column-fluid">
|
|
||||||
<div class="span12">
|
|
||||||
<div class="cover cover-dark">
|
|
||||||
<div class="content content-wide content-dark">
|
|
||||||
<div class="text-center">
|
|
||||||
<h1 class="cover-title">Stream, Share, Earn.</h1>
|
|
||||||
</div>
|
|
||||||
<?php $labels = [
|
|
||||||
__('making history'),
|
|
||||||
__('empowering artists'),
|
|
||||||
__('spreading knowledge'),
|
|
||||||
__('sharing sustainably'),
|
|
||||||
__('protecting speech'),
|
|
||||||
__('building tomorrow'),
|
|
||||||
__('eliminating middlemen'),
|
|
||||||
__('furthering education'),
|
|
||||||
] ?>
|
|
||||||
<?php shuffle($labels) ?>
|
|
||||||
<div class="sale-call ">
|
|
||||||
<span class="sale-call-verb"><?php echo __('Join') ?></span>
|
|
||||||
<span class="sale-call-total-people"><?php echo $totalPeople ?></span>
|
|
||||||
<span class="sale-call-prep">others in</span>
|
|
||||||
<span class="sale-ctas label-cycle" data-cycle-interval="5000">
|
|
||||||
<span class="sale-cta"><?php echo implode('</span><span class="sale-cta">', $labels) ?></span>
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
<div class="control-group spacer2 text-center">
|
|
||||||
<div class="control-item">
|
|
||||||
<a href="/fund" class="btn-primary">Fund LBRY</a>
|
|
||||||
</div>
|
|
||||||
<div class="control-item">
|
|
||||||
<a href="/learn" class="btn-alt">Learn More</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="video" style="margin-bottom: 80px">
|
|
||||||
<iframe width="560" height="315" src="https://www.youtube.com/embed/qMUbq3sbG-o?rel=0&showinfo=0" frameborder="0" allowfullscreen></iframe>
|
|
||||||
</div>
|
|
||||||
<div class="row-fluid content-constrained">
|
|
||||||
<div class="span6 text-center">
|
|
||||||
<div class="fb-page" data-href="https://www.facebook.com/lbryio" data-height="300" data-small-header="false" data-width="400"
|
|
||||||
data-adapt-container-width="true" data-hide-cover="false" data-show-facepile="true" data-show-posts="true">
|
|
||||||
<div class="fb-xfbml-parse-ignore"><blockquote cite="https://www.facebook.com/lbryio"><a href="https://www.facebook.com/lbryio">LBRY</a></blockquote></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="span6 text-center">
|
|
||||||
<a width="400" class="twitter-timeline" href="https://twitter.com/LBRYio" data-widget-id="671104143034073088">Tweets by @LBRYio</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<?php /*
|
|
||||||
* <h1>Stream, Share, Earn.</h1>
|
|
||||||
<div class="text-center">
|
|
||||||
<h3 class="cover-subtitle">Join a fully distributed network that makes information open to everyone.</h3>
|
|
||||||
<div class="control-group spacer1">
|
|
||||||
<div class="control-item">
|
|
||||||
<a href="/get" class="btn-primary">Get LBRY</a>
|
|
||||||
</div>
|
|
||||||
<div class="control-item">
|
|
||||||
<a href="/what" class="btn-alt">Learn More</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
*/ ?>
|
|
|
@ -1,6 +1,6 @@
|
||||||
<div class="bg-image-full" style="background-image: url(/img/cover-home2.jpg)"></div>
|
<div class="bg-image-full" style="background-image: url(/img/cover-home2.jpg)"></div>
|
||||||
<?php Response::setMetaTitle(__('LBRY - Watch, Share, Earn')) ?>
|
<?php Response::setMetaTitle(__('LBRY - Watch, Share, Earn')) ?>
|
||||||
<?php Response::setMetaDescription(__('Meet LBRY, a peer-to-peer, decentralized content marketplace.')) ?>
|
<?php Response::setMetaDescription(__('Meet LBRY, a content sharing and publishing platform that is decentralized and owned by it\'s users.')) ?>
|
||||||
<?php echo View::render('nav/header', ['isDark' => true]) ?>
|
<?php echo View::render('nav/header', ['isDark' => true]) ?>
|
||||||
<main class="column-fluid">
|
<main class="column-fluid">
|
||||||
<div class="span12">
|
<div class="span12">
|
||||||
|
@ -22,7 +22,7 @@
|
||||||
<?php shuffle($labels) ?>
|
<?php shuffle($labels) ?>
|
||||||
<div class="sale-call ">
|
<div class="sale-call ">
|
||||||
<span class="sale-call-verb"><?php echo __('Join') ?></span>
|
<span class="sale-call-verb"><?php echo __('Join') ?></span>
|
||||||
<span class="sale-call-total-people"><?php echo $totalPeople ?></span>
|
<span class="sale-call-total-people"><?php echo number_format($totalPeople) ?></span>
|
||||||
<span class="sale-call-prep">others in</span>
|
<span class="sale-call-prep">others in</span>
|
||||||
<span class="sale-ctas label-cycle" data-cycle-interval="5000">
|
<span class="sale-ctas label-cycle" data-cycle-interval="5000">
|
||||||
<span class="sale-cta"><?php echo implode('</span><span class="sale-cta">', $labels) ?></span>
|
<span class="sale-cta"><?php echo implode('</span><span class="sale-cta">', $labels) ?></span>
|
||||||
|
@ -41,7 +41,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="row-fluid content-constrained">
|
<div class="row-fluid content-constrained">
|
||||||
<div class="span4">
|
<div class="span4">
|
||||||
<h3><strong><?php echo __('Get Updates') ?></strong></h3>
|
<h3><?php echo __('Get Updates') ?></h3>
|
||||||
<?php echo View::render('mail/joinList', [
|
<?php echo View::render('mail/joinList', [
|
||||||
'submitLabel' => 'Go',
|
'submitLabel' => 'Go',
|
||||||
'listId' => Mailchimp::LIST_GENERAL_ID,
|
'listId' => Mailchimp::LIST_GENERAL_ID,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?php Response::setMetaTitle(__('Join LBRY Email List')) ?>
|
<?php Response::setMetaTitle(__('Join LBRY Email List')) ?>
|
||||||
<?php Response::setMetaDescription(__('Join our email list and receive updates about LBRY via email.')) ?>
|
<?php Response::setMetaDescription(__('Follow along and receive updates about LBRY via email.')) ?>
|
||||||
<?php echo View::render('nav/header', ['isDark' => false ]) ?>
|
<?php echo View::render('nav/header', ['isDark' => false ]) ?>
|
||||||
<main>
|
<main>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
|
|
|
@ -1,22 +0,0 @@
|
||||||
<?php Response::setMetaDescription('Download/install the latest version of LBRY for Linux.') ?>
|
|
||||||
<?php ob_start() ?>
|
|
||||||
<h1>Install LBRY on Linux <span class="icon-linux"></span></h1>
|
|
||||||
<?php echo View::render('get/alphaNotice') ?>
|
|
||||||
<div class="meta text-center">Choose your install level.</div>
|
|
||||||
<div class="row-fluid">
|
|
||||||
<div class="span6">
|
|
||||||
<h3>Casuals</h3>
|
|
||||||
<p>
|
|
||||||
<a class="btn-primary" download href="//lbry.io/lbry-linux-latest.deb">Download .deb</a>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div class="span6">
|
|
||||||
<h3><strike>Masochists</strike> Professionals</h3>
|
|
||||||
<ol>
|
|
||||||
<li>Clone and follow the build steps for <a href="https://github.com/lbryio/lbryum" class="link-primary">lbryum</a>, a lightweight client for LBRY.</li>
|
|
||||||
<li>Clone and follow the build steps for <a href="https://github.com/lbryio/lbry" class="link-primary">lbry</a>, a console based application for using the LBRY protocol.</li>
|
|
||||||
</ol>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<?php $html = ob_get_clean() ?>
|
|
||||||
<?php echo View::render('get/getSharedApp', ['installHtml' => $html]) ?>
|
|
|
@ -1,4 +0,0 @@
|
||||||
<?php if ($_GET['selectedItem']): ?>
|
|
||||||
<?php NavActions::setNavUri($_GET['selectedItem']) ?>
|
|
||||||
<?php endif ?>
|
|
||||||
<?php echo View::render('nav/header', ['isDark' => false]) ?>
|
|
|
@ -1,12 +0,0 @@
|
||||||
<?php Response::setMetaDescription('Download/install the latest version of LBRY for OS X.') ?>
|
|
||||||
<?php ob_start() ?>
|
|
||||||
<h1>Install LBRY on OS X <span class="icon-apple"></span></h1>
|
|
||||||
<?php echo View::render('get/alphaNotice') ?>
|
|
||||||
<p>
|
|
||||||
<a class="btn-primary" href="//lbry.io/lbry-osx-latest.dmg">Download for OS X</a>
|
|
||||||
</p>
|
|
||||||
<p class="meta">Or, view the source and compile instructions on
|
|
||||||
<a href="https://github.com/lbryio/lbry-setup/blob/master/README_OSX.md" class="link-primary">GitHub</a>.
|
|
||||||
</p>
|
|
||||||
<?php $html = ob_get_clean() ?>
|
|
||||||
<?php echo View::render('get/getSharedApp', ['installHtml' => $html]) ?>
|
|
|
@ -1,5 +1,5 @@
|
||||||
window.lbry = {};
|
window.lbry = {};
|
||||||
document.domain = 'lbry.io';
|
//document.domain = 'lbry.io';
|
||||||
|
|
||||||
jQuery.fn.extend({
|
jQuery.fn.extend({
|
||||||
jFor: function() {
|
jFor: function() {
|
||||||
|
|
|
@ -11,7 +11,6 @@ html
|
||||||
body
|
body
|
||||||
{
|
{
|
||||||
font-family: $font-body;
|
font-family: $font-body;
|
||||||
font-weight: 400;
|
|
||||||
line-height: 1.3333;
|
line-height: 1.3333;
|
||||||
min-height: 100%;
|
min-height: 100%;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
@ -38,7 +37,6 @@ code { font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, De
|
||||||
h1, h2, h3, h4, h5, h6
|
h1, h2, h3, h4, h5, h6
|
||||||
{
|
{
|
||||||
font-family: $font-header;
|
font-family: $font-header;
|
||||||
font-weight: 500;
|
|
||||||
}
|
}
|
||||||
h1, h2, h3, h4
|
h1, h2, h3, h4
|
||||||
{
|
{
|
||||||
|
@ -51,9 +49,8 @@ h3 { font-size: 1.75em; }
|
||||||
h4 { font-size: 1.4em; }
|
h4 { font-size: 1.4em; }
|
||||||
nav
|
nav
|
||||||
{
|
{
|
||||||
font-size: 1.2em;
|
font-size: 1.1em;
|
||||||
font-family: $font-header;
|
font-family: $font-header;
|
||||||
font-weight: 400;
|
|
||||||
}
|
}
|
||||||
sup, sub {
|
sup, sub {
|
||||||
vertical-align: baseline;
|
vertical-align: baseline;
|
||||||
|
@ -122,8 +119,6 @@ a:hover img
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
border: 0 none;
|
border: 0 none;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-family: $font-header;
|
|
||||||
font-size: 1.15em;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
.btn-primary
|
.btn-primary
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
|
|
||||||
.post-content
|
.post-content
|
||||||
{
|
{
|
||||||
max-width: $max-content-width - 200;
|
|
||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
a[href]
|
a[href]
|
||||||
|
|
|
@ -29,6 +29,13 @@
|
||||||
margin-top: $spacing-vertical * 1.5;
|
margin-top: $spacing-vertical * 1.5;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.meta
|
||||||
|
{
|
||||||
|
+ h1, + h2, + h3, + h4
|
||||||
|
{
|
||||||
|
margin-top: $spacing-vertical * 0.5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
&.content-dark
|
&.content-dark
|
||||||
{
|
{
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
.cover-full
|
.cover-full
|
||||||
{
|
{
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
font-size: 1.4em;
|
font-size: 1.2em;
|
||||||
}
|
}
|
||||||
@media (max-width: $mobile-width-threshold) {
|
@media (max-width: $mobile-width-threshold) {
|
||||||
.cover { padding: $spacing-vertical $spacing-vertical * 2 / 3; }
|
.cover { padding: $spacing-vertical $spacing-vertical * 2 / 3; }
|
||||||
|
|
|
@ -8,14 +8,14 @@ $color-text-dark: #000;
|
||||||
$color-money: #216C2A;
|
$color-money: #216C2A;
|
||||||
$color-meta-light: #505050;
|
$color-meta-light: #505050;
|
||||||
|
|
||||||
$font-size: 16px;
|
$font-size: 18px;
|
||||||
|
|
||||||
$mobile-width-threshold: 801px;
|
$mobile-width-threshold: 801px;
|
||||||
$max-content-width: 1000px;
|
$max-content-width: 1000px;
|
||||||
$max-text-width: 660px;
|
$max-text-width: 660px;
|
||||||
|
|
||||||
$font-header: 'Raleway', sans-serif;
|
$font-header: 'Raleway', sans-serif;
|
||||||
$font-body: 'Merriweather', sans-serif;
|
$font-body: 'Raleway', sans-serif;
|
||||||
|
|
||||||
@mixin anchor($color)
|
@mixin anchor($color)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,11 +20,10 @@ $gutter_fluid: 4;
|
||||||
.span2 { width: 16.666%; }
|
.span2 { width: 16.666%; }
|
||||||
.span1 { width: 8.333%; }
|
.span1 { width: 8.333%; }
|
||||||
|
|
||||||
.row-fluid {
|
.row-fluid, .row-fluid-always {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
> [class*="span"] {
|
> [class*="span"] {
|
||||||
float: left;
|
float: left;
|
||||||
width: 100%;
|
|
||||||
margin-left: 1% * $gutter_fluid;
|
margin-left: 1% * $gutter_fluid;
|
||||||
&:first-child
|
&:first-child
|
||||||
{
|
{
|
||||||
|
@ -60,6 +59,7 @@ $gutter_fluid: 4;
|
||||||
@include flex-wrap(wrap);
|
@include flex-wrap(wrap);
|
||||||
> [class*="span"] {
|
> [class*="span"] {
|
||||||
@include display-flex();
|
@include display-flex();
|
||||||
|
@include flex-wrap(wrap);
|
||||||
@include flex(1 0 auto);
|
@include flex(1 0 auto);
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
@include justify-content(center);
|
@include justify-content(center);
|
||||||
|
|
|
@ -18,7 +18,7 @@ fieldset, img, iframe
|
||||||
}
|
}
|
||||||
h1, h2, h3, h4, h5, h6
|
h1, h2, h3, h4, h5, h6
|
||||||
{
|
{
|
||||||
font-weight:normal;
|
font-weight: inherit;
|
||||||
}
|
}
|
||||||
ol, ul
|
ol, ul
|
||||||
{
|
{
|
||||||
|
|
|
@ -36,6 +36,7 @@
|
||||||
}
|
}
|
||||||
.sale-call-prep, .sale-call-verb
|
.sale-call-prep, .sale-call-verb
|
||||||
{
|
{
|
||||||
|
vertical-align: super;
|
||||||
// font-size: 0.85em;
|
// font-size: 0.85em;
|
||||||
}
|
}
|
||||||
.sale-ctas
|
.sale-ctas
|
||||||
|
|
Loading…
Add table
Reference in a new issue