diff --git a/storm.module b/storm.module index 57b0806..89ed0f1 100644 --- a/storm.module +++ b/storm.module @@ -1085,27 +1085,21 @@ function storm_icon_delete_node($node, $params=array()) { function storm_icon_add($path, $item, $params=array()) { global $user; - $type = $item->type; - $af = $type .'_access'; - if (!$af('create', $item, $user)) return ''; + if (!node_access('create', $item, $user)) return ''; $attributes = array('class' => 'popups-form'); return storm_icon_l('application_add', $path, t('Add'), '', $params, $attributes); } function storm_icon_edit($path, $item, $params=array()) { global $user; - $type = $item->type; - $af = $type .'_access'; - if (!$af('update', $item, $user)) return ''; + if (!node_access('update', $item, $user)) return ''; $attributes = array('class' => 'popups-form'); return storm_icon_l('application_edit', $path, t('Edit'), '', $params, $attributes); } function storm_icon_delete($path, $item, $params=array()) { global $user; - $type = $item->type; - $af = $type .'_access'; - if (!$af('delete', $item, $user)) return ''; + if (!node_access('delete', $item, $user)) return ''; $attributes = array('class' => 'popups-form'); return storm_icon_l('application_delete', $path, t('Delete'), '', $params, $attributes); } diff --git a/storm_handler_field_operation.inc b/storm_handler_field_operation.inc index 8cd1859..ded363d 100644 --- a/storm_handler_field_operation.inc +++ b/storm_handler_field_operation.inc @@ -34,12 +34,14 @@ class storm_handler_field_operation extends views_handler_field_node_link { } function render($values) { + global $user; // ensure user has access to edit this node. $node = new stdClass(); $node->nid = $values->{$this->aliases['nid']}; $node->uid = $values->{$this->aliases['uid']}; $node->type = $values->{$this->aliases['type']}; $node->format = $values->{$this->aliases['format']}; + //TODO add stormorganization_nid and assigned_nid! $node->status = 1; // unpublished nodes ignore access control if ($this->options['display_icons']) { $value = ""; @@ -52,18 +54,14 @@ class storm_handler_field_operation extends views_handler_field_node_link { return $value; } else { - global $user; - $type = $node->type; - $af = $type .'_access'; - $value = ""; - if ($af('update', $node, $user)) { + if (node_access('update', $node)) { $value .= l(t('edit'), "node/$node->nid/edit", array('query' => drupal_get_destination())); } - if (!empty($value)) { - $value .= ' | '; - } - if ($af('delete', $node, $user)) { + if (node_access('delete', $node)) { + if (!empty($value)) { + $value .= ' | '; + } $value .= l(t('delete'), "node/$node->nid/delete", array('query' => drupal_get_destination())); } diff --git a/stormexpense/stormexpense.theme.inc b/stormexpense/stormexpense.theme.inc index bf4b8a6..e935840 100644 --- a/stormexpense/stormexpense.theme.inc +++ b/stormexpense/stormexpense.theme.inc @@ -7,14 +7,6 @@ function theme_stormexpense_list($header, $expenses, $totals) { $rows = array(); foreach ($expenses as $expense) { - $n = new stdClass(); - $n->nid = $expense->nid; - $n->uid = $expense->uid; - $n->organization_nid = $expense->organization_nid; - $n->project_nid = $expense->project_nid; - $n->task_nid = $expense->task_nid; - $n->ticket_nid = $expense->ticket_nid; - $n->type = 'stormexpense'; $rows[] = array( l($expense->organization_title, 'node/'. $expense->organization_nid), l($expense->project_title, 'node/'. $expense->project_nid), @@ -22,7 +14,7 @@ function theme_stormexpense_list($header, $expenses, $totals) { format_date($expense->expensedate, 'custom', 'Y-m-d'), array('data' => sprintf('%.2f', $expense->total), 'align' => 'right'), array( - 'data' => storm_icon_edit_node($n, $_GET) .' '. storm_icon_delete_node($n, $_GET), + 'data' => storm_icon_edit_node($expense, $_GET) .' '. storm_icon_delete_node($expense, $_GET), 'class' => 'storm_list_operations', ), ); diff --git a/storminvoice/storminvoice.admin.inc b/storminvoice/storminvoice.admin.inc index 4209f8d..e7d0356 100644 --- a/storminvoice/storminvoice.admin.inc +++ b/storminvoice/storminvoice.admin.inc @@ -63,7 +63,7 @@ function storminvoice_list() { ), ); - $s = "SELECT n.title, sin.* FROM {node} AS n INNER JOIN {storminvoice} AS sin ON n.vid=sin.vid WHERE n.status=1 AND n.type='storminvoice' "; + $s = "SELECT n.title, n.type, sin.* FROM {node} AS n INNER JOIN {storminvoice} AS sin ON n.vid=sin.vid WHERE n.status=1 AND n.type='storminvoice' "; $s_totals_topay = "SELECT SUM(amount) amount, SUM(tax1) tax1, SUM(tax2) tax2, SUM(total) total FROM {storminvoice} sin INNER JOIN {node} n ON n.vid=sin.vid WHERE n.status=1 AND n.type='storminvoice' AND sin.paymentdate=0"; diff --git a/storminvoice/storminvoice.theme.inc b/storminvoice/storminvoice.theme.inc index 2cfe776..d330251 100644 --- a/storminvoice/storminvoice.theme.inc +++ b/storminvoice/storminvoice.theme.inc @@ -25,12 +25,6 @@ function theme_storminvoice_list($header, $invoices, $itemsperpage, $totals_topay, $totals_paid, $totals) { $rows = array(); foreach ($invoices as $invoice) { - $n = new stdClass(); - $n->nid = $invoice->nid; - $n->uid = $invoice->uid; - $n->organization_nid = $invoice->organization_nid; - $n->project_nid = $invoice->project_nid; - $n->type = 'storminvoice'; $invoice->status = 'open'; if ($invoice->paymentdate) { @@ -55,7 +49,7 @@ function theme_storminvoice_list($header, $invoices, $itemsperpage, $totals_topa format_date($invoice->requestdate, 'custom', 'Y-m-d'), array('data' => sprintf('%.2f', $invoice->total), 'align' => 'right'), array( - 'data' => storm_icon_edit_node($n, $_GET) .' '. storm_icon_delete_node($n, $_GET), + 'data' => storm_icon_edit_node($invoice, $_GET) .' '. storm_icon_delete_node($invoice, $_GET), 'class' => 'storm_list_operations', ), ); @@ -88,7 +82,7 @@ function theme_storminvoice_list($header, $invoices, $itemsperpage, $totals_topa ); $rows = array(); - $rows[] = array( + $row = array( array( 'data' => t('Total to pay'), 'style' => 'font-weight: bold;', @@ -98,20 +92,21 @@ function theme_storminvoice_list($header, $invoices, $itemsperpage, $totals_topa 'style' => 'text-align: right;', ), ); - $rows[key(end($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals_topay->tax1), 'style' => 'text-align: right;', ); - $rows[key(end($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals_topay->tax2), 'style' => 'text-align: right;', ); - $rows[key(end($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals_topay->total), 'style' => 'text-align: right;', ); + $rows[] = $row; - $rows[] = array( + $row = array( array( 'data' => t('Total paid'), 'style' => 'font-weight: bold;', @@ -121,20 +116,21 @@ function theme_storminvoice_list($header, $invoices, $itemsperpage, $totals_topa 'style' => 'text-align: right;', ), ); - $rows[end(array_keys($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals_paid->tax1), 'style' => 'text-align: right;', ); - $rows[end(array_keys($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals_paid->tax2), 'style' => 'text-align: right;', ); - $rows[end(array_keys($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals_paid->total), 'style' => 'text-align: right;', ); + $rows[] = $row; - $rows[] = array( + $row = array( array( 'data' => t('Total'), 'style' => 'font-weight: bold;', @@ -144,18 +140,19 @@ function theme_storminvoice_list($header, $invoices, $itemsperpage, $totals_topa 'style' => 'text-align: right;', ), ); - $rows[end(array_keys($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals->tax1), 'style' => 'text-align: right;', ); - $rows[end(array_keys($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals->tax2), 'style' => 'text-align: right;', ); - $rows[end(array_keys($rows))][] = array( + $row[] = array( 'data' => sprintf('%.2f', $totals->total), 'style' => 'text-align: right;', ); + $rows[] = $row; $o .= theme('table', $header, $rows); diff --git a/stormnote/stormnote.admin.inc b/stormnote/stormnote.admin.inc index e6dfd9d..73ceb6c 100644 --- a/stormnote/stormnote.admin.inc +++ b/stormnote/stormnote.admin.inc @@ -68,7 +68,7 @@ function stormnote_list() { ), ); - $s = "SELECT n.title, sno.* FROM {node} AS n INNER JOIN {stormnote} AS sno ON n.vid=sno.vid WHERE n.status=1 AND n.type='stormnote' "; + $s = "SELECT n.title, n.type, sno.* FROM {node} AS n INNER JOIN {stormnote} AS sno ON n.vid=sno.vid WHERE n.status=1 AND n.type='stormnote' "; $where = array(); $args = array(); diff --git a/stormnote/stormnote.theme.inc b/stormnote/stormnote.theme.inc index 16a7285..d8723d5 100644 --- a/stormnote/stormnote.theme.inc +++ b/stormnote/stormnote.theme.inc @@ -8,20 +8,13 @@ function theme_stormnote_list($header, $notes) { $rows = array(); foreach ($notes as $note) { - $n = new stdClass(); - $n->nid = $note->nid; - $n->uid = $note->uid; - $n->organization_nid = $note->organization_nid; - $n->project_nid = $note->project_nid; - $n->task_nid = $note->task_nid; - $n->type = 'stormnote'; $rows[] = array( l($note->organization_title, 'node/'. $note->organization_nid), l($note->project_title, 'node/'. $note->project_nid), l($note->task_title, 'node/'. $note->task_nid), l($note->title, 'node/'. $note->nid), array( - 'data' => storm_icon_edit_node($n, $_GET) .' '. storm_icon_delete_node($n, $_GET), + 'data' => storm_icon_edit_node($note, $_GET) .' '. storm_icon_delete_node($note, $_GET), 'class' => 'storm_list_operations', ), ); diff --git a/stormorganization/stormorganization.theme.inc b/stormorganization/stormorganization.theme.inc index 1dd3921..04633f0 100644 --- a/stormorganization/stormorganization.theme.inc +++ b/stormorganization/stormorganization.theme.inc @@ -10,16 +10,11 @@ function theme_stormorganization_list($header, $organizations) { $rows = array(); $countries = storm_attributes_bydomain('Country'); foreach ($organizations as $key => $organization) { - $n = new stdClass(); - $n->nid = $organization->nid; - $n->uid = $organization->uid; - $n->type = 'stormorganization'; - $rows[] = array( l($organization->title, 'node/'. $organization->nid), check_plain($countries['values'][$organization->country]), array( - 'data' => storm_icon_edit_node($n, $_GET) .' '. storm_icon_delete_node($n, $_GET), + 'data' => storm_icon_edit_node($organization, $_GET) .' '. storm_icon_delete_node($organization, $_GET), 'class' => 'storm_list_operations', ), ); diff --git a/stormperson/stormperson.admin.inc b/stormperson/stormperson.admin.inc index a7822fa..e8c14b4 100644 --- a/stormperson/stormperson.admin.inc +++ b/stormperson/stormperson.admin.inc @@ -1,4 +1,4 @@ -nid = $person->nid; - $n->uid = $person->uid; - $n->user_uid = $person->user_uid; - $n->organization_nid = $person->organization_nid; - $n->type = 'stormperson'; - $rows[] = array( l($person->organization_title, 'node/'. $person->organization_nid), l($person->title, 'node/'. $person->nid) . theme('mark', node_mark($person->nid, $person->changed)), l($person->email, 'mailto:'. $person->email), array( - 'data' => storm_icon_edit_node($n, $_GET) .' '. storm_icon_delete_node($n, $_GET), + 'data' => storm_icon_edit_node($person, $_GET) .' '. storm_icon_delete_node($person, $_GET), 'class' => 'storm_list_operations', ), ); diff --git a/stormticket/stormticket.theme.inc b/stormticket/stormticket.theme.inc index 675eafb..e20b858 100644 --- a/stormticket/stormticket.theme.inc +++ b/stormticket/stormticket.theme.inc @@ -8,12 +8,6 @@ function theme_stormticket_list($header, $tickets) { $rows = array(); foreach ($tickets as $ticket) { - $n = new stdClass(); - $n->nid = $ticket->nid; - $n->uid = $ticket->uid; - $n->organization_nid = $ticket->organization_nid; - $n->type = 'stormticket'; - $rows[] = array( storm_icon('category_'. $ticket->ticketcategory, storm_attribute_value('Ticket category', $ticket->ticketcategory)), l($ticket->organization_title, 'node/'. $ticket->organization_nid), @@ -23,7 +17,7 @@ function theme_stormticket_list($header, $tickets) { storm_icon('status_'. $ticket->ticketstatus, storm_attribute_value('Ticket status', $ticket->ticketstatus)), storm_icon('priority_'. $ticket->ticketpriority, storm_attribute_value('Ticket priority', $ticket->ticketpriority)), array( - 'data' => storm_icon_edit_node($n, $_GET) .' '. storm_icon_delete_node($n, $_GET), + 'data' => storm_icon_edit_node($ticket, $_GET) .' '. storm_icon_delete_node($ticket, $_GET), 'class' => 'storm_list_operations', ), ); diff --git a/stormtimetracking/stormtimetracking.theme.inc b/stormtimetracking/stormtimetracking.theme.inc index e60aa43..c1d3150 100644 --- a/stormtimetracking/stormtimetracking.theme.inc +++ b/stormtimetracking/stormtimetracking.theme.inc @@ -7,14 +7,6 @@ function theme_stormtimetracking_list($header, $timetrackings, $billing_duration) { $rows = array(); foreach ($timetrackings as $timetracking) { - $n = new stdClass(); - $n->nid = $timetracking->nid; - $n->uid = $timetracking->uid; - $n->organization_nid = $timetracking->organization_nid; - $n->project_nid = $timetracking->project_nid; - $n->task_nid = $timetracking->task_nid; - $n->ticket_nid = $timetracking->ticket_nid; - $n->type = 'stormtimetracking'; $rows[] = array( l($timetracking->organization_title, 'node/'. $timetracking->organization_nid), l($timetracking->project_title, 'node/'. $timetracking->project_nid), @@ -22,7 +14,7 @@ function theme_stormtimetracking_list($header, $timetrackings, $billing_duration format_date($timetracking->trackingdate, 'small'), array('data' => sprintf('%.2f', $timetracking->billing_duration), 'align' => 'right'), array( - 'data' => storm_icon_edit_node($n, $_GET) .' '. storm_icon_delete_node($n, $_GET), + 'data' => storm_icon_edit_node($timetracking, $_GET) .' '. storm_icon_delete_node($timetracking, $_GET), 'class' => 'storm_list_operations', ), );