2017 © Pedro PelĂĄez
 

library calendar

Laravel 5 Calendar, based on gloudemans/calendar

image

vics80/calendar

Laravel 5 Calendar, based on gloudemans/calendar

  • Thursday, April 20, 2017
  • by vics80
  • Repository
  • 2 Watchers
  • 9 Stars
  • 4,063 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 38 Forks
  • 0 Open issues
  • 5 Versions
  • 1 % Grown

The README.md

Screenshot of calendar with minimal configuration

Screenshot, (*1)

Installation

Install the package through Composer. Edit your project's composer.json file by adding:, (*2)

"require": {
    "laravel/framework": "4.0.*",
    "vics80/calendar": "dev-master"
}

Next, run the Composer update command from the Terminal:, (*3)

composer update

Now all you have to do is add the service provider of the package and alias the package. To do this open your config/app.php file., (*4)

Add a new line to the service providers array:, (*5)

'Vics80\Calendar\CalendarServiceProvider'

And finally add a new line to the aliases array:, (*6)

'Calendar' => 'Vics80\Calendar\Facades\Calendar',

Now you're ready to start using the calendar package in your application., (*7)

Usage

You can use the generate method to generate a calendar., (*8)

// Generate a calendar for the current month and year
Calendar::generate();

// Generate a calendar for the specified year and month
Calendar::generate(2012, 6);

If you want to add events you have two ways to do it: The first way is to adding single events without attributes to the event's wrapper, (*9)

// Add an array of events as the third parameter to add them to the calendar, 
// keys should be the days of the month.
$data = array(
    3  => 'http://example.com/news/article/2006/03/',
    7  => 'http://example.com/news/article/2006/07/',
    13 => 'http://example.com/news/article/2006/13/',
    26 => 'http://example.com/news/article/2006/26/'
);

Calendar::generate(2006, 6, $data);

The second way is to adding multiple events in a same day. You cal also add somre attributes to the event's wrapper, (*10)

// Add an array of events as the third parameter to add them to the calendar, 
// keys should be the days of the month.
$data = array();
$data[3][] = array( 
                'content' => 'http://example.com/news/article/2006/03/',
                'attr'    => array(
                        'class' => 'some-css-class'
                    )
                );
$data[3][] = array(
                'content' => 'http://example.com/news/article/2006/04/',
                'attr'    => array(
                        'class' => 'some-css-class'
                    )
                ),
$data[12][] = array(
                'content' => 'http://example.com/news/article/2006/10/',
                'attr'    => array(
                        'class' => 'another-css-class'
                    )
                ),

Calendar::generate(2006, 6, $data);

There are a few config variables you can set to change the layout of the calendar:, (*11)

Preference Default Value Options Description
template None None A string containing your calendar template. See the template section below.
local_time time() None A Unix timestamp corresponding to the current time.
start_day sunday Any week day (sunday, monday, tuesday, etc.) Sets the day of the week the calendar should start on.
month_type long long, short Determines what version of the month name to use in the header. long = January, short = Jan.
day_type abr long, short, abr Determines what version of the weekday names to use in the column headers. long = Sunday, short = Sun, abr = Su.
show_next_prev false true/false Determines whether to display links allowing you to toggle to next/previous months. See information on this feature below.
segments false true/false Default the next/prev link will use a query string, if you set this var to true, URI segments will be used
eventContainer

{event}, (*12)

| Some HTML containing {event} and optional {attr} | HTML DOM to show the event ({event} is the string with the event's description and {attr} are the attributes defined in data array) |, (*13)

You can set these values using the initialize method, (*14)

$config = array(
    'start_day' => 'monday',
    'month_type' => 'long'
);

Calendar::initialize($config);

Template

You can also change the template used for the calendar., (*15)

$template = '
   {table_open}

{/table_open} {heading_row_start}{/heading_row_start} {heading_previous_cell}{/heading_previous_cell} {heading_title_cell}{/heading_title_cell} {heading_next_cell}{/heading_next_cell} {heading_row_end}{/heading_row_end} {week_row_start}{/week_row_start} {week_day_cell}{/week_day_cell} {week_row_end}{/week_row_end} {cal_row_start}{/cal_row_start} {cal_cell_start}{/cal_cell_end} {cal_row_end}{/cal_row_end} {table_close}
<<{heading}>>
{week_day}
{/cal_cell_start} {cal_cell_content}{day}{/cal_cell_content} {cal_cell_content_today}{/cal_cell_content_today} {cal_cell_no_content}{day}{/cal_cell_no_content} {cal_cell_no_content_today}
{day}
{/cal_cell_no_content_today} {cal_cell_blank} {/cal_cell_blank} {cal_cell_end}
{/table_close} '; Calendar::initialize(array('template' => $template)); echo Calendar::generate();

The Versions

20/04 2017

dev-master

9999999-dev

Laravel 5 Calendar, based on gloudemans/calendar

  Sources   Download

The Requires

 

by VĂ­ctor Garcia Merediz

laravel calendar

12/05 2015

1.02

1.02.0.0

Laravel 5 Calendar, based on gloudemans/calendar

  Sources   Download

The Requires

 

by VĂ­ctor Garcia Merediz

laravel calendar

12/05 2015

1.01

1.01.0.0

Laravel 5 Calendar, based on gloudemans/calendar

  Sources   Download

The Requires

 

by VĂ­ctor Garcia Merediz

laravel calendar

12/05 2015

1.0

1.0.0.0

Laravel 5 Calendar, based on gloudemans/calendar

  Sources   Download

The Requires

 

by VĂ­ctor Garcia Merediz

laravel calendar

10/12 2013

dev-develop

dev-develop

Laravel 4 Calendar, port of the CodeIgniter Calender Library

  Sources   Download

The Requires

 

by Rob Gloudemans

laravel calendar