diff --git a/trunk/README b/trunk/README
index 4209a8c..3514cb1 100755
--- a/trunk/README
+++ b/trunk/README
@@ -1,7 +1,7 @@
-Yolanda - http://mister-muffin.de/proj
+Yolanda - http://yolanda.mister-muffin.de/trac
=======================================================
-A video content management using Perl for the backend and XML and XSLT for the frontend. Video playback is provided by Fluendo's Cortado applet.
+A video content management system using Perl for the backend and XML and XSLT for the frontend. Video playback is provided by Fluendo's Cortado Java applet.
Installation
============
diff --git a/trunk/images/cc/cc-unknown.png b/trunk/images/cc/cc-unknown.png
new file mode 100644
index 0000000..c203de5
Binary files /dev/null and b/trunk/images/cc/cc-unknown.png differ
diff --git a/trunk/images/cc/cc-unknown.xcf b/trunk/images/cc/cc-unknown.xcf
new file mode 100644
index 0000000..02c9c78
Binary files /dev/null and b/trunk/images/cc/cc-unknown.xcf differ
diff --git a/trunk/images/cc/no-endorse.png b/trunk/images/cc/no-endorse.png
new file mode 100644
index 0000000..746dc85
Binary files /dev/null and b/trunk/images/cc/no-endorse.png differ
diff --git a/trunk/images/logo-small.png b/trunk/images/logo-small.png
index bca179e..147e125 100644
Binary files a/trunk/images/logo-small.png and b/trunk/images/logo-small.png differ
diff --git a/trunk/locale/en-us.xml b/trunk/locale/en-us.xml
index c6263a0..ed336ad 100755
--- a/trunk/locale/en-us.xml
+++ b/trunk/locale/en-us.xml
@@ -19,10 +19,16 @@
logout
- © 2007 Yolanda team
- license
- download source code
- report bug
+
+
+
+
+
+
+
Find
diff --git a/trunk/man/yolanda b/trunk/man/yolanda
new file mode 100644
index 0000000..191d7fa
--- /dev/null
+++ b/trunk/man/yolanda
@@ -0,0 +1,47 @@
+.TH YOLANDA 7 2008-01-02 "" "Yolanda Video CMS Manual"
+
+.SH NAME
+Yolanda Video CMS
+
+.SH SYNOPSIS
+.B daemon.pl
+
+.B tagcloud.pl
+
+.B yolanda-upload.pl
+
+.SH DESCRIPTION
+Yolanda is a WWW video content management system using a Perl backend and XML frontend. Video playback in Browser is provided by Fluendo's Cortado Java applet or media player plugins like those of
+.B vlc(1)
+or
+.B mplayer(1).
+
+.SH OPTIONS
+MOAR CONTENT.
+.B CONTRIBUTE !
+
+.SH FILES
+AS I SAID:
+.B CONTRIBUTE !
+
+.SH CONFORMING TO
+XHTML 1.0 Strict <-- we hope so
+[[insert
+.IB MOAR
+standards here]]
+
+.SH NOTES
+this man page is useless, as it was thrown together just to see if it would be easy to make a man page without
+.B prior knowledge \*(Tm
+.
+
+.SH BUGS
+many. see http://yolanda.mister-muffin.de/trac
+
+Yolanda is full of bad programming, severely unsafe and not fit for general use. Use on hacker conferences like the Chaos Communication Congress is encouraged - but please, for the love of the invisible pink unicorn, submit tickets in our bug tracking system afterwards.
+
+.SH EXAMPLE
+this will change often ( so i will just omit it )
+
+.SH SEE ALSO
+.B yolanda-upload (1)
diff --git a/trunk/man/yolanda-upload b/trunk/man/yolanda-upload
new file mode 100644
index 0000000..dd86d97
--- /dev/null
+++ b/trunk/man/yolanda-upload
@@ -0,0 +1,79 @@
+.TH YOLANDA-UPLOAD 1 2008-01-03 "" "Yolanda Video CMS Manual"
+
+.SH NAME
+Yolanda Uploader \- command-line tool to upload videos to WWW sites running Yolanda Video CMS.
+
+.SH SYNOPSIS
+.B yolanda-upload.pl
+.RI [ options ]
+
+.SH DESRIPTION
+This manual page documents briefly the \fByolanda-upload\fP command.
+.PP
+\fByolanda-upload\fP is a program that uploads a video file to a WWW site running Yolanda Video CMS.
+
+.SH OPTIONS
+This program follows the usual GNU command line synthax, with long options starting with two dashes (`-'). A summary of options is included below.
+
+As of now, all options are mandatory.
+
+.SS General options:
+.TP
+.B \-u, \-\-username
+Specify the username. This value will also be used for the publisher.
+.TP
+.B \-p, \-\-password
+Specify the password. Lol insecure !!1
+.TP
+.B \-f, \-\-file
+Upload given video file.
+
+.SS Metadata options:
+.B \-t, \-\-title
+State the title of the video.
+.TP
+.B \-d, \-\-description
+State a description of the video in natural language.
+.TP
+.B \-x, \-\-tags
+Specify multiple tags, separated by spaces.
+.TP
+.B \-c, \-\-creator
+Specify the creator of the video.
+.TP
+.B \-s, \-\-source
+Specify the source of the video, preferably by URL.
+.TP
+.B \-l, \-\-language
+Specify the language of the video, preferably conforming to ISO ???.
+.TP
+.B -\v, \-\-coverage
+Specify the coverage of the video, e.g. "Berlin, December 2007"
+.PP
+( coverage should be -o, because -v usually is used for "verbose". )
+
+.SH CONFORMING TO
+[[insert
+.IB MOAR
+standards here]]
+
+.SH NOTES
+this man page is useless, as it was thrown together just to see if it would be easy to make a man page without
+.B prior knowledge \*(Tm
+.
+
+.SH BUGS
+many. see http://yolanda.mister-muffin.de/trac
+
+Yolanda-upload is full of bad programming, severely unsafe and not fit for general use. Use on hacker conferences like the Chaos Communication Congress is encouraged - but please, for the love of the invisible pink unicorn, submit tickets in our bug tracking system afterwards.
+
+.SH EXAMPLE
+this will change often ( so i will just omit it )
+
+.SH SEE ALSO
+\fByolanda\fP(7)
+
+.SH AUTHOR
+yolanda-upload was written by Johannes Schauer.
+.PP
+This manual page was written by Nils Moskopp for his own amusement (but may be used by others).
diff --git a/trunk/site/main.xml b/trunk/site/main.xml
index 176e5c0..edc1091 100755
--- a/trunk/site/main.xml
+++ b/trunk/site/main.xml
@@ -1,4 +1,4 @@
-
+
@@ -13,7 +13,7 @@
/login.pl?action=openid
/login.pl?action=logout
http://yolanda.mister-muffin.de/trac
- http://www.fsf.org/licensing/licenses/agpl-3.0.html
+ /LICENSE
http://yolanda.mister-muffin.de/trac/browser/trunk
/register.pl
http://yolanda.mister-muffin.de/trac/newticket
diff --git a/trunk/style/default.css b/trunk/style/default.css
index edc4923..9e2c526 100755
--- a/trunk/style/default.css
+++ b/trunk/style/default.css
@@ -67,12 +67,23 @@ div
vertical-align: middle;
}
+ div.commentform,
+ div.loginform,
+ div.registerform,
+ div.settingsform,
+ div.uploadform
+ {
+ line-height: 2.5em;
+ margin: 1.5em;
+ }
+
div.comments
{
}
div.footer
{
+ line-height: 2.5em;
padding: 0.75em;
}
@@ -94,16 +105,6 @@ div
vertical-align: bottom;
}
- div.loginform,
- div.registerform,
- div.settingsform,
- div.uploadform,
- div.commentform
- {
- line-height: 2.5em;
- margin: 1.5em;
- }
-
div.messagebox
{
border-color: #606060;
diff --git a/trunk/tools/daemon.pl b/trunk/tools/daemon.pl
index 1cbe39c..6468177 100755
--- a/trunk/tools/daemon.pl
+++ b/trunk/tools/daemon.pl
@@ -5,6 +5,7 @@ use DBI;
use Digest::SHA;
use File::Copy;
+#TODO: put this into central configuration file
$database = 'yolanda';
$dbhost = 'localhost';
$dbuser = 'root';
@@ -17,6 +18,7 @@ $root = '/var/www/yolanda';
$LOG = "$root/daemon.log";
+#TODO: maybe keep file open the whole time ?
sub appendlog
{
if (open(FILE, ">>$LOG"))
@@ -100,7 +102,7 @@ while(1)
my ($resultid) = $sth->fetchrow_array();
$sth->finish() or interrupt $dbh->errstr;
- #if so, then video is a duplicate
+ #if so, then video is a duplicate (alternatively ALL HAIL QUANTUM COMPUTING)
if($resultid)
{
appendlog "id: $id",
@@ -151,7 +153,7 @@ while(1)
system "ffmpeg -i $root/tmp/$id -vcodec mjpeg -vframes 1 -an -f rawvideo -ss $thumbnailsec -s ".$tnwidth."x$tnheight $root/video-stills/$id";
- $vmaxheight = 240;
+ $vmaxheight = 640;
#check if the upload already is in the right format and smaller/equal max-width/height
if ($container eq 'ogg' and $video eq 'theora' and $audio eq 'vorbis' and $height <= $vmaxheight)
@@ -170,13 +172,14 @@ while(1)
else #encode video
{
#calculate video width
+ #TODO: ffmpeg only accepts values dividable by 8 !!! ( check that )
$vheight = $vmaxheight <= $height ? $vmaxheight : $height;
$vwidth = int($vheight*($width/$height)/2 + .5)*2;
$abitrate = 64;
$vbitrate = int($filesize*8) / $duration + .5) - $abitrate;
- #TODO: addmetadata information
+ #TODO: add metadata information
system "ffmpeg2theora --optimize --videobitrate $vbitrate --audiobitrate $abitrate --sharpness 0 --width $vwidth --height $vheight --output $root/videos/$id $root/tmp/$id";
appendlog $id, $audio, $video, $vwidth, $vheight, $fps, $duration, $sha;
@@ -190,6 +193,7 @@ while(1)
$vheight, $fps, $sha, $id) or interrupt $dbh->errstr;
#delete temp file
+ #TODO: use /tmp you insensitive clod !
unlink "$root/tmp/$id";
}
@@ -201,6 +205,7 @@ while(1)
}
else
{
+ TODO: maybe make this event-driven by using the kernels has-this-file-changed-interface ?
sleep 10;
}
}
diff --git a/trunk/tools/yolanda-upload.pl b/trunk/tools/yolanda-upload.pl
index f5bcdbb..a61f264 100755
--- a/trunk/tools/yolanda-upload.pl
+++ b/trunk/tools/yolanda-upload.pl
@@ -11,7 +11,7 @@ sub preamble {
}
# set these values for default -l (login) and -p (pass) values
-#
+# TODO: lol configfile !!!
use constant USER => "";
use constant PASS => "";
@@ -93,6 +93,7 @@ $ua = LWP::UserAgent->new(cookie_jar => {});
push @{$ua->requests_redirectable}, 'POST';
print "Getting sid cookie...\n";
+# DONT PRINT THIS - UNIX PHILOSPHY IS: IF IT WORKS DONT DISPLAY SHIT ! ( maybe add a -v switch )
$response = $ua->request(GET $url);
unless($response->is_success)
{
@@ -101,6 +102,7 @@ unless($response->is_success)
}
print "Logging in to $url/login.pl...\n";
+# DONT PRINT THIS - UNIX PHILOSPHY IS: IF IT WORKS DONT DISPLAY SHIT ! ( maybe add a -v switch )
$response = $ua->request(POST "$url/login.pl", "Content_Type" => "form-data", "Content" => [action => login, user => test, pass => test]);
unless($response->is_success)
{
@@ -113,6 +115,7 @@ unless($response->content =~ /action=logout/)
}
print "Uploading $opts{f} to $url/uploader.pl...\n";
+# DONT PRINT THIS - UNIX PHILOSPHY IS: IF IT WORKS DONT DISPLAY SHIT ! ( maybe add a -v switch )
$response = $ua->request(POST "$url/uploader.pl",
"Content_Type" => "multipart/form-data",
"Content" => [
@@ -132,3 +135,4 @@ unless($response->is_success)
$response->status_line;
}
print "Done!\n";
+# DONT PRINT THIS - UNIX PHILOSPHY IS: IF IT WORKS DONT DISPLAY SHIT ! ( maybe add a -v switch )
diff --git a/trunk/xsl/xhtml.xsl b/trunk/xsl/xhtml.xsl
index daf2a94..a891b3b 100755
--- a/trunk/xsl/xhtml.xsl
+++ b/trunk/xsl/xhtml.xsl
@@ -251,33 +251,45 @@