@Override
	public void update(Observable o, Object arg) {

		String sender = o.getClass().getName();
		String message = (String)arg;
		System.out.println("EventLogUI received ["+ arg +"] from ["+ sender +"]");

		if (sender.equals("Core.Board"))
		{
			if (message.startsWith("List added: "))
			{
				List list = log.getBoard().getListById(Integer.parseInt(message.replace("List added: ", "")));
				controller.addListEvent(null, list);
			}
			else if (message.startsWith("List deleted: "))
			{
				message = message.replace("List deleted: ", "");

				List list = log.getListById(Integer.parseInt(message));

				controller.addListEvent(list, null);
			}
			if (message.startsWith("Item added: "))
			{
				message = message.replace("Item added: ", "");

				String[] array = message.split(" in: ");

				List list = log.getListById(Integer.parseInt(array[1]));
				Item item = list.getItemById(Integer.parseInt(array[0]));

				controller.addItemEvent(null, item, list);
			}
			if (message.startsWith("Item deleted: "))
			{
				message = message.replace("Item deleted: ", "");

				String[] array = message.split(" from: ");

				List list = log.getListById(Integer.parseInt(array[1]));
				Item item = list.getItemById(Integer.parseInt(array[0]));

				controller.addItemEvent(item, null, list);
			}
		}
		else if (sender.equals("Plugins.EventLog.EventLog"))
		{
			if (message.startsWith("Event added: ")) {

				Event event = log.getEventById(Integer.parseInt(message.replace("Event added: ", "")));

				log_zone.add(new EventUI(event, event_menu.mouse_listener), FIRST);
				log_zone.revalidate();
				log_zone.repaint();
			}
		}
	}