1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
<?php
# Movable Type (r) Open Source (C) 2001-2012 Six Apart, Ltd.
# This program is distributed under the terms of the
# GNU General Public License, version 2.
#
# $Id$
function smarty_function_mtcclicenserdf($args, &$ctx) {
// status: complete
// parameters: none
$blog = $ctx->stash('blog');
$cc = $blog->blog_cc_license;
if (empty($cc)) return '';
require_once("cc_lib.php");
require_once("MTUtil.php");
$cc_url = cc_url($cc);
$rdf = <<<RDF
<!--
<rdf:RDF xmlns="http://web.resource.org/cc/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
RDF;
## SGML comments cannot contain double hyphens, so we convert
## any double hyphens to single hyphens.
$entry = $ctx->stash('entry');
if ($entry) {
$permalink = $ctx->tag('EntryPermalink');
$title = encode_xml(strip_hyphen($entry->entry_title));
$desc = encode_xml(strip_hyphen($ctx->tag('EntryExcerpt')));
$creator = encode_xml(strip_hyphen($entry->entry_author_id ? $entry->author()->nickname : ''));
$date = $ctx->_hdlr_date(array('format' => "%Y-%m-%dT%H:%M:%S"), $ctx) . $ctx->tag('BlogTimezone');
$rdf .= <<<RDF
<Work rdf:about="$permalink">
<dc:title>$title</dc:title>
<dc:description>$desc</dc:description>
<dc:creator>$creator</dc:creator>
<dc:date>$date</dc:date>
<license rdf:resource="$cc_url" />
</Work>
RDF;
} else {
$site_url = $blog->site_url();
if (!preg_match('!/$!', $site_url))
$site_url .= '/';
$title = encode_xml(strip_hyphen($blog->blog_name));
$desc = encode_xml(strip_hyphen($blog->blog_description));
$rdf .= <<<RDF
<Work rdf:about="$site_url">
<dc:title>$title</dc:title>
<dc:description>$desc</dc:description>
<license rdf:resource="$cc_url" />
</Work>
RDF;
}
$rdf .= cc_rdf($cc) . "</rdf:RDF>\n-->\n";
return $rdf;
}
?>
|