Постове 6 - 10 от 13 в категория Shame

Aug 21

Преди 2 дни видях в AjaxianA simple solution to the “other” problem with select boxes, което представлява решение на “другия” проблем, както би се превело буквално. Всъщносто там е представен jquery код с който когато от даден html select избереш “друг(other)” ти се появява input поленце където да кажеш какво точно е това другото. Вижте демо-то, защото май не го обясних добре.

Като идея е добре, но нещо jquery кода не ми се вижда много читав:

$(document).ready( function () {
	$('.leader').each( function () {
		var name = $(this).attr('name');
		if ($(this).val()!='other') {
			$(this).next().removeAttr('name').hide();
		 }
	});

	$('.leader').change(onChange);

	function onChange(){
		var desiredName = $(this).attr('name');
		if ($('#'+desiredName).val()=='other') {
			$('#'+desiredName).next().attr('name',desiredName).fadeIn('fast');
		} else {
			$('#'+desiredName).next().removeAttr('name').fadeOut('fast');
		}
	}
});

Много бях изненадан, че това стигна до Ajaxian (въпреки че доста са свалили летвата напоследък). В този код има няколко неща, които не ми харесват:

  1. 2 пъти прави почти едно и също,  избира всичките елементи с клас “leader” и проверява дали е избрана като стойност “other”, за да покаже/скрие следващия елемент.
  2. 2 пъти прави $(‘.leader’), като явно е забравил, че едно от най-яките неща в jquery e changing-a. Спокойно е можел да направи просто $(‘.leader).each( … ).change( … )
  3. на 3тия ред ( var name = $(this).attr(‘name’) ), защо го има това и какво прави така и не разбрах, никъде в този scope не ползва name променливата, а и аз лично бих ползвал getAttribute за извличане на атрибута.
  4. в each-a се вика 3 пъти $() за един и същ елемент ( this в случая), по-добре е добре да се вземе jQuery инстанцията и да се запише в променлива – ще бъде доста по-бързо, когато се ползва.
  5. аз лично нямаше да сложа скобите на if-a в each-a, защото когато се пише javascript всеки байт е важен
  6. така и не ми стана ясно защо декларира функция onChange като може да ползва директно анонимна функция при $(‘.leader’).change( … ).
  7. тук добре е направил, че е взел desiredName и го сложил в променлива, но ако някой ми каже защо при положение, че има this му трябва цели 3 пъти да вика jquery css selector с #id (и даже да не го записва в поменлива) ?!?
  8. малко ме подразниха и излишните празни редове и разстояния

Това са горе долу лошите неща, които видях, въпреки че не пиша много jquery код ми се струва че ако напише кода по този начин ще е доста по-добре:

$(document).ready(function(){
	$('.leader').change(function(
		var select = $(this);
		if(select.val() == 'other')
			select.next().attr('name', select.getAttribute('name')).fadeIn('fast');
		else
			select.next().removeAttr('name').fadeOut('fast');
	)).triggerHandler('change');
});

естествено и моята версия не е перфектна, даже davecardwell е написал доста по-добра версия.  Даже John-David Dalton е направил и Prototype версия : http://pastie.org/255119, от която най-много ми хареса допълнението на Element.fire, която я очаквам в новата версия на Prototype :)

п.п. Някои хора виждат и проблем, че само при стойност “other” се появява полето “други” и ако имаш два или повече езика би било проблем. Обаче аз виждам нещата така – това би бил селекта за български език например:

<select name="language">
	<option>Български</option>
	<option>Английски</option>
	<option value="other">Друг ...</option>
</select>

т.е. value може и да е “other” но за потребителя да е всеки избран език ;)

Aug 09

Спомняте ли си филма Taxi 4, най-слабия филм от поредицата Taxi? Първите два филма от поредицата бяха много добри и забавни, но 3 и особено 4 бяха толкова лоши, че направо я “убиха”. Но в Taxi 4 имаше една наистина интересна идея в тази сцена:

Жалко, че не можах да я намеря на някой по-разбираем език (ако я има на английски или български, но не пародия версията от VBOX7!). Така идеята тук е, че главните герои трябва да закарат футболиста Djibril Cissé на благотворителен мач. Там случайно Cisse го виждат едни строители, те казват на свои познати. И така по новините се почва – Djibril Cissé в Олимпик Марсилия за 50, 60 , … 100 000 милиона. :D

Това както с едни познати го кръстихме е Taxi 4 ефект – някой видял някой известен футболист някъде, а медиите вече казват с кой номер ще играе във футболния отбор от този град.

Чудесен пример за Taxi 4 ефект е “трансфера” на Димитър Бербатов в Манчестър Юнайтед. Общо почти всеки ден се пише, че вече е там, че няма да е там, че в Барселона го искат и т.н. Направих просто търсене за “Бербатов” в Sportal.bg и общо взето това се е писало за неговия бъдещ трансвер в посления месец:

15.07.2008
Ман Юнайтед няма да бърза с Бербатов
Тотнъм: 30 милиона за Бербатов или няма сделка
Сър Алекс изкарал цял ден вчера в разговори за Бербатов

16.07.2008
Бербатов сигурен в сбъдването на своята мечта
Митко, отивай в Юнайтед и покорявай!

17.07.2008
„Марка”: Барса се насочва към Бербатов
Рамос: Ще се радвам да продадем Бербатов и Кийн
Мистериозен сър Алекс: Чакаме невероятна сделка за един футболист

18.07.2008
Фъргюсън: Бербатов е мой!

19.07.2008
Тотнъм топи сър Алекс заради Бербатов
Алекс Фъргюсън: Не съм говорил за Бербатов

21.07.2008
Тотнъм към Рамос: Продай Бербатов и Кийн и направи нов Дрийм тийм
Рамос ще разполага с 57 млн. паунда, ако Бербо и Кийн напуснат
Англиските медий пратиха Бербо в Манчестер Юнаитед
Тотнъм доказва – преговорите на Бербо с Ман Юнайтед са нелегални

22.07.2008
Тотнъм внася жалба срещу Манчестър Юн заради Бербатов

23.07.2008
Норвежци излъгали, че Фъргюсън иска Бербатов

24.07.2008
Тотнъм сваля цената на Бербо с 5 милиона за всеки, освен Ман Юнайтед
Феновете на Евроспорт искат Бербо в Манчестър
“Диема” намазва от трансфер на Бербатов

25.07.2008
Слаб Бербатов в първата контрола на Тотнъм

27.07.2008
“Марка” направи Бербатов белгиец
Sunday Express: Бербатов ще е играч на Манчестър Юнайтед след 48 часа

28.07.2008
Сър Алекс блъфирал, че се отказва от Бербатов
Бербатов не игра в контрола на Тотнъм, пазят го за Юнайтед

29.07.2008
Бент: Не знаем какво става с Бербатов

31.07.2008
Рамос очаква Бербатов още да бъде в Тотнъм в началото на шампионата

01.08.2008
Даниел Леви се съгласи да пусне Бербатов в Манчестър Юнайтед срещу 28 млн. паунда

02.08.2008
Берба нежелан в Тотнъм

04.08.2008
Бербатов затваря пътя на младоците в Ман Юнайтед

05.08.2008
В ИСПАНИЯ: БЕРБАТОВ ВСЕ ОЩЕ Е ВАРИАНТ ЗА БАРСЕЛОНА

06.08.2008
“Ел Мундо Депортиво”: Бербатов избира Барса пред Юнайтед

07.08.2008
Сър Алекс предупреди: Може да се откажа от Бербатов

08.08.2008
Рамос: Не знам за интерес на Барса към Бербатов

09.08.2008
Фъргюсън продължава да упорства за нов нападател
Бербатов в Юнайтед до седмица, гръмна “Сън”

to be continue …

Подобно е положението и в другия голям футболен сайт в България – gong.bg: Търсене за: Бербатов трансфер.

Страшно много празни приказки според мен и даже според мен това лято Бербатов няма да отиде в Юнайтед. И това не е само, защото не харесвам Юнайтед и се надявам да отиде в Барселона, просто в послените години големите трансфери стават бързо и без много шум. Нереализираните трансфери на Кристияно Роналдо и Кака в Реал Мадрид са чудесен пример за това. Най-вероятно догодина ще видим негов трансфер. Но може и страшно много да греша и както SUN казва СЪР АЛЕКС ВЗИМА БЕРБА ДО СЕДМИЦА :) ( много се надявам да бъркам, защото Бербатов заслужава да играе в отбор, който се бори за Титла и за Шампионската лига)!

Jun 14

Видях днес тази новина СЕМ пише до УЕФА заради Диема и правата за Евро 2008. И само си казах: “къде се месят СЕМ”. Но после случайно мернах и това БНТ може да не дава и бг първенството. и наистина щях да падна от стола от смях.

Не стига че Диема отразяват по перфектен начин Еврото 2008(или почти), а БНТ не може да излъчи всичките 140 мача (а за Димитър Цонев трябваше да питам google кой е той). А СЕМ се опитва някак си да им пробута Евро 2008, което е малко вероятно като се има предвид че правата са били спечелени на търг огранизиран от UEFA. :-D

В заключение ще сложа само един цитат на един мои приятел отностно БНТ:

Да ти кажа, от както спряха Walt Disney, не съм гледал БНТ.

Jun 13

В предишния си пост (Евро 2008 и БНТ и Диема) споменавах за това че Диема предава Евро 2008. Като за момента нивото на програмата, гостите, коментаторите и общо взето цялото предаване, задминава всички телевизии в България. Особено след края на всеки мач където се разглеждат детайлно най-интересните положения в даден мач (част от коментарите на гостите вече ги приложих в Football Manager 2008 ;) с доста голям успех).

Но тука почва и … твърде хубаво за да е истина. Голяма част от мачовете ги гледах с приятели и по заведения, но вчера предпочетох уюта в къщи(а имах и малко работа). И си пуснах сайта на Диемата (на които са пуснали нова версия, която не е като на bTV, но сравнение с другите сайтове на телевизии е добре). От там се показва един popup с Кристяно Роналдо който те води до http://ep2008.ontheweb.bg/# и от там би трябвало да гледаш мача online. Но! Се получава Connection timed out (110) или Connection refused (110) :( .  Заради което се наложи да се мъча да гледам мача през web камерата на един познат. Което не беше толкова лошо де, даже беше много забавно. Но някак си Skype не е става(аи не е напвавена) за гледане на мачове оnline :( , но отчаяните времена изискват отчаяни мерки.

От мои познат разбрах че е така от 2-3 дена, т.е. от както са сменили сайта. Което ме навежда на мисълта че нещо в пренасочванията и настройките са забравили да настроят за новия домейн. А може и просто да се претоварен сайта :( . Дано да го оправят бързо … или да видя кой от познатите ми има наистина добра web камера и как да накарам skype да предава по качествено видео … :P

Apr 13

http://www.google.bg/search?hl=bg&q=37sygnals&btnG=Google+%D1%82%D1%8A%D1%80%D1%81%D0%B5%D0%BD%D0%B5&meta= <- само аз ли съм объркал името на 37signals :’( . Е поне в едни аспект да се чувствам уникален (жалко че е такъв е повода).