SergCV Posted October 22, 2015 Share Posted October 22, 2015 Хочу чтобы был предпросмотр прикрепленных PDF Doc xls ppt и прочих файлов через google docs.нашел что для этого можно использовать один из следующих способов: 1. C использованием элемента <embed>. <embed src="ссылка файла pdf" width="ширина в пикселях" height="высота в пикселях" /> 2. C использованием <embed> через элемент <object>. Спецификация HTML 4.0 рекомендует использовать тег <object> для загрузки внешних данных вместо тега <embed>, поэтому наилучшим вариантом будет поместить <embed> внутрь контейнера <object>. <object><embed src="ссылка файла pdf" width="700" height="500" /></object> 3. С использованием тега <iframe>. <iframe src="ссылка файла pdf" width="700" height="400"></iframe> 4. С использованием сервиса Google Docs Viewer (через iframe). (МОЙ ВАРИАНТ) !!! <iframe src="http://docs.google.com/viewer?url="ссылка файла pdf"&embedded=true" width="700" height="500" style="border: none;"></iframe> Куда вставить эти конструкции в шаблоне сообщения я нашел. Внимание ! ВОПРОС: Как в IPB 3.2.3 получить прямую ссылку на прикрепленный к сообщению файл? ЧТобы его съел гугл докс?Ссылка вида: http://site.ru/index.php?app=core&module=attach§ion=attach&attach_id=2175не проходит. может это переменная какая или еще какой то способ. Link to comment Share on other sites More sharing options...
siv1987 Posted October 22, 2015 Share Posted October 22, 2015 Файлы на форуме отдаются динамически через php, что позволяет контролировать доступ к ним масками доступа разным группам. Прямой ссылкой этот функционал ломается, потому что пользователь получает прямой доступ к файлу. Show_attachments -> $data['attach_file']Как сделать чтоб при прикреплении видео к посту отображалась прямая ссылка на него? Link to comment Share on other sites More sharing options...
SergCV Posted October 25, 2015 Author Share Posted October 25, 2015 Файлы на форуме отдаются динамически через php, что позволяет контролировать доступ к ним масками доступа разным группам. Прямой ссылкой этот функционал ломается, потому что пользователь получает прямой доступ к файлу. Show_attachments -> $data['attach_file']Как сделать чтоб при прикреплении видео к посту отображалась прямая ссылка на него? Можно чуть поподробнее.для чего это сделано это понятно.но нужно как то прямую ссылку получить это очень важно. $data['attach_file'] выводит название файла, а как получить прямую ссылку? Link to comment Share on other sites More sharing options...
newbie Posted October 26, 2015 Share Posted October 26, 2015 но нужно как то прямую ссылку получить это очень важно.Добавьте необходимые данные.admin/applications/core/sources/classes/attach/class_attach.phpИщите по getTemplate( $skin_name )->Show_attachments( и в массив добавляйте 'attach_ext' => $row['attach_ext'], 'a_location' => $row['attach_location'],Дальше в шаблоне Show_attachments используйте <if test="$data['attach_ext'] == 'pdf'"> <iframe src="http://docs.google.com/viewer?url={$this->settings['upload_url']}/{$data['a_location']}&embedded=true" width="700" height="500" style="border: none;"></iframe> </if> Link to comment Share on other sites More sharing options...
SergCV Posted October 26, 2015 Author Share Posted October 26, 2015 Большое спасибо за вашу помощь и участие.Но с данным кодом тоже беда.Вашим способом гуглу отдается файл вида:/uploads/monthly_02_2014/post-21515-0-13682300-1392632099.ipbа такое расширение он идентифицировать и прочитать не может Link to comment Share on other sites More sharing options...
newbie Posted October 27, 2015 Share Posted October 27, 2015 а такое расширение он идентифицировать и прочитать не можетСтранно. Я протестировал работу. Если перейти по данной ссылке в браузере, что наблюдается? Link to comment Share on other sites More sharing options...
siv1987 Posted October 27, 2015 Share Posted October 27, 2015 Вашим способом гуглу отдается файл вида:Этим способом должен отдаваться полный адреса файла вместе с upload_url. Единственное что стоило бы сделать это урленкодить адрес через {parse expression="urlencode($this->settings['upload_url'].'/'.$data['a_location'])"}Если адрес в порядке, тогда смотрите документацию гугла по подключению адреса. Расширение аттачей в целях безопасности меняется на .ipb. Link to comment Share on other sites More sharing options...
SergCV Posted October 27, 2015 Author Share Posted October 27, 2015 Странно. Я протестировал работу. Если перейти по данной ссылке в браузере, что наблюдается?Ссылка которая отдается таким способом имеет вид:http://site.ru/uploads/monthly_02_2014/post-21515-0-28698400-1391352095.ipb при переходе по ней браузер открывает окно с сохранением файла post-21515-0-28698400-1391352095 с расширением ipb (вместо необходимого pdf, doc, ppt). файл действительно тот что нужно и если у него сменить расширение, он откроется в нужном виде. Вопрос в том как его отправить гуглу с нужным расширением. Link to comment Share on other sites More sharing options...
siv1987 Posted October 27, 2015 Share Posted October 27, 2015 Вопрос в том как его отправить гуглу с нужным расширением.В принципе никак. Аттачи в ипб отдаются динамически где в скриптах отправляются все необходимые заголовки - content-type, оригинальное название файла. Либо отдавать гуглу динамическую ссылку (динамические адреса обязательно нужно енкодить), либо придумывать разные костыли со сменой расширения и тп. Link to comment Share on other sites More sharing options...
SergCV Posted October 27, 2015 Author Share Posted October 27, 2015 В принципе никак. Аттачи в ипб отдаются динамически где в скриптах отправляются все необходимые заголовки - content-type, оригинальное название файла. Либо отдавать гуглу динамическую ссылку (динамические адреса обязательно нужно енкодить), либо придумывать разные костыли со сменой расширения и тп. Печаль. неужели нет решения данной проблемы. Link to comment Share on other sites More sharing options...
SergCV Posted October 29, 2015 Author Share Posted October 29, 2015 Может тогда кто то встречал другое решение как сделать предпросмотр прикрепленных файлов. без участия гугла.может это плеер какой то или плагин. Link to comment Share on other sites More sharing options...
SergCV Posted November 20, 2015 Author Share Posted November 20, 2015 Проблема все еще актуальна. Link to comment Share on other sites More sharing options...
siv1987 Posted November 20, 2015 Share Posted November 20, 2015 Проблема все еще актуальна.Пишите в гугл на поддержку динамических адресов. Или адресов без расширения. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now