Ahmed Amin Elsheshtawy احمد امين الششتاوى جودة > Religion-Islam-PrayerTimes > Religion::Islam::PrayerTimes

Download:
Religion-Islam-PrayerTimes-1.02.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  0
View/Report Bugs
Module Version: 1.02   Source  

NAME ^

Religion::Islam::PrayerTimes - Calculates Muslim Prayers Times and Sunrise

SYNOPSIS ^

        use Religion::Islam::PrayerTimes;

        #create new object with default options
        my $prayer = Religion::Islam::PrayerTimes->new();
        
        #Juristic Methods:
        # 1 = Standard (Imams Shafii, Hanbali, and Maliki),
        #2  = Hanafi
        #The difference is in the Aser time only
        $prayer->JuristicMethod(1);
        
        # Calculation Method 
        #1:     Umm Al-Qura Committee
        #2:     Muslim World League
        #3:     Egyptian General Authority of Survey
        #4:     University Of Islamic Sciences, Karachi
        #5:     ISNA, Islamic Society of North America
        $prayer->CalculationMethod(3);
        
        # Q. What is daylight saving? Ans. Many countries try to adopt their work time by subtracting
        # from their clocks one hour in the Fall and Winter seasons. 
        $prayer->DaylightSaving(1);
        #print "DaylightSaving: ". $prayer->DaylightSaving() ."\n";
        
        # set the location to clculate prayer times for.
        # for Cairo, Egypt:
        # http://heavens-above.com/countries.asp
        $prayer->PrayerLocation(
                                                                        Latitude => 30.050,
                                                                        Longitude => 31.250,
                                                                        Altitude => 24,
                                                                        TimeZone => 2
                                                                );
        
        my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
        $mon++;         $year += 1900;

        #Adjust the Gregorian Dates by making sure that the month lengths  
        #are correct if not so take the extra days to next month or year.
        my ($yg0, $mg0, $dg0) = $prayer->GDateAjust($year, $mon, $mday);
        # Now calculate the prayer times. Times returns in hours decimal format

        #%result = $prayer->PrayerTimes($year, $mon, $mday);
        %result = $prayer->PrayerTimes($yg0, $mg0, $dg0);
        
        #print "Fajr: " . $result{Fajr} . "\n";
        #print "Sunrise: " . $result{Sunrise} . "\n";
        #print "Zohar: " . $result{Zohar} . "\n";
        #print "Aser: " . $result{Aser} . "\n";
        #print "Maghrib: " . $result{Maghrib} . "\n";
        #print "Isha: " . $result{Isha} . "\n";
        #print "Fajir Rabita: " . $result{FajirRabita} . "\n";   #Fajer using exact Rabita method for places >48
        #print "Isha Rabita: " . $result{IshaRabita} . "\n";    #Ash using exact Rabita method for places >48
        #print "Eid Prayer Time: " . $result{Eid} . "\n";        #Eid Prayer Time
        #print "\n";
        
        # set time mode for 12 or 24 hour for FormatTime function.
        $prayer->TimeMode(1);
        #print time formated
        #print "TimeMode: "  . $prayer->TimeMode() ."\n";

        my ($h, $m, $ap);

        ($h, $m, $ap) = $prayer->FormatTime($result{Fajr});
        print "Fajr: $h:$m $ap\n";

        ($h, $m, $ap) = $prayer->FormatTime($result{Sunrise});
        print "Sunrise: $h:$m $ap\n";

        ($h, $m, $ap) = $prayer->FormatTime($result{Zohar});
        print "Zohar: $h:$m $ap\n";

        ($h, $m, $ap) = $prayer->FormatTime($result{Aser});
        print "Aser: $h:$m $ap\n";

        ($h, $m, $ap) = $prayer->FormatTime($result{Maghrib});
        print "Maghrib: $h:$m $ap\n";

        ($h, $m, $ap) = $prayer->FormatTime($result{Isha});
        print "Isha: $h:$m $ap\n";
        
        #($h, $m, $ap) = $prayer->FormatTime($result{FajirRabita});
        #print "Fajir Rabita: $h:$m $ap\n";      #Fajer using exact Rabita method for places >48

        #($h, $m, $ap) = $prayer->FormatTime($result{IshaRabita});
        #print "Isha Rabita: $h:$m $ap\n";      #Ash using exact Rabita method for places >48

        #($h, $m, $ap) = $prayer->FormatTime($result{Eid});
        #print "Eid Prayer Time: $h:$m $ap\n";   #Eid Prayer Time

DESCRIPTION ^

This module calculates Muslim prayers times and sunrise for any location on the earth.

SEE ALSO ^

Religion::Islam::Qibla Religion::Islam::Quran

AUTHOR ^

Ahmed Amin Elsheshtawy, <support@islamware.com<gt> Website: http://www.islamware.com

COPYRIGHT AND LICENSE ^

Copyright (C) 2006 by Ahmed Amin Elsheshtawy support@islamware.com, http://www.islamware.com

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

syntax highlighting: