- Patch by chx, webchick, asimmonds, et al: fixing E_ALL notices. Thanks.

6.x
Dries Buytaert 2007-01-31 15:49:26 +00:00
parent 4c9fc80fc4
commit 05a708fb06
29 changed files with 196 additions and 151 deletions

View File

@ -1450,6 +1450,8 @@ function drupal_get_css($css = NULL) {
if (!isset($css)) {
$css = drupal_add_css();
}
$no_module_preprocess = '';
$no_theme_preprocess = '';
$preprocess_css = variable_get('preprocess_css', FALSE);
$directory = file_directory_path();
@ -2120,6 +2122,7 @@ function drupal_render(&$elements) {
if (!isset($elements['#sorted'])) {
uasort($elements, "_element_sort");
}
$elements += array('#title' => NULL, '#description' => NULL);
if (!isset($elements['#children'])) {
$children = element_children($elements);
/* Render all the children that use a theme function */
@ -2201,7 +2204,7 @@ function element_properties($element) {
* Check if the key is a child.
*/
function element_child($key) {
return $key[0] != '#';
return !isset($key[0]) || $key[0] != '#';
}
/**

View File

@ -193,7 +193,7 @@ function file_check_upload($source = 'upload') {
}
// If a file was uploaded, process it.
if ($_FILES["files"]["name"][$source] && is_uploaded_file($_FILES["files"]["tmp_name"][$source])) {
if (isset($_FILES["files"]) && $_FILES["files"]["name"][$source] && is_uploaded_file($_FILES["files"]["tmp_name"][$source])) {
// Check for file upload errors and return FALSE if a
// lower level system error occurred.
@ -253,7 +253,7 @@ function file_check_upload($source = 'upload') {
else {
// In case of previews return previous file object.
if (file_exists($_SESSION['file_uploads'][$source]->filepath)) {
if (isset($_SESSION['file_uploads']) && file_exists($_SESSION['file_uploads'][$source]->filepath)) {
return $_SESSION['file_uploads'][$source];
}
}

View File

@ -265,7 +265,9 @@ function drupal_process_form($form_id, &$form) {
// We've finished calling functions that alter the global values, so we can
// restore the ones that were there before this function was called.
list($form_values, $form_submitted, $form_button_counter) = array_pop($saved_globals);
return $redirect;
if (isset($redirect)) {
return $redirect;
}
}
/**
@ -306,9 +308,7 @@ function drupal_prepare_form($form_id, &$form) {
// If $base is set, it is used in place of $form_id when constructing validation,
// submission, and theming functions. Useful for mapping many similar or duplicate
// forms with different $form_ids to the same processing functions.
if (isset($form['#base'])) {
$base = $form['#base'];
}
$base = isset($form['#base']) ? $form['#base'] : '';
// Add a token, based on either #token or form_id, to any form displayed to
// authenticated users. This ensures that any submitted form was actually
@ -432,7 +432,9 @@ function drupal_submit_form($form_id, $form) {
}
}
}
return $goto;
if (isset($goto)) {
return $goto;
}
}
/**
@ -450,9 +452,7 @@ function drupal_submit_form($form_id, $form) {
*/
function drupal_render_form($form_id, &$form) {
// Don't override #theme if someone already set it.
if (isset($form['#base'])) {
$base = $form['#base'];
}
$base = isset($form['#base']) ? $form['#base'] : '';
if (!isset($form['#theme'])) {
if (theme_get_function($form_id)) {
@ -492,16 +492,16 @@ function drupal_redirect_form($form, $redirect = NULL) {
if (isset($form['#redirect'])) {
$goto = $form['#redirect'];
}
if ($goto !== FALSE) {
if (is_array($goto)) {
call_user_func_array('drupal_goto', $goto);
}
elseif (!isset($goto)) {
drupal_goto($_GET['q']);
}
else {
drupal_goto($goto);
if (!isset($goto) || ($goto !== FALSE)) {
if (isset($goto)) {
if (is_array($goto)) {
call_user_func_array('drupal_goto', $goto);
}
else {
drupal_goto($goto);
}
}
drupal_goto($_GET['q']);
}
}
@ -756,7 +756,7 @@ function form_builder($form_id, $form) {
if (isset($form['#process']) && !$form['#processed']) {
foreach ($form['#process'] as $process => $args) {
if (function_exists($process)) {
$args = array_merge(array($form), array($edit), $args);
$args = array_merge(array($form), array(isset($edit) ? $edit : NULL), $args);
$form = call_user_func_array($process, $args);
}
}
@ -929,7 +929,7 @@ function theme_select($element) {
$select = '';
$size = $element['#size'] ? ' size="' . $element['#size'] . '"' : '';
_form_set_class($element, array('form-select'));
$multiple = isset($element['#multiple']) && $element['#multiple'];
$multiple = $element['#multiple'];
return theme('form_element', $element, '<select name="'. $element['#name'] .''. ($multiple ? '[]' : '') .'"'. ($multiple ? ' multiple="multiple" ' : '') . drupal_attributes($element['#attributes']) .' id="'. $element['#id'] .'" '. $size .'>'. form_select_options($element) .'</select>');
}
@ -1038,7 +1038,7 @@ function theme_fieldset($element) {
}
}
return '<fieldset' . drupal_attributes($element['#attributes']) .'>' . ($element['#title'] ? '<legend>'. $element['#title'] .'</legend>' : '') . ($element['#description'] ? '<div class="description">'. $element['#description'] .'</div>' : '') . $element['#children'] . $element['#value'] . "</fieldset>\n";
return '<fieldset' . drupal_attributes($element['#attributes']) .'>' . ($element['#title'] ? '<legend>'. $element['#title'] .'</legend>' : '') . ($element['#description'] ? '<div class="description">'. $element['#description'] .'</div>' : '') . (!empty($element['#children']) ? $element['#children'] : '') . $element['#value'] . "</fieldset>\n";
}
/**
@ -1079,7 +1079,7 @@ function theme_radios($element) {
if (isset($element['#attributes']['class'])) {
$class .= ' '. $element['#attributes']['class'];
}
$element['#children'] = '<div class="'. $class .'">'. $element['#children'] .'</div>';
$element['#children'] = '<div class="'. $class .'">'. (!empty($element['#children']) ? $element['#children'] : '') .'</div>';
if ($element['#title'] || $element['#description']) {
unset($element['#id']);
return theme('form_element', $element, $element['#children']);
@ -1232,12 +1232,18 @@ function map_month($month) {
*/
function checkboxes_value(&$form) {
$value = array();
foreach ((array)$form['#default_value'] as $key) {
$form += array('#default_value' => array());
foreach ($form['#default_value'] as $key) {
$value[$key] = 1;
}
$form['#value'] = $value;
}
function password_confirm_value(&$form) {
$form += array('#default_value' => array());
$form['#value'] = $form['#default_value'] + array('pass1' => '', 'pass2' => '');
}
/**
* If no default value is set for weight select boxes, use 0.
*/
@ -1275,7 +1281,7 @@ function expand_radios($element) {
* A themed HTML string representing the form item.
*/
function theme_item($element) {
return theme('form_element', $element, $element['#value'] . $element['#children']);
return theme('form_element', $element, $element['#value'] . (!empty($element['#children']) ? $element['#children'] : ''));
}
/**
@ -1318,7 +1324,7 @@ function theme_checkboxes($element) {
if (isset($element['#attributes']['class'])) {
$class .= ' '. $element['#attributes']['class'];
}
$element['#children'] = '<div class="'. $class .'">'. $element['#children'] .'</div>';
$element['#children'] = '<div class="'. $class .'">'. (!empty($element['#children']) ? $element['#children'] : '') .'</div>';
if ($element['#title'] || $element['#description']) {
unset($element['#id']);
return theme('form_element', $element, $element['#children']);
@ -1492,6 +1498,7 @@ function process_weight($element) {
$element['#options'] = $weights;
$element['#type'] = 'select';
$element['#is_weight'] = TRUE;
$element += _element_info('select');
return $element;
}

View File

@ -356,7 +356,7 @@ function _menu_tree($result = NULL, $depth = 0, $link = array('link' => '', 'has
list($remnant, $menu) = _menu_tree($result, $item->depth, $menu_link);
$tree .= theme('menu_tree', $link, $menu);
$link = $remnant;
$remnant = '';
$remnant = array('link' => '', 'has_children' => FALSE);
}
elseif ($item->depth == $depth) {
$tree .= theme('menu_link', $link);
@ -496,6 +496,7 @@ function menu_rebuild() {
'_has_children' => 0,
'title' => '',
'weight' => 0,
'type' => MENU_NORMAL_ITEM,
);
$sort[$path] = ($item['_visible'] ? $depth : $number_parts) . sprintf('%05d', $item['weight']) . $item['title'];
unset($item);
@ -527,11 +528,6 @@ function menu_rebuild() {
if (!isset($item['map callback']) && isset($item['map arguments'])) {
$item['map callback'] = 'menu_map';
}
foreach (array('access', 'map', 'page') as $type) {
if (isset($item["$type callback"]) && !isset($item["$type arguments"])) {
$item["$type arguments"] = array();
}
}
if (is_bool($item['access callback'])) {
$item['access callback'] = intval($item['access callback']);
}
@ -548,7 +544,15 @@ function menu_rebuild() {
$vancode = '';
$link = '';
}
db_query("INSERT INTO {menu} (mid, pid, path, access_callback, access_arguments, page_callback, page_arguments, map_callback, map_arguments, fit, number_parts, vancode, menu_link, visible, parents, depth, has_children) VALUES (%d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', '%s', %d, '%s', %d, %d)", $item['_mid'], $item['_pid'], $path, $item['access callback'], serialize($item['access arguments']), $item['page callback'], serialize($item['page arguments']), $item['map callback'], serialize($item['map arguments']), $item['_fit'], $item['_number_parts'], $vancode .'+', $link, $item['_visible'], $item['_parents'], $item['_depth'], $item['_has_children']);
$insert_item = $item + array(
'access arguments' => array(),
'access callback' => '',
'page arguments' => array(),
'page callback' => '',
'map arguments' => array(),
'map callback' => '',
);
db_query("INSERT INTO {menu} (mid, pid, path, access_callback, access_arguments, page_callback, page_arguments, map_callback, map_arguments, fit, number_parts, vancode, menu_link, visible, parents, depth, has_children) VALUES (%d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', %d, %d, '%s', '%s', %d, '%s', %d, %d)", $insert_item['_mid'], $insert_item['_pid'], $path, $insert_item['access callback'], serialize($insert_item['access arguments']), $insert_item['page callback'], serialize($insert_item['page arguments']), $insert_item['map callback'], serialize($insert_item['map arguments']), $insert_item['_fit'], $insert_item['_number_parts'], $vancode .'+', $link, $insert_item['_visible'], $insert_item['_parents'], $insert_item['_depth'], $insert_item['_has_children']);
// $item needs to be unset because of the reference above.
unset($item);
}

View File

@ -127,7 +127,9 @@ function module_rebuild_cache() {
}
else {
// This is a new module.
db_query("INSERT INTO {system} (name, description, type, filename, status, throttle, bootstrap) VALUES ('%s', '%s', '%s', '%s', %d, %d, %d)", $file->name, $file->info['description'], 'module', $file->filename, $file->status, $file->throttle, $bootstrap);
$files[$filename]->status = 0;
$files[$filename]->throttle = 0;
db_query("INSERT INTO {system} (name, description, type, filename, status, throttle, bootstrap) VALUES ('%s', '%s', '%s', '%s', %d, %d, %d)", $file->name, $file->info['description'], 'module', $file->filename, 0, 0, $bootstrap);
}
}
$files = _module_build_dependents($files);

View File

@ -107,7 +107,7 @@ function tablesort_header($cell, $header, $ts) {
* A properly formatted cell, ready for _theme_table_cell().
*/
function tablesort_cell($cell, $header, $ts, $i) {
if (isset($header[$i]) && $header[$i]['data'] == $ts['name'] && $header[$i]['field']) {
if (isset($header[$i]['data']) && $header[$i]['data'] == $ts['name'] && !empty($header[$i]['field'])) {
if (is_array($cell)) {
if (isset($cell['class'])) {
$cell['class'] .= ' active';
@ -162,6 +162,7 @@ function tablesort_get_order($headers) {
else {
// The first column specified is initial 'order by' field unless otherwise specified
if (is_array($headers[0])) {
$headers[0] += array('data' => NULL, 'field' => NULL);
return array('name' => $headers[0]['data'], 'sql' => $headers[0]['field']);
}
else {

View File

@ -42,7 +42,7 @@ function init_theme() {
// Only select the user selected theme if it is available in the
// list of enabled themes.
$theme = $user->theme && $themes[$user->theme]->status ? $user->theme : variable_get('theme_default', 'garland');
$theme = !empty($user->theme) && $themes[$user->theme]->status ? $user->theme : variable_get('theme_default', 'garland');
// Allow modules to override the present theme... only select custom theme
// if it is available in the list of installed themes.
@ -611,7 +611,7 @@ function theme_image($path, $alt = '', $title = '', $attributes = NULL, $getsize
if (!$getsize || (is_file($path) && (list($width, $height, $type, $image_attributes) = @getimagesize($path)))) {
$attributes = drupal_attributes($attributes);
$url = (url($path) == $path) ? $path : (base_path() . $path);
return '<img src="'. check_url($url) .'" alt="'. check_plain($alt) .'" title="'. check_plain($title) .'" '. $image_attributes . $attributes .' />';
return '<img src="'. check_url($url) .'" alt="'. check_plain($alt) .'" title="'. check_plain($title) .'" '. (isset($image_attributes) ? $image_attributes : '') . $attributes .' />';
}
}
@ -1089,7 +1089,7 @@ function _theme_table_cell($cell, $header = FALSE) {
$attributes = '';
if (is_array($cell)) {
$data = $cell['data'];
$data = isset($cell['data']) ? $cell['data'] : '';
$header |= isset($cell['header']);
unset($cell['data']);
unset($cell['header']);

View File

@ -300,7 +300,9 @@ function aggregator_block($op = 'list', $delta = 0, $edit = array()) {
$block['content'] = theme('item_list', $items) . $read_more;
}
}
return $block;
if (isset($block)) {
return $block;
}
}
}
@ -1102,7 +1104,9 @@ function _aggregator_page_list($sql, $op, $header = '') {
}
$output .= '</div>';
$output .= $form['pager']['#value'];
$output .= $form['feed_icon']['#value'];
if (isset($form['feed_icon']['#value'])) {
$output .= $form['feed_icon']['#value'];
}
return $output;
}
}

View File

@ -160,7 +160,7 @@ function _block_rehash() {
$block['module'] = $module;
$block['delta'] = $delta;
// If previously written to database, load values.
if ($old_blocks[$module][$delta]) {
if (!empty($old_blocks[$module][$delta])) {
$block['status'] = $old_blocks[$module][$delta]->status;
$block['weight'] = $old_blocks[$module][$delta]->weight;
$block['region'] = $old_blocks[$module][$delta]->region;
@ -310,7 +310,7 @@ function theme_block_admin_display($form) {
foreach (element_children($form) as $i) {
$block = &$form[$i];
// Only take form elements that are blocks.
if (is_array($block['info'])) {
if (isset($block['info'])) {
// Fetch values
$region = $block['region']['#default_value'];
$status = $region != BLOCK_REGION_NONE;
@ -337,7 +337,7 @@ function theme_block_admin_display($form) {
$row[] = drupal_render($block['throttle']);
}
$row[] = drupal_render($block['configure']);
$row[] = $block['delete'] ? drupal_render($block['delete']) : '';
$row[] = !empty($block['delete']) ? drupal_render($block['delete']) : '';
$rows[] = $row;
}
}
@ -624,14 +624,14 @@ function block_user($type, $edit, &$user, $category = NULL) {
}
}
if ($return) {
if (!empty($return)) {
return $form;
}
}
break;
case 'validate':
if (!$edit['block']) {
if (empty($edit['block'])) {
$edit['block'] = array();
}
return $edit;

View File

@ -185,7 +185,7 @@ function blog_page_last() {
*/
function blog_form(&$node) {
global $nid;
$iid = $_GET['iid'];
$iid = isset($_GET['iid']) ? (int)$_GET['iid'] : 0;
$type = node_get_types('type', $node);
@ -207,8 +207,8 @@ function blog_form(&$node) {
}
$form['title'] = array('#type' => 'textfield', '#title' => check_plain($type->title_label), '#required' => TRUE, '#default_value' => $node->title, '#weight' => -5);
$form['body_filter']['body'] = array('#type' => 'textarea', '#title' => check_plain($type->body_label), '#default_value' => $node->body, '#rows' => 20, '#required' => TRUE);
$form['title'] = array('#type' => 'textfield', '#title' => check_plain($type->title_label), '#required' => TRUE, '#default_value' => !empty($node->title) ? $node->title : NULL, '#weight' => -5);
$form['body_filter']['body'] = array('#type' => 'textarea', '#title' => check_plain($type->body_label), '#default_value' => !empty($node->body) ? $node->title : NULL, '#rows' => 20, '#required' => TRUE);
$form['body_filter']['filter'] = filter_form($node->format);
return $form;
}

View File

@ -445,7 +445,7 @@ function book_nodeapi(&$node, $op, $teaser, $page) {
break;
case 'update':
if (isset($node->parent)) {
if ($node->revision) {
if (!empty($node->revision)) {
db_query("INSERT INTO {book} (nid, vid, parent, weight) VALUES (%d, %d, %d, %d)", $node->nid, $node->vid, $node->parent, $node->weight);
}
else {
@ -507,7 +507,7 @@ function theme_book_navigation($node) {
* This is a helper function for book_toc().
*/
function book_toc_recurse($nid, $indent, $toc, $children, $exclude) {
if ($children[$nid]) {
if (!empty($children[$nid])) {
foreach ($children[$nid] as $foo => $node) {
if (!$exclude || $exclude != $node->nid) {
$toc[$node->nid] = $indent .' '. $node->title;
@ -527,7 +527,7 @@ function book_toc($exclude = 0) {
$children = array();
while ($node = db_fetch_object($result)) {
if (!$children[$node->parent]) {
if (empty($children[$node->parent])) {
$children[$node->parent] = array();
}
$children[$node->parent][] = $node;
@ -958,6 +958,7 @@ function book_admin($nid = 0) {
*/
function book_admin_overview() {
$result = db_query(db_rewrite_sql('SELECT n.nid, n.title, b.weight FROM {node} n INNER JOIN {book} b ON n.vid = b.vid WHERE b.parent = 0 ORDER BY b.weight, n.title'));
$rows = array();
while ($book = db_fetch_object($result)) {
$rows[] = array(l($book->title, "node/$book->nid"), l(t('outline'), "admin/content/book/$book->nid"));
}

View File

@ -791,6 +791,7 @@ function comment_save($edit) {
$edit['name'] = $user->name;
}
$edit += array('mail' => '', 'homepage' => '');
db_query("INSERT INTO {comments} (cid, nid, pid, uid, subject, comment, format, hostname, timestamp, status, score, users, thread, name, mail, homepage) VALUES (%d, %d, %d, %d, '%s', '%s', %d, '%s', %d, %d, %d, '%s', '%s', '%s', '%s', '%s')", $edit['cid'], $edit['nid'], $edit['pid'], $edit['uid'], $edit['subject'], $edit['comment'], $edit['format'], $_SERVER['REMOTE_ADDR'], $edit['timestamp'], $status, $score, $users, $thread, $edit['name'], $edit['mail'], $edit['homepage']);
_comment_update_node_statistics($edit['nid']);
@ -1150,7 +1151,7 @@ function comment_operations($action = NULL) {
function comment_admin($type = 'new') {
$edit = $_POST;
if ($edit['operation'] == 'delete' && $edit['comments']) {
if (isset($edit['operation']) && ($edit['operation'] == 'delete') && $edit['comments']) {
return drupal_get_form('comment_multiple_delete_confirm');
}
else {
@ -1192,7 +1193,7 @@ function comment_admin_overview($type = 'new', $arg) {
$form['timestamp'][$comment->cid] = array('#value' => format_date($comment->timestamp, 'small'));
$form['operations'][$comment->cid] = array('#value' => l(t('edit'), 'comment/edit/'. $comment->cid, array(), $destination));
}
$form['comments'] = array('#type' => 'checkboxes', '#options' => $comments);
$form['comments'] = array('#type' => 'checkboxes', '#options' => isset($comments) ? $comments: array());
$form['pager'] = array('#value' => theme('pager', NULL, 50, 0));
return $form;
}
@ -1431,7 +1432,7 @@ function comment_form($edit, $title = NULL) {
$op = isset($_POST['op']) ? $_POST['op'] : '';
if ($user->uid) {
if ($edit['cid'] && user_access('administer comments')) {
if (!empty($edit['cid']) && user_access('administer comments')) {
if ($edit['author']) {
$author = $edit['author'];
}
@ -1537,19 +1538,19 @@ function comment_form($edit, $title = NULL) {
}
if (variable_get('comment_subject_field', 1) == 1) {
$form['subject'] = array('#type' => 'textfield', '#title' => t('Subject'), '#maxlength' => 64, '#default_value' => $edit['subject']);
$form['subject'] = array('#type' => 'textfield', '#title' => t('Subject'), '#maxlength' => 64, '#default_value' => !empty($edit['subject']) ? $edit['subject'] : '');
}
$form['comment_filter']['comment'] = array('#type' => 'textarea', '#title' => t('Comment'), '#rows' => 15, '#default_value' => $edit['comment'] ? $edit['comment'] : $user->signature, '#required' => TRUE);
$form['comment_filter']['comment'] = array('#type' => 'textarea', '#title' => t('Comment'), '#rows' => 15, '#default_value' => !empty($edit['comment']) ? $edit['comment'] : $user->signature, '#required' => TRUE);
if (!isset($edit['format'])) {
$edit['format'] = FILTER_FORMAT_DEFAULT;
}
$form['comment_filter']['format'] = filter_form($edit['format']);
$form['cid'] = array('#type' => 'value', '#value' => $edit['cid']);
$form['cid'] = array('#type' => 'value', '#value' => !empty($edit['cid']) ? $edit['cid'] : NULL);
$form['pid'] = array('#type' => 'value', '#value' => $edit['pid']);
$form['nid'] = array('#type' => 'value', '#value' => $edit['nid']);
$form['uid'] = array('#type' => 'value', '#value' => $edit['uid']);
$form['uid'] = array('#type' => 'value', '#value' => !empty($edit['uid']) ? $edit['uid'] : NULL);
$form['preview'] = array('#type' => 'button', '#value' => t('Preview comment'), '#weight' => 19);
$form['#token'] = 'comment'. $edit['nid'] . $edit['pid'];
@ -1565,7 +1566,7 @@ function comment_form($edit, $title = NULL) {
$form['#after_build'] = array('comment_form_add_preview');
}
if ($_REQUEST['destination']) {
if (!empty($_REQUEST['destination'])) {
$form['#attributes']['destination'] = $_REQUEST['destination'];
}
@ -1603,7 +1604,7 @@ function comment_form_add_preview($form, $edit) {
$comment->uid = $account->uid;
$comment->name = check_plain($account->name);
}
$comment->timestamp = $edit['timestamp'] ? $edit['timestamp'] : time();
$comment->timestamp = !empty($edit['timestamp']) ? $edit['timestamp'] : time();
// Preview the comment with security check.
if (!form_get_errors()) {

View File

@ -116,7 +116,7 @@ function contact_user($type, &$edit, &$user, $category = NULL) {
);
$form['contact']['contact'] = array('#type' => 'checkbox',
'#title' => t('Personal contact form'),
'#default_value' => $edit['contact'],
'#default_value' => !empty($edit['contact']) ? $edit['contact'] : FALSE,
'#description' => t('Allow other users to contact you by e-mail via <a href="@url">your personal contact form</a>. Note that while your e-mail address is not made public to other members of the community, privileged users such as site administrators are able to contact you even if you choose not to enable this feature.', array('@url' => url("user/$user->uid/contact"))),
);
return $form;

View File

@ -507,12 +507,11 @@ function filter_admin_format_form_submit($form_id, $form_values) {
cache_clear_all($format .':', 'cache_filter', TRUE);
// If a new filter was added, return to the main list of filters. Otherwise, stay on edit filter page to show new changes.
if ($new) {
return 'admin/settings/filters/';
}
else {
return 'admin/settings/filters/'. $format;
$return = 'admin/settings/filters';
if (!empty($new)) {
$return .= '/'. $format;
}
return $return;
}
/**

View File

@ -388,16 +388,16 @@ function forum_update($node) {
*/
function forum_form(&$node) {
$type = node_get_types('type', $node);
$form['title'] = array('#type' => 'textfield', '#title' => check_plain($type->title_label), '#default_value' => $node->title, '#required' => TRUE, '#weight' => -5);
$form['title'] = array('#type' => 'textfield', '#title' => check_plain($type->title_label), '#default_value' => !empty($node->title) ? $node->title : '', '#required' => TRUE, '#weight' => -5);
if ($node->nid) {
if (!empty($node->nid)) {
$forum_terms = taxonomy_node_get_terms_by_vocabulary(_forum_get_vid(), $node->nid);
// if editing, give option to leave shadows
$shadow = (count($forum_terms) > 1);
$form['shadow'] = array('#type' => 'checkbox', '#title' => t('Leave shadow copy'), '#default_value' => $shadow, '#description' => t('If you move this topic, you can leave a link in the old forum to the new forum.'));
}
$form['body_filter']['body'] = array('#type' => 'textarea', '#title' => check_plain($type->body_label), '#default_value' => $node->body, '#rows' => 20, '#required' => TRUE);
$form['body_filter']['body'] = array('#type' => 'textarea', '#title' => check_plain($type->body_label), '#default_value' => !empty($node->body) ? $node->body : '', '#rows' => 20, '#required' => TRUE);
$form['body_filter']['format'] = filter_form($node->format);
return $form;
@ -407,7 +407,7 @@ function forum_form(&$node) {
* Implementation of hook_prepare; assign forum taxonomy when adding a topic from within a forum.
*/
function forum_prepare(&$node) {
if (!$node->nid) {
if (empty($node->nid)) {
// new topic
$node->taxonomy[arg(3)]->vid = _forum_get_vid();
$node->taxonomy[arg(3)]->tid = arg(3);

View File

@ -240,7 +240,7 @@ function locale_supported_languages($reset = FALSE, $getall = FALSE) {
unset($enabled); unset($all);
}
if (is_null($enabled)) {
if (!isset($enabled)) {
$enabled = $all = array();
$all['name'] = $all['formula'] = $enabled['name'] = $enabled['formula'] = array();
$result = db_query('SELECT locale, name, formula, enabled FROM {locales_meta} ORDER BY isdefault DESC, enabled DESC, name ASC');

View File

@ -41,7 +41,7 @@ function node_help($section) {
if (arg(0) == 'node' && arg(1) == 'add' && $type = arg(2)) {
$type = node_get_types('type', str_replace('-', '_', arg(2)));
return '<p>'. filter_xss_admin($type->help) .'</p>';
return '<p>'. (isset($type->help) ? filter_xss_admin($type->help) : '') .'</p>';
}
}
@ -564,7 +564,7 @@ function node_save(&$node) {
}
$node = $node_current;
if ($node->revision) {
if (!empty($node->revision)) {
$node->old_vid = $node->vid;
$node->vid = db_next_id('{node_revisions}_vid');
}
@ -617,7 +617,7 @@ function node_save(&$node) {
}
$node_table_values[] = $node->nid;
$node_query = 'UPDATE {node} SET '. implode(', ', $arr) .' WHERE nid = %d';
if ($node->revision) {
if (!empty($node->revision)) {
$revisions_query = 'INSERT INTO {node_revisions} ('. implode(', ', array_keys($revisions_table_types)) .') VALUES ('. implode(', ', $revisions_table_types) .')';
}
else {
@ -1393,6 +1393,7 @@ function node_filter_form() {
* Theme node administration filter form.
*/
function theme_node_filter_form($form) {
$output = '';
$output .= '<div id="node-admin-filter">';
$output .= drupal_render($form['filters']);
$output .= '</div>';
@ -1404,14 +1405,15 @@ function theme_node_filter_form($form) {
* Theme node administration filter selector.
*/
function theme_node_filters($form) {
$output = '';
$output .= '<ul class="clear-block">';
if (sizeof($form['current'])) {
if (!empty($form['current'])) {
foreach (element_children($form['current']) as $key) {
$output .= '<li>'. drupal_render($form['current'][$key]) .'</li>';
}
}
$output .= '<li><dl class="multiselect">'. (sizeof($form['current']) ? '<dt><em>'. t('and') .'</em> '. t('where') .'</dt>' : '') .'<dd class="a">';
$output .= '<li><dl class="multiselect">'. (!empty($form['current']) ? '<dt><em>'. t('and') .'</em> '. t('where') .'</dt>' : '') .'<dd class="a">';
foreach (element_children($form['filter']) as $key) {
$output .= drupal_render($form['filter'][$key]);
}
@ -1495,7 +1497,7 @@ function node_admin_nodes_validate($form_id, $form_values) {
function node_admin_content() {
$output = drupal_get_form('node_filter_form');
if ($_POST['operation'] == 'delete' && $_POST['nodes']) {
if (isset($_POST['operation']) && ($_POST['operation'] == 'delete') && $_POST['nodes']) {
return drupal_get_form('node_multiple_delete_confirm');
}
// Call the form first, to allow for the form_values array to be populated.
@ -1542,6 +1544,7 @@ function node_admin_nodes() {
function theme_node_admin_nodes($form) {
// Overview table:
$header = array(theme('table_select_header_cell'), t('Title'), t('Type'), t('Author'), t('Status'), t('Operations'));
$output = '';
$output .= drupal_render($form['options']);
if (isset($form['title']) && is_array($form['title'])) {
@ -1720,7 +1723,8 @@ function node_revision_list($node) {
}
function node_admin_search() {
return drupal_get_form('search_form', url('admin/content/search'), $_POST['keys'], 'node') . search_data($_POST['keys'], 'node');
$keys = isset($_POST['keys']) ? $_POST['keys'] : NULL;
return drupal_get_form('search_form', url('admin/content/search'), $keys, 'node') . search_data($keys, 'node');
}
/**
@ -1889,7 +1893,7 @@ function node_validate($node, $form = array()) {
// Make sure the body has the minimum number of words.
// todo use a better word counting algorithm that will work in other languages
if (isset($node->body) && count(explode(' ', $node->body)) < $type->min_word_count) {
if (!empty($type->min_word_count) && isset($node->body) && count(explode(' ', $node->body)) < $type->min_word_count) {
form_set_error('body', t('The body of your @type is too short. You need at least %words words.', array('%words' => $type->min_word_count, '@type' => $type->name)));
}
@ -1953,12 +1957,14 @@ function node_form($node, $form_values = NULL) {
* These elements are just values so they are not even sent to the client.
*/
foreach (array('nid', 'vid', 'uid', 'created', 'type') as $key) {
$form[$key] = array('#type' => 'value', '#value' => $node->$key);
$form[$key] = array('#type' => 'value', '#value' => isset($node->$key) ? $node->$key : NULL);
}
// Changed must be sent to the client, for later overwrite error checking.
$form['changed'] = array('#type' => 'hidden', '#default_value' => $node->changed);
$form['changed'] = array('#type' => 'hidden', '#default_value' => isset($node->changed) ? $node->changed : NULL);
if (!isset($node->format)) {
$node->format = NULL;
}
// Get the node-specific bits.
$form = array_merge_recursive($form, node_invoke($node, 'form', $form_values));
if (!isset($form['title']['#weight'])) {
@ -2029,7 +2035,7 @@ function node_form($node, $form_values = NULL) {
// Add the buttons.
$form['preview'] = array('#type' => 'button', '#value' => t('Preview'), '#weight' => 40);
$form['submit'] = array('#type' => 'submit', '#value' => t('Submit'), '#weight' => 45);
if ($node->nid && node_access('delete', $node)) {
if (!empty($node->nid) && node_access('delete', $node)) {
$form['delete'] = array('#type' => 'button', '#value' => t('Delete'), '#weight' => 50);
}
$form['#after_build'] = array('node_form_add_preview');
@ -2388,7 +2394,7 @@ function node_page_view($node, $cid = NULL) {
* Menu callback; presents the node editing form, or redirects to delete confirmation.
*/
function node_page_edit($node) {
if ($_POST['op'] == t('Delete')) {
if (isset($_POST['op']) && ($_POST['op'] == t('Delete'))) {
// Note: we redirect from node/nid/edit to node/nid/delete to make the tabs disappear.
if ($_REQUEST['destination']) {
$destination = drupal_get_destination();

View File

@ -244,7 +244,7 @@ function path_nodeapi(&$node, $op, $arg) {
break;
case 'update':
path_set_alias("node/$node->nid", $node->path, $node->pid);
path_set_alias("node/$node->nid", isset($node->path) ? $node->path : NULL, isset($node->pid) ? $node->pid : NULL);
break;
case 'delete':
@ -262,7 +262,7 @@ function path_nodeapi(&$node, $op, $arg) {
*/
function path_form_alter($form_id, &$form) {
if (isset($form['type']) && $form['type']['#value'] .'_node_form' == $form_id) {
$path = $form['#node']->path;
$path = isset($form['#node']->path) ? $form['#node']->path : NULL;
$form['path'] = array(
'#type' => 'fieldset',
'#title' => t('URL path settings'),
@ -309,12 +309,13 @@ function path_overview() {
$sql .= tablesort_sql($header);
$result = pager_query($sql, 50);
$rows = array();
$destination = drupal_get_destination();
while ($data = db_fetch_object($result)) {
$rows[] = array(check_plain($data->dst), check_plain($data->src), l(t('edit'), "admin/build/path/edit/$data->pid", array(), $destination), l(t('delete'), "admin/build/path/delete/$data->pid", array(), $destination));
}
if (!$rows) {
if (empty($rows)) {
$rows[] = array(array('data' => t('No URL aliases available.'), 'colspan' => '4'));
}

View File

@ -596,6 +596,7 @@ function profile_view_profile($user) {
$result = db_query('SELECT * FROM {profile_fields} WHERE visibility != %d AND visibility != %d ORDER BY category, weight', PROFILE_PRIVATE, PROFILE_HIDDEN);
}
$fields = array();
while ($field = db_fetch_object($result)) {
if ($value = profile_view_field($user, $field)) {
$title = ($field->type != 'checkbox') ? check_plain($field->title) : NULL;
@ -626,6 +627,7 @@ function _profile_form_explanation($field) {
function profile_form_profile($edit, $user, $category, $register = FALSE) {
$result = _profile_get_fields($category, $register);
$w = 0;
$fields = array();
while ($field = db_fetch_object($result)) {
$category = $field->category;
if (!isset($fields[$category])) {
@ -744,6 +746,7 @@ function profile_validate_profile($edit, $category) {
function profile_categories() {
$result = db_query("SELECT DISTINCT(category) FROM {profile_fields}");
$data = array();
while ($category = db_fetch_object($result)) {
$data[] = array('name' => $category->category, 'title' => $category->category, 'weight' => 3);
}

View File

@ -257,6 +257,7 @@ function statistics_recent_hits() {
$sql = 'SELECT a.aid, a.path, a.title, a.uid, u.name, a.timestamp FROM {accesslog} a LEFT JOIN {users} u ON u.uid = a.uid' . tablesort_sql($header);
$result = pager_query($sql, 30);
$rows = array();
while ($log = db_fetch_object($result)) {
$rows[] = array(
array('data' => format_date($log->timestamp, 'small'), 'class' => 'nowrap'),
@ -286,6 +287,7 @@ function statistics_top_pages() {
$sql .= tablesort_sql($header);
$result = pager_query($sql, 30, 0, $sql_cnt);
$rows = array();
while ($page = db_fetch_object($result)) {
$rows[] = array($page->hits, _statistics_format_item($page->title, $page->path), t('%time ms', array('%time' => round($page->average_time))), format_interval(round($page->total_time / 1000)));
}
@ -312,6 +314,7 @@ function statistics_top_visitors() {
$sql_cnt = "SELECT COUNT(DISTINCT(CONCAT(uid, hostname))) FROM {accesslog}";
$result = pager_query($sql, 30, 0, $sql_cnt);
$rows = array();
while ($account = db_fetch_object($result)) {
$qs = drupal_get_destination();
$ban_link = $account->aid ? l(t('unban'), "admin/user/rules/delete/$account->aid", array(), $qs) : l(t('ban'), "admin/user/rules/add/$account->hostname/host", array(), $qs);
@ -341,6 +344,7 @@ function statistics_top_referrers() {
$query .= tablesort_sql($header);
$result = pager_query($query, 30, 0, $query_cnt, $_SERVER['HTTP_HOST']);
$rows = array();
while ($referrer = db_fetch_object($result)) {
$rows[] = array($referrer->hits, _statistics_link($referrer->url), t('@time ago', array('@time' => format_interval(time() - $referrer->last))));
}
@ -452,8 +456,9 @@ function statistics_block($op = 'list', $delta = 0, $edit = array()) {
case 'list':
if (variable_get('statistics_count_content_views', 0)) {
$blocks[0]['info'] = t('Popular content');
return $blocks;
}
return $blocks;
break;
case 'configure':
// Popular content block settings

View File

@ -3,7 +3,7 @@
define('DRUPAL_MINIMUM_PHP', '4.3.3');
define('DRUPAL_MINIMUM_MYSQL', '4.1.0'); // If using MySQL
define('DRUPAL_MINIMUM_PGSQL', '7.3'); // If using PostgreSQL
define('DRUPAL_MINIMUM_PGSQL', '7.4'); // If using PostgreSQL
define('DRUPAL_MINIMUM_APACHE', '1.3'); // If using Apache
/**

View File

@ -62,23 +62,23 @@ function system_elements() {
$type['submit'] = array('#input' => TRUE, '#name' => 'op', '#button_type' => 'submit', '#executes_submit_callback' => TRUE);
$type['button'] = array('#input' => TRUE, '#name' => 'op', '#button_type' => 'submit', '#executes_submit_callback' => FALSE);
$type['textfield'] = array('#input' => TRUE, '#size' => 60, '#maxlength' => 128, '#autocomplete_path' => FALSE);
$type['password'] = array('#input' => TRUE, '#size' => 60);
$type['password'] = array('#input' => TRUE, '#size' => 60, '#maxlength' => 128);
$type['password_confirm'] = array('#input' => TRUE, '#process' => array('expand_password_confirm' => array()));
$type['textarea'] = array('#input' => TRUE, '#cols' => 60, '#rows' => 5);
$type['textarea'] = array('#input' => TRUE, '#cols' => 60, '#rows' => 5, '#resizable' => TRUE);
$type['radios'] = array('#input' => TRUE, '#process' => array('expand_radios' => array()));
$type['radio'] = array('#input' => TRUE);
$type['radio'] = array('#input' => TRUE, '#default_value' => NULL);
$type['checkboxes'] = array('#input' => TRUE, '#process' => array('expand_checkboxes' => array()), '#tree' => TRUE);
$type['select'] = array('#input' => TRUE);
$type['select'] = array('#input' => TRUE, '#size' => 0, '#multiple' => FALSE);
$type['weight'] = array('#input' => TRUE, '#delta' => 10, '#default_value' => 0, '#process' => array('process_weight' => array()));
$type['date'] = array('#input' => TRUE, '#process' => array('expand_date' => array()), '#validate' => array('date_validate' => array()));
$type['file'] = array('#input' => TRUE, '#size' => 60);
// Form structure
$type['item'] = array();
$type['item'] = array('#value' => '');
$type['hidden'] = array('#input' => TRUE);
$type['value'] = array('#input' => TRUE);
$type['markup'] = array('#prefix' => '', '#suffix' => '');
$type['fieldset'] = array('#collapsible' => FALSE, '#collapsed' => FALSE);
$type['fieldset'] = array('#collapsible' => FALSE, '#collapsed' => FALSE, '#value' => NULL);
$type['token'] = array('#input' => TRUE);
return $type;
}
@ -309,7 +309,7 @@ function system_init() {
*/
function system_user($type, $edit, &$user, $category = NULL) {
if ($type == 'form' && $category == 'account') {
$form['theme_select'] = system_theme_select_form(t('Selecting a different theme will change the look and feel of the site.'), $edit['theme'], 2);
$form['theme_select'] = system_theme_select_form(t('Selecting a different theme will change the look and feel of the site.'), isset($edit['theme']) ? $edit['theme'] : NULL, 2);
if (variable_get('configurable_timezones', 1)) {
$zones = _system_zonelist();
@ -496,7 +496,7 @@ function system_theme_select_form($description = '', $default_value = '', $weigh
function theme_system_theme_select_form($form) {
foreach (element_children($form) as $key) {
$row = array();
if (is_array($form[$key]['description'])) {
if (isset($form[$key]['description']) && is_array($form[$key]['description'])) {
$row[] = drupal_render($form[$key]['screenshot']);
$row[] = drupal_render($form[$key]['description']);
$row[] = drupal_render($form['theme'][$key]);
@ -949,7 +949,7 @@ function system_theme_data() {
$style->template = isset($theme->template) ? $theme->template : FALSE;
$style->name = basename(dirname($style->filename));
$style->owner = $theme->filename;
$style->prefix = $theme->template ? $theme->prefix : $theme->name;
$style->prefix = !empty($theme->template) ? $theme->prefix : $theme->name;
// do not double-insert styles with theme files in their directory
if (array_key_exists($style->name, $themes)) {
continue;
@ -1160,7 +1160,7 @@ function system_themes() {
function theme_system_themes($form) {
foreach (element_children($form) as $key) {
$row = array();
if (is_array($form[$key]['description'])) {
if (isset($form[$key]['description']) && is_array($form[$key]['description'])) {
$row[] = drupal_render($form[$key]['screenshot']);
$row[] = drupal_render($form[$key]['description']);
$row[] = array('data' => drupal_render($form['status'][$key]), 'align' => 'center');
@ -1242,8 +1242,13 @@ function system_modules($form_values = NULL) {
// Array for disabling checkboxes in callback system_module_disable.
$disabled = array();
$throttle = array();
// Traverse the files retrieved and build the form.
foreach ($files as $filename => $file) {
$file->info += array(
'dependents' => array(),
'version' => NULL,
);
$form['name'][$filename] = array('#value' => $file->info['name']);
$form['version'][$filename] = array('#value' => $file->info['version']);
$form['description'][$filename] = array('#value' => t($file->info['description']));
@ -1286,16 +1291,14 @@ function system_modules($form_values = NULL) {
// Mark dependents disabled so user can not remove modules being depended on.
$dependents = array();
if (is_array($file->info['dependents'])) {
foreach ($file->info['dependents'] as $dependent) {
if ($files[$dependent]->status == 1) {
$dependents[] = $files[$dependent]->info['name'] . t(' (<span class="admin-enabled">enabled</span>)');
$disabled[] = $filename;
$form['disabled_modules']['#value'][$filename] = TRUE;
}
else {
$dependents[] = $files[$dependent]->info['name'] . t(' (<span class="admin-disabled">disabled</span>)');
}
foreach ($file->info['dependents'] as $dependent) {
if ($files[$dependent]->status == 1) {
$dependents[] = $files[$dependent]->info['name'] . t(' (<span class="admin-enabled">enabled</span>)');
$disabled[] = $filename;
$form['disabled_modules']['#value'][$filename] = TRUE;
}
else {
$dependents[] = $files[$dependent]->info['name'] . t(' (<span class="admin-disabled">disabled</span>)');
}
}
@ -1602,7 +1605,7 @@ function system_modules_uninstall($form_values = NULL) {
}
// Only build the rest of the form if there are any modules available to uninstall.
if (count($options)) {
if (!empty($options)) {
$form['uninstall'] = array(
'#type' => 'checkboxes',
'#options' => $options,
@ -1614,6 +1617,9 @@ function system_modules_uninstall($form_values = NULL) {
$form['#multistep'] = TRUE;
$form['#action'] = url('admin/build/modules/uninstall/confirm');
}
else {
$form['modules'] = array();
}
return $form;
}
@ -1688,7 +1694,7 @@ function theme_system_modules_uninstall($form) {
}
// Only display table if there are modules that can be uninstalled.
if (!count($rows)) {
if (empty($rows)) {
$rows[] = array(array('data' => t('No modules are available to uninstall.'), 'colspan' => '3', 'align' => 'center', 'class' => 'message'));
}
@ -1845,7 +1851,7 @@ function theme_status_report(&$requirements) {
$i = 0;
$output = '<table class="system-status-report">';
foreach ($requirements as $requirement) {
if ($requirement['#type'] == '') {
if (empty($requirement['#type'])) {
$class = ++$i % 2 == 0 ? 'even' : 'odd';
$classes = array(
@ -1854,10 +1860,10 @@ function theme_status_report(&$requirements) {
REQUIREMENT_WARNING => 'warning',
REQUIREMENT_ERROR => 'error',
);
$class = $classes[(int)$requirement['severity']] .' '. $class;
$class = $classes[isset($requirement['severity']) ? (int)$requirement['severity'] : 0] .' '. $class;
// Output table row(s)
if ($requirement['description']) {
if (empty($requirement['description'])) {
$output .= '<tr class="'. $class .' merge-down"><th>'. $requirement['title'] .'</th><td>'. $requirement['value'] .'</td></tr>';
$output .= '<tr class="'. $class .' merge-up"><td colspan="2">'. $requirement['description'] .'</td></tr>';
}

View File

@ -296,7 +296,7 @@ function taxonomy_form_vocabulary_submit($form_id, $form_values) {
function taxonomy_save_vocabulary(&$edit) {
$edit['nodes'] = empty($edit['nodes']) ? array() : $edit['nodes'];
if ($edit['vid'] && $edit['name']) {
if (!empty($edit['vid']) && !empty($edit['name'])) {
db_query("UPDATE {vocabulary} SET name = '%s', description = '%s', help = '%s', multiple = %d, required = %d, hierarchy = %d, relations = %d, tags = %d, weight = %d, module = '%s' WHERE vid = %d", $edit['name'], $edit['description'], $edit['help'], $edit['multiple'], $edit['required'], $edit['hierarchy'], $edit['relations'], $edit['tags'], $edit['weight'], isset($edit['module']) ? $edit['module'] : 'taxonomy', $edit['vid']);
db_query("DELETE FROM {vocabulary_node_types} WHERE vid = %d", $edit['vid']);
foreach ($edit['nodes'] as $type => $selected) {
@ -305,12 +305,12 @@ function taxonomy_save_vocabulary(&$edit) {
module_invoke_all('taxonomy', 'update', 'vocabulary', $edit);
$status = SAVED_UPDATED;
}
else if ($edit['vid']) {
else if (!empty($edit['vid'])) {
$status = taxonomy_del_vocabulary($edit['vid']);
}
else {
$edit['vid'] = db_next_id('{vocabulary}_vid');
db_query("INSERT INTO {vocabulary} (vid, name, description, help, multiple, required, hierarchy, relations, tags, weight, module) VALUES (%d, '%s', '%s', '%s', %d, %d, %d, %d, %d, %d, '%s')", $edit['vid'], $edit['name'], $edit['description'], $edit['help'], $edit['multiple'], $edit['required'], $edit['hierarchy'], $edit['relations'], $edit['tags'], $edit['weight'], isset($edit['module']) ? $edit['module'] : 'taxonomy');
db_query("INSERT INTO {vocabulary} (vid, name, description, help, multiple, required, hierarchy, relations, tags, weight, module) VALUES (%d, '%s', '%s', '%s', %d, %d, %d, %d, %d, %d, '%s')", $edit['vid'], $edit['name'], isset($edit['description']) ? $edit['description'] : NULL, isset($edit['help']) ? $edit['help'] : NULL, $edit['multiple'], $edit['required'], $edit['hierarchy'], $edit['relations'], isset($edit['tags']) ? $edit['tags'] : NULL, $edit['weight'], isset($edit['module']) ? $edit['module'] : 'taxonomy');
foreach ($edit['nodes'] as $type => $selected) {
db_query("INSERT INTO {vocabulary_node_types} (vid, type) VALUES (%d, '%s')", $edit['vid'], $type);
}
@ -657,12 +657,7 @@ function taxonomy_form_alter($form_id, &$form) {
$node = $form['#node'];
if (!isset($node->taxonomy)) {
if ($node->nid) {
$terms = taxonomy_node_get_terms($node->nid);
}
else {
$terms = array();
}
$terms = empty($node->nid) ? array() : taxonomy_node_get_terms($node->nid);
}
else {
$terms = $node->taxonomy;
@ -716,7 +711,7 @@ function taxonomy_form_alter($form_id, &$form) {
$form['taxonomy'][$vocabulary->vid]['#required'] = $vocabulary->required;
}
}
if (is_array($form['taxonomy']) && !empty($form['taxonomy'])) {
if (!empty($form['taxonomy']) && is_array($form['taxonomy'])) {
if (count($form['taxonomy']) > 1) { // Add fieldset only if form has more than 1 element.
$form['taxonomy'] += array(
'#type' => 'fieldset',
@ -768,7 +763,7 @@ function taxonomy_node_validate(&$node) {
if ($terms['tags']) {
foreach ($terms['tags'] as $vid => $vid_value) {
$vocabulary = taxonomy_get_vocabulary($vid);
if (!$vocabulary->tags) {
if (empty($vocabulary->tags)) {
// see form_get_error $key = implode('][', $element['#parents']);
// on why this is the key
form_set_error("taxonomy][tags][$vid", t('The %name vocabulary can not be modified in this way.', array('%name' => $vocabulary->name)));
@ -976,7 +971,8 @@ function taxonomy_get_tree($vid, $parent = 0, $depth = -1, $max_depth = NULL) {
}
$max_depth = (is_null($max_depth)) ? count($children[$vid]) : $max_depth;
if ($children[$vid][$parent]) {
$tree = array();
if (!empty($children[$vid][$parent])) {
foreach ($children[$vid][$parent] as $child) {
if ($max_depth > $depth) {
$term = drupal_clone($terms[$vid][$child]);
@ -986,14 +982,14 @@ function taxonomy_get_tree($vid, $parent = 0, $depth = -1, $max_depth = NULL) {
$term->parents = $parents[$vid][$child];
$tree[] = $term;
if ($children[$vid][$child]) {
if (!empty($children[$vid][$child])) {
$tree = array_merge($tree, taxonomy_get_tree($vid, $child, $depth, $max_depth));
}
}
}
}
return $tree ? $tree : array();
return $tree;
}
/**

View File

@ -285,7 +285,7 @@ function _upload_prepare(&$node) {
// Clean up old file previews if a post didn't get the user to this page.
// i.e. the user left the edit page, because they didn't want to upload anything.
if(count($_POST) == 0) {
if (is_array($_SESSION['file_previews']) && count($_SESSION['file_previews'])) {
if (!empty($_SESSION['file_previews']) && is_array($_SESSION['file_previews'])) {
foreach ($_SESSION['file_previews'] as $fid => $file) {
file_delete($file->filepath);
}
@ -321,7 +321,7 @@ function _upload_prepare(&$node) {
}
// Attach file previews to node object.
if (is_array($_SESSION['file_previews']) && count($_SESSION['file_previews'])) {
if (!empty($_SESSION['file_previews']) && is_array($_SESSION['file_previews'])) {
foreach ($_SESSION['file_previews'] as $fid => $file) {
if ($user->uid != 1) {
// Here something.php.pps becomes something.php_.pps
@ -395,7 +395,7 @@ function _upload_validate(&$node) {
$filesize = 0;
// Check if node->files exists, and if it contains something.
if (is_array($node->files)) {
if (isset($node->files) && is_array($node->files)) {
// Update existing files with form data.
foreach ($node->files as $fid => $file) {
// Convert file to object for compatibility
@ -762,7 +762,7 @@ function _upload_form($node) {
$form['#theme'] = 'upload_form_new';
if (is_array($node->files) && count($node->files)) {
if (!empty($node->files) && is_array($node->files)) {
$form['files']['#theme'] = 'upload_form_current';
$form['files']['#tree'] = TRUE;
foreach ($node->files as $key => $file) {
@ -799,7 +799,7 @@ function _upload_form($node) {
}
// Needed for JS
$form['current']['vid'] = array('#type' => 'hidden', '#value' => $node->vid);
$form['current']['vid'] = array('#type' => 'hidden', '#value' => isset($node->vid) ? $node->vid : 0);
return $form;
}

View File

@ -113,7 +113,7 @@ function user_save($account, $array = array(), $category = 'account') {
$user_fields = user_fields();
if ($account->uid) {
user_module_invoke('update', $array, $account, $category);
$query = '';
$data = unserialize(db_result(db_query('SELECT data FROM {users} WHERE uid = %d', $account->uid)));
foreach ($array as $key => $value) {
if ($key == 'pass' && !empty($value)) {
@ -143,7 +143,7 @@ function user_save($account, $array = array(), $category = 'account') {
db_query("UPDATE {users} SET $query WHERE uid = %d", array_merge($v, array($account->uid)));
// Reload user roles if provided
if (is_array($array['roles'])) {
if (isset($array['roles']) && is_array($array['roles'])) {
db_query('DELETE FROM {users_roles} WHERE uid = %d', $account->uid);
foreach (array_keys($array['roles']) as $rid) {
@ -708,8 +708,8 @@ function user_view_access($account) {
);
}
function user_edit_access($uid) {
return ($GLOBALS['user']->uid == $uid) || array('administer users');
function user_edit_access($account) {
return ($GLOBALS['user']->uid == $account->uid) || array('administer users');
}
function user_load_self($arg) {
@ -909,7 +909,8 @@ function user_menu() {
'type' => MENU_LOCAL_TASK,
);
if (($categories = _user_categories($account)) && (count($categories) > 1)) {
$empty_account = new stdClass();
if (($categories = _user_categories($empty_account)) && (count($categories) > 1)) {
foreach ($categories as $key => $category) {
$items['user/%/edit/'. $category['name']] = array(
'title' => $category['title'],
@ -1479,7 +1480,7 @@ function _user_edit_validate($uid, &$edit) {
function _user_edit_submit($uid, &$edit) {
$user = user_load(array('uid' => $uid));
// Delete picture if requested, and if no replacement picture was given.
if ($edit['picture_delete']) {
if (!empty($edit['picture_delete'])) {
if ($user->picture && file_exists($user->picture)) {
file_delete($user->picture);
}
@ -1498,7 +1499,8 @@ function user_edit($category = 'account') {
drupal_set_message(t('The account does not exist or has already been deleted.'));
drupal_goto('admin/user/user');
}
$edit = $_POST['op'] ? $_POST : (array)$account;
$op = !empty($_POST['op']) ? $_POST['op'] : '';
$edit = $op ? $_POST : (array)$account;
if (arg(2) == 'delete') {
if ($edit['confirm']) {
@ -1509,7 +1511,7 @@ function user_edit($category = 'account') {
return drupal_get_form('user_confirm_delete', $account->name, $account->uid);
}
}
else if ($_POST['op'] == t('Delete')) {
else if ($op == t('Delete')) {
if ($_REQUEST['destination']) {
$destination = drupal_get_destination();
unset($_REQUEST['destination']);
@ -1820,7 +1822,7 @@ function user_admin_access() {
while ($rule = db_fetch_object($result)) {
$rows[] = array($rule->status ? t('allow') : t('deny'), $access_types[$rule->type], $rule->mask, l(t('edit'), 'admin/user/rules/edit/'. $rule->aid), l(t('delete'), 'admin/user/rules/delete/'. $rule->aid));
}
if (count($rows) == 0) {
if (empty($rows)) {
$rows[] = array(array('data' => '<em>'. t('There are currently no access rules.') .'</em>', 'colspan' => 5));
}
$output .= theme('table', $header, $rows);
@ -2068,7 +2070,7 @@ function theme_user_admin_new_role($form) {
$rows[] = array($name, t('locked'), $edit_permissions);
}
}
$rows[] = array(drupal_render($form['name']), array('data' => drupal_render($form['submit']), colspan => 2));
$rows[] = array(drupal_render($form['name']), array('data' => drupal_render($form['submit']), 'colspan' => 2));
$output = drupal_render($form);
$output .= theme('table', $header, $rows);
@ -2410,14 +2412,15 @@ function user_admin($callback_arg = '') {
switch ($op) {
case 'search':
case t('Search'):
$output = drupal_get_form('search_form', url('admin/user/search'), $_POST['keys'], 'user') . search_data($_POST['keys'], 'user');
$keys = isset($_POST['keys']) ? $_POST['keys'] : NULL;
$output = drupal_get_form('search_form', url('admin/user/search'), $keys, 'user') . search_data($keys, 'user');
break;
case t('Create new account'):
case 'create':
$output = drupal_get_form('user_register');
break;
default:
if ($_POST['accounts'] && $_POST['operation'] == 'delete') {
if (!empty($_POST['accounts']) && isset($_POST['operation']) && ($_POST['operation'] == 'delete')) {
$output = drupal_get_form('user_multiple_delete_confirm');
}
else {
@ -2510,6 +2513,8 @@ function _user_categories($account) {
}
function _user_sort($a, $b) {
$a = (array)$a + array('weight' => 0, 'title' => '');
$b = (array)$b + array('weight' => 0, 'title' => '');
return $a['weight'] < $b['weight'] ? -1 : ($a['weight'] > $b['weight'] ? 1 : ($a['title'] < $b['title'] ? -1 : 1));
}
@ -2677,7 +2682,7 @@ function theme_user_filter_form($form) {
*/
function theme_user_filters($form) {
$output = '<ul class="clear-block">';
if (sizeof($form['current'])) {
if (!empty($form['current'])) {
foreach (element_children($form['current']) as $key) {
$output .= '<li>'. drupal_render($form['current'][$key]) .'</li>';
}

View File

@ -174,11 +174,12 @@ function watchdog_top($type) {
$result = pager_query("SELECT COUNT(wid) AS count, message FROM {watchdog} WHERE type = '%s' GROUP BY message ". tablesort_sql($header), 30, 0, "SELECT COUNT(DISTINCT(message)) FROM {watchdog} WHERE type = '%s'", $type);
$rows = array();
while ($watchdog = db_fetch_object($result)) {
$rows[] = array($watchdog->count, truncate_utf8($watchdog->message, 56, TRUE, TRUE));
}
if (!$rows) {
if (empty($rows)) {
$rows[] = array(array('data' => t('No log messages available.'), 'colspan' => 2));
}

View File

@ -90,7 +90,7 @@
* $db_url = 'mysqli://username:password@localhost/databasename';
* $db_url = 'pgsql://username:password@localhost/databasename';
*/
$db_url = 'mysql://username:password@localhost/databasename';
$db_url = 'mysql://drupal:drupal@localhost/drupal';
$db_prefix = '';
/**

View File

@ -1,4 +1,4 @@
<div class="comment<?php if ($comment->status == COMMENT_NOT_PUBLISHED) print ' comment-unpublished'; ?>">
<div class="comment<?php if (isset($comment->status) && $comment->status == COMMENT_NOT_PUBLISHED) print ' comment-unpublished'; ?>">
<?php if ($picture) {
print $picture;
} ?>

View File

@ -1,4 +1,4 @@
<div class="comment<?php print ($comment->new) ? ' comment-new' : ''; print ($comment->status == COMMENT_NOT_PUBLISHED) ? ' comment-unpublished' : ''; print ' '. $zebra; ?>">
<div class="comment<?php print ($comment->new) ? ' comment-new' : ''; print (isset($comment->status) && $comment->status == COMMENT_NOT_PUBLISHED) ? ' comment-unpublished' : ''; print ' '. $zebra; ?>">
<div class="clear-block">
<?php if ($submitted): ?>