You are here

ua_logger.module in User Agent Logger 7

Same filename and directory in other branches
  1. 5 ua_logger.module
  2. 6 ua_logger.module

File

ua_logger.module
View source
<?php

/**
 * Implements hook_permission.
 */
function ua_logger_permission() {
  return array(
    'view user agents' => array(
      'title' => t('View user agents'),
    ),
  );
}

/**
 * Implements hook_node_insert.
 */
function ua_logger_node_insert($node) {
  $query = db_insert('ua_logger');
  $query
    ->fields(array(
    'xid' => $node->nid,
    'type' => 'node',
    'ua' => $_SERVER['HTTP_USER_AGENT'],
  ));
  $query
    ->execute();
}

/*
 * Implements hook_node_view.
 */
function ua_logger_node_view($node, $view_mode, $langcode) {
  if ($view_mode == 'full') {
    if (user_access('view user agents')) {
      $query = db_select('ua_logger', 'l');
      $query
        ->condition('l.type', 'node', '=')
        ->condition('l.xid', $node->nid)
        ->fields('l', array(
        'ua',
      ));
      $result = $query
        ->execute();
      foreach ($result as $row) {
        if ($row->ua) {
          $node->useragent = $row->ua;
        }
      }
    }
  }
}

/**
 * Implements hook_comment_insert.
 */
function ua_logger_comment_insert($comment) {
  $query = db_insert('ua_logger');
  $query
    ->fields(array(
    'xid' => $comment->cid,
    'type' => 'comment',
    'ua' => $_SERVER['HTTP_USER_AGENT'],
  ));
  $query
    ->execute();
}

/**
 * Implements hook_comment_view.
 */
function ua_logger_comment_view($comment, $view_mode, $langcode) {
  if ($view_mode == 'full') {
    $query = db_select('ua_logger', 'l');
    $query
      ->condition('l.type', 'comment', '=')
      ->condition('l.xid', $comment->cid)
      ->fields('l', array(
      'ua',
    ));
    $result = $query
      ->execute();
    foreach ($result as $row) {
      if ($row->ua) {
        $comment->useragent = $row->ua;
      }
    }
  }
}

Functions

Namesort descending Description
ua_logger_comment_insert Implements hook_comment_insert.
ua_logger_comment_view Implements hook_comment_view.
ua_logger_node_insert Implements hook_node_insert.
ua_logger_node_view
ua_logger_permission Implements hook_permission.