* integrate reviews into website
This commit is contained in:
parent
0ef8b9710d
commit
1204dc70d0
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
|
|
||||||
// UPDATE release-groups.txt FROM http://scenegrouplist.com/lists_sgl.php
|
// UPDATE release-groups.txt FROM http://scenegrouplist.com/lists_sgl.php
|
||||||
@Grab('org.jsoup:jsoup')
|
@Grab(group='org.jsoup', module='jsoup', version='1.7.1')
|
||||||
import org.jsoup.*
|
import org.jsoup.*
|
||||||
|
|
||||||
def sgl = []
|
def sgl = []
|
||||||
|
@ -168,3 +168,19 @@ names = seriesSorter as List
|
||||||
|
|
||||||
gz(series_out, names)
|
gz(series_out, names)
|
||||||
println "Series Count: " + names.size()
|
println "Series Count: " + names.size()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// prepare reviews from SF.net for website
|
||||||
|
def reviewPage = retry(10, 1000){ Jsoup.connect('https://sourceforge.net/projects/filebot/reviews/?sort=usefulness&filter=thumbs_up').get() }
|
||||||
|
def reviews = reviewPage.select('article[itemtype~=Review]').findResults{ article ->
|
||||||
|
article.select('*[itemprop=reviewBody]').findAll{ !(it.attr('class') =~ /spam/) }.findResults{ review ->
|
||||||
|
[user:article.select('*[itemprop=name]').text(), date:article.select('*[datetime]').text(), text:review.text()]
|
||||||
|
}
|
||||||
|
}.flatten()
|
||||||
|
|
||||||
|
use (groovy.json.JsonOutput) {
|
||||||
|
println "Reviews: ${reviews.size()}"
|
||||||
|
reviews.toJson().prettyPrint().saveAs('website/reviews.json')
|
||||||
|
}
|
||||||
|
|
11
build.xml
11
build.xml
|
@ -28,8 +28,6 @@
|
||||||
|
|
||||||
<property name="deploy.release" value="web.sourceforge.net:/home/frs/project/f/fi/filebot/filebot" />
|
<property name="deploy.release" value="web.sourceforge.net:/home/frs/project/f/fi/filebot/filebot" />
|
||||||
<property name="deploy.website" value="web.sourceforge.net:htdocs" />
|
<property name="deploy.website" value="web.sourceforge.net:htdocs" />
|
||||||
|
|
||||||
<property name="deploy.data" value="web.sourceforge.net:htdocs/data" />
|
|
||||||
<property name="deploy.data.frs" value="web.sourceforge.net:/home/frs/project/f/fi/filebot/data" />
|
<property name="deploy.data.frs" value="web.sourceforge.net:/home/frs/project/f/fi/filebot/data" />
|
||||||
|
|
||||||
|
|
||||||
|
@ -605,10 +603,11 @@
|
||||||
|
|
||||||
|
|
||||||
<target name="upload-data" depends="login">
|
<target name="upload-data" depends="login">
|
||||||
<scp todir="${sf.user}:${sf.password}@${deploy.data}" trust="yes" verbose="true" sftp="true">
|
<scp todir="${sf.user}:${sf.password}@${deploy.website}" trust="yes" verbose="true" sftp="true">
|
||||||
<fileset dir="${dir.website}/data">
|
<fileset dir="${dir.website}">
|
||||||
<include name=".htaccess" />
|
<include name="data/.htaccess" />
|
||||||
<include name="*.txt" />
|
<include name="data/*.txt" />
|
||||||
|
<include name="*.json" />
|
||||||
</fileset>
|
</fileset>
|
||||||
</scp>
|
</scp>
|
||||||
</target>
|
</target>
|
||||||
|
|
|
@ -430,3 +430,54 @@ div.screencast:hover .play {
|
||||||
width: 300px;
|
width: 300px;
|
||||||
margin: 25px auto;
|
margin: 25px auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.message.box {
|
||||||
|
background-color: #F5F5F5;
|
||||||
|
border-radius: 4px;
|
||||||
|
box-shadow: 0 2px 5px #A2A2A2;
|
||||||
|
background-image: linear-gradient(rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0));
|
||||||
|
}
|
||||||
|
|
||||||
|
.review {
|
||||||
|
margin: 30px 25px;
|
||||||
|
display: block;
|
||||||
|
text-decoration: none !important;
|
||||||
|
padding: 10px;
|
||||||
|
min-height: 44px;
|
||||||
|
max-width: 380px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.review p{
|
||||||
|
font-size: 11px;
|
||||||
|
line-height: 18px;
|
||||||
|
color: #555555;
|
||||||
|
margin:0px 0px 0px 48px
|
||||||
|
}
|
||||||
|
|
||||||
|
.review .text{
|
||||||
|
font-family: 'Dawning of a New Day', cursive;
|
||||||
|
font-size: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.review .user{
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #0077AA;
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.thumbs {
|
||||||
|
float:left;
|
||||||
|
border-radius: 4px 4px 4px 4px;
|
||||||
|
background-image: linear-gradient(rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0));
|
||||||
|
background-color: #0088BB;
|
||||||
|
border: 1px solid #006699;
|
||||||
|
text-align: center;
|
||||||
|
height: 42px;
|
||||||
|
width: 42px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.thumbs img{
|
||||||
|
position:relative;
|
||||||
|
top: 8px;
|
||||||
|
}
|
||||||
|
|
|
@ -44,11 +44,11 @@ if ($mode != 's') {
|
||||||
<img src="images/money.png" style="float:left; margin:5px 10px 5px 5px; width:48px; height:48px" />
|
<img src="images/money.png" style="float:left; margin:5px 10px 5px 5px; width:48px; height:48px" />
|
||||||
<p style="margin: 13px 20px">
|
<p style="margin: 13px 20px">
|
||||||
Shutter at the thought of how many hours and days of time FileBot has saved you?
|
Shutter at the thought of how many hours and days of time FileBot has saved you?
|
||||||
You can show your appreciation and <b>support for future development</b> by donating!
|
You can show your appreciation and <b>support for future development</b> by donating.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<iframe src="<? print($downloadPage) ?>" name="sourceforge" width="100%" height="1200" frameBorder="0" scrolling="no" seamless="true"></iframe>
|
<iframe src="<? print($downloadPage) ?>" name="sourceforge" width="100%" height="1200" frameBorder="0" scrolling="no" seamless="seamless"></iframe>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
<?
|
<?
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 458 B |
|
@ -23,8 +23,12 @@
|
||||||
<link rel="stylesheet" href="base.css" type="text/css" />
|
<link rel="stylesheet" href="base.css" type="text/css" />
|
||||||
<link rel="icon" href="favicon.png" />
|
<link rel="icon" href="favicon.png" />
|
||||||
|
|
||||||
|
<!-- Fonts -->
|
||||||
|
<link href='http://fonts.googleapis.com/css?family=Dawning+of+a+New+Day' rel='stylesheet' type='text/css'>
|
||||||
|
|
||||||
<!-- Java Deployment Toolkit -->
|
<!-- Java Deployment Toolkit -->
|
||||||
<script type="text/javascript" src="http://www.java.com/js/deployJava.js"></script>
|
<script type="text/javascript" src="http://www.java.com/js/deployJava.js"></script>
|
||||||
|
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
|
||||||
|
|
||||||
<!-- google analytics -->
|
<!-- google analytics -->
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
|
@ -155,6 +159,29 @@
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<a id="review" class="review message box" style="display:none" href="reviews.php" target="_blank">
|
||||||
|
<div class="thumbs up">
|
||||||
|
<img src="images/thumbs_up.png" />
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
$.ajax({
|
||||||
|
url: 'reviews.json',
|
||||||
|
dataType: 'json',
|
||||||
|
success: function(data) {
|
||||||
|
var review = data[Math.floor(Math.random() * data.length)]
|
||||||
|
$('#review .user').text(review.user)
|
||||||
|
$('#review .date').text(review.date)
|
||||||
|
$('#review .text').text(review.text)
|
||||||
|
$('#review').show()
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
<p class="head">Posted by <span class="user"></span> on <span class="date"></span></p>
|
||||||
|
<p class="text quote"></p>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
|
||||||
<div class="section first tutorial">
|
<div class="section first tutorial">
|
||||||
<img class="icon" src="images/starthere.png" alt="start" width="48" height="48" />
|
<img class="icon" src="images/starthere.png" alt="start" width="48" height="48" />
|
||||||
<h2>Getting Started</h2>
|
<h2>Getting Started</h2>
|
||||||
|
@ -294,7 +321,7 @@
|
||||||
<span class="quote">Will you join us?</span>
|
<span class="quote">Will you join us?</span>
|
||||||
<h2>Contact</h2>
|
<h2>Contact</h2>
|
||||||
<p>
|
<p>
|
||||||
The project is continuously seeking for improvements, so anykind of <a onclick="_gaq.push(['_trackPageview', '/project/feedback'])" target="_blank" href="http://alternativeto.net/software/filebot/reviews">feedback</a> is more than welcome
|
The project is continuously seeking for improvements, so anykind of <a onclick="_gaq.push(['_trackPageview', '/project/feedback'])" target="_blank" href="https://sourceforge.net/projects/filebot/reviews/?sort=usefulness#review-form">feedback</a> is more than welcome
|
||||||
and if there's any questions or problems just start posting in the <a target="_blank" href="http://filebot.sourceforge.net/forums/">forums</a> or check the <a target="_blank" href="http://filebot.sourceforge.net/forums/viewtopic.php?f=3&t=7"><acronym title="frequently asked questions">FAQ</acronym></a>.
|
and if there's any questions or problems just start posting in the <a target="_blank" href="http://filebot.sourceforge.net/forums/">forums</a> or check the <a target="_blank" href="http://filebot.sourceforge.net/forums/viewtopic.php?f=3&t=7"><acronym title="frequently asked questions">FAQ</acronym></a>.
|
||||||
We're social as well. Follow us on <a onclick="_gaq.push(['_trackPageview', '/project/twitter'])" target="_blank" href="https://twitter.com/#!/filebot_renamer">twitter</a> and become a fan on <a onclick="_gaq.push(['_trackPageview', '/project/facebook'])" target="_blank" href="https://www.facebook.com/filebot">facebook</a>.
|
We're social as well. Follow us on <a onclick="_gaq.push(['_trackPageview', '/project/twitter'])" target="_blank" href="https://twitter.com/#!/filebot_renamer">twitter</a> and become a fan on <a onclick="_gaq.push(['_trackPageview', '/project/facebook'])" target="_blank" href="https://www.facebook.com/filebot">facebook</a>.
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -0,0 +1,92 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"user": "Kate Smith",
|
||||||
|
"date": "2012-11-05",
|
||||||
|
"text": "awesome user-interface!"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "OpenID User",
|
||||||
|
"date": "2012-11-05",
|
||||||
|
"text": "Extremely quick and efficient. Great for renaming anime, too - I was very impressed at Filebot's ability to consistently rename anime using AniDB. A must for keeping a large collection clean!"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "mark",
|
||||||
|
"date": "2012-03-25",
|
||||||
|
"text": "one of the most liked \"must have\" programs i use. much thanks to author.!"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Amit Singhal",
|
||||||
|
"date": "2010-05-23",
|
||||||
|
"text": "one of the best tv-ep renamers out there! kudos! to the author, rednoah"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Max",
|
||||||
|
"date": "2012-11-27",
|
||||||
|
"text": "Awesome project! Thanks ;)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Pope Michelle",
|
||||||
|
"date": "2012-11-18",
|
||||||
|
"text": "I use this software. Thank you for your work."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Ryan",
|
||||||
|
"date": "2012-11-09",
|
||||||
|
"text": "fast download and works, recommended."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Tolentino Lloyd",
|
||||||
|
"date": "2012-10-22",
|
||||||
|
"text": "Great software, thank you."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "ryan peck",
|
||||||
|
"date": "2012-09-15",
|
||||||
|
"text": "good work"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Zomazi",
|
||||||
|
"date": "2012-09-03",
|
||||||
|
"text": "Great tool and getting better!"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Ed Doran",
|
||||||
|
"date": "2012-08-25",
|
||||||
|
"text": "A must use tool. Really simplifies watching my favorite movies"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Kostas",
|
||||||
|
"date": "2012-08-16",
|
||||||
|
"text": "Great job! Thank you!"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Diana Cate",
|
||||||
|
"date": "2012-05-18",
|
||||||
|
"text": "Nice work ! Great project."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Gillardino Boccacio",
|
||||||
|
"date": "2012-05-12",
|
||||||
|
"text": "indispensable tool for people with a large library of videos. Through this program, I was able to restore order in films and serials. Thank you!"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "wkunes",
|
||||||
|
"date": "2012-05-07",
|
||||||
|
"text": "Great tool and getting better!"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Milos Kaurin",
|
||||||
|
"date": "2012-04-14",
|
||||||
|
"text": "One of the best (if not the best) multiplatform episode renamer/subtitle downloader"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "Jackson",
|
||||||
|
"date": "2012-03-26",
|
||||||
|
"text": "Stable and works."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user": "lakis koulourakis",
|
||||||
|
"date": "2011-02-18",
|
||||||
|
"text": "best app on series renaming i could find"
|
||||||
|
}
|
||||||
|
]
|
|
@ -0,0 +1,48 @@
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Reviews</title>
|
||||||
|
<link rel="stylesheet" href="base.css" type="text/css" />
|
||||||
|
<link href='http://fonts.googleapis.com/css?family=Dawning+of+a+New+Day' rel='stylesheet' type='text/css'>
|
||||||
|
|
||||||
|
<!-- google analytics -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
var _gaq = _gaq || [];
|
||||||
|
_gaq.push(['_setAccount', 'UA-25379256-1']);
|
||||||
|
_gaq.push(['_trackPageview']);
|
||||||
|
|
||||||
|
(function() {
|
||||||
|
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
||||||
|
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||||||
|
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
||||||
|
})();
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="top"><small>Write a review for FileBot at <a href="https://sourceforge.net/projects/filebot/reviews/?sort=usefulness#review-form">SourceForge.net</a></small></div>
|
||||||
|
<?
|
||||||
|
// read file
|
||||||
|
$filename = "reviews.json";
|
||||||
|
$handle = fopen($filename, "r");
|
||||||
|
$contents = fread($handle, filesize($filename));
|
||||||
|
fclose($handle);
|
||||||
|
|
||||||
|
// parse Json
|
||||||
|
$reviews = json_decode($contents);
|
||||||
|
shuffle($reviews);
|
||||||
|
|
||||||
|
foreach ($reviews as $review) {
|
||||||
|
?>
|
||||||
|
<div class="review message box" style="float:left">
|
||||||
|
<div class="thumbs up">
|
||||||
|
<img src="images/thumbs_up.png" />
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<p class="head">Posted by <span class="user"><? echo $review->user ?></span> on <span class="date"><? echo $review->date ?></span></p>
|
||||||
|
<p class="text quote"><? echo $review->text ?></p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</body>
|
||||||
|
</html>
|
Loading…
Reference in New Issue