rafaelbeckel/sirtrevor

在 Laravel 5 项目中使用 Sir Trevor JS

2.1.0 2015-08-15 09:37 UTC

README

在 Laravel 5 项目中集成工具 Sir Trevor JS

安装

========== 警告!!! ===============

我刚刚克隆了这个仓库用于个人项目,在接下来的几天里,我可能会对其进行一些修改,可能会破坏某些功能。**请勿在生产环境中使用**(除非是你)。我建议使用原作者的仓库(以下链接)。

我计划在不久的将来发布一个具有不同 API 的稳定版本,但现在我无法确切地说明具体时间。

====================================

此软件包通过 PackagistComposer 提供。

**对于 Laravel 5**,使用 master 分支"caouecs/sirtrevorjs": "~2.0"

别名

在你的 app/config/app.php 中,添加别名

'SirTrevorJs' => 'Caouecs\Sirtrevorjs\SirTrevorJs',
'STConverter' => 'Caouecs\Sirtrevorjs\SirTrevorJsConverter'

服务提供者

如果你想在项目中直接使用路由、控制器、视图,在你的 app/config/app.php 中,将 "Caouecs\Sirtrevorjs\SirtrevorjsServiceProvider" 添加到你的服务提供者列表中。

thujohn/twitter

为了获取推文,此项目使用 twitter-l4,因此你必须拥有有效的 Twitter 开发者账户,并添加twitter-l4的配置文件

php artisan config:publish thujohn/twitter

并将 "Thujohn\Twitter\TwitterServiceProvider" 添加到你的 app/config/app.php 中的服务提供者列表。

配置文件

接下来,你必须迁移配置

php artisan vendor:publish caouecs/sirtrevorjs

安装后,配置文件位于 app/config/packages/caouecs/sirtrevorjs/sir-trevor-js.php

你可以定义

  • 图像上传的路径
  • 上传图像的路由
  • 推文的路由
  • Sir Trevor 文件的路径
  • 块类型列表
  • 语言
  • Eventable.js 和 Underscore.js 的路径
  • 视图
  • 块配置
    • soundcloud
    • gettyimages
  • 等等...

SirTrevorJs 类

资源

对于样式表

SirTrevorJs::stylesheets()

对于脚本,在你的 Blade 文件中

SirTrevorJs::scripts()

图像块修复

修复图像块添加新图像时出现问题的函数

$text = SirTrevorJs::transformText($text);

找到第一张图像

使用 findImage 方法在文本中找到第一张图像

string SirTrevorJS::findImage(string $text);

返回,你将得到图像的 URL 或空字符串。

通过块类型查找元素

使用 find 方法获取文本中指定块类型的所有元素

mixed SirTrevorJS::find(string $text, string $blocktype [, string $output = "json"])

返回

  • 数组,如果你选择 $output 为 "array"
  • JSON,如果你选择 $output 为 "json"
  • 如果脚本没有找到块类型的出现,则为 false

SirTrevorJsController 类

此类提供两项功能

  • 上传你想要的图像
  • 获取推文

上传图像

此项目提出了一种上传图像的系统,无需配置,只需在配置文件中设置 directory_upload 的值。

"directory_upload" => "img/uploads"

上传器位于 SirTrevorJsController 类中,该项目有一个 route.php 文件。

Route::any("/sirtrevorjs/upload", array("uses" => "SirTrevorJsController@upload"));

推文

此项目提出了一种获取推文系统。我使用 twitter-l4 项目。

twitter-l4 的安装是通过 Composer 完成的,但你需要进行配置(见 说明)。

推文转换器位于 SirTrevorJsController 类中,该项目有一个 route.php 文件。

Route::any("/sirtrevorjs/tweet", array("uses" => "SirTrevorJsController@tweet"));

SirTrevorJsConverter 类(或 STConverter 类)

将文本从Sir Trevor Js转换为html

$convert = new STConverter();
$convert->toHtml($text)

或通过SirTrevorJS类

{{ SirTrevorJs::render($text) }}

目前,该代码可以转换