1<?php 2// This file is part of BOINC. 3// http://boinc.berkeley.edu 4// Copyright (C) 2008 University of California 5// 6// BOINC is free software; you can redistribute it and/or modify it 7// under the terms of the GNU Lesser General Public License 8// as published by the Free Software Foundation, 9// either version 3 of the License, or (at your option) any later version. 10// 11// BOINC is distributed in the hope that it will be useful, 12// but WITHOUT ANY WARRANTY; without even the implied warranty of 13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 14// See the GNU Lesser General Public License for more details. 15// 16// You should have received a copy of the GNU Lesser General Public License 17// along with BOINC. If not, see <http://www.gnu.org/licenses/>. 18 19require_once("../inc/util.inc"); 20require_once("../inc/prefs.inc"); 21require_once("../inc/prefs_project.inc"); 22 23$user = get_logged_in_user(); 24check_tokens($user->authenticator); 25 26$action = sanitize_tags(get_str("action", true)); 27$subset = sanitize_tags(get_str("subset")); 28$venue = sanitize_tags(get_str("venue")); 29$columns = get_int("cols", true); 30$c = $columns?"&cols=$columns":""; 31check_venue($venue); 32check_subset($subset); 33 34if ($action) { 35 if ($subset == "global") { 36 $prefs = prefs_parse_global($user->global_prefs); 37 $prefs->$venue = $prefs; 38 $error = prefs_global_parse_form($new_prefs); 39 if ($error != false) { 40 $title = tra("Edit %1 preferences", subset_name($subset)); 41 if ($venue) $title = "$title for $venue"; 42 page_head($title); 43 $x = $venue?"&venue=$venue":""; 44 45 echo PREFS_FORM_DESC1; 46 echo PREFS_FORM_ERROR_DESC; 47 48 print_prefs_form( 49 "add", $subset, $venue, $user, $new_prefs, $columns, $error 50 ); 51 } else { 52 $prefs->$venue = $new_prefs; 53 global_prefs_update($user, $prefs); 54 Header("Location: prefs.php?subset=$subset$c"); 55 } 56 } else { 57 $prefs = prefs_parse_project($user->project_prefs); 58 $prefs->$venue = $prefs; 59 60 $project_error = prefs_project_parse_form($new_prefs); 61 $error = prefs_resource_parse_form($new_prefs); 62 63 if ($error != false || $project_error != false) { 64 $title = tra("Edit %1 preferences", subset_name($subset)); 65 if ($venue) $title = "$title for $venue"; 66 page_head($title); 67 $x = $venue?"&venue=$venue":""; 68 69 echo PREFS_FORM_ERROR_DESC; 70 71 print_prefs_form( 72 "add", $subset, $venue, $user, $new_prefs, $columns, 73 $error, $project_error 74 ); 75 } else { 76 $prefs->$venue = $new_prefs; 77 project_prefs_update($user, $prefs); 78 Header("Location: prefs.php?subset=$subset$c"); 79 } 80 } 81} else { 82 $title = tra("Add %1 preferences for %2", subset_name($subset), $venue); 83 page_head($title); 84 85 if ($subset == "global") { 86 $prefs = default_prefs_global(); 87 } else { 88 $prefs = default_prefs_project(); 89 } 90 print_prefs_form("add", $subset, $venue, $user, $prefs, $columns); 91} 92page_tail(); 93$cvs_version_tracker[]="\$Id$"; //Generated automatically - do not edit 94?> 95