#!/usr/local/bin/perl # edit_title.cgi # Display menu option details require './grub-lib.pl'; &foreign_require("fdisk", "fdisk-lib.pl"); &ReadParse(); $conf = &get_menu_config(); if ($in{'new'}) { &ui_print_header(undef, $text{'title_add'}, ""); } else { &ui_print_header(undef, $text{'title_edit'}, ""); $title = $conf->[$in{'idx'}]; } print "
\n"; print "\n"; print "\n"; print "\n"; print "\n"; print "
$text{'title_header'}
\n"; print "\n"; printf "\n", $title->{'value'}; $r = $title->{'root'} || $title->{'rootnoverify'}; if (!$r) { $mode = 0; } elsif ($dev = &bios_to_linux($r)) { $mode = 2; } else { $mode = 1; } $sel = &foreign_call("fdisk", "partition_select", "root", $dev, 2, \$found); if (!$found && $mode == 2) { $mode = 1; } print "\n", $title->{'rootnoverify'} ? "checked" : "", $text{'title_noverify'}; $boot = $title->{'chainloader'} ? 1 : $title->{'kernel'} ? 2 : 0; if ($boot == 2) { $title->{'kernel'} =~ /^(\S+)\s*(.*)$/; $kernel = $1; $args = $2; } print "\n"; print "\n"; printf "\n", defined($title->{'lock'}) ? "" : "checked", $text{'no'}; print "
$text{'title_title'}
$text{'title_root'} \n"; printf " %s\n", $mode == 0 ? 'checked' : '', $text{'default'}; printf " %s %s\n", $mode == 2 ? 'checked' : '', $text{'title_sel'}, $sel; printf " %s\n", $mode == 1 ? 'checked' : '', $text{'title_other'}; printf "
\n", $mode == 1 ? $title->{'root'} : ''; print " " x 3; printf " %s
$text{'title_boot'} \n"; print "\n"; printf "\n", $boot == 2 ? 'checked' : '', $text{'title_kernel'}; printf "\n", $title->{'initrd'}; $chain = $title->{'chainloader'}; printf "\n", $boot == 1 ? 'checked' : '', $text{'title_chain'}; printf "\n", defined($title->{'makeactive'}) ? 'checked' : '', $text{'title_makeactive'}; printf "\n", $boot == 0 ? 'checked' : '', $text{'title_none'}; print "
%s%s %s
\n", $text{'title_kfile'}, $kernel; printf "%s
\n", $text{'title_args'}, $args; printf "%s %s\n", $text{'title_initrd'}, $title->{'initrd'} ? "" : "checked", $text{'global_none'}; printf "\n", $title->{'initrd'} ? "checked" : ""; printf "
%s %s
\n", $chain eq '+1' || !$chain ? 'checked' : '', $text{'title_chain_def'}; printf " %s\n", $chain eq '+1' || !$chain ? '' : 'checked', $text{'title_chain_file'}; printf "
\n", $chain eq '+1' ? '' : $chain; printf " %s
%s
$text{'title_lock'} %s\n", defined($title->{'lock'}) ? "checked" : "", $text{'yes'}; printf " %s
\n"; print "\n"; print "\n"; if (!$in{'new'}) { print "\n"; } print "
", "
\n"; &ui_print_footer("", $text{'index_return'});