#include <inst.h>
#include <mask.h>
#include <modaut.h>
#include <isam.h>

#include <tabutil.h>

#include <utility.h>
#include "bainst.h"
#include "bainst17.h"

class TInstall_AT : public TInstallmodule_app
{
protected:
  virtual bool load_default_data() const ;
  virtual int module_number() const {return ATAUT;}

  virtual bool preload_mask() ;
  bool post_installer() ;
 
public:
  virtual ~TInstall_AT () {}
};

//controlla la tabella idoneita': se risulta vuota -> deve caricare i dati di default
bool TInstall_AT ::load_default_data() const
{        
  if (prefix().get_codditta() <= 0)
    return TRUE;
  TTable ido("IDO");
  const bool empty = ido.first() != NOERR;
  
  return empty;
}

bool TInstall_AT ::post_installer() 
{
#ifdef XVAGA
  const char* menuname = "bamenu.men";
#else
  const char* menuname = "baprassi.men";
#endif
  bool ok=TRUE;
  if (_m->get_bool(F_USAMENUAVIS))
  {
    ok=fcopy("agaat.men","baprassi.men");
    TConfig config (CONFIG_STUDIO, "at");
    config.set("EdMask", "at0500a.msk");
    config.set("EdApp", "at0 -4");
  }

  return ok;
}

bool TInstall_AT::preload_mask()
{
  _m->field(F_USAMENUAVIS).set("X");
  return TInstallmodule_app::preload_mask();
}

int bainst17(int argc, char** argv)
{ 
  TInstall_AT app;
  app.run(argc, argv);
  return 0;
}