Макрокоманда MonthCalendar

Данная макрокоманда предназначена для тех, кто использует МойнМойн как хранилище персональных данных (в том числе, ежедневных записей) и нуждается в интеграции календаря в вики.

Использование

<<MonthCalendar(БазоваяСтраница, год, месяц, смещение месяца, смещение месяца в ссылках, высота6, годовой календарь, шаблон)>>

Название параметра

Возможные значения

Значение по умолчанию

Описание

БазоваяСтраница

имя страницы

текущая страница

Базовая страница для записей календаря. Можно указывать несколько страниц через *.

год

целое число

текущий год

Год, отображаемый в календаре.

месяц

1..12

текущий месяц

Месяц для отображения в календаре. См. также смещение месяца, смещение месяца в ссылках.

смещение месяца

целое число

0

Смещение, добавляемое к месяцу при отображении.

смещение месяца в ссылках

целое число

0

Смещение, кумулятивно со значением параметра смещение месяца добавляемое к ссылкам навигации в календаре (переход на следующий/предыдущий месяц/год).

высота6

0 или 1

0

Выравнивание календаря по высоте в 6 строк (полезно для календарей на несколько месяцев).

годовой календарь

0 или 1

0

Годовой календарь (календарь, где ссылки не содержат год; полезно для дней рождения и других ежегодно повторяющихся событий).

шаблон

имя страницы

—

Страница шаблона, используемого для добавления новых записей при переходе по ссылкам календаря.

Любой из параметров может быть быть пустым, при этом он будет иметь значение по умолчанию.

Когда событие присутствует в календаре (существует соответствующая дате вложенная страница), его дата будет выделена, и при наведении на неё будет появляться всплывающее сообщение. В его теле будет находиться содержимое заголовков первого уровня.

Примеры

Отображение календаря на один месяц


Простейший вариант:

Разметка

Результат

<<MonthCalendar>>

<< <  2058 / 10 >  >>
Пн Вт Ср Чт Пт Сб Вс
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      


Календарь предыдущего месяца для страницы "ДругойПользователь" выглядит следующим образом:

Разметка

Результат

<<MonthCalendar(ДругойПользователь,,,-1)>>

ДругойПользователь
<< <  2026 / 8 >  >>
Пн Вт Ср Чт Пт Сб Вс
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            


Календарь для пользователя КакойТоПользователь на декабрь текущего года:

Разметка

Результат

<<MonthCalendar(КакойТоПользователь,,12)>>

КакойТоПользователь
<< <  2026 / 12 >  >>
Пн Вт Ср Чт Пт Сб Вс
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      


Календарь для текужей страницы, декабрь этого года:

Разметка

Результат

<<MonthCalendar(,,12)>>

<< <  2059 / 1 >  >>
Пн Вт Ср Чт Пт Сб Вс
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    


Календарь на декабрь 2001 года:

Разметка

Результат

<<MonthCalendar(,2001,12)>>

<< <  2034 / 1 >  >>
Пн Вт Ср Чт Пт Сб Вс
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          


Календарь на месяц, идущий через один после декабря 2001 год (малопрактично, но возможно)

Разметка

Результат

<<MonthCalendar(,2001,12,+2)>>

<< <  2034 / 3 >  >>
Пн Вт Ср Чт Пт Сб Вс
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Календарь на год

Календарь на 2002 год (каждый месяц выровнен по высоте в 6 строк):

Разметка

||||||||<bgcolor="#ffffcc"> '''2002 год'''                                                              ||
|| <<MonthCalendar(,2002,1,,,1)>>  || <<MonthCalendar(,2002,2,,,1)>>  ||<<MonthCalendar(,2002,3,,,1)>>  ||
|| <<MonthCalendar(,2002,4,,,1)>>  || <<MonthCalendar(,2002,5,,,1)>>  ||<<MonthCalendar(,2002,6,,,1)>>  ||
|| <<MonthCalendar(,2002,7,,,1)>>  || <<MonthCalendar(,2002,8,,,1)>>  ||<<MonthCalendar(,2002,9,,,1)>>  ||
|| <<MonthCalendar(,2002,10,,,1)>> || <<MonthCalendar(,2002,11,,,1)>> ||<<MonthCalendar(,2002,12,,,1)>> ||

Результат

2002 год

<< <  2034 / 2 >  >>
Пн Вт Ср Чт Пт Сб Вс
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28          
             

<< <  2034 / 3 >  >>
Пн Вт Ср Чт Пт Сб Вс
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
             

<< <  2034 / 4 >  >>
Пн Вт Ср Чт Пт Сб Вс
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
             

<< <  2034 / 5 >  >>
Пн Вт Ср Чт Пт Сб Вс
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
             

<< <  2034 / 6 >  >>
Пн Вт Ср Чт Пт Сб Вс
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
             

<< <  2034 / 7 >  >>
Пн Вт Ср Чт Пт Сб Вс
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

<< <  2034 / 8 >  >>
Пн Вт Ср Чт Пт Сб Вс
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
             

<< <  2034 / 9 >  >>
Пн Вт Ср Чт Пт Сб Вс
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  
             

<< <  2034 / 10 >  >>
Пн Вт Ср Чт Пт Сб Вс
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

<< <  2034 / 11 >  >>
Пн Вт Ср Чт Пт Сб Вс
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      
             

<< <  2034 / 12 >  >>
Пн Вт Ср Чт Пт Сб Вс
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
             

<< <  2035 / 1 >  >>
Пн Вт Ср Чт Пт Сб Вс
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
             

Другие примеры


Календарь для страниц МояСтраница, Пользователь1, Пользователь2:

Разметка

Результат

<<MonthCalendar(МояСтраница*Пользователь1*Пользователь2)>>

МояСтраница*Пользователь1*Пользователь2
<< <  2026 / 9 >  >>
Пн Вт Ср Чт Пт Сб Вс
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        


Календари вложенных страниц:

Разметка

Результат

<<MonthCalendar(МоёИмя/ЛичныеДела)>>

МоёИмя/ЛичныеДела
<< <  2026 / 9 >  >>
Пн Вт Ср Чт Пт Сб Вс
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        

<<MonthCalendar(МоёИмя/РабочиеДела)>>

МоёИмя/РабочиеДела
<< <  2026 / 9 >  >>
Пн Вт Ср Чт Пт Сб Вс
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        

<<MonthCalendar(МоёИмя/ЛичныеДела*МоёИмя/РабочиеДела)>>

МоёИмя/ЛичныеДела*МоёИмя/РабочиеДела
<< <  2026 / 9 >  >>
Пн Вт Ср Чт Пт Сб Вс
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        


Годовой календарь:

Разметка

Результат

<<MonthCalendar(СобытияЗаГод,,,+1,,1,1)>>

СобытияЗаГод
<< <  2026 / 10 >  >>
Пн Вт Ср Чт Пт Сб Вс
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
             

Страницы событий при этом имеют формат СобытияЗаГод/ММ-ДД. Это позволяет хранить информацию о днях рождения и прочих событиях, дабы не создавать записи о них каждый год.


В этом примере для создания новых страниц будет использоваться шаблон ШаблонСобытиеКалендаря:

Разметка

Результат

<<MonthCalendar(,,,,,,,ШаблонСобытиеКалендаря)>>

<< <  2058 / 10 >  >>
Пн Вт Ср Чт Пт Сб Вс
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

см. также: ПомощьПоМакроКомандам.