Stud.IP  jlu_2.3 Revision 48552
 All Data Structures Namespaces Files Functions Variables Groups Pages
StudipDocument Class Reference
Inheritance diagram for StudipDocument:
Inheritance graph
Collaboration diagram for StudipDocument:
Collaboration graph

Public Member Functions

 __construct ($id=null)
 delete ()
 checkAccess ($user_id)
- Public Member Functions inherited from SimpleORMap
 getTableMetadata ()
 setId ($id)
 getId ()
 getNewId ()
 getData ()
 toArray ()
 getValue ($field)
 setValue ($field, $value)
 __get ($field)
 __set ($field, $value)
 __isset ($field)
 offsetExists ($offset)
 offsetGet ($offset)
 offsetSet ($offset, $value)
 offsetUnset ($offset)
 getIterator ()
 count ()
 isField ($field)
 setData ($data, $reset=false)
 haveData ()
 isNew ()
 setNew ($is_new)
 getWhereQuery ()
 restore ()
 store ()
 triggerChdate ()
 isDirty ()
 isFieldDirty ($field)
 revertValue ($field)

Static Public Member Functions

static find ($id)
static findBySql ($where)
static findByCourseId ($cid)
static findByFolderId ($folder_id)
static deleteBySql ($where)
static createWithFile ($file, $data)
- Static Public Member Functions inherited from SimpleORMap
static expireTableScheme ()
static find ($class, $id)
static findBySQL ($class, $where)
static deleteBySQL ($class, $where)
static toObject ($class, $id_or_object)

Additional Inherited Members

- Protected Member Functions inherited from SimpleORMap
 getTableScheme ()
 initializeContent ()
- Static Protected Member Functions inherited from SimpleORMap
static TableScheme ($db_table)
- Protected Attributes inherited from SimpleORMap
 $content = array()
 $content_db = array()
 $is_new = true
 $db_table = ''
 $db_fields = null
 $pk = null
 $default_values = array()
- Static Protected Attributes inherited from SimpleORMap
static $schemes

Detailed Description

StudipDocument.class.php

Author
André Noack <noack-quest>, Suchi & Berg GmbH info@.nosp@m.data.nosp@m.-ques.nosp@m.t.de public Small class derived from SimpleORMap to give access to the table dokumente
André Noack

Constructor & Destructor Documentation

__construct (   $id = null)

constructor

Parameters
stringid: primary key of table dokumente
Returns
null

Reimplemented from SimpleORMap.

Member Function Documentation

checkAccess (   $user_id)

checks access to the document for user with given user_id the number of deleted rows.

Parameters
stringuser_id: id of the user
Returns
boolean: true if user has access to the document

Here is the call graph for this function:

static createWithFile (   $file,
  $data 
)
static

Create a new document using the given file and metadata. This method makes sure that there are no inconsistencies between a real file and its database entry. Only if the file were copied/moved to the documents folder, the database entry is written. If this fails too, the file will be unlinked again. The first parameter can either be an uploaded file or the path to an already existing one. This file will either be moved using move_uploaded_file or it will be copied. The destination is determined this way: If the second parameter $data already contains a "dokument_id", this will be used as the file's destination. This is usually the case when refreshing a file. If there is no such parameter, a new "dokument_id" is generated as usual and is used as the file's destination.

Before a document (and its file) is created, the notification "DocumentWillCreate" will be posted. If the document was created successfuly, the notification "DocumentDidCreate" will be posted. It the document was updated rather than created (see above), the notifications will be "DocumentWillUpdate" and "DocumentDidUpdate". The subject of the notification will always be that document.

Parameters
$filestring full path to a file (either uploaded or already existing)
$dataarray an array containing the metadata of the document; just use the same way as StudipDocument::setData
Returns
StudipDocument|null if successful the created document, null otherwise

Here is the call graph for this function:

Here is the caller graph for this function:

delete ( )

Delete entry from database. The object is cleared and turned to new state. Posts the Notifications "Document(Will|Did)Delete" if successful. The subject of the notification is the former document.

Returns
boolean always true

Reimplemented from SimpleORMap.

Here is the call graph for this function:

static deleteBySql (   $where)
static

deletes table rows which matches the given sql-where clause and returns the number of deleted rows.

Parameters
stringsql clause to use on the right side of WHERE to delete all rows matching this clause
Returns
int: number of rows deleted by the given sql-where-clause.
static find (   $id)
static

returns new instance of StudipDocument for given id or null if id does not exist

Parameters
idstring primary key of table 'dokumente' in db
Returns
object of type StudipDocument that matches id or null if nothing matches id

Here is the caller graph for this function:

static findByCourseId (   $cid)
static

returns array of StudipDocument-objects of given course id

Parameters
stringcid: course_id in the db (Seminar_id) with which all StudipDocuments should be filtered
Returns
array of all StudipDocument from the course with the given course_id

Here is the call graph for this function:

static findByFolderId (   $folder_id)
static

returns array of document-objects of given folder with id folder_id

Parameters
stringfolder_id: id of a folder whose documents we want to catch
Returns
array of StudipDocument objects of the given folder_id's folder or empty if that folder contains no documents.

Here is the call graph for this function:

static findBySql (   $where)
static

returns array of instances of StudipDocument filtered by given sql-where-clause

Parameters
string,:sql-where clause to use on the right side of WHERE to filter all StudipDocuments in an array
Returns
array of StudipDocument filtered by where (sql-qhere-clause) or empty array if no matches were found

Here is the caller graph for this function:


The documentation for this class was generated from the following file: