Giter Site home page Giter Site logo

noxify / asset-ownership Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 1.0 20 KB

This plugin extends the existing asset query and shows only the assets which has been uploaded by the current user.

License: MIT License

PHP 90.63% HTML 9.37%
craftcms craft-plugin craft3 assets permissions ownership opensource

asset-ownership's Introduction

Asset Ownership plugin for Craft CMS 3

This plugin extends the existing asset query and shows only the assets which has been uploaded by the current user. To ensure that an user can not overwrite an asset from another user, this plugin comes with the functionality to create unique asset file names.

Requirements

This plugin requires Craft CMS 3 or later.

Installation

Via Composer

composer require noxify/asset-ownership

Via Marketplace

Just search for Asset Ownership and click install.

Configuring Asset Ownership

The Plugin comes with two settings which can be configured via the Control Panel.

Name Default Required
Asset User Field NULL Yes
Create Unique Filename true Yes

Using Asset Ownership

After installing and enabling the Plugin, you have to create a new field.

  • Fieldname: Uploaded By
  • Handle: uploadedBy
  • Field Type: Users
  • Sources: All [x]
  • Limit: 1

After creating the new field, you have assign it to all your volumes.

Control Panel > Settings > Assets > Volumes > {volumename} > Tab: Field Layout

Last but not least, you have to go to Plugin Settings. Here you have to choose the created "Uploaded By" field in the dropdown.

How can I see all uploaded assets

To see all assets you must be an admin or you have the custom permission to see assets from other users.

asset-ownership's People

Contributors

boscho87 avatar noxify avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

rbrv

asset-ownership's Issues

Image transforms not working

We have a multi-site setup with many sites.
Each site will be run by its own Content Manager.
All sites share the same assets so that we don't have many duplicated assets when content is published on more then one site.
But we wanted each Content Manager to only see his assets in the control panel.
All worked fine untill we started to implement transforms via templates.

Then we noticed that everything which is uploaded by Super Admin cannot be transformed, instead we get this error:
Call to a member function getVolume() on null

If we visit the front end as Super Admin, images get transformed normally.

When we removed the field "Uploaded By" from the volume we were testing on, images were transformed normally for everyone.

  • If Super Admin uploads the image, when Content Manager or Guest visits the site, images will not transform.
  • If Content Manager uploads the image, images will normally transform for everyone who visits the site.

PHP version | 7.2.10
Database driver & version | MySQL 5.6.38
Image driver & version | Imagick 3.4.3RC4 (ImageMagick 6.9.4-10)
Craft edition & version | Craft Pro 3.0.29

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.