@MCCommand(cmds = { "source", "alterSource" }, usage = PORT_ALTER_SOURCE)
	public boolean portAlterSource(Player p, PlayerPort port)
	{
		Selection sel = wep.getSelection(p);
		if (sel == null)
			return sendMessage(p, ChatColor.RED
					+ "Please select the protection area first.");

		int area = PermissionController.getAvailableArea(p);
		if (sel.getArea() > area)
		{
			return sendMessage(p, "&cYou can only make a portal of size &6"
					+ area + "&c you selected &6" + sel.getArea());
		}

		if (!wgp.canBuild(p, sel.getMinimumPoint())
				|| !wgp.canBuild(p, sel.getMaximumPoint()))
		{
			return sendMessage(p,
					"&cYou can't create a portal in a region you cant build in");
		}
		BoundingBox bb = new BoundingBox(sel.getMinimumPoint(),
				sel.getMaximumPoint());
		if (bb.contains(port.getDestination()))
		{
			return sendMessage(p,
					"&4Cant set destination to be within the source");
		}
		try
		{
			port.setSourceBox(sel.getMinimumPoint(), sel.getMaximumPoint());
		}
		catch (Exception e)
		{
			return sendMessage(p,
					"&4Cant set destination to be within the source");
		}
		pc.deletePort(port);
		pc.addPort(port);
		return sendMessage(p, "&ePort source set to the new location");
	}