| 45 |
$names_lock->lock_type ('Names'); |
$names_lock->lock_type ('Names'); |
| 46 |
## NOTE: This lock MUST be used when $sw3pages or $name_prop_db is updated. |
## NOTE: This lock MUST be used when $sw3pages or $name_prop_db is updated. |
| 47 |
|
|
| 48 |
|
# XXX $db->id_prop |
| 49 |
require SWE::DB::IDProps; |
require SWE::DB::IDProps; |
| 50 |
my $id_prop_db = SWE::DB::IDProps->new; |
my $id_prop_db = SWE::DB::IDProps->new; |
| 51 |
$id_prop_db->{root_directory_name} = $db_id_dir_name; |
$id_prop_db->{root_directory_name} = $db_id_dir_name; |
| 142 |
exit; |
exit; |
| 143 |
} elsif ($format eq 'xml' and defined $id) { |
} elsif ($format eq 'xml' and defined $id) { |
| 144 |
## XXX |
## XXX |
| 145 |
|
$docobj->{content_db} = $content_db; ## XXX |
| 146 |
$docobj->{id_locks} = $id_locks; |
$docobj->{id_locks} = $id_locks; |
| 147 |
$docobj->{id_prop_db} = $id_prop_db; |
$docobj->{id_prop_db} = $id_prop_db; |
| 148 |
$docobj->{cache_prop_db} = $cache_prop_db; |
$docobj->{cache_prop_db} = $cache_prop_db; |
| 168 |
$docobj->{id_locks} = $id_locks; |
$docobj->{id_locks} = $id_locks; |
| 169 |
$docobj->{id_prop_db} = $id_prop_db; |
$docobj->{id_prop_db} = $id_prop_db; |
| 170 |
$docobj->{cache_prop_db} = $cache_prop_db; |
$docobj->{cache_prop_db} = $cache_prop_db; |
| 171 |
|
$docobj->{content_db} = $content_db; ## XXX |
| 172 |
$docobj->{swml_to_xml} = \&get_xml_data; |
$docobj->{swml_to_xml} = \&get_xml_data; |
| 173 |
$docobj->{name} = $name; |
$docobj->{name} = $name; |
| 174 |
$docobj->{get_page_url} = \&get_page_url; |
$docobj->{get_page_url} = \&get_page_url; |
| 193 |
$html_doc->inner_html ('<!DOCTYPE HTML><title></title>'); |
$html_doc->inner_html ('<!DOCTYPE HTML><title></title>'); |
| 194 |
|
|
| 195 |
$html_doc->get_elements_by_tag_name ('title')->[0]->text_content ($name); |
$html_doc->get_elements_by_tag_name ('title')->[0]->text_content ($name); |
| 196 |
my @link = ({rel => 'alternate', |
|
| 197 |
type => $docobj->to_text_media_type, |
my @link; |
| 198 |
href => get_page_url ($name, undef, $id) . '?format=text'}, |
|
| 199 |
{rel => 'alternate', |
my $tmt = $docobj->to_text_media_type; |
| 200 |
type => $docobj->to_xml_media_type, |
if (defined $tmt) { |
| 201 |
href => get_page_url ($name, undef, $id) . '?format=xml'}, |
push @link, {rel => 'alternate', type => $tmt, |
| 202 |
{rel => 'archives', |
href => get_page_url ($name, undef, $id) . '?format=text'}; |
| 203 |
|
} |
| 204 |
|
|
| 205 |
|
my $xmt = $docobj->to_xml_media_type; |
| 206 |
|
if (defined $xmt) { |
| 207 |
|
push @link, {rel => 'alternate', type => $xmt, |
| 208 |
|
href => get_page_url ($name, undef, $id) . '?format=xml'}; |
| 209 |
|
} |
| 210 |
|
|
| 211 |
|
push @link, {rel => 'archives', |
| 212 |
href => get_page_url ($name, undef, undef) . ';history', |
href => get_page_url ($name, undef, undef) . ';history', |
| 213 |
title => 'History of the page name'}); |
title => 'History of the page name'}; |
| 214 |
if (defined $id) { |
if (defined $id) { |
| 215 |
push @link, {rel => 'archives', |
push @link, {rel => 'archives', |
| 216 |
href => '../i/' . $id . ';history', |
href => '../i/' . $id . ';history', |