Diff for /mozptch/datamodul.pas between versions 1.2 and 1.3

version 1.2, 2004/03/28 17:08:58 version 1.3, 2004/04/07 18:34:55
Line 9 Line 9
 # ========  # ========
 #  #
 # $Log$  # $Log$
   # Revision 1.3  2004/04/07 18:34:55  oertel
   # src: continued with multi language interface
   #
 # Revision 1.2  2004/03/28 17:08:58  oertel  # Revision 1.2  2004/03/28 17:08:58  oertel
 # src: started with multi language interface  # src: started with multi language interface
 # messages in the new file mozptch.msg  # messages in the new file mozptch.msg
Line 285  begin  Line 288  begin 
   if not DirectoryExists(mozprofparentdir) then    if not DirectoryExists(mozprofparentdir) then
   begin    begin
    System.MkDir(mozprofparentdir);     System.MkDir(mozprofparentdir);
   writelog(mozprofparentdir+' angelegt...');    writelog(Format(getMsg('dir_created'),[mozprofparentdir]));
   end;    end;
   if not DirectoryExists(mozprofparentdir) then    if not DirectoryExists(mozprofparentdir) then
   begin    begin
Line 394  end;  Line 397  end; 
   
 // Funktionen mozilla spezifisch  // Funktionen mozilla spezifisch
   
   (*
  procedure changeProfiledir(oldpath : string; newpath : string);   procedure changeProfiledir(oldpath : string; newpath : string);
  var   var
   shell : string;    shell : string;
Line 406  end;  Line 410  end; 
         +ExtractFilePath(Application.ExeName)          +ExtractFilePath(Application.ExeName)
         +'\readMozProfile.pl <'+localMozAppdataDir+'\registry.dat'          +'\readMozProfile.pl <'+localMozAppdataDir+'\registry.dat'
         +' >'+localMozAppdataDir+'\registry.txt');          +' >'+localMozAppdataDir+'\registry.txt');
 (*  
   writelog('changing path '+oldpath+' to '+newpath);  
   slist := TStringList.Create;  
   slist.LoadFromFile(localMozAppdataDir+'\registry.txt');  
   for i := 0 to slist.Count -1 do  
   begin  
    if pos(oldpath,slist.Strings[i]) > 0 then  
     slist.Strings[i] := AnsiReplaceStr(slist.Strings[i],oldpath,newpath);  
   end;  
   slist.SaveToFile(localMozAppdataDir+'\registry.txt');  
   writelog('converting registry.txt to registry.dat....');  
   start(shell+' /C perl '  
         +ExtractFilePath(Application.ExeName)  
         +'\writeMozProfile.pl <'+localMozAppdataDir+'\registry.txt'  
         +' >'+localMozAppdataDir+'\registry.dat');  
 *)  
  end;   end;
    *)
   
  procedure killmozilla;   procedure killmozilla;
  begin   begin
Line 437  end;  Line 426  end; 
   commandline := MOZPROGDIR+'\mozilla.exe';    commandline := MOZPROGDIR+'\mozilla.exe';
   if not FileExists(MOZPROGDIR+'\mozilla.exe') then    if not FileExists(MOZPROGDIR+'\mozilla.exe') then
   begin    begin
   writelog('Keine mozilla.exe gefunden in '+MOZPROGDIR+' -> Programmabbruch');    writelog(Format(getMsg('no_mozilla_exe_found'),[MOZPROGDIR]));
   ShowMessage('Fehler: Keine mozilla.exe gefunden'    ShowMessage(Format(getMsg('no_mozilla_exe_found_msg'),[MOZPROGDIR]));
                    +' Progamm wird abgebrochen.'  
                    +' Bitte wenden Sie sich an die Hotline.'  
                    +' Bitte geben Sie die Datei c:\tmp\maileinr.log '  
                    + 'sowie die Datei c:\tmp\instlog.txt mit.');  
    application.Terminate;     application.Terminate;
    exit;     exit;
   end    end
Line 458  end;  Line 443  end; 
    begin     begin
     writelog('Mozilla started with '+param);      writelog('Mozilla started with '+param);
      result := true;       result := true;
      //messageDlg('Success: ' + Report,mtInformation,[mbOK],0);  
    end;     end;
   end;    end;
  end;   end;
Line 485  begin  Line 469  begin 
  else result := '';   else result := '';
 end;  end;
   
   procedure delRegAndCreateNew;
   begin
   // evtl. alte registry.dat löschen
    if FileExists(localMozAppdataDir+'\registry.dat') then
    begin
     writelog(getMsg('old_regystry_found_will_del'));
     sysutils.DeleteFile(localMozAppdataDir+'\registry.dat');
     writelog(getMsg('old_registry_deleted'));
    end
    else writelog(getMsg('no_old_registry_found'));
   
    // evtl. alte pluginreg.dat löschen
    if FileExists(localMozAppdataDir+'\pluginreg.dat') then
    begin
     writelog(getMsg('old_pluginreg_found_will_del'));
     sysutils.DeleteFile(localMozAppdataDir+'\pluginreg.dat');
     writelog(getMsg('old_pluginreg_deleted'));
    end
    else writelog(getMsg('no_old_pluginreg_found'));
   
    if not FileExists(localMozAppdataDir+'\registry.dat') then
    begin
     writelog(Format(getMsg('no_old_registry_will_create'),
                             [localMozAppdataDir]));
     // Are there white spaces in the path ?
     if pos(' ',mozprofparentdir+'\'+mozmaildir) > 0 then
     begin
      writelog(getMsg('whitespace_in_path'));
      if (mozprofparentdir+'\'+mozmaildir=localMozAppdatadir+'\profiles') then
      begin
       writelog(getMsg('start_mozilla_to_create_registry'));
       writelog(getMsg('create_profile_in_win_app_dir'));
       writelog(Format(getMsg('start_mozilla_with_1s'),[mozmailsubdir]));
       startmozilla('-CreateProfile '+mozmailsubdir);
       writelog(getMsg('creating_mozilla_registry_finished'));
      end
      else
      begin
       writelog(getMsg('no_whitespace_in_path_allowed'));
       ShowMessage(getMsg('no_whitespace_in_path_allowed'));
       exit;
       application.Terminate;
      (*
       writelog('starte mozilla um registry anzulegen  ....');
       writelog('starting mozilla with -CreateProfile "'+mozmailsubdir+' '+stmp+'"');
       startmozilla('-CreateProfile "'+mozmailsubdir+' '+stmp+'"');
       writelog('mozilla zum registry erzeugen beendet.');
       changeProfiledir(stmp+'\'+mozmailsubdir+'\'+getMozSltDir(stmp+'\'+mozmailsubdir),
              mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR);
      *)
      end
     end
     else
     begin
      writelog(getMsg('start_mozilla_to_create_registry'));
      writelog(Format(getMsg('start_mozilla_with_3s'),
                 [mozmailsubdir, mozprofparentdir, mozmaildir]));
      startmozilla('-CreateProfile "'+mozmailsubdir+' '+mozprofparentdir+'\'+mozmaildir+'"');
      writelog(getMsg('creating_mozilla_registry_finished'));
     end;
     if not FileExists(localMozAppdataDir+'\registry.dat') then
     begin
      writelog(getMsg('still_no_registry_found'));
      ShowMessage(getMsg('still_no_registry_found'));
      application.terminate;
      exit;
     end;
    end;
    // zufalls-namen des angelegten Directorys ermitteln
    mozsltdir := getMozSltDir(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir);
    writelog(Format(getMsg('new_profile_at'),
                     [mozprofparentdir, mozmaildir, mozmailsubdir, mozsltdir]));
    // evtl. delete old xul.mfl
    if FileExists(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir
                      +'\xul.mfl') then
    begin
     writelog(getMsg('start_del_xul_mfl'));
     sysutils.DeleteFile(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'
                             +mozsltdir+'\xul.mfl');
     writelog(getMsg('del_xul_mfl'));
    end
    else writelog(getMsg('no_old_xul_mfl'));
   end;
   
 function findOrCreateMozProf : string;  function findOrCreateMozProf : string;
 var  var
  oldprofile : boolean;   oldprofile : boolean;
Line 493  var  Line 561  var 
   
 begin  begin
  try   try
  writelog('Start Mozilla Profil suchen bzw. erzeugen....');   writelog(getMsg('start_findOrCreateMozProf'));
   oldprofile := true;    oldprofile := true;
   if not DirectoryExists(mozprofparentdir +'\'+ mozmaildir) then    if not DirectoryExists(mozprofparentdir +'\'+ mozmaildir) then
   begin    begin
    oldprofile := false;     oldprofile := false;
   writelog(mozprofparentdir +'\'+ mozmaildir+' existiert nicht');    writelog(Format(getMsg('2s_doesnt_exist'),[mozprofparentdir, mozmaildir]));
   end    end
   else    else
   begin    begin
    if not DirectoryExists(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir) then     if not DirectoryExists(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir) then
    begin     begin
     oldprofile := false;      oldprofile := false;
    writelog(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+' existiert nicht');     writelog(Format(getMsg('3s_doesnt_exist'),[mozprofparentdir, mozmaildir, mozmailsubdir]));
    end     end
    else     else
    begin     begin
     mozsltdir := getMozSltDir(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir);      mozsltdir := getMozSltDir(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir);
     if mozsltdir <> '' then      if mozsltdir <> '' then
     begin      begin
      // evtl. alte xul.mfl löschen  
      if FileExists(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir  
                    +'\xul.mfl') then  
      begin  
       writelog('alte mozilla xul.mfl gefunden - wird gelöscht...');  
       sysutils.DeleteFile(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'  
                           +mozsltdir+'\xul.mfl');  
       writelog('alte mozilla xul.mfl gelöscht.');  
      end  
      else writelog('keine alte mozilla xul.mfl gefunden');  
      if not FileExists(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir+'\prefs.js') then       if not FileExists(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir+'\prefs.js') then
      begin       begin
       oldprofile := false;        oldprofile := false;
      writelog('Keine prefs.js in '+mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir+' gefunden.');       writelog(Format(getMsg('no_prefjs_in'),[mozprofparentdir, mozmaildir, mozmailsubdir, mozsltdir]));
      end       end
      else       else
      begin       begin
      writelog('mozilla profil gefunden unter: '       writelog(Format(getMsg('profile_found_at'),
               + mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir);                [mozprofparentdir, mozmaildir, mozmailsubdir, mozsltdir]));
       result := mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir;        result := mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir;
   
       // Führende Leerzeilen in prefs.js löschen....        // Führende Leerzeilen in prefs.js löschen....
      writelog('Bereinigen der prefs.js in '+mozprofparentdir + mozmaildir+mozmailsubdir+'\'+mozsltdir+'......');       // deleting empty lines at the beginning of prefs.js....
       writelog(Format(getMsg('cleaning_prefjs_in'),
           [mozprofparentdir, mozmaildir, mozmailsubdir, mozsltdir]));
       TempPrefFile := TPrefFile.Create(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir+'\prefs.js');        TempPrefFile := TPrefFile.Create(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir+'\prefs.js');
       TempPrefFile.UpdateFile;        TempPrefFile.UpdateFile;
       if TempPrefFile.success = false then        if TempPrefFile.success = false then
       begin        begin
       writelog('Fehler beim Bereinigen der prefs.js in '+mozprofparentdir + mozmaildir+mozmailsubdir+'\'+mozsltdir+'!');        writelog(Format(getMsg('error_at_cleaning_prefjs_in'),
           [mozprofparentdir, mozmaildir, mozmailsubdir, mozsltdir]));
        writelog(TempPrefFile.problem);         writelog(TempPrefFile.problem);
        exit;         exit;
       end;        end;
       TempPrefFile.Free;        TempPrefFile.Free;
      delRegAndCreateNew;
      // evtl. alte registry.dat löschen  
      if FileExists(localMozAppdataDir+'\registry.dat') then  
      begin  
       writelog('alte mozilla regitry gefunden - wird gelöscht...');  
       sysutils.DeleteFile(localMozAppdataDir+'\registry.dat');  
       writelog('alte mozilla registry gelöscht.');  
      end  
      else writelog('keine alte mozilla registry.dat gefunden');  
 
      // evtl. alte pluginreg.dat löschen  
      if FileExists(localMozAppdataDir+'\pluginreg.dat') then  
      begin  
       writelog('alte mozilla pluginreg.dat gefunden - wird gelöscht...');  
       sysutils.DeleteFile(localMozAppdataDir+'\pluginreg.dat');  
       writelog('alte mozilla pluginreg.dat gelöscht.');  
      end  
      else writelog('keine alte mozilla pluginreg.dat gefunden');  
 
      if not FileExists(localMozAppdataDir+'\registry.dat') then  
      begin  
       writelog('keine mozilla registry ('+localMozAppdataDir+'\registry.dat) gefunden - wird erzeugt...');  
       // Are there white spaces in the path ?  
       if pos(' ',mozprofparentdir+'\'+mozmaildir) > 0 then  
       begin  
        writelog('we have to handle a path with whitespaces');  
        if (mozprofparentdir+'\'+mozmaildir=localMozAppdatadir+'\profiles') then  
        begin  
         writelog('creating profil im windows application data directory');  
         writelog('starting mozilla with -CreateProfile '+mozmailsubdir);  
         startmozilla('-CreateProfile '+mozmailsubdir);  
         writelog('creating mozilla registry finished.');  
        end  
        else  
        begin  
         writelog('Zur Zeit werden Zielverzeichnisse mit Leerzeichen im Pfadnamen nicht unterstützt. Bitte wenden sie Sich an den Systemverwalter');  
         ShowMessage('Fehler: Zur Zeit werden Zielverzeichnisse mit'  
                    +' Leerzeichen im Pfadnamen nicht unterstützt.'  
                    +' Progamm wird abgebrochen.'  
                    +' Bitte wenden Sie sich an die Hotline.'  
                    +' Bitte geben Sie die Datei c:\tmp\maileinr.log mit');  
         exit;  
         application.Terminate;  
        (*  
         writelog('starte mozilla um registry anzulegen  ....');  
         writelog('starting mozilla with -CreateProfile "'+mozmailsubdir+' '+stmp+'"');  
         startmozilla('-CreateProfile "'+mozmailsubdir+' '+stmp+'"');  
         writelog('mozilla zum registry erzeugen beendet.');  
         changeProfiledir(stmp+'\'+mozmailsubdir+'\'+getMozSltDir(stmp+'\'+mozmailsubdir),  
                mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR);  
        *)  
        end  
       end  
       else  
       begin  
        writelog('starte mozilla um registry anzulegen....');  
        writelog('starting mozilla with -CreateProfile "'+mozmailsubdir+' '+mozprofparentdir+'\'+mozmaildir+'"');  
        startmozilla('-CreateProfile "'+mozmailsubdir+' '+mozprofparentdir+'\'+mozmaildir+'"');  
        writelog('mozilla zum registry erzeugen beendet.');  
       end;  
       if not FileExists(localMozAppdataDir+'\registry.dat') then  
       begin  
        writelog('Fehler: Immer noch keine registry gefunden.');  
        ShowMessage('Fehler: Beim Erzeugen der Mozilla Registry.'  
                    +' Progamm wird abgebrochen.'  
                    +' Bitte wenden Sie sich an die Hotline.'  
                    +' Bitte geben Sie die Datei c:\tmp\maileinr.log mit');  
        application.terminate;  
        exit;  
       end;  
      end;  
      end       end
     end      end
     else      else
     begin      begin
      oldprofile := false;       oldprofile := false;
     writelog('unter: '+mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+' kein slt-Verzeichnis gefunden.');      writelog(Format(getMsg('no_slt_dir_at'),
               [mozprofparentdir, mozmaildir, mozmailsubdir]));
     end;      end;
    end;     end;
   end;    end;
   if not oldprofile then    if not oldprofile then
   begin    begin
   (*  
    FBar.Label1.Caption := 'Ressortmail wird eingerichtet ...bitte warten...';  
    FBar.Gauge1.Progress := 0; FBar.Gauge1.MaxValue := {$IFDEF WIN32 } 26 {$ELSE } 35 {$ENDIF };  
    FBar.Gauge1.Visible := True;  
    FBar.Show;  
    *)  
   
    // evtl. alte registry.dat löschen  
    if FileExists(localMozAppdataDir+'\registry.dat') then  
    begin  
     writelog('alte mozilla regitry gefunden - wird gelöscht...');  
     sysutils.DeleteFile(localMozAppdataDir+'\registry.dat');  
     writelog('alte mozilla registry gelöscht.');  
    end  
    else writelog('keine alte mozilla registry.dat gefunden');  
   
    // evtl. alte pluginreg.dat löschen  
    if FileExists(localMozAppdataDir+'\pluginreg.dat') then  
    begin  
     writelog('alte mozilla pluginreg.dat gefunden - wird gelöscht...');  
     sysutils.DeleteFile(localMozAppdataDir+'\pluginreg.dat');  
     writelog('alte mozilla pluginreg.dat gelöscht.');  
    end  
    else writelog('keine alte mozilla pluginreg.dat gefunden');  
   
    // Profilverzeichnis erzeugen     // Profilverzeichnis erzeugen
    if not DirectoryExists(mozprofparentdir+mozmaildir) then     if not DirectoryExists(mozprofparentdir+mozmaildir) then
    begin     begin
     System.MkDir(mozprofparentdir+'\'+mozmaildir);      System.MkDir(mozprofparentdir+'\'+mozmaildir);
    writelog(mozprofparentdir+'\'+mozmaildir+' angelegt...');     writelog(Format(getMsg('2s_dir_created'), [mozprofparentdir, mozmaildir]));
    end     end
   else writelog(mozprofparentdir+'\'+mozmaildir+' existiert. OK');    else writelog(Format(getMsg('2s_dir_exists'), [mozprofparentdir, mozmaildir]));
    if not DirectoryExists(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir) then     if not DirectoryExists(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir) then
    begin     begin
     System.MkDir(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir);      System.MkDir(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir);
    writelog(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'angelegt...');     writelog(Format(getMsg('3s_dir_created'),
              [mozprofparentdir, mozmaildir, mozmailsubdir]));
    end     end
   else writelog(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'existiert. OK');    else writelog(Format(getMsg('3s_dir_exists'),
              [mozprofparentdir, mozmaildir, mozmailsubdir]));
    if not DirectoryExists(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR) then     if not DirectoryExists(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR) then
    begin     begin
     System.MkDir(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR);      System.MkDir(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR);
    writelog(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR+' angelegt...');     writelog(Format(getMsg('4s_dir_created'),
         [mozprofparentdir, mozmaildir, mozmailsubdir, MOZMAILSLTDIR]));
    end     end
   else writelog(mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR+' existiert. OK');    else writelog(Format(getMsg('4s_dir_exists'),
        [mozprofparentdir, mozmaildir, mozmailsubdir, MOZMAILSLTDIR]));
   
   delRegAndCreateNew;
 
   // Profile anlegen  
   // Are there white spaces in the path ?  
   if pos(' ',mozprofparentdir+mozmaildir) > 0 then  
   begin  
    writelog('we have to handle a path with whitespaces');  
    if (mozprofparentdir+'\'+mozmaildir=localMozAppdatadir+'\profiles') then  
    begin  
     writelog('creating profil im windows application data directory');  
     writelog('starting mozilla with -CreateProfile '+mozmailsubdir);  
     startmozilla('-CreateProfile '+mozmailsubdir);  
     writelog('creating mozilla registry finished.');  
    end  
    else  
    begin  
     writelog('Zur Zeit werden Zielverzeichnisse mit Leerzeichen im Pfadnamen nicht unterstützt. Bitte wenden sie Sich an den Systemverwalter');  
     ShowMessage('Fehler: Zur Zeit werden Zielverzeichnisse mit'  
                    +' Leerzeichen im Pfadnamen nicht unterstützt.'  
                    +' Progamm wird abgebrochen.'  
                    +' Bitte wenden Sie sich an die Hotline.'  
                    +' Bitte geben Sie die Datei c:\tmp\maileinr.log mit');  
     exit;  
     application.Terminate;  
    (*  
     writelog('starte mozilla um registry anzulegen  ....');  
     writelog('starting mozilla with -CreateProfile "'+mozmailsubdir+' '+stmp+'"');  
     startmozilla('-CreateProfile "'+mozmailsubdir+' '+stmp+'"');  
     writelog('mozilla zum registry erzeugen beendet.');  
     changeProfiledir(stmp+'\'+mozmailsubdir+'\'+getMozSltDir(stmp+'\'+mozmailsubdir),  
            mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR);  
     writelog('kopiere Dateien von '+stmp+'\'+mozmailsubdir+'\'+'....');  
     if not AllCopy(getMozSltDir(stmp+'\'+mozmailsubdir)+'\',  
                    mozprofparentdir+'\'+mozmaildir+'\'+mozmailsubdir+'\'+MOZMAILSLTDIR,  
       cpCreateEmptySubdirectories + cpRecursive, Fehler) then  
     begin  
      writelog('Fehler beim Kopieren der Dateien aus: '+stmp+'\'+mozmailsubdir+'\');  
      exit;  
     end;  
     writelog('kopieren aus '+stmp+'\'+mozmailsubdir+'\'+'....beendet');  
     *)  
    end;  
   end  
   else  
   begin  
    writelog('starte mozilla um registry anzulegen....');  
    writelog('starting mozilla with -CreateProfile "'+mozmailsubdir+' '+mozprofparentdir+'\'+mozmaildir+'"');  
    startmozilla('-CreateProfile "'+mozmailsubdir+' '+mozprofparentdir+'\'+mozmaildir+'"');  
    writelog('mozilla zum registry erzeugen beendet.');  
   end;  
   // zufalls-namen des angelegten Directorys ermitteln  
   mozsltdir := getMozSltDir(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir);  
   writelog('Neues Profil angelegt unter: '  
                       +mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir);  
 
   // evtl. alte xul.mfl löschen  
   if FileExists(mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir  
                 +'\xul.mfl') then  
   begin  
    writelog('alte mozilla xul.mfl gefunden - wird gelöscht...');  
    sysutils.DeleteFile(mozprofparentdir + mozmaildir+'\'+mozmailsubdir+'\'  
                        +mozsltdir+'\xul.mfl');  
    writelog('alte mozilla xul.mfl gelöscht.');  
   end  
   else writelog('keine alte mozilla xul.mfl gefunden');  
 
   //FBar.Close;  
    result := mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir;     result := mozprofparentdir +'\'+ mozmaildir+'\'+mozmailsubdir+'\'+mozsltdir;
   end;    end;
  except   except
   on E: Exception do    on E: Exception do
   begin    begin
    result := '';     result := '';
   writelog('Fehler in findOrCreateMozProf: '+E.Message);    writelog('Error in findOrCreateMozProf: '+E.Message);
   writelog('Programmabruch aufgrund eines Fehlers');    writelog(Format(getMsg('prog_term_because_of_error'),[E.Message]));
   ShowMessage('Fehler: '+E.Message+' Progamm wird abgebrochen.');    ShowMessage(Format(getMsg('prog_term_because_of_error'),[E.Message]));
    application.terminate;     application.terminate;
    exit;     exit;
   end;    end;
Line 880  var  Line 785  var 
   i : integer;    i : integer;
 begin  begin
  mozptchini := TMemIniFile.Create(inifileName);   mozptchini := TMemIniFile.Create(inifileName);
  //TempPrefFile := TPrefFile.Create(prefFileName);  
  tempStrings := TStringList.Create;   tempStrings := TStringList.Create;
  readSectionStrings(mozptchini,inifilesection,tempstrings);   readSectionStrings(mozptchini,inifilesection,tempstrings);
// mozptchini.readsection(inifileSection,tempstrings);  writelog(Format(getMsg('read_from_lines_read_from_file_and_section'),
 writelog('Aus Datei '+inifileName+' und Sektion '               [inifileName, iniFileSection, IntToStr(tempStrings.Count)]));
          +iniFileSection+' gelesene Anzahl Zeilen: '  
          +IntToStr(tempStrings.Count));  
   
  for i := 0 to tempstrings.Count-1 do   for i := 0 to tempstrings.Count-1 do
  begin   begin
Line 933  begin  Line 835  begin 
  howToFind := mozptchini.ReadString('variables',name,'error');   howToFind := mozptchini.ReadString('variables',name,'error');
  if howtofind = 'error' then   if howtofind = 'error' then
  begin   begin
  writelog('Keine Angaben zum finden der Variable '+name+' in mozptch.ini gefunden');   writelog(Format(getMsg('no_rule_to_find_value_of'),[name, mozptchiniFileName]));
  ShowMessage('Keine Angaben zum finden der Variable '+name+' in mozptch.ini gefunden');   ShowMessage(Format(getMsg('no_rule_to_find_value_of'),[name, mozptchiniFileName]));
   resultstr := 'mozptch_ini_variable_error';    resultstr := 'mozptch_ini_variable_error';
   getVariableValue := resolve_variables(resultstr,false);    getVariableValue := resolve_variables(resultstr,false);
  writelog('Variable '+name+' über '+howtofind+' gesetzt auf den wert: '+resultstr);   writelog(Format(getMsg('got_value_for_varable_with'),
                                    [name, howtofind, resultstr]));
   exit;    exit;
  end   end
  else   else
  begin   begin
   
   if uppercase(howtofind) = 'DETECT' then    if uppercase(howtofind) = 'DETECT' then
   begin    begin
    resultstr := 'detect';     resultstr := 'detect';
Line 952  begin  Line 854  begin 
    envname := mozptchini.ReadString('environment',name,'error');     envname := mozptchini.ReadString('environment',name,'error');
    if envname = 'error' then     if envname = 'error' then
    begin     begin
    writelog('Der Name der Umgebungsvariable zum finden der Variable '+name+' in mozptch.ini nicht gefunden');     writelog(Format(getMsg('value_for_varable_not_found_with'),
    ShowMessage('Der Name der Umgebungsvariable zum finden der Variable '+name+' in mozptch.ini nicht gefunden');             [name, howtofind, envname, mozptchiniFileName]));
     ShowMessage(Format(getMsg('value_for_varable_not_found_with'),
             [name, howtofind, envname, mozptchiniFileName]));
     resultstr := 'mozptch_ini_variable_error';      resultstr := 'mozptch_ini_variable_error';
     getVariableValue := resolve_variables(resultstr,false);      getVariableValue := resolve_variables(resultstr,false);
    writelog('Variable '+name+' über '+howtofind+' gesetzt auf den wert: '+resultstr);     writelog(Format(getMsg('got_value_for_varable_with'),
                                 [name, howtofind, envname, resultstr]));
     exit;      exit;
    end;     end;
    resultstr := ValueOfEnvVar (resolve_variables(envname,false));     resultstr := ValueOfEnvVar (resolve_variables(envname,false));
   writelog('Umgebungsvariable: '+resolve_variables(envname,false)    writelog(Format(getMsg('got_value_for_varable_with'),
            +' mit dem wert '+resultstr+' gelesen');                [name, howtofind, resolve_variables(envname,false), resultstr]));
   end;    end;
   
   if uppercase(howtofind) = uppercase('localDefinedVariable') then    if uppercase(howtofind) = uppercase('localDefinedVariable') then
Line 969  begin  Line 874  begin 
    resultstr := mozptchini.ReadString('localDefinedVariable',name,'mozptch_ini_variable_error');     resultstr := mozptchini.ReadString('localDefinedVariable',name,'mozptch_ini_variable_error');
    if resultstr = 'mozptch_ini_variable_error' then     if resultstr = 'mozptch_ini_variable_error' then
    begin     begin
    writelog('Inhalt der lokal definierten Variable '+name+' in mozptch.ini nicht gefunden');     writelog(Format(getMsg('value_for_varable_not_found_with'),
    ShowMessage('Inhalt der lokal definierten Variable '+name+' in mozptch.ini nicht gefunden');             [name, howtofind, resultstr, mozptchiniFileName]));
     ShowMessage(Format(getMsg('value_for_varable_not_found_with'),
             [name, howtofind, resultstr, mozptchiniFileName]));
     exit;      exit;
    end;     end;
    resultstr := resolve_variables(resultstr, false);     resultstr := resolve_variables(resultstr, false);
      writelog(Format(getMsg('got_value_for_varable_with'),
                  [name, howtofind, '', resultstr]));
   end;    end;
   
   if uppercase(howtofind) = 'INIFILE' then    if uppercase(howtofind) = 'INIFILE' then
Line 985  begin  Line 894  begin 
       (section = 'error') or        (section = 'error') or
       (key = 'error') then        (key = 'error') then
    begin     begin
    writelog('Dateiname, Section oder Schlüssel der Inidatei zum finden der Variable '+name+' in mozptch.ini nicht gefunden');     writelog(Format(getMsg('value_for_varable_not_found_with'),
    ShowMessage('Dateiname, Section oder Schlüssel der Inidatei zum finden der Variable '+name+' in mozptch.ini nicht gefunden');             [name, howtofind,'File: '+filename
                            +', Section: '+section
                            +', Key: '+key
             , resultstr]));
     ShowMessage(Format(getMsg('value_for_varable_not_found_with'),
             [name, howtofind,'File: '+filename
                            +', Section: '+section
                            +', Key: '+key
             , resultstr]));
     resultstr := 'mozptch_ini_variable_error';      resultstr := 'mozptch_ini_variable_error';
     getVariableValue := resolve_variables(resultstr,false);      getVariableValue := resolve_variables(resultstr,false);
    writelog('Variable '+name+' über '+howtofind+' gesetzt auf den wert: '+resultstr);     writelog(Format(getMsg('got_value_for_varable_with'),
                [name, howtofind, '', resultstr]));
     exit;      exit;
    end;     end;
    specialini := TMemIniFile.Create(resolve_variables(filename,false));     specialini := TMemIniFile.Create(resolve_variables(filename,false));
Line 997  begin  Line 915  begin 
                                       resolve_variables(key,false),                                        resolve_variables(key,false),
                                       'mozptch_ini_variable_error');                                        'mozptch_ini_variable_error');
    specialini.Free;     specialini.Free;
   writelog('Dateiname: '+resolve_variables(filename,false)    writelog(Format(getMsg('got_value_for_varable_with'),
            +', Section: '+resolve_variables(section,false)            [name, howtofind,'File: '+resolve_variables(filename,false)
            +' Schlüssel: '+resolve_variables(key,false)                            +', Section: '+resolve_variables(section,false)
            +' Variable '+name+' auf '+resultstr+' gesetzt');                            +', Key: '+resolve_variables(key,false)
             , resultstr]));
    if resultstr = 'mozptch_ini_variable_error' then     if resultstr = 'mozptch_ini_variable_error' then
    begin     begin
    writelog('Dateiname: '+resolve_variables(filename,false)     writelog(Format(getMsg('value_for_varable_not_found_with'),
            +', Section: '+resolve_variables(section,false)             [name, howtofind,'File: '+resolve_variables(filename,false)
            +' Schlüssel: '+resolve_variables(key,false)                            +', Section: '+resolve_variables(section,false)
            +' Variable '+name+' nicht gefunden');                            +', Key: '+resolve_variables(key,false)
    showmessage('Dateiname: '+resolve_variables(filename,false)             , resultstr]));
            +', Section: '+resolve_variables(section,false)     showmessage(Format(getMsg('value_for_varable_not_found_with'),
            +' Schlüssel: '+resolve_variables(key,false)             [name, howtofind,'File: '+resolve_variables(filename,false)
            +' Variable '+name+' nicht gefunden');                            +', Section: '+resolve_variables(section,false)
                            +', Key: '+resolve_variables(key,false)
             , resultstr]));
    end;     end;
   end;    end;
   
Line 1019  begin  Line 940  begin 
    filename := mozptchini.ReadString('file-'+name,'filename','error');     filename := mozptchini.ReadString('file-'+name,'filename','error');
    if filename = 'error' then     if filename = 'error' then
    begin     begin
    writelog('Der Name der Datei zum finden der Variable '+name+' in mozptch.ini nicht gefunden');     writelog(Format(getMsg('value_for_varable_not_found_with'),
    ShowMessage('Der Name der Datei zum finden der Variable '+name+' in mozptch.ini nicht gefunden');             [name, howtofind, filename, mozptchiniFileName]));
     ShowMessage(Format(getMsg('value_for_varable_not_found_with'),
             [name, howtofind, filename, mozptchiniFileName]));
     resultstr := 'mozptch_ini_variable_error';      resultstr := 'mozptch_ini_variable_error';
       (*
     getVariableValue := resolve_variables(resultstr,false);      getVariableValue := resolve_variables(resultstr,false);
    writelog('Variable '+name+' über '+howtofind+' gesetzt auf den wert: '+resultstr);     writelog(Format(getMsg('got_value_for_varable_with'),
                [name, howtofind, filename, resultstr]));
     *)
     exit;      exit;
    end;     end;
    if FileExists(resolve_variables(filename,false)) then     if FileExists(resolve_variables(filename,false)) then
Line 1032  begin  Line 958  begin 
     reset(feil);      reset(feil);
     readln(feil,resultstr);      readln(feil,resultstr);
     closefile(feil);      closefile(feil);
       writelog(Format(getMsg('got_value_for_varable_with'),
             [name, howtofind, resolve_variables(filename,false), resultstr]));
    end     end
    else     else
    begin     begin
    writelog('Dateiname: '+resolve_variables(filename,false)     writelog(Format(getMsg('value_for_varable_not_found_with'),
            +' für Variable '+name+' nicht gefunden');      [name, howtofind, resolve_variables(filename,false)+': Error: not found', resultstr]));
    showmessage('Dateiname: '+resolve_variables(filename,false)     showmessage(Format(getMsg('value_for_varable_not_found_with'),
            +' für Variable '+name+' nicht gefunden');      [name, howtofind, resolve_variables(filename,false)+': Error: not found', resultstr]));
     resultstr := 'mozptch_ini_variable_error';      resultstr := 'mozptch_ini_variable_error';
    end;     end;
   end;    end;
Line 1048  begin  Line 976  begin 
    question := mozptchini.ReadString('ask-'+name,'text','error');     question := mozptchini.ReadString('ask-'+name,'text','error');
    if question = 'error' then     if question = 'error' then
    begin     begin
    writelog('Der Text zum Abfragen der Variable '+name+' in mozptch.ini nicht gefunden');     writelog(Format(getMsg('value_for_varable_not_found_with'),
    ShowMessage('Der Text zum Abfragen der Variable '+name+' in mozptch.ini nicht gefunden');      [name, howtofind, 'question: '+question, resultstr]));
     ShowMessage(Format(getMsg('value_for_varable_not_found_with'),
      [name, howtofind, 'question: '+question, resultstr]));
     resultstr := 'mozptch_ini_variable_error';      resultstr := 'mozptch_ini_variable_error';
       (*
     getVariableValue := resolve_variables(resultstr,false);      getVariableValue := resolve_variables(resultstr,false);
     writelog('Variable '+name+' über '+howtofind+' gesetzt auf den wert: '+resultstr);      writelog('Variable '+name+' über '+howtofind+' gesetzt auf den wert: '+resultstr);
       *)
     exit;      exit;
    end;     end;
    resultstr := InputBox('Bitte Eingeben',question,'');     resultstr := InputBox('Bitte Eingeben',question,'');
Line 1060  begin  Line 992  begin 
   
  end;   end;
  getVariableValue := resolve_variables(resultstr,false);   getVariableValue := resolve_variables(resultstr,false);
 writelog('Variable '+name+' über '+howtofind+' gesetzt auf den wert: '+resultstr);  writelog(Format(getMsg('got_value_for_varable_with'),
           [name, howtofind, question, resultstr]));
 end;  end;
   
 (*####################################################################  (*####################################################################

Removed from v.1.2  
changed lines
  Added in v.1.3


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>