вторник, 19 мая 2015 г.

Вконтакте ( vk.com ), как заблокировать рекламу с помощью Adblock plus.

Чтобы те, кто уже знаком с adblock plus, не тратить время на прочтение всей статьи, пишу кратко:
добавьте в adblock фильтр:
##div[data-ads]
////
Добавление записи от 25.05.2015:
vkontakte немного изменил название параметра, теперь нужно поменять фильтр на
##div[data-ad-view]
по той же схеме
////
С недавних пор, а именно с 18 мая 2015 года (хотя обещали с 15го :) ), Вконтакте добавили встраиваемую в ленту пользователей рекламу.
Эту рекламу нельзя закрыть, скрыть, пометить как спам и вообще как-то убрать из ленты новостей.
Недолго думая, я глянул на код этих элементов.
Обычно я пользуюсь chrome и в нем(как уже и во многих других браузерах), если щелкнуть правой кнопкой мыши на любом из сайтов, то в самом низу видно меню  "Просмотр кода элемента"













Щелкаем по нему и открывается код который и отображает нашу страницу или конкретный элемент.
Переходим к сайту Вконтакте, открываем ленту новостей и ищем наши новые незакрываемые рекламки. Щелкаем по любому месту в этом "посте", которое, по логике вещей, должно быть блоком, который нам нужно исследовать. Открываем "просмотр кода элемента" и изучаем этот рекламный блок и нормальные блоки, которые должны быть в новостях, ищем отличия.
Сразу скажу, что отличаются они наличием параметра data-ads, не сложно догадаться, что ads это сокращение английского слова advertising - реклама.































Далее, если еще у вас не установлен addblock, то срочно ставьте! Отсюда:
https://adblockplus.org/
Я дал ссылку на addblock plus, потому что в нем можно писать свои собственные фильтры.
И так, addblock установлен, что дальше?
Открываем сайт вконтакте, нажимаем в правом верхнем углу браузера красную иконку addblock plus и выбираем "Заблокировать элемент"

























Далее нужно щелкнуть абсолютно на любом месте сайта вконтакте и откроется окно программы, где уже будет что-то прописано. Это что-то мы удаляем и пишем свой текст фильтра, а именно:
##div[data-ads]
И жмем большую кнопку "Добавить."














Вот и все, теперь рекламные блоки не будут появляться. Я понимаю, что прибыль компании вконтакте, может сильно-сильно упасть, из-за этого))))))))) Шутка :) Им ничего не будет, деньги взяли, рекламу разместили и адиос амиго :)

Надо сказать, что моя строчка кода для фильтра не идеальна, так как я только вчера нашел и прочитал страницу на официальном сайте adblock о том как писать фильтры.
Поэтому, если что-то вдруг не станет работать или я перепишу более осмысленно текст фильтра, то обязательно здесь об этом напишу. А пока - работает и ладно.

Если вдруг эту статью прочитает тот, кто уже хорошо разбирается в написании фильтров для adblock, то пожалуйста, напишите в комментариях как что и зачем. Думаю это будет полезно многим. А так же, напишите в комментариях, если вы заметите, что фильтр повлиял на что-то, что не нужно скрывать.

Спокойного сёрфинга всем, без рекламы! ;)

вторник, 28 апреля 2015 г.

Java, Swing. How to change title text style of InternalFrame and width of minimized InternalFrame?

По воле случая пришлось вернуться к старому доброму SWING :)
Ну и тут началооось )))

Как поменять стиль текста у InternalFrame?
Очень просто. Если используем Look and Feel "Nimbus", то есть такая штука как переменные по-умолчанию. Весь их список можно найти здесь:
https://docs.oracle.com/javase/tutorial/uiswing/lookandfeel/_nimbusDefaults.html

И так, нужно добавить в конструктор главного окна следующее:

Font f = new Font("SansSerif", Font.BOLD, 14); // создаем нужный нам текст, мне нужно было его увеличить до 14
 UIManager.put("InternalFrame.titleFont", f); // вставляем в переменные наш текст.

Вот и все.


Так же можно поменять цвет текста, используя переменную "InternalFrame:InternalFrameTitlePane[Enabled].textForeground"

Вот так:

UIManager.put("InternalFrame:InternalFrameTitlePane[Enabled].textForeground", Color.RED);

------

По-умолчанию, ширина свернутого окна, нашего InternalFrame, такова, что заголовок при сворачивании становится не виден. Решить проблему можно так же через переменные по-умолчанию. В данном случае это "InternalFrameTitlePane.contentMargins".
Нужно добавить:

java.awt.Insets insets = new Insets(5, 5, 0, 120);
UIManager.put("InternalFrameTitlePane.contentMargins", insets);

5 и 5 в Insets это отступ снизу и сверху, а 120 - получается здесь, что ширина.










вторник, 25 ноября 2014 г.

ireport return value from subreport to master

Возвращаем значение переменой из подотчета в главный отчет, в JasperReport используя iReport.

Задача - отобразить значение(в моем случае итоговое), которое получилось в подотчете (subreport) в главном отчете (master report).

В главном отчете создадим переменную (Variables), назовем ее NET_MARGIN_RETURNED.
Откроем подотчет, правой кнопкой щелкаем по нему на форме и выбираем Open subreport.
В нем есть переменная, которую я добавил ранее NET_MARGIN

Так как у меня тип значений везде BigDecimal, то и Variable Class выбран в обеих java.math.BigDecimal. Если нужно передать текст и исходные данные текстовые, то и выбираем для обеих java.lang.String

У переменной в подотчете NET_MARGIN параметры следующие:
У переменной в главном отчете NET_MARGIN_RETURNED куда будем передавать значение, такие:
обращаю внимание на Calculation, сначала я поставил System, так как везде где читал, ставят именно так. Но на самом деле этот параметр для передачи значения не важен (я (п)оставил Nothing), хотя многие ставят именно System, скорее всего в специфических ситуациях.

И так есть у нас отчет с подотчетом, выбираем в списке слева наш подотчет, ну или напрямую щелкаем по нему в "Дизайнере". Смотрим на Subreport properties, видим Return Values.


Щелкаем по троеточию и добавляем нашу переменную.

В списке Subreport variables переменной NET_MARGIN почему-то не оказалось, видимо косяк iReport, поэтому вписываем вручную.
Local distanation variable выбираем, если она не единственная и уже не выбрана, нашу переменную в мастер-отчете.
Если хотим передать только значение без изменений, то выбираем в пункте Calculation type значение Nothing.

С переменными все. Теперь надо отобразить значение нашей переменной в отчете.
Создаем Text Field. В его свойствах указываем нашу переменную в Text Field Expression.
Есть у него такой проперти как Evalution Time. Пока искал как передать переменную, наткнулся на то, что многие видят проблему именно в этом параметре. Кто-то пишет, что надо поставить там не Now, а Auto. Кто-то ставит Band.
Не заморачиваясь на том, что значит то или другое и вообще что за такой Evalution Time, я оставил Now, хотя работает и если поставить Band. Просто хотел обратить внимание, что при другой структуре отчета может возникнуть проблема в этом месте.

Вот собственно и все проблемы, с которыми я столкнулся, во время решения данной проблемы.
Надеюсь кому-нибудь пригодится, ну а мне останется как напоминание куда и зачем залазить, если в будущем столкнусь с подобной проблемой.











четверг, 11 сентября 2014 г.

Netbeans, Vaadin 7, maven и апдейт темы(styles.css). Как его отключить.

Решил со сборщика Ant в своем новом проекте перейти на Maven.
Разобрался с репозитарием, были традности, но в итоге все решилось, подробнее об этом в следующий раз.
Гораздо больше меня смутило то, что при запуске проекта, он берет и обновляет мою тему до значений по дефолту, что не есть гуд, так как в моем styles.css есть много моих собственных классов, которые удаляются и в итоге не применяются в итоге к запущенному приложению.
Решение оказалось довольно-таки банальным.
Открываем наш pom.xml, ищем там

                         1 <goal>clean</goal>
               2 <goal>resources</goal>
               3 <!--<goal>update-theme</goal>-->
               4 <!--<goal>update-widgetset</goal>-->
               5 <!--<goal>compile-theme</goal>-->
               6 <goal>compile</goal>

Строки 3, 4 и 5 я закомментировал. Это пришлось сделать в двух местах:
У плагина org.eclipse.m2e и com.vaadin
Теперь редактируем наш css файлик и запускаем проект.

Тадааам и все стили на месте.
Строку 4 я так же закомментрил, так как мне пока не нужно обновлять виджетсеты, если я что-то добавлю, то для одного запуска эту строчку я раскомментирую.

Теперь остался открытым еще один вопрос. Как сделать так, чтобы в контекстном меню при щелчке правой кнопкой мыши появился бы пункт Deploy? Будем разбираться :)


пятница, 25 апреля 2014 г.

Количество срабатываний затвора Canon 6d (пробег камеры)

Всем привет! Решил тут проверить сколько же нащелкано у меня уже кадров.
Оказалось что не все так просто, перебрал несколько вариантов, как узнать пробег.
И платный через какой-то сайт, где надо 1.74 бакса кинуть и просто EOSInfo.
В итоге нашел все-таки нужную версию программы EOSInfo и вот выкладываю ее сюда, дабы не потерялась и, возможно, пригодилась кому-нибудь.

Мой Canon 6D программа определила и все показала.














Прошел почти год... 17 марта 2015, пробег немного увеличился.











Так же исправил ссылку на файл, она была не рабочей, потому как я случайно удалил файлы на яндекс-диске, впредь постараюсь не трогать :)
https://yadi.sk/d/2QSF6565fJwDp
а вот, на всякий случай, вторая ссылка откуда я скачивал этот же файл.
http://dropcanvas.com/jkthh/2

Если вдруг не будет здесь, нагуглите по запросу "EOS Camera Info 1.2"

Добавлено 05.09.2016: Отдельно написал пост про то как и чем измерить пробег на более современных камерах Canon, хотя прога поддерживает и другие камеры.

среда, 5 февраля 2014 г.

Vaadin 6.xx, решение проблемы с обновлением данных в таблицах

Здравствуйте!

Только что нашел решение (и успешно внедрил его в свой проект) старой (для меня) проблемы.

Суть заключалась в следующем.
Пользователь переводил таблицу в режим редактирования и менял в ней значения.
При этом, каждое изменение тут же записывалось в БД и сохранялось в ней.
Так же это значение сохранялось и на экране пользователя, в его таблице.
Но!
Как только пользователь переходил (к примеру в таблице 3 строчки) сначала от первой ко второй, от второй к третьей и затем обратно к первой, но значения менял уже в другой ячейке, данные в первой строчке первой редактируемой ячейке визуально оставались измененными, а в реальности, в представлении модели таблицы, значение в выбранной строке были все теми же. В результате, после выхода из режима редактирования, данные в ячейках, не сохранялись.
А точнее они сначала обновлялись, но затем обновлялись вновь на старые значения.

Мне удалось найти тикет, который описывает данный баг http://dev.vaadin.com/ticket/10993
Приведу скрины таблицы от исходных данных, до момента редактирования и его последовательности и получившийся результат.














Как вы видите, данные в первых двух столбцах не изменились, хотя в процессе они менялись, но при выборе первой строки, данные для объекта подтягивались не обновленные, а старые, то есть значения "1". В результате только данные из последнего столбца сохранялись в БД нужным образом.

Решение нашлось на форуме Vaadin, там же я нашел и ссылку на тикет с багом.
Я сделал просто - создал отдельный класс и стал вызывать его при каждом создании таблицы.
Привожу код класса:

import com.vaadin.data.Container;
import com.vaadin.data.Container.ItemSetChangeEvent;
import com.vaadin.ui.Table;
import java.util.Collection;

import java.util.Collections;
/**
 *
 * @author nix
 */
public class UpdateTableSelectionOnItemSetChange implements Container.ItemSetChangeListener {

    private Table table;
    
    
    public  UpdateTableSelectionOnItemSetChange(final Table table) {
        super();
        this.table = table;
    }

    @Override
    public void containerItemSetChange(ItemSetChangeEvent event) {
        final Collection<Object> itemIds = (Collection<Object>) table.getContainerDataSource().getItemIds();
        if (itemIds.isEmpty()) {
            // a previously filled table is now empty ==> remove its value since its selection is outdated this also
            // updates dependent forms via a resulting value change event
            table.setValue(null);
        } else {
            final Object tableVal = table.getValue();
            if (tableVal instanceof Collection && tableVal != null && !((Collection) tableVal).isEmpty()) {
                final Object selectedItemId = ((Collection<Object>) tableVal).iterator().next();
                // FIXME: needs to be adapted for multiselect tables

                for (final Object itemId : itemIds) {
                    if (itemId.equals(selectedItemId) && itemId != selectedItemId) {
                        table.setValue(null); // otherwise the next set value will be discarded since
                        // oldVal.equals(newVal)
                        table.setValue(Collections.singleton(itemId));
                        break;
                    }
                }
            }
        }
    }
}

Теперь в класс где у нас создается табличка просто добавляем создание экземпляра этого класса. Конечно, лучше его указывать сразу в списке переменных и затем вызывать только конструктор.

UpdateTableSelectionOnItemSetChange onItemSetChange =  new UpdateTableSelectionOnItemSetChange(table);

Можно найти более элегантное применение, если у вас оно есть - поделитесь, лишним не будет. Я же пока оставлю так. Главное, что данные теперь всегда "свежие" :)

суббота, 16 ноября 2013 г.

Дневник поломок и обслуживания ВАЗ 2114 1,6 16кл. 2010 года.

В продолжение темы, точнее даже "исторических" записей  о моем опыте "обращения" с автомобилями ВАЗ 2114 решил сюда записывать расходы связанные с обслуживанием моего сегодняшнего автомобиля. Как вы догадались, это ВАЗ 2114  2010года выпуска, с пробегом уже 96 тыс.км, с 16-ти клапанным двигателем 1,6 литра, марки 21126.


16 ноября 2013

С приходом похоладания стали проявляться разные автоболячки у многих автовладельцев, особенно у владельцев отечественных авто. Я не стал исключением.
В последние почти 2 месяца наблюдаю такую картину: на холостых при прогретом двигателе по машине начинают идти периодические вибрации, описать их тектом сложно, ощущение такое, скачут обороты двигателя, хотя реально они стабильны 840-880. Проверяли это с помощью ноутбука. Никаких ошибок не нашли, все работает в штатном режиме.

В одном сервисе, а именно в сервисе Колесо на ул.Соликамской, мне сказали, что я придираюсь, типа все так и должно быть.
Приехал в сервис Интеллект-авто по адресу Героев Хасана, 37б/1, записался на диагностику, которую на следующий день и провели.
За 600р, меня подключили к компу, послушали двигатель, походили вокруг, потрогали то да сё, в общем, вердикт оказался таким же как в Колесе - придираюсь. Из рекомендаций было промыть форсунки, по другому это называется промывка инжектора. А так же рекомендовали поменять топливный фильтр. Записался и сегодня приехал со всем что нужно.
Заодно решил поменять масло, залить синтетику Shell Helix Ultra 5W/40, зима все-таки уже стучится в двери, да и давно пора было убогий Лукойл поменять на нормальное масло :)
Так же прочитал, что после промывки форсунок рекомендуют поменять свечи, но в сервисе сказали, что это раньше были агрессивные смеси, а теперь вроде как не надо. Ну я все-равно решил поменять, а замененные положить на запас.
Ну и еще решил фильтры вентиляции салона и воздушный фильтр сменить.

И так что же понадобилось для работ:
Свечи NGK V-line №12 для 16-кл ВАЗ 2112  - 350р/4шт
Фильтр масляный "Салют" Ваз 2108 - 128 руб.
Фильтр вентиляции салона ВАЗ-2108/15  - 75 руб.
Фильтр воздушный "BIG-9597C"  ВАЗ-2108/10  - 115 руб.
Масло Shell Helix Ultra 5W/40  4л. - 1101 руб.
Фильтр ТОТ "BIG GB-320" ВАЗ-2110/14/23 Дв. 1,6 (это топливный)  - 191 руб.
Итого за материалы: 1960 рублей.

Приехал в сервис, два часа мне промывали форсунки, минут 30 ушло на замену масла и топливного фильтра, получился следующий расклад:
Работа:
Масло ДВС - замена - 300 руб.
Промывка форсунок ДВС - 1200 руб.
Фильтр топливный - замена  - 150 руб.
Расходные материалы:
Жидкость для промывки форсунок Winns  - 500 руб.

Итого 2150 руб.

Ах да, еще же 600р диагностика.
В итоге в очередной раз потрачено на машинку: 4710 руб.


10 декабря 2013


Поставил сигнализацию, StarLine 91a. Отрегулировали замки дверей, теперь все закрываются и открываются нормально
Ну и еще там же за 200 рублей уже позднее, числа этак 20-го, поменял резистор на печку, так как он сгорел. Причем менял я его уже сам буквально месяц назад, там такой геммор подлезть и его поменять, что проще отдать 200 рублей, чем на морозе (а было -25) лежать на коврике под рулем ногами наружу.

В итоге: 7700 руб.


16 января 2014

Машина начала мудить на дороге на кочках, биение в руль, прыжки и вообще... бесит!
Пришел к Вите, в его сервис, тут же у меня на стоянке, подняли посмотрели.
Мудаки из Римекса толком не затянули рулевые наконечники когда их меняли, ну и плюс шаровые подбалтывались.
Купил шаровые десяточные усиленные, Hola, 270р за штуку, итого 540.
Плюс 200р диагностика и 500р работа.
Еще к лету надо будет поменять стойки, так как они уже не те )))

В итоге: 1200 руб.


21 апреля 2014

Давненько ничего не вписывал в журнал :)
За последние 4 месяца случились следующие поломки/затраты:
Печка - как много в этом слове, для сердца тазовода уж слилось. В общем в очередной раз накрылся резистор управления скоростями печки. Говорят, что это мотор печки поджимается где-то и дает сильную нагрузку на этот резистор, вот он, собака, и горит.
Хотел поменять мотор печки, но найти в сборе не удалось, наплевал.
Помазал трущиеся края крыльчатки литолом и успокоился. Ну и, естественное, опять сменил сам резистор.
Резистор стоит от 160 до 180 руб.

Порвалась металлическая гофра, которая идет к глушителю, так называемое гибкое соединение. Звук стал такой, как-будто у меня стоит прямоток)))
Заехал к ребятам, поставили новую гофру 100мм, приварили, подкрасили.
Работы на 20 минут, а денег с ценой новой гофры(800р) - 2300 руб.

Пришла весна и вылезли отовсюду ямы и кочки на бывшем белом ровном асфальте.
Подвеска стала просто бесить, машина кивает раза два после более менее резкой остановки.
Да и просто при остановке кивает. А уж что говорить о звуке, который слышно при езде по кочкам. В общем стойки сдохли, почти совсем. Решено было не покупать новые, а прокачать эти. Кто-то говорит, что прокачать даже лучше. А кто-то говорит, что даже новые желательно прокачать.
Приехал в центр прокачки стоек, думал сделают часа за 2-3, в итоге провозились почти 5 часов. Заменили штоки в передних стойках. Сзади поменяли один сайлентблок. Поставили новые опоры. Справа спереди заменили порванный пыльник у гранаты, предварительно почистив гранату и залив туда шрус.
Поставили колеса на место, сделали развал. Передние стойки благодаря замене штоков, можно считать новыми. Надо сказать, что стойки были неразборные, теперь разборные, то есть прокачать если что - легко.
С учетом того, что стойки у меня приоровские, то я сэкономил.
Заодно проверили подвеску, все в порядке.
За подвеску вышло: 6900(стойки) + 500(развал)

А да, еще я покупал примерно 1.5 литра масла, Шелл Хеликс ультра 5W40 - 1200 руб.

Еще сегодня на новое литье одел летнюю резину и заменил шину на запаске - 1050 руб.

Итого примерно: 12 250 руб.


21 августа 2014

Начала машинка тупить при разгоне. На первой, на второй, на третье, только на 4-й более менее. Дергается и все, как-будто кто-то сзади ее подергивает за хвост)))
Поехал на диагностику в дав-авто, там была акция - полная диагностика за 350р.
Ну и плюсом облив машины 150р вроде бы - грязная она у меня была.
Проверили подвеску, электрику и двигатель.
Оказалось, что тупит катушка зажигания в 4-м цилиндре.
Предложили заменить на их'нюю )) и промыть инжектор за 4 с чем-то тысячи.
Я сказал, что ничо делать не надо, спасибо.
Взял бумажку, где описаны все недочеты и поехал на авторынок.
Купил катушку бошевскую производства Словения за 1150р, там же установил.
Теперь все отлично и разгон и прочее.

А еще на днях заправил полный бак, проехал 523км и заехал на заправку. Залил опять полный бак, получилось 34,26л до полного бака. Получается, что 34,26/523 = 0,0655. Умножаем на 100 и получаем средний расход бензина на 100км - 6,5л.  
Правда из этих 523км, 340 я проехал по трассе.
Вот так-то :)


Итого примерно: 1650 руб.




Зима 2015

Поменял масло, залил лукойловское полусинтетику 5w40 люкс.
Примерно 800р канистра + 300 р. работа.

Отбалансировал зимние колеса, примерно 350р. за все 4.

Подтекал у меня радиатор, достало подливать антифриз.
Поменял бачок, оказалось был в трещинах со стороны, которую не видно, почти снизу.
бачок около 150 руб.
Не помогло, заметил в итоге течь из главного радиатора, он к тому времени уже был весь в красных поддтеках по бокам.
Приехал в сервис, поменял радиатор, продали мне его там же. Посчитали все, вплоть до бумажной воронки.
Заодно подварили петлю на защите картера, была с трещиной.
За все про всё вместе с патрубками, хомутами, радиатором и работой вышло около 3-4т.р. точно уже не могу вспомнить, вовремя не записал, а распечатку с суммами, похоже, выбросил.

За зиму два раза на одном и том же колесе (правое заднее) словил проколы. Первый раз проволочка стальная, второй раз хороший такой саморезик.
Поставили в обоих случаях жгуты. 180р + 180р.

Двигатель подъедает масло, покупаю примерно раз в 1-2 месяца литровую канистрочку, слежу. Покупал вроде бы 2 раза, будем считать по 250р. так как цены выросли.

Еще поменял на дверях резинки уплотнительные, стало гораздо приятнее :)
Цен не помню, но что-то около 800р на все 4 двери.

Спустя какое-то время, поменял резинку уплотнительную на крышку багажника на 2114 - 163 руб.

Хотел поменять недавно уплотнители стекол, дак комплект стоит 1.5т.р. пока так поезжу, к лету все-равно сменю. И это только верх, а низ проема, там где так называемая бархотка идет, стоит еще около 500р. тоже комплект.

Итого примерно по максимуму: 6450 руб.


Всего за время владения авто с августа 2013 вложено примерно 75700 руб.


Ах, да!!! Мойка! Страховка 2-й год!
Первый год, я мойку не учитывал, но в среднем можно посчитать раз 10 именно платной мойки, по, примерно 300 руб.
Вторая страховка вышла тоже дорогая, так как нет 3-х лет стажа - 7400р.

Повторим фразу с учетом предыдущего абзаца:
Всего за время владения авто с августа 2013 вложено примерно 86100 руб.



5 августа 2015

И так, машинке 5 лет, потребовала очередного вложения.
Ну во-первых, все-таки решил поменять сломанный передний бампер.
Купил в цвет (Космос), так как дело было в выходной сервис рядом был закрыт и я решил сам поменять прямо на стоянке.
Цена бампера 1900 вроде бы. Еще докупил реснички(те что под фарами, накладки пластиковые) 200р комплект. А так же приобрел за 750р комплект пластиковых накладок на пороги, перед+зад. Бампер поменял, реснички тоже, естественно тут же заменил - хорошо стало смотреться :)

Во-вторых: услышал, что двигатель работает с некоторыми щелчками, причем уже довольно-таки ощутимыми на слух. Заехал тут же в сервис, сняли ГРМ, 16 зубов нет, хорошо что успел заметить, попал бы за загнутые клапана и 20-25т.р.
Заменили грм, работа 1200, сам ремень 2800



В-третьих: стала брякать подвеска, едешь и спереди стук да бряк на каждой кочке.
Подозрение сразу на опорные подшипники, или, как правильно их называют в магазинах, поворотные опоры.
Собрался с силами и деньгами и поехал в магаз. Комплектом не было, поэтому взял отдельно подшипники сэви и опоры стандартные приоровские, так как стойки приоровские и вообще вся подвеска приоровская. Кстати тяги, на которые крепятся рулевые наконечники у меня десятоШные, посмотрели в сервисе :)
Поехал в уже знакомое место "Центр прокачки стоек" на Карпинского 97а к1, вроде такой адрес.
Разобрали, посмотрели, накончникам п%$да, одному штоку в стойке тоже, одному отбойнику в стойке то же по тому же месту. Решили что будем менять шток и прокачивать обе стойки.
Провозились они 3 часа с небольшим, вместе с развалом.
По подвеске цены:
комплект опорников - 1546р
наконечники 350шт. + 350работа/за штуку
Прокачка стоек.. не помню, шток не помню
Работа по установке новых опорников 500р/шт.
Развал 590 вроде бы с гарантией в неделю(нигде не дают гарантию на это, кстати).
В общем в итоге на всё про всё 6200р с копейками.

Ну и в-четвертых, нужно было делать страховку до 27 июля.
При моем стаже меньше 3-х лет, и с городской пропиской, с машиной мощностью 98лошадей(т.е. меньше 100) мне она обошлась в 12706р. за сраную осагу спасибо президенту, правительству и всем кто на этом нажился. Еще и дорожный налог надо будет платить 2800.

Повторим фразу с учетом предыдущего абзаца и прибавим то что вылилось за недавнее время, а именно 25750р.
Всего за время владения авто с августа 2013 вложено примерно 111850 руб.
Вот и думай потом, нах нужно покупать российский автопром, ведь потрачено уже половина первоначальной стоимости, а если учесть, что текущая цена на мою "ласточку" около 150т.р., то 2/3.

На дворе февраль 2017-го, думаю, что продолжать эту тему бессмысленно, выводы делайте сами, я для себя уже сделал :)
За 2-2,5 года в такой автомобиль можно вложить как минимум 1/3 его стоимости, а скорее всего половину и даже больше. Но тем не менее свои функции он выполнять будет, а это самое главное.