protected function calculateNumbers()
	{
		// do we need to fetch or calculate the current page number?
		if (empty($this->config['current']))
		{
			// do we have a segment number?
			if ( ! empty($this->config['uriSegment']))
			{
				$segments = explode('/', trim($this->input->getPathInfo(),'/'));
				if (isset($segments[$this->config['uriSegment']]) and is_numeric($segments[$this->config['uriSegment']]))
				{
					$this->config['current'] = $segments[$this->config['uriSegment']];
				}
			}

			// do we have a getVariable set?
			if ( ! empty($this->config['getVariable']) and $get = $this->input->getQuery())
			{
				if (isset($get[$this->config['getVariable']]) and is_numeric($get[$this->config['getVariable']]))
				{
					$this->config['current'] = $get[$this->config['uriSegment']];
				}
			}

			// if none could be determine, try to calculate it
			if (empty($this->config['current']) and $this->config['offset'] and $this->config['limit'])
			{
				$this->config['current'] = (int) ($this->config['offset'] / $this->config['limit']) + 1;
			}

			// if all else fails, default to one
			if (empty($this->config['current']))
			{
				$this->config['current'] = 1;
			}
		}

		// do we need to calculate the total number of pages
		if (empty($this->config['totalPages']) and ! empty($this->config['totalItems']) and ! empty($this->config['limit']))
		{
			$this->config['totalPages'] = (int) ($this->config['totalItems'] / $this->config['limit']) + 1;
		}
	}