/**
	 * UpdateList
	 * Updates list information for a particular subscriber. Checks whether a list exists or not first before updating information. It updates the format, confirm status, confirm code, confirm date.
	 *
	 * @param Int $subscriberid Subscriber to update.
	 * @param Int $listid List to update their information on.
	 *
	 * @see confirmed
	 * @see format
	 * @see GenerateConfirmCode
	 * @see Lists_API
	 * @see Lists_API::Find
	 *
	 * @return Boolean Returns true if it worked, false if the list doesn't exist or if it didn't work.
	 */
	function UpdateList($subscriberid=0, $listid=0)
	{
		$subscriberid = (int)$subscriberid;
		$listid = (int)$listid;

		if ($subscriberid <= 0 || !$listid) {
			return false;
		}

		require_once(dirname(__FILE__) . '/lists.php');
		$list = new Lists_API();
		$real_listid = $list->Find($listid);
		if ($real_listid['listid'] <= 0) {
			return false;
		}

		if ($this->confirmed == '0') {
			$this->confirmdate = 0;
		} elseif ($this->confirmdate == 0) {
			$this->confirmdate = $this->GetServerTime();
		}

		$query = "UPDATE " . SENDSTUDIO_TABLEPREFIX . "list_subscribers SET format='" . $this->Db->Quote($this->format) . "', confirmed='" . $this->Db->Quote((int)$this->confirmed) . "', confirmdate='" . $this->Db->Quote($this->confirmdate) . "', confirmip = '" . $this->Db->Quote($this->confirmip) . "', requestip = '" . $this->Db->Quote($this->requestip) . "'";

		if ((int)$this->subscribedate > 0) {
			$query .= ", subscribedate='" . $this->Db->Quote($this->subscribedate) . "'";
		}

		$query .= " WHERE listid=" . intval($listid) . " AND subscriberid=" . intval($subscriberid);

		$result = $this->Db->Query($query);
		return $result;
	}