Browse Source

Fix #172

pull/183/head
Timothée Jaussoin 10 years ago
parent
commit
377c1db64e
  1. 15
      app/helpers/StringHelper.php
  2. 13
      app/widgets/Group/Group.php
  3. 11
      app/widgets/Groups/Groups.php
  4. 3
      composer.json
  5. 67
      composer.lock

15
app/helpers/StringHelper.php

@ -187,21 +187,6 @@ function explodeJid($jid)
);
}
/**
* Return a URIfied string
* @param string
* @return string
*/
function stringToUri($url) {
$url = utf8_decode($url);
$url = strtolower(strtr($url, utf8_decode('ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ()[]\'"~$&%*@ç!?;,:/\^¨€{}<>|+- .'), 'aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn -- c --- e --_'));
$url = str_replace(' ', '', $url);
$url = str_replace('---', '-', $url);
$url = str_replace('--', '-', $url);
$url = trim($url,'-');
return $url;
}
/**
* Return a human readable filesize
* @param string size in bytes

13
app/widgets/Group/Group.php

@ -13,6 +13,7 @@ use Moxl\Xec\Action\Pubsub\SetConfig;
use Moxl\Xec\Action\Pubsub\Delete;
use Respect\Validation\Validator;
use Cocur\Slugify\Slugify;
class Group extends \Movim\Widget\Base
{
@ -70,7 +71,9 @@ class Group extends \Movim\Widget\Base
$html = $view->draw('_group_ticker', true);
RPC::call('MovimTpl.fill', '#group_widget.'.stringToUri($server.'_'.$node), $html);
$slugify = new Slugify();
RPC::call('MovimTpl.fill', '#group_widget.'.$slugify->slugify($server.'_'.$node), $html);
RPC::call('Group.clearLoad');
RPC::call('MovimTpl.showPanel');
}
@ -206,7 +209,9 @@ class Group extends \Movim\Widget\Base
$view->assign('node', $node);
$html .= $view->draw('_group_publish', true);
RPC::call('MovimTpl.fill', '#group_widget.'.stringToUri($server.'_'.$node), $html);
$slugify = new Slugify();
RPC::call('MovimTpl.fill', '#group_widget.'.$slugify->slugify($server.'_'.$node), $html);
RPC::call('Group.enableVideos');
unset($html);
}
@ -265,7 +270,9 @@ class Group extends \Movim\Widget\Base
{
if(!$this->validateServerNode($server, $node)) return;
RPC::call('Group.addLoad', stringToUri($server.'_'.$node));
$slugify = new Slugify();
RPC::call('Group.addLoad', $slugify->slugify($server.'_'.$node));
$r = new GetItemsId;
$r->setTo($server)

11
app/widgets/Groups/Groups.php

@ -6,6 +6,8 @@ use Respect\Validation\Validator;
use Moxl\Xec\Action\Pubsub\Create;
use Moxl\Xec\Action\Pubsub\TestCreate;
use Cocur\Slugify\Slugify;
class Groups extends \Movim\Widget\Base
{
private $_list_server;
@ -127,7 +129,14 @@ class Groups extends \Movim\Widget\Base
return;
}
$uri = stringToUri($form->name->value);
$slugify = new Slugify();
$uri = $slugify->slugify($form->name->value);
if($uri == '') {
Notification::append(null, $this->__('groups.name_error'));
return;
}
$c = new Create;
$c->setTo($server)->setNode($uri)->setData($form->name->value)

3
composer.json

@ -34,6 +34,7 @@
"respect/validation": "1.0.*",
"ezyang/htmlpurifier": "^4.7",
"ramsey/uuid": "^3.2",
"symfony/console": "^3.0"
"symfony/console": "^3.0",
"cocur/slugify": "^2.1"
}
}

67
composer.lock

@ -4,8 +4,8 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
"This file is @generated automatically"
],
"hash": "03f969c6eb107a15b0b5239da2d3c76e",
"content-hash": "bfebdd8e42854b5a00c9d5dc776a6212",
"hash": "e914006b3e14705d83af8c2166731383",
"content-hash": "de59bc3d1dbeb01e0e15e0347a1cd25e",
"packages": [
{
"name": "cboden/ratchet",
@ -55,6 +55,69 @@
],
"time": "2015-12-23 15:06:48"
},
{
"name": "cocur/slugify",
"version": "v2.1.1",
"source": {
"type": "git",
"url": "https://github.com/cocur/slugify.git",
"reference": "eee9879958875921082293dbdbf4866b641864f2"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/cocur/slugify/zipball/eee9879958875921082293dbdbf4866b641864f2",
"reference": "eee9879958875921082293dbdbf4866b641864f2",
"shasum": ""
},
"require": {
"php": ">=5.5.9"
},
"require-dev": {
"laravel/framework": "~5.1",
"latte/latte": "~2.2",
"mikey179/vfsstream": "~1.6",
"mockery/mockery": "~0.9",
"nette/di": "~2.2",
"phpunit/phpunit": "~4.8|~5.2",
"pimple/pimple": "~1.1",
"plumphp/plum": "~0.1",
"silex/silex": "~1.3",
"symfony/config": "~2.4|~3.0",
"symfony/dependency-injection": "~2.4|~3.0",
"symfony/http-kernel": "~2.4|~3.0",
"twig/twig": "~1.12",
"zendframework/zend-modulemanager": "~2.2",
"zendframework/zend-servicemanager": "~2.2",
"zendframework/zend-view": "~2.2"
},
"type": "library",
"autoload": {
"psr-4": {
"Cocur\\Slugify\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Ivo Bathke",
"email": "ivo.bathke@gmail.com"
},
{
"name": "Florian Eckerstorfer",
"email": "florian@eckerstorfer.co",
"homepage": "https://florian.ec"
}
],
"description": "Converts a string into a slug.",
"keywords": [
"slug",
"slugify"
],
"time": "2016-04-08 18:57:21"
},
{
"name": "embed/embed",
"version": "dev-master",

Loading…
Cancel
Save