function showNote($calendar)
{
    $option = JRequest::getVar('option');
    $mainframe = JFactory::getApplication();
    $db = JFactory::getDBO();
    $query = 'SELECT title' . ' FROM #__spidercalendar_calendar WHERE id=' . $db->escape($calendar);
    $db->setQuery($query);
    $calendar_name = $db->loadResult();
    // get calendar id ↑
    $filter_order = $mainframe->getUserStateFromRequest($option . 'filter_order_note', 'filter_order_note', 'id', 'cmd');
    $filter_order_Dir = $mainframe->getUserStateFromRequest($option . 'filter_order_Dir_note', 'filter_order_Dir_note', '', 'word');
    $filter_state = $mainframe->getUserStateFromRequest($option . 'filter_state_note', 'filter_state_note', '', 'word');
    $search_note = $mainframe->getUserStateFromRequest($option . 'search_note', 'search_note', '', 'string');
    $search_note = JString::strtolower($search_note);
    $limit = $mainframe->getUserStateFromRequest('global.list.limit', 'limit', $mainframe->getCfg('list_limit'), 'int');
    $limitstart = $mainframe->getUserStateFromRequest($option . '.limitstart', 'limitstart', 0, 'int');
    $lists = array();
    $where = array();
    $lists['search_note'] = $mainframe->getUserStateFromRequest($option . 'search_note', 'search_note', '', 'string');
    $lists['search_note'] = JString::strtolower($lists['search_note']);
    $lists['startdate'] = JRequest::getVar('startdate', "");
    $lists['enddate'] = JRequest::getVar('enddate', "");
    if ($lists['search_note']) {
        $where[] = ' #__spidercalendar_event.title LIKE "%' . $db->escape($search_note) . '%"';
    }
    if ($lists['startdate'] != '') {
        $where[] = "  `date`>='" . $db->escape($lists['startdate']) . "' ";
    }
    if ($lists['enddate'] != '') {
        $where[] = "  `date`<='" . $db->escape($lists['enddate']) . "' ";
    }
    $filter = '';
    $filter = count($where) ? 'WHERE' . implode(' AND ', $where) : '';
    if (count($where) == 0) {
        $filter .= ' WHERE calendar=' . $db->escape($calendar);
    }
    if ($filter_order == 'id') {
        $orderby = ' ORDER BY id ' . $filter_order_Dir;
    } else {
        $orderby = ' ORDER BY ' . $filter_order . ' ' . $filter_order_Dir . ', id';
    }
    // get the total number of records
    $query = 'SELECT COUNT(*)' . ' FROM #__spidercalendar_event ' . $filter;
    $db->setQuery($query);
    $total = $db->loadResult();
    jimport('joomla.html.pagination');
    $pageNav = new JPagination($total, $limitstart, $limit);
    $query = "SELECT #__spidercalendar_event.*, #__spidercalendar_event_category.title as cattitle FROM #__spidercalendar_event LEFT JOIN #__spidercalendar_event_category ON #__spidercalendar_event.category=#__spidercalendar_event_category.id  {$filter}  {$orderby} ";
    $db->setQuery($query, $pageNav->limitstart, $pageNav->limit);
    $rows = $db->loadObjectList();
    if ($db->getErrorNum()) {
        echo $db->stderr();
        return false;
    }
    // table ordering
    $lists['order_Dir'] = $filter_order_Dir;
    $lists['order'] = $filter_order;
    // search filter
    $lists['search_note'] = $search_note;
    $lists['calendar'] = $calendar;
    $lists['calendar_name'] = $calendar_name;
    // display function
    HTML_contact::showNote($rows, $pageNav, $lists, $option);
}