old_contents: # coding=utf-8
  
  import http.client
  import re
  from xml.dom.minidom import parseString
  
  from event import ModuleEvent
  from xmlparser.node import ModuleState
  from .external.src import ratp
  
  
  nemubotversion = 3.2
  
  def load(context):
    global DATAS
    DATAS.setIndex("name", "station")
  
  
  def help_tiny ():
    """Line inserted in the response to the command !help"""
    return "Informe les usagers des prochains passages des transports en communs de la RATP"
  
  def help_full ():
    return "!ratp transport line [station]: Donne des informations sur les prochains passages du transport en commun séléctionné à l'arrêt désiré. Si aucune station n'est précisée, les liste toutes."
  
  
  def extractInformation(msg,
      transport,
      line,
      station):
    if station is not None and station != "":
      times = ratp.getNextStopsAtStation(transport, line, station)
      stops = ""
      for time, direction, stationname in times:
        station = stationname
        stops += time+" direction "+direction+"; "
      if len(stops) > 0:
        return Response(msg.sender, "Prochains passages du %s ligne %s à l'arrêt %s: %s" %
            (transport, line, stationname, stops), msg.channel, msg.nick)
      else:
        return Response(msg.sender, "La station `%s' ne semble pas exister sur le %s ligne %s."
            % (station, transport, line), msg.channel, msg.nick)
    else:
      stations = ratp.getAllStations(transport, line)
      if len(stations) > 0:
        s = ""
        for name in stations:
          s += name + "; "
        return Response(msg.sender, "Stations: %s." % s, msg.channel, msg.nick)
        return 0
      else:
        return Response(msg.sender, "Aucune station trouvée.", msg.channel, msg.nick)
  
  def ask_ratp(msg):
      """Hook entry from !ratp"""
      global DATAS
      if len(msg.cmd) == 4:
          return extractInformation(msg, msg.cmd[1], msg.cmd[2], msg.cmd[3])
      elif len(msg.cmd) == 3:
          return extractInformation(msg, msg.cmd[1], msg.cmd[2], None)
      else:
          return Response(msg.sender, "Mauvais usage, merci de spécifier un type de transport et une ligne, ou de consulter l'aide du module.", msg.channel, msg.nick)
      return False
  
  
new_contents: # coding=utf-8
  
  import http.client
  import re
  from xml.dom.minidom import parseString
  
  from .external.src import ratp
  
  nemubotversion = 3.3
  
  def load(context):
    global DATAS
    DATAS.setIndex("name", "station")
  
  
  def help_tiny ():
      """Line inserted in the response to the command !help"""
      return "Informe les usagers des prochains passages des transports en communs de la RATP"
  
  def help_full ():
      return "!ratp transport line [station]: Donne des informations sur les prochains passages du transport en commun séléctionné à l'arrêt désiré. Si aucune station n'est précisée, les liste toutes."
  
  
  def extractInformation(msg, transport, line, station=None):
    if station is not None and station != "":
      times = ratp.getNextStopsAtStation(transport, line, station)
      if len(times) > 0:
        (time, direction, stationname) = times[0]
        return Response(msg.sender, message=["\x03\x02"+time+"\x03\x02 direction "+direction for time, direction, stationname in times], title="Prochains passages du %s ligne %s à l'arrêt %s" %
            (transport, line, stationname), channel=msg.channel)
      else:
        return Response(msg.sender, "La station `%s' ne semble pas exister sur le %s ligne %s."
            % (station, transport, line), msg.channel)
    else:
      stations = ratp.getAllStations(transport, line)
      if len(stations) > 0:
        return Response(msg.sender, [s for s in stations], title="Stations", channel=msg.channel)
      else:
        return Response(msg.sender, "Aucune station trouvée.", msg.channel)
  
  def ask_ratp(msg):
      """Hook entry from !ratp"""
      global DATAS
      if len(msg.cmds) == 4:
          return extractInformation(msg, msg.cmds[1], msg.cmds[2], msg.cmds[3])
      elif len(msg.cmds) == 3:
          return extractInformation(msg, msg.cmds[1], msg.cmds[2])
      else:
          return Response(msg.sender, "Mauvais usage, merci de spécifier un type de transport et une ligne, ou de consulter l'aide du module.", msg.channel, msg.nick)
      return False
  
subject: Update nextstop module for v3.3