Как стать автором
Обновить

Комментарии 49

Если CURL сейчас штука довольно стандартная, то GMP поставить будет на виртуальном хостинге проблемно.
Тестовый пример именно на виртуальном хостинге.
По первому требованию доставили.
Без этой библиотеки мне нужно садится и писать дополнительно библиотеку для работы с большими числами.
Если проблема с GMP будет распространена — я так и сделаю.
Но пока это не самый важный пункт в todo листе.
Впрочем: скоро узнаю по отзывам важно это или нет.
BCmath хорошо работает с большими числами.
А ещё есть PEAR::Math_BigInteger.
Разве BCmath более распространена? Я не этого не замечал. По моему что одно что другое доставлять.
Или это не так?
BCmath ещё с 4 версии встроен в ядро.
Да и по опыту могу сказать, что BCmath встречается намного чаще GMP. Мне встречался только один хостинг без BCmath (впрочем, GMP там тоже не оказалось). Пришлось выкручиваться с помощью PEAR::Math_BigInteger.
В таком случае подумаю о том, что бы переписать функцию RSA шифрования с использованием BCmath
Не нравится именование методов. Например, методы photo_collection, token, annulment, authentication, delete_ns класса yandex_fotki_user заставляют лезть в документацию. Если бы они соответственно назывались, например, getPhotoCollection, getToken, removeToken, authentificate и deleteNameSpace, лезть в код не пришлось бы.
+1
authenticate
То же можно сказать про именование классов. Все исключения у вас стандартно с буквы в верхнем регистре, остальные классы очень нестандартно буквами в нижнем регистре.
Не используется PHPDoc — всех прелестей дополнения по нему в современных IDE мы не получим.
Я использовал dOxygen.
А о каких прелестях речь? Можно поподробнее?
Спасибо, сейчас посмотрю.
Несмотря на приведённую выше критику, стоит похвалить за наличие документации как таковой, замечательной демонстрации, ну и собственно за решённую проблему.
Спасибо.
А что касается документации… если библиотека будет востребована, то документация будет не генерирована а написана мной.
Как и статьи, которые полностью проиллюстрируют ее работу.
Готов использовать, если дадите помочь с API, именованием методов и PHPDoc.
Буду только рад.
Молодец! Осталось дождаться когда кто-то начннет его использовать.

Исходники посмотрю, что бы подпосмотреть как альбомы создаются и привязываются фотки к ним =)))

Думаю как проставлять теги, т.к. в стандартном их апи нет такой функци.
Если нужны теги — придется хранить их у себя на сервере.
Если это действительно интересно, то я могу дописать эту возможность.
А привязка по идентификатору альбома или фотографии, естественно.
Отличная работа. Спасибо за библиотеку.
Не знаю, существенно это или нет, но глаз зацепился:
$extension = explode(".",$_FILES[«photo»][«name»]);
$extension = $extension[1];
Так как меня, в свое время, задолбали пользователи, которые усиленно пытались загрузить нечто вроде moya.fotka.jpg, тем самым приучив меня использовать только последний (а не второй) элемент массива.
Спасибо, сейчас поправлю.
Вы абсолютно правы.
Теперь: $extension = $extension[count($extension)-1];
Спасибо.
а если фотка без разрешения? =)))
Без разрешения даже конфеты брать нельзя, не то что фотки загружать )
лол. я про расширение =)))))))))))))))))))

молодец, подколол!
Для нормального фото-хостинга надо было бы вообще не смотреть на разрешения, а использовать библиотеку типа getid3.sourceforge.net/ и определять содержимое файла по mime-типу и мета-информации, содержащейся в файле.
Но это только пример, призванный проиллюстрировать работу библиотеки.
Уж лучше strrchr()
А мне нравится API Google picasa =) я с ней все интегрировал
По-моему, это очень хорошо, когда есть выбор инструментов, с которыми можно работать, верно?
Не планируете ли сделать эту библиотеку частью пакета Service в Zend Framework? Это было бы архиполезно!
Я никогда не пользовался Zend Framework.
Так что пока не планирую.
Но если это действительно будет полезно — разберусь что это и с чем его едят и сделаю.
Спасибо за комментарий — записал себе памятку по этому поводу.

Любые пожелания очень даже приветствуются.

Здорово! Если сделаете интеграцию в Wordpress — будет просто супер.
А какие именно возможности вы хотели бы увидеть в плагине для WP?
Хотелось бы, чтобы при вставке фотографий в пост (как при выборе «Загрузка с компьютера») выбранный файл автоматический загружался на Яндекс.Фотки, а уже оттуда вставлялся в пост. Только чтобы при этом альтернативный текст при наведении мыши отображался и можно было название файл на читаемое поменять.
Для вывода фотографий из яндекс.фоток уже есть написанный плагин. пользуемся яндексом.

adw0rd.ru/2009/yandex-fotki-wp-plugin/
Ar2r Я так понял, что человек хочет с вохможностью загрузки на аккаунт.
Насчет плагина под WP: Хочу, чтобы создавалась дополнительная страницу с название «Галерея» или «Портфолио» (название можно было бы менять в админке), на которой выводилось бы перечисление всех фотографий с названием, тегами, описанием, тп. Фотографии были бы разбиты по альбомам. Название альбома, под ним все фотографии из этого альбома. Вывод осуществлялся бы отдельным файлом-шаблоном, который можно было бы редактировать, чтобы убрать ненужную информацию, управлять видом и тп. По возможности можно было бы добавить функции-теги, типа «все_фотографии(разбивать_по_альбомам=1&исключить_альбомы_с_ид=4,6,9)» или «Фотографии_альбома(ид=6&указывать_название_альбома=0)» или «вывести_ссылки_на_фотографии(ид_альбома=6&использовать_нумерованный_список=1)»
В принципе добавления тегов было бы достаточно, создатели темы сами сделают с ними то, чего захотят. Мне было бы очень полезно.
Если надумаете такое или что угодно еще, связанное с WP — помогу с удовольствие. Могу подумать, какие функции нужно было бы минимум, какие желательно
Хорошо, постараюсь реализовать.
Плагин для WP в todo-листе есть и будет сделан.
Но до того, как я возьмусь за плагины, мне еще предстоит немало порефакторить саму библиотеку.
Что бы потом не пришлось рефакторить плагины и другие штуки — нужно создать класс интерфейс, через который будет происходить вызов нужных функций из класса работы с яндекс.фотками.

PS: Мой плагин до сих пор не одобрили на addons.mozilla.org :-))
Интерфейс imo имеет смысл создавать, если его методы, хотя бы в перспективе, будут реализовывать несколько классов.
В принципе значительную часть нужных изменений я внес.
Сейчас пишутся тесты на phpUnit.

P.S. Мой вот вообще оказался кроме меня толком никому не нужным :) Не разочаровывайся. В мозилла просто в этом плане оооочень неповоротливая, насколько я знаю. Одобрят. Он у тебя получился здоровский.
надо бы его доделать =) а то много всего хочу реализовать… реинжиниринг кода много времени отнимает.
Похвальное начинание. Удачи!
У вас в example.php в исходниках, выложенных на сайте спалены логин/пароль от аккаунта SilentImp на яндексе
omg. спасибо. кстати надо новые примеры выкладывать уже. API уже успел обновится с того момента >_<
Ага, API кажется изменился. У меня не получилось заставить ваши классы работать вчера.
Например после логина вызов $user->addAlbumCollection() возвращает пустой массив.

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

Если обновится — дайте знать.
Да, если чтение, то авторизация не нужна.
API «внезапно» поменяли с месяц назад. Можете посмотреть в их блоге.
Часть изменений я внес, но из за работки никак не могу все завершить и выложить.
Сейчас с текучкой разберусь и попробую добить, раз им кто то пользуется. )
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.