Архив рубрики: Без рубрики

Про Есенина

В разгаре мая, когда трава еще была зеленая-зеленая, а жара не успела надоесть, поехали мы на родину великого русского поэта Есенина под Рязань в поселок Константиново. Возвышается село на холмах над все той же Окой, которую летом можно встретить тут и там, разъезжая по просторам нашей родины. Великая река.

Большая территория, по которой можно совершенно бесплатно погулять. А вот для входа в музеи нужно купить билетики. Какие музей? Не знаю, не видел. Мы сделали ровно один круг по территории заповедника, прошлись вдоль реки, спустились к причалу, как начал накрапывать дождь, шедший затем долго и без остановки.

А красиво как вокруг. По ту стороны Оки леса и поля, по воде медленно идут длинные баржи, а на холме с усадьбой, церковью и множеством домиков расположились сады с цветущими деревьями. На краю возвышенности одиноко распустили свои ветви старые деревья, под которыми устроились на лавочках отдыхающие.

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

Я покинул родимый дом,
Голубую оставил Русь.
В три звезды березняк над прудом
Теплит матери старой грусть.
Золотою лягушкой луна
Распласталась на тихой воде.
Словно яблонный цвет, седина
У отца пролилась в бороде.
Я не скоро, не скоро вернусь.
Долго петь и звенеть пурге.
Стережет голубую Русь
Старый клен на одной ноге,
И я знаю, есть радость в нем
Тем, кто листьев целует дождь,
Оттого что тот старый клен
Головой на меня похож.
1918

GPS: 54.861595, 39.604212

ФОТОГРАФИИ

Немного баловства с JS/HTML5

У js-библиотеки Prototype есть вспомогательная библиотечка Window, позволяющая создавать на странице сайта модальные окна (со всеми плюшками в виде сворачивания, закрывания, ресайза и перетаскивания).

Легким движением, а именно переопределением методов minimize и restore можно сделать, чтобы окошки не просто сворачивались, а убирались в какой-то угол страниц в виде небольших кнопок (панель задач в Windows помните?).

И вот задача, чтобы эти свернутые кнопки не исчезали при переходе между страницами сайта.

Для этого воспользуемся идеей: при сворачивании окон мы делаем еще одну дополнительную операцию, а именно считываем свойства окна и записываем их в локальное хранилище с помощью технологии Web Storage (localStorage). Для работы с этим хранилищем я воспользовался библиотекой http://www.jstorage.info

Кусочек из метода минимизации:

minimize: function(id, event) {
var win = this.getWindow(id);
...
var winProps = jQuery.jStorage.get('winProps');
var newWinProps = {
'id': id,
'className': win.options.className,
'title': win.options.title,
'minWidth': win.options.minWidth,
'width': win.options.width,
'height': win.options.height,
'url': win.options.url,
'recenterAuto': win.options.recenterAuto,
'destroyOnClose': win.options.destroyOnClose,
'showEffectOptions': win.options.showEffectOptions,
'top': jQueryElement.css('top'),
'left': jQueryElement.css('left')
};
winProps[id] = newWinProps;
jQuery.jStorage.set('winProps',winProps);
...

(есть возможность хранить несколько окон)

При открытии любой страницы запускаем код ниже, который считывает данные из хранилища (по сути это просто параметры окна, которые передаются в конструктор нового окна), инициализирует для каждого окна объект Window (который так же добавляет нужные элементы в DOM) и отображает соответствующую «свернутую» кнопочку в углу страницы.

var winProps = jQuery.jStorage.get('winProps');
if (!jQuery.isEmptyObject(winProps)) {
// get from localStorage
for (var winId in winProps) {
var win = new Window(winProps[winId]);

// Create a dock element
var element = document.createElement('span');
element.className = 'dock_icon';
element.style.display = 'none';
element.win = win;
$('dock').appendChild(element);
Event.observe(element, 'mouseup', Windows.restore);
$(element).update(win.getTitle());
new Effect.Appear(element)
}
}

Ну и в методе restore не забываем добавить кусочек, отвечающий за удаление данного окна из списка в localStorage, т.к. оно уже не требуется к «перетаскиванию» между страницами, когда открыто, а не свернуто.

restore: function(event) {
...
// remove from localStorage
var winProps = jQuery.jStorage.get('winProps');
delete winProps[element.win.getId()];
jQuery.jStorage.set('winProps',winProps);
...

Малоярославец

В Малоярославец заехали мы по пути в деревню за яблочками (и грушами, из которых кое-кто уже сварил варенье и испек пирог 😉 ). Небольшой районный центр, больше похожий на деревню, но с давней историей, каким-то отношением к Газпрому, который там целый жилой квартал Маклино выстроил (Построен турецкими и румынскими строителями в 1997 году в обмен на списание долгов по газу).

Вокруг города живописная холмистая местность. Достопримечательностей немного, самым красивым местом является Черноостровской монастырь. Оттуда и будет большинство фотографий ниже. Много кошек 😉

GPS: 55.011393, 36.465645

ФОТОГРАФИИ