]>
git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/models/tag.js
3 const each
= require('async/each')
5 // ---------------------------------------------------------------------------
7 module
.exports = function (sequelize
, DataTypes
) {
8 const Tag
= sequelize
.define('Tag',
11 type: DataTypes
.STRING
,
34 // ---------------------------------------------------------------------------
36 function associate (models
) {
37 this.belongsToMany(models
.Video
, {
39 through: models
.VideoTag
,
44 function findOrCreateTags (tags
, transaction
, callback
) {
46 callback
= transaction
51 const tagInstances
= []
53 each(tags
, function (tag
, callbackEach
) {
63 if (transaction
) query
.transaction
= transaction
65 self
.findOrCreate(query
).asCallback(function (err
, res
) {
66 if (err
) return callbackEach(err
)
68 // res = [ tag, isCreated ]
70 tagInstances
.push(tag
)
74 return callback(err
, tagInstances
)