# Custom file actions

### You can easily add custom options inside the "Open with.." file contextual menu. Here is a step by step guide:

1. Make a copy of "/*path-to-WebFileShare*/customizables/custom\_actions/\_example" inside the same folder and rename it to "*my-action*" (you are free to name the folder as you wish). (Writing an underscore in front of the folder's name disables the option.)
2. Open the file "*my-action*/app.php" in a PHP editor:

- Rename the class to "custom\_*my-action*". (Note that this depends on the folder's name.)
- Edit the code according to your requirements:

**Define the text that will be displayed for the contextual menu option:**

```
$this->JSconfig['title']
```

**Define the URL of the contextual menu option's icon:**

```
$this->JSconfig['icon']
```

**Make the option open a popup window with the specified size.**

`$```

`);`

**When using a popup window, the output of the method "custom\_*my-action*::run()" will be displayed inside the popup. The "$this-&gt;data" array can be used to find the file's path:**

```
function run() {

 echo $this->data['filePath'];

}
```

**If you wish to execute a JavaScript function (perhaps making an Ajax call) instead of opening a popup, use this instead:**

```
$this->JSconfig['fn'] = "alert('Option clicked!')";
```

**Add the following option to display the contextual option only for certain filetypes:**

```
 $this->JSconfig['extensions'] => array("txt", "pdf", "doc");
```

**Allow only users with download permissions to see and use this plugin:**

```
 $this->JSconfig['requiredUserPerms'] => array("download");
```

  
**Misc custom actions:**

- View Office files with Microsoft Office Web Viewer ([download](http://support.quikbox.com/assets/office_web_viewer.zip))

- View PDFs and annotate with Crocodoc.com ([download](http://support.quikbox.com/assets/crocodoc.zip))

- View documents online with Vuzit.com ([download](http://support.quikbox.com/assets/vuzit.zip))