# DisplaySubForm: displays the Submit News page.
'DisplaySubForm' => <<'END_SUB',
sub DisplaySubForm {
NeedCFG();
CRHTMLHead($Messages{'Section_Submit'});
my $formCode = StartForm( {'action' => 'submitsave'}, 'name="submitnews"');
# HOOK: DisplaySubForm_FormStart
if($Addons{'DisplaySubForm_FormStart'}){my $w;foreach $w (@{$Addons{'DisplaySubForm_FormStart'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
print $formCode;
print StartFieldsTable();
print FieldsRow('Date', GetTheDate_Internal());
# HOOK: DisplaySubForm_TopRow
if($Addons{'DisplaySubForm_TopRow'}){my $w;foreach $w (@{$Addons{'DisplaySubForm_TopRow'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
my ($fn, $fcode, $fieldsrow);
foreach $fn (@fieldDB) {
# Go through the list of fields.
if ($up > $fieldDB{$fn}->{'SubmitPerm'}) {
$fcode = '';
# Current user is allowed to submit things into this field.
if ($fieldDB{$fn}->{'FieldType'} == 1){
$fcode = qq~{'MaxLength'} ? qq~ maxlength="$fieldDB{$fn}->{'MaxLength'}">~ : '>');
}
if ($fieldDB{$fn}->{'FieldType'} == 2) {
$fcode = qq~';
}
if ($fieldDB{$fn}->{'FieldType'} == 3) {
$fcode = qq~';
}
if ($fieldDB{$fn}->{'FieldType'} == 4) {
$fcode = qq~{'Checked'}){
$fcode .= qq~ checked~;
}
$fcode .= '>';
}
if ($fieldDB{$fn}->{'FieldType'} == 5) {
$fcode = join('', map { qq~' . HTMLescape($1) : 'value="' . HTMLescape($_) . '">' . HTMLescape($_)) . $fieldDB{$fn}->{'SplitOptions'} } split(/\|/, $fieldDB{$fn}->{'Options'}));
}
# HOOK: DisplaySubForm_Fields
if($Addons{'DisplaySubForm_Fields'}){my $w;foreach $w (@{$Addons{'DisplaySubForm_Fields'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
$fieldsrow = FieldsRow($fieldDB{$fn}->{'DisplayName'}, $fcode);
# HOOK: DisplaySubForm_Fields_2
if($Addons{'DisplaySubForm_Fields_2'}){my $w;foreach $w (@{$Addons{'DisplaySubForm_Fields_2'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
print $fieldsrow;
}
}
# HOOK: DisplaySubForm_BottomRow
if($Addons{'DisplaySubForm_BottomRow'}){my $w;foreach $w (@{$Addons{'DisplaySubForm_BottomRow'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
print '
';
# HOOK: DisplaySubForm_AfterTable
if($Addons{'DisplaySubForm_AfterTable'}){my $w;foreach $w (@{$Addons{'DisplaySubForm_AfterTable'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
print qq~
~;
# HOOK: DisplaySubForm_AfterForm
if($Addons{'DisplaySubForm_AfterForm'}){my $w;foreach $w (@{$Addons{'DisplaySubForm_AfterForm'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
CRHTMLFoot();
}
END_SUB
'ModifyNews_Edit' => <<'END_SUB',
sub ModifyNews_Edit {
CRcough("The guest account can't access this function.") if $CurrentUser =~ /^guest/ && $up == 1;
NeedCFG();
CRHTMLHead('Edit News Item');
my $fh = CRopen("$CConfig{'htmlfile_path'}/newsdat.txt");
# HOOK: ModifyNews_Edit_PreLoop
if($Addons{'ModifyNews_Edit_PreLoop'}){my $w;foreach $w (@{$Addons{'ModifyNews_Edit_PreLoop'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
NDLOOP: while (<$fh>) {
chomp($_);
SplitDataFile($_);
if ($in{'nid'} eq $newsid) {
print StartForm({'action' => 'modify-editsave', 'nid' => $newsid}, 'name="submitnews"');
print StartFieldsTable();
print FieldsRow($Messages{'Date'},GetTheDate_Internal($newstime));
print FieldsRow($Messages{'User'}, $User);
# HOOK: ModifyNews_Edit_TopRow
if($Addons{'ModifyNews_Edit_TopRow'}){my $w;foreach $w (@{$Addons{'ModifyNews_Edit_TopRow'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
my ($fn, $fcode, $fieldsrow);
foreach $fn (@fieldDB) {
# Go through the list of fields.
if ($up > $fieldDB{$fn}->{'ModifyPerm'}){
$fcode = '';
# Current user is allowed to submit things into this field.
if ($fieldDB{$fn}->{'DisableHTML'}) {
$$fn = unHTMLescape($$fn);
}
if ($fieldDB{$fn}->{'ParseLinks'}){
$$fn =~ s/(http:\/\/|ftp:\/\/|https:\/\/).*?<\/a>/$1/gi;
}
if ($fieldDB{$fn}->{'FieldType'} == 1){
$fcode = qq~{'MaxLength'} ? qq~ maxlength="$fieldDB{$fn}->{'MaxLength'}">~ : '>');
}
if ($fieldDB{$fn}->{'FieldType'} == 2) {
if ($fieldDB{$fn}->{'Newlines'}) {
$$fn =~ s/
/\n/g;
}
$fcode = qq~';
}
if ($fieldDB{$fn}->{'FieldType'} == 3) {
$fcode = qq~';
}
if ($fieldDB{$fn}->{'FieldType'} == 4) {
$fcode = qq~' : '">');
}
if ($fieldDB{$fn}->{'FieldType'} == 5) {
$fcode = join('', map { qq~' . HTMLescape($1) : (HTMLescape($$fn) eq HTMLescape($_) ? checked : '') . ' value="' . HTMLescape($_) . '">' . HTMLescape($_)) . $fieldDB{$fn}->{'SplitOptions'} } split(/\|/, $fieldDB{$fn}->{'Options'}));
}
# HOOK: ModifyNews_Edit_Fields
if($Addons{'ModifyNews_Edit_Fields'}){my $w;foreach $w (@{$Addons{'ModifyNews_Edit_Fields'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
$fieldsrow = FieldsRow($fieldDB{$fn}->{'DisplayName'}, $fcode);
# HOOK: ModifyNews_Edit_Fields_2
if($Addons{'ModifyNews_Edit_Fields_2'}){my $w;foreach $w (@{$Addons{'ModifyNews_Edit_Fields_2'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
print $fieldsrow;
}
}
# HOOK: ModifyNews_Edit_BottomRow
if($Addons{'ModifyNews_Edit_BottomRow'}){my $w;foreach $w (@{$Addons{'ModifyNews_Edit_BottomRow'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
print '';
# HOOK: ModifyNews_Edit_AfterTable
if($Addons{'ModifyNews_Edit_AfterTable'}){my $w;foreach $w (@{$Addons{'ModifyNews_Edit_AfterTable'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
print qq~
';
# HOOK: ModifyNews_Edit_AfterForm
if($Addons{'ModifyNews_Edit_AfterForm'}){my $w;foreach $w (@{$Addons{'ModifyNews_Edit_AfterForm'}}){my $addon=$w->[2];eval ${$w->[0]};AErr($addon,$@)if $@;};}
CRHTMLFoot();
last NDLOOP;
}
}
close($fh);
}
END_SUB