# portfolio_log

0 rows

### Description

log of portfolio transfers (used to later check for duplicates)

### Columns

Column | Type | Size | Nulls | Auto | Default | Children | Parents | Comments
--- | --- | --- | --- | --- | --- | --- | --- | ---
id | BIGINT | 19 |  | √ | null |  |  |
userid | BIGINT | 19 |  |  | null |  |
user.id | portlog_use2_fkR
| user who exported content
time | BIGINT | 19 |  |  | null |  |  | time of transfer (in the case of a queued transfer this is the time the actual transfer ran, not when the user started)
portfolio | BIGINT | 19 |  |  | null |  |
portfolio_instance.id | portlog_por2_fkR
| fk to portfolio_instance
caller_class | VARCHAR | 150 |  |  |  |  |  | the name of the class used to create the transfer
caller_file | VARCHAR | 255 |  |  |  |  |  | path to file to include where the class definition lives. (relative to dirroot)
caller_component | VARCHAR | 255 | √ |  | null |  |  | the component name responsible for exporting
caller_sha1 | VARCHAR | 255 |  |  |  |  |  | sha1 of exported content as far as the caller is concerned (before the portfolio plugin gets a hold of it)
tempdataid | BIGINT | 19 |  |  | 0 |  |
portfolio_tempdata.id | portlog_tem2_fkR
| old id from portfolio_tempdata. This is so that we can gracefully catch a race condition between an external system requesting a file and causing the tempdata to be deleted, before the user gets the "your transfer is requested" page
returnurl | VARCHAR | 255 |  |  |  |  |  | the original "returnurl" of the export - takes us to the moodle page we started from
continueurl | VARCHAR | 255 |  |  |  |  |  | the url the external system has set to view the transfer

### Indexes

Constraint Name | Type | Sort | Column(s)
--- | --- | --- | ---
PRIMARY | Primary key | Asc | id
portlog_por_ix | Performance | Asc | portfolio
portlog_tem_ix | Performance | Asc | tempdataid
portlog_use_ix | Performance | Asc | userid

### Relationships