unit TDogCompUnit;

interface

uses SysUtils , DateUtils;


Type TDogComp = class(TObject)
  private
     fEntryCode : String;
     fKennelClub,fNameOfDog, fGender, fFileName  : string;
     fCon : Integer;
     fTemp : Integer;
     fOb : Integer;
     function getMonthNr(sMonth:String):Integer;  //
  public
     constructor Create;
     Procedure setData (OnelineData : string);
     function getDogDayAge:Integer;
     function getDogSDOB:string;
     function getTotScore:Integer; // 2.1.7 {1}
     function getKennelClub : string;
     function getNsmeOfDog : string;
     function getGender : string;
     function getFileName : string;
     Function getEntryCode : string;
     Function getConforamtion  : Integer;
     Function getTemprament : Integer;
     Function getObediance : integer;
  end;
implementation

{ TDogComp }
//==============================================================================
constructor TDogComp.Create;
begin
 // 2.1.2 
end;
//==============================================================================
function TDogComp.getMonthNr(sMonth:String):Integer;
var
 monthArr : Array [1..12] of String;
 MonthIndex : Integer;
Begin
  monthArr[1]  := 'January';
  monthArr[2]  := 'Febuary';
  monthArr[3]  := 'March';
  monthArr[4]  := 'April';
  monthArr[5]  := 'May';
  monthArr[6]  := 'June';
  monthArr[7]  := 'July';
  monthArr[8]  := 'August';
  monthArr[9]  := 'September';
  monthArr[10] := 'October';
  monthArr[11] := 'November';
  monthArr[12] := 'December';

  // 2.1.3

end;
//==============================================================================
function TDogComp.GetNsmeOfDog: string;
begin
 Result :=  fNameOfDog;
end;
//==============================================================================
function TDogComp.GetObediance: integer;
begin
 Result := fOb;
end;
//==============================================================================
function TDogComp.GetTemprament: Integer;
begin
 Result := fTemp;
end;
//==============================================================================
procedure TDogComp.SetData(OnelineData: string); {1}
var
  Delimeter : integer;
begin

  // 73|CKC|Pauli Girl|B|May 18, 2009|1.jpg|8|7|8
{-	The entry code e.g. 73
 -	The kennel club of the dog e.g. UKC United Kennel Club
 -	The name of the dog e.g. Pauli Girl
 -	A character B or D indicating whether the dog is a B-Bitch (Female dog) or a D-Dog (Male dog)
 -	The date of birth of the dog in the format  Month DD, YYYY e.g. March 17, 2010
 -	And the three scores of the dog for Confirmation, Temperament and Obedience out of 10 respectively.
}
  // 2.1.4

end;
//==============================================================================
function TDogComp.getDogSDOB:String;
 var
   sDate, TempDate :String;
   sYY : String;
   sMonthName : String;
   sMM : String;
   sDD : String;
begin
  (*remove coment brackets of the next line when you get to this part*)
  {TempDate := fDogDOB;}
  //August 06, 2009
  sMonthName := copy(TempDate,1,Pos(' ',TempDate)-1);
  Delete(TempDate,1,Pos(' ',TempDate));
  sDD := copy(TempDate,1,Pos(',',TempDate)-1);
  Delete(TempDate,1,Pos(' ',TempDate));
  sYY := TempDate;

  // 2.1.5

  if Length(sMM) < 2 then
    begin
      sMM := '0'+sMM;
    end;
  // 2.1.5 
end;
//==============================================================================
function TDogComp.GetEntryCode: string;
begin
 Result := fEntryCode;
end;
//==============================================================================
function TDogComp.GetFileName: string;
begin
 Result := fFileName;
end;
//==============================================================================
function TDogComp.GetGender: string;
begin
 Result := fGender;
end;
//==============================================================================
function TDogComp.GetKennelClub: string;
begin
 Result := fKennelClub ;
end;
//==============================================================================
function TDogComp.GetConforamtion: Integer;
begin
 Result := fCon;
end;
//==============================================================================
function TDogComp.getDogDayAge: Integer;
begin
  // 2.1.6
  
end;
//==============================================================================
function TDogComp.getTotScore: Integer;
begin
  // 2.1.7

end;
//==============================================================================
end.
