Select your language:

Home Главная | Registration Регистрация | Login Вход

Menu Меню сайта
Statistics Статистика

Total online: Онлайн всего: 1
Guests: Гостей: 1
Members: Пользователей: 0
Study entry Форма входа
Логин:
Пароль:
Забыл пароль | Регистрация

Ссылки:

Узнать про оффшор Белиз можно тут.

нерное общество Symbian Ltd. (разработчик операционной системы Symbian) входят все мировые лидеры производителей телефонов. Эта операционная система наданный момент занимаетдомпппруютее положение в мобильной промышленности.

Обе операционные системы имеютразличные наборы функциональных возможностей, но работа обеих похожа на работу компьютерных систем, конечно с учетом характеристик телефона, а это процессор, память, клавиатура, дисплей и так далее. Все эти факторы значительно уменьшают функциональность телефона, но прогресс не стоит на месте: в 1999 году процессор с частотой в 200 ГГц казался вершиной компьютерной техники, асейчас об этом смешно вспомнить.

Прошивка телефона - это программа, управляющая работой телефона, но вшитая в сам телефон. Каждый из производителей создает свои прошивки для конкретных моделей, предопределяя тем самым функциональность телефона. Операционная система разрешает осуществлять загрузку созданных программ в телефон, а в прошивке такая возможность не предусмотрена. Точнее сказать, не была предусмотрена до появления платформы Java 2 ME. Для работы приложений написанных на Java, необходима виртуальная Java машина или среда исполнения приложений. Виртуальная Java машина, адаптированная специально для телефонов, настолько компактна по размеру, и, что самое главное, безопасна, что практически все производители телефонов стараются создать поддержку Java программ, то есть встроить среду исполнения Java программ в телефон. Загрузка сторонних приложений дала очень мощный импульс мобильной игровой индустрии, что, как мне кажется, вывелотелефон на новый более качественный уровень. Единственное что необходимо понимать в этом аспекте, это то, что среда исполнения Java-приложений в телефоне реализована таким образом, что не позволяет написать «вредные» программы портящие аппаратную часть телефона. Модель работы Java-программ реализована как бы в виде закупоренной бочки, в которой и происходит работа всех Java приложений. Из этой бочки программы выбраться не могут, а соответственно не могут и нанести ущерб телефону.

Загрузка Java программ в телефой происходит при помощи программного обеспечения и кабеля, соединяющего телефон с компьютером. Также можно загрузить в телефон программы при помощи инфракрасного порта, технологии Bluetooth, либо непосредственно из Интернета с помощью протоколов WAP и GPRS. Все программы, загружаемые в телефон, распространяются в виде двух файлов, JAD у- это дескриптор приложения и JAR - архив программы. Более подробно процесс загрузки программ рассматривается в главе 3.

Инфракрасный порт имеют не все телефоны. В основном это модели, относящиеся ко второй и третьей условной ценовой категории, о которых мы говорили в начале этой главы. С помощью инфракрасного порта можно произвести соединение с компьютером, другим телефоном или Любым иным устройством имеющим инфракрасный порт. Принцип работы инфракрасного порта очень прост:

Инфракрасный порт

имеются светодиод и фотодиод, соответственно для передачи и приема сигнала. Поместив два устройства на расстоянии не более полутора метров в зоне прямой видимости можно осуществить связь между этими устройствами. Что касается связи телефона с компьютером посредством инфракрасного порта, то это происходит при помощи программного обеспечения поставляемого производителями телефонов. В частности на компакт диске можно найти программы для телефонов Sony Ericsson, Nokia и Siemens, подробный анализ этих программ вы найдете в главе 3.

Название этой сравнительно новой технологии (Bluetooth - голубой зуб) позаимствовано из истории - так некогда звали датского короля Гарольда второго, стремящегося объединить все датские земли в одно королевство Дания.

С помощью технологии Bluetooth можно осуществлять соединение сразу с множеством устройств и организовывать небольшие локальные сети. Связь с использованием Bluetooth происходит на частоте 2,4 ГГц с расстояния порядка 10 метров и что самое главное, не требует прямого соединения, то есть устройства могут находиться вне зоны видимости друг друга. Приемопередатчик сигнала выполняется в виде микросхемы и может связать в сеть около десятка разнообразных устройств.

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

Протокол WAP (Wireless Application Protocol) - это протокол беспроводного соединения с сетью Интернет. Имея поддержку WAP в мобильном телефоне, появляется возможность выхода в Интернет для просмотра специально адаптированных web-страниц на теле фоне. Также с помощью WAP можно скачать или купить игру или приложение, написанное на языке Java. Стоимость таких программ обычно не превышает 1-2 доллара. Однако пользоваться WAP можно только в том случае, если ваш оператор сотовой связи предоставляет WAP услуги. Телефон, имеющий поддержку WAP, снабжен и WAP-браузером, что и делает возможным просмотр WAP страниц в Интернете.

Если обобщить все выше сказанное, то работу телефона с протоколом WAP, можно сравнить с обыкновенным компьютером, связывающимся с сетью Интернет, Все Интернет-страницы, используемые компьютерными системами написаны на языке HTML или XML, а страницы для WAP-соединения созданы с помощью своего языка WML (Wireless Markup Language - беспроводной язык разметки). Для того чтобы через WAP выйти в Интернет с мобильного телефона, необходимо обязательно произвести соответствующие настройки в телефоне. Сделать это можно вручную, а можно воспользоваться услугами своето оператора, предоставляющего мобильную связь. Для этого необходимо позвонить по соответствующему номеру или отправить SMS, в зависимости от оператора связи указанного в инструкции, прилагающейся к SIM-карте. Если есть желание настроить WAP самостоятельно, то можно воспользоваться значениями, приведенными в таблице 1.1.

Таблица 1.1.

Если вы покупаете игру с одного из коммерческих сайтов, то отсылаете по указанному на сайте номеру SMS, в котором сообщаете код программы, указанный на сайте. После этого вам на телефон придет ссылка, по которой можно скачать купленную вами программу.

Единственная проблема WAP-сервиса - это высокая цена соединения, поскольку оплата происходит поминутно, а платите вы практически как за минуту разговора по телефону. Это получается весьма дорогое удовольствие. Отчасти эту проблему решает протокол GPRS.

1.7. Протокол GPRS

Связь телефона по протоколу GPRS (General Packet Radio Service - радио сервис пакетной передачи данных) осуществляется в куда более щадящем режиме. Используя соединение WAP, вы фактически звоните по другому номеру, занимая тем самым один из многочисленных каналов связи, поэтому и оплата взимается поминутно. С использованием GPRS оплата происходит только за количество скачанных данных, измеряемое в байтах, килобайтах или мегабайтах. Например, оператор мобильной связи Би Лайн за один мегабайт изымает б рублей 60 копеек с вашего счета (по состоянию на 2004 год). Лучше использовать WAP соединение, то есть просматривать WAP-сайты, через протокол GPRS, значительно экономя средства. Все это происходит благодаря тому, что GPRS использует пакетную передачу данных и не задействует какой-то конкретный канал связи, он вклинивается в свободные зоны различных каналов, передавая информацию в виде небольших пакетов. Скорость связи может доходить до 115 кбит/с, но полагаю, что таких показателей никто не видел, а вот цифра в 3040 кбит/с вполне реальна. Связь через GPRS можно использовать и на компьютере, для выхода в Интернет через мобильный телефон. Такая услуга связи носит название мобильный Интернет.

Карта SIM

1.8. Карта SIM

После приобретения телефона необходимо позаботиться о покупке SIM-Kap-ты одного из операторов мобильной связи. Купив SlM-карту, вы становитесь полноценным абонентом выбранного вами оператора связи.

Сама SIM-карта, выполнена в виде небольшого по размерам пластмассового прямоугольника, с контактной полосой на поверхности для стыковки с идентичным разъемом на телефоне. Каждая SIM-карта, содержит свой уникальный идентификационный номер, что в конечном итоге решает проблему одинаковых номеров. В SIM-карте также находится простейший процессор, и вы можете сохранять на SIM-карте записи, как правило, это обычная телефонная книга, примерно на 200-300 записей. Более подробно об установке SIM-карты в телефон и другой информации можно узнать из инструкции к вашему телефону.

Таким образом, устройство мобильного телефона отдаленно напоминает устройство компьютерных систем. Поэтому адаптация платформы Java 2 ME, для телефонов, произошла абсолютно безболезненно, переведя виток развития мо-. бильной индустрии на новый, до настоящего времени не ведомый уровень. Следующая глава раскрывает теорию строения платформы Java 2 Micro Edition.

Глава 2. Платформа Java 2 Micro Edition

Прежде чем мы приступим к знакомству с платформой Java 2 ME, следует определиться с основами программирования на Java. Эта и все дальнейшие главы рассчитаны на пользователя, имеющего самые минимальные представления о языке программирования Java. Если вы не относите себя к таковым, то перейдите в конец книги к приложению 1 и ознакомьтесь с основами H3biKaJava. Информации присутствующей в приложении, будет достаточно для прочтения этой книги.

Историяязыка1грограммироБания1ауанасчитываетболеедесятилет. Вначале, при создании Java, планировалось использовать этот язык для программирования микроконтроллеров бытовых устройств. Поэтому язык Java, тогда он, правда, имел другое название, изначально создавался независимым от архитектуры, компактным и безопасным, что в последствии сыграло решающую роль в его широком распространении. Однако, в тот момент язык программирования Java не смог обрести популярности. Более того, он оказался совершенно невостребованным. И только благодаря появлению сети World Wide Web, язык программирования Java получил настоящее признание, но уже в сфере Интернет-программирования. За этот десяток лет компанией Sun Microsystems было создано.несколько платформ для различных сфер деятельности.

Все три платформы занимают свои ниши и решают круг определенных задач. Но если платформы Java 2 ЕЕ и Java 2 SE испытывают жесткую конкуренцию в своем секторе рынка со стороныдругих технологий, то Java2 ME находится вне конкуренции и является фактически стандартом в разработке программ для портативных устройств. Можно с уверенностью сказать: то, для чего изначально создавался язык программирования Java, а именно, создание программ для бытовых устройств, в итоге и стало его стихией.

Так что такое платформа Java 2 ME, для чего она нужна и как устроена? На эти и другие вопросы мы попытаемся дать ответ в этой главе.

. Язык программирования Java независим от архитектуры, в силу того, что используется интерпретатор, переводящий байт-код, сгенерированный компилятором б машинно-независимый код. Интерпретация кода осуществляется под управлением системы выполнения, носящей название виртуальная Java машина. Такой механизм образует среду исполнения приложений. Среда исполнения,

в сбою очередь, предъявляет определенные требования к свойствам языка программирования Java, построенные на основе спецификации Java Language Specification, разработанной компанией Sun Microsystems. При написании программ HaJava активно используются 6n6nHOTeKaJava API, без которых написать приложение практически невозможно. Библиотека Java API содержит огромное количество предопределенных интерфейсов, классов, методов, констант помогающих программисту в минимальные сроки создавать рабочее приложение.

Подобный механизм создания и выполнения программ характерен для всех трех имеющихся платформ Java 2 ЕЕ, Java 2 SE и Java 2 ME. Платформы Java 2 ЕЕ. и Java 2 SE можно признать почти одинаковыми, однако Java 2 ЕЕ несколько мощнее н содержит ряд библиотек позволяющих производить разработку программного обеспечения для серверов, а вот платформа Java 2 ME ориентирована именно на работу с портативными устройствами. В связи с этим Java 2 ME предъявляет уже свои требования к виртуальной Java машине, свойствам языка Java и библиотекам, поскольку системные ресурсы портативных устройств ограничены в силу своей спецификации аппаратного обеспечения. Небольшие размеры портативных устройств накладывают значительные ограничения на процессор, память, дисплей, устройство ввода, но платформа Java 2 ME разработана специально для того, чтобы" создавать программы, ориентированные именно на такие портативные устройства.

Среда исполнения приложений Java, должна находиться внутри портативных устройств. За это отвечает их производитель, и это как раз и характеризует конкретное устройство, как устройство, поддерживающее технологию Java.

Количество портативных устройств поддерживающих Java достаточно большое, но мощность и, соответственно, возможности устройств различны. Поэтому платформа Java 2 ME разработана в виде блочной модели надстраиваемых модулей, конфигураций и профилей.

Конфигурация определяет свойства языка Java и виртуальной Java машины, а также набор доступных библиотек Java API. Профиль в свою очередь предъявляет требования к аппаратной части устройства и может содержать ряд дополнительных библиотек Java, направленных на работу с конкретным портативным устройством.

Платформа Java 2 ME состоит из двух конфигураций: CDC (Connected Device Configuration - конфигурация подключаемых устройств) и CLDC (Connected Limited Device Configuration - конфигурация подключаемых устройств с ограничениями). Каждая из конфигураций определяет\свое семейство портативных устройств. При программировании мобильных телефонов используется конфигурация CLDC. Каждая из конфигураций содержит свои профили, которые надстраиваются над своей конкретной конфигурацией. Когда программист создает программное обеспечение для портативных устройств, он обязан четко осознавать под какой профиль и конфшурацию он пишет программу, а производитель устройства должен осуществить поддержку того или иного профиля в связке со своей конфигурацией.

. Как программист вы не можете повлиять на сущность профилей и конфигураций - это жестко заданные спецификации, используемые в программировании

портативных устройств. При создании программ вы будете ориентироваться на профиль, устанавливающий требования к аппаратной части устройства, На ■рис. 2.1 представлена общая схема модульного построения платформы Java 2 ME.

Рис. 2.1. Блочная схема построения платформы Java 2 ME

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

Цель этой книги научить вас создавать приложения для мобильных телефонов с применением конфигурации CLDC и профиля MIDP. Вся концепция книги построена на использовании связки MIDP/CLDC, но несколько слов стоит сказать о конфигурации CDC и доступных для этой конфигурации профилях.

2.1. Конфигурация CDC

Конфигурация CDC объединяет в себе ряд устройств имеющих постоянное сетевое соединение, таких как двунаправленные пейджеры, телевизионные приставки, автомобильные системы навигации, интеллектуальные коммуникаторы. Данные устройства характеризуются более мощными системными ресурсами, они имеют обычно 16 или 32-разрядные процессоры и как минимум 2 мегабайт памяти. В этой связи обе конфигурации CDC и CLDC, имеют свой набор свойств, определяющих поддержку библиотек Java API, виртуальную машину, свойства самого языка Java. Эти свойства и отличают разные конфигурации.

Как вы уже знаете, каждая из кон фигур алий построена на основе блочной схемы в виде надстраиваемых профилей. Профиль ставит определенные требования к аппаратной части устройства, и содержит свой набор API позволяющий создавать на основе имеющихся библиотек различные приложения. Профили

Конфигурация CLDC

2.2. Конфигурация CLDC

Конфигурация CLDC рассчитана на семейство мобильных устройств, таких как телефоны, органайзеры, КПК Мобильные устройства, для которых предназначена конфигурация CLDC, характеризуются следующими параметрами:

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

Конфигурация может содержать несколько профилей. Конфигурация CD С имеет два профиля - это Foundation Profile и Personal Profile и PDA. Смысл и устройство этих профилей мы рассматривать не будем, они не имеют никакого отношения к теме этой книги и были приведены лишь для понимания общей идеи конфигурации. При желании в документации по Java 2 ME вы сможете найти необходимую информацию и изучите ее самостоятельно.

Все перечисленные характеристики, несомненно, накладывает определенные ограничения на создаваемое приложение. Конфигурации CDC и CLDC независимы друг от друга и не могут использоваться вместе. Вся концепция конфигурации CLDC была разработана дочерней группой Java Community Process, компании Sun Microsystems, которая включает в себя множество известных компаний:

Конфигурация CLDC содержит ряд классов, интерфейсов, методов платформы Java 2 SE, но в урезанном виде. Это и не мудрено, компьютерная платформа

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

Конфигурация CLDC также определяется своим набором свойств состоящих из A3biKaJava, виртуальной Java машины и библиотек API. В данный момент имеется две версии этой конфигурации - это CLDC 1.0 и CLDC 1.1. Конфигурация CLDC 1.1 имеет больше возможностей, например поддержку чисел с плавающей точкой, что соответственно предъявляет более серьезные требования к аппаратной части телефона. В момент написания книги таких телефонов не было, поэтому вся книга построена на конфигурации CLDC 1.0. К слову сказать, конфигурация CLDC 1.1 построена на первой версии а просто имеет ряд улучшений. Остановимся на каждом свойстве конфигурации CLDC 1.0 подробней. В последствии при упоминании конфигурации, будет иметься в виду CLDC 1.0.

Все свойства языка Java в конфигурации CLDC должны, насколько это возможно, соответствовать спецификации языка Java, но в силу ограниченности системных ресурсов мобильных устройств, не поддерживаются следующие свойства доступные в платформах Java 2 ЕЕ и Java 2 SE:

1) операции с дробными числами (floating point);

2) финализация (finalization);

3) отсутствует восстановление ошибок после сбоя (error f^idling).

Виртуальная машина, используемая в конфигурации CLDC, несколько отличается от обычной виртуальной машины задействованной в Java, но обязана оставаться совместимой со спецификацией этой виртуальной машины (Java Virtual Machine Specification). Виртуальная машина находится непосредственно в телефоне и за совместимостью с общепринятой спецификацией обязаны следить производители мобильных телефонов. Сама же виртуальная машина носит название Kilobyte Virtual Machine (KVM) из-за своей компактности и также имеет ряд недоступных свойств:

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

2.2.1. Свойства языка Java

2.2.2. Виртуальная машина

 

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

Как уже не раз отмечалось, профиль содержит предопределенные требования к аппаратной части устройства, атакже включаетв себя минимальны it набор API используемый в программировании мобильных устройств. Единственно доступный рабочий профиль в конфигурации CLDC имеет название MIDP (Mobile Information Device Profile - информационный профиль мобильных устройств). Спецификация профиля разработана экспертной группой MIDP Expert Group, в состав которой входят следующие компании:

Профиль MIDP был создан специально для поддержки мобильных устройств и задает следующие технические характеристики для мобильных устройств: Q разрешение экрана минимум 96x54 пикселя с глубиной экрана минимум 1 бит;

Q устройством ввода может быть клавиатура или сенсорный экран;

Q 32 килобайта динамической памяти;

Q 128 килобайт под компоненты MIDP;

Q 8 килобайт для хранения постоянных данных;

Q беспроводная сеть;

Q питание от аккумулятора.

2.3. Профиль

Такое сочетание конфигурации и профиля CLDC/MIDP используется в программировании мобильных телефонов и будет основным сочетанием при рассмотрении примеров из книги.

На данный момент профиль MIDP имеет две версии: MIDP 1.0 и MIDP 2.0. До последнего времени первая версия MIDP была основным профилем при создании приложений для телефонов. Все телефоны, поддерживающие Java, имеют совместимость с профилем MIDP 1.0. Этот профиль был сформирован при начальном создании платформы Java 2 ME и имеет в своем составе определенный набор API.

С выходом профиля MIDP 2.0 добавилось ряд новых библиотек, значительно ■ улучшающих создание приложений для мобильных теле фонов. Но самое главное это то, что у него имеется полная совместимость с профилем MIDP 1.0. Профиль MIDP 2.0 содержит большое количество новых дополнительных библиотек, отсутствующих в составе MIDP 1.0, но при создании приложений под профиль MIDP 20, можно пользоваться библиотеками профиля MIDP 1.0. Если же бы пишите программу под профиль MIDP 1.0, то библиотеки профиля MIDP 2.0 вам будут недоступны. В книге будут рассмотрены оба профиля как единое целое.

Подытожив все вышесказанное о профилях и конфигурациях необходимых для программирования мобильных телефонов, можно резюмировать: программный продукт создаваемый разработчиками ориентирован на конкретный профиль, который является, спецификацией устанавливающей определенные требования к аппаратной части телефона, а также содержит дополнительные библиотеки. Каждый конкретный профиль надстраивается над своей и только ему доступной конфигурацией. Конфигурация предъявляет требования к виртуальной Java машине и свойствам языка Java, используемым в этой конфигурации. Далее идет плотное взаимодействие с аппаратным обеспечением телефона, 'через имеющиеся сервисы, которые предоставляются операционной системой либо прошивкой телефона. Благодаря такой цепочке взаимодействий, любое программное обеспечение, написанное на Java под конкретный профиль, будет работать на телефоне с поддержкой Java. На рис. 2.2 хорошо прослеживается общая схема взаимодействия приложения с мобильным телефоном.

Такая модульность в построении Java 2 ME дает неограниченную возможность в модернизации всей платформы и написанию действительно аппаратно-независимого кода программы. Люди, знакомые с моей книгой «DiiectX 9. Уроки программирования на С++», обязательно найдут много общего в подходе реализации двух платформ DirectX и Java 2 ME. Оставшаяся часть этой главы целиком посвящена рассмотрению пакетов и классов доступных

Рис 2.2. Схема взаимодействия приложений с аппаратным обеспечением телефона

б MIDP 2.0/CLDC 1.0. Будут затронуты практически все имеющиеся компоненты данного профиля и конфигурации.

2.4. Профиль MIDP 2.0 и конфигурация CLDC 1.0

Язык Java самый «библиотечный язык», такого количества продуманных классов, наверное, нет ни в одном языке программирования. С другой стороны, простота в использовании Java, по всей видимости, поспособствовала определенной популярности этого языка. С точки зрения программиста, обилие готовых классов гораздо упрощает разработку программного продукта, и что самое глав" ное, уменьшает сроки создания программ.

Профиль MID.P2.0и,конфигурация CLDC 1.0, содержит большое количество интерфейсов и классов, использование которых в программировании приложений, пожалуй, сможет удОБлетБорить любого разработчика. Часть классов было взято из Java 2 SE с некоторыми усечениями, а часть была специально написана под Java 2 ME. Вся библиотека доступная для профиля MIDP 2.0 и конфигурации CLDC 1.0, состоит из одиннадцати пакетов. По традиции каждый отвечает за свою определенную область.

Все пакеты с префиксам^ауах.т^гоесПгюп.*, написаны специально для Java 2 ME профиля MIDP 20. Пакеты с префиксом Java.*, взяты из Java 2 SE версии 1.4, в урезанном виде, и имеет полную совместимость с оригиналом и определенны в конфигурации CLDC 1.0.

2.4.1 natceTJava.lang

Этот пакет содержит системные классы или основы языка Java и исключения. Имеется также один единственный интерфейс Runnable. На рис. 23 изображена иерархия классов naKemajava.lang.

Рассмотрим имеющиеся компоненты пакета java.lang и дадим краткую характеристику каждому из них.

Интерфейс:

□ Rnnnable - создает поток в приложении.

Для перехода к следующей странице статьи перейдите по вы подающему меню
Basket Корзина
Your basket is empty Ваша корзина пуста
'); $(el).append(g); $(g).show(); } _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'clear'}}); return false; } function removeBasket(id){ if(lock_buttons) return false; else lock_buttons = 1; $('#basket-item-'+id+' .sb-func').removeClass('remove').addClass('myWinLoadS').attr('title',''); _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'del', 'id':id}}); return false; } function add2Basket(id,pref){ if(lock_buttons) return false; else lock_buttons = 1; var opt = new Array(); $('#b'+pref+'-'+id+'-basket').attr('disabled','disabled'); $('#'+pref+'-'+id+'-basket').removeClass('done').removeClass('err').removeClass('add').addClass('wait').attr('title',''); $('#'+pref+'-'+id+'-options').find('input:checked, select').each(function(){ opt.push(this.id.split('-')[3]+'-'+this.value);}); _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'add', 'id':id, 'pref':pref, 'opt':opt.join(':'), 'cnt':$('#q'+pref+'-'+id+'-basket').attr('value')}}); return false; } function buyNow(id,pref){ if(lock_buttons) return false; else lock_buttons = 1; var opt = new Array(); $('#b'+pref+'-'+id+'-buynow').attr('disabled','disabled'); $('#'+pref+'-'+id+'-buynow').removeClass('done').removeClass('err').removeClass('now').addClass('wait').attr('title',''); $('#'+pref+'-'+id+'-options').find('input:checked, select').each(function(){ opt.push(this.id.split('-')[3]+'-'+this.value);}); _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'add', 'id':id, 'pref':pref, 'opt':opt.join(':'), 'cnt':$('#q'+pref+'-'+id+'-basket').attr('value'), 'now':1}}); return false; } //-->
Search Поиск
Calendar Календарь
«  March Март 2011  »
Mon Пн Tues Вт Wed Ср Thurs Чт Fri Пт Sat Сб Sun Вс
  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
Archive records Архив записей

Ссылки:

Rambler's Top100 Все для дома - Бытовая техника, опубликовать информацию о фирме
QLE 88x31

раскрутка сайта в интернете Рейтинг сайтов Товары / Услуги

Copyright MyCorp © 2011 Создать сайт бесплатно

Copyright MyCorp © 2011