Skip to content
This repository was archived by the owner on Sep 10, 2021. It is now read-only.

Commit 8b1529e

Browse files
author
Charles Ma
committed
ENH: fixed bug #201 Added oai module
1 parent a535a3c commit 8b1529e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+2676
-14
lines changed

core/models/base/FolderModelBase.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ abstract function policyCheck($folderDao, $userDao = null, $policy = 0);
5757
abstract function getFolderExists($name, $parent);
5858
abstract function getByUuid($uuid);
5959
abstract function getRoot($folder);
60+
abstract function getAll();
6061

6162
/** Increment the view count */
6263
function incrementViewCount($folder)

core/models/base/ItemModelBase.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ abstract function policyCheck($itemdao, $userDao = null, $policy = 0);
4949
abstract function getLastRevision($itemdao);
5050
abstract function getMostPopulars($userDao, $limit = 20);
5151
abstract function getRandomThumbnails($userDao = null, $policy = 0, $limit = 10, $thumbnailFilter = false);
52+
abstract function getByUuid($uuid);
53+
abstract function getAll();
5254

5355
/** save */
5456
public function save($dao)

core/models/pdo/FolderModel.php

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,19 @@
1717
* \brief Pdo Model
1818
*/
1919
class FolderModel extends FolderModelBase
20-
{
21-
20+
{
21+
/** get All*/
22+
function getAll()
23+
{
24+
$rowset = $this->database->fetchAll($this->database->select()->order(array('folder_id DESC')));
25+
$results = array();
26+
foreach($rowset as $row)
27+
{
28+
$results[] = $this->initDao('Folder', $row);
29+
}
30+
return $results;
31+
}
32+
2233
/** get by uuid*/
2334
function getByUuid($uuid)
2435
{

core/models/pdo/ItemModel.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,25 @@
1919
class ItemModel extends ItemModelBase
2020
{
2121

22+
/** get All*/
23+
function getAll()
24+
{
25+
$rowset = $this->database->fetchAll($this->database->select()->order(array('item_id DESC')));
26+
$results = array();
27+
foreach($rowset as $row)
28+
{
29+
$results[] = $this->initDao('Item', $row);
30+
}
31+
return $results;
32+
}
33+
34+
/** get by uuid*/
35+
function getByUuid($uuid)
36+
{
37+
$row = $this->database->fetchRow($this->database->select()->where('uuid = ?', $uuid));
38+
$dao = $this->initDao(ucfirst($this->_name), $row);
39+
return $dao;
40+
}
2241
/**
2342
* Get Items where user policy exists and is != admin
2443
* @param type $userDao

core/tests/databaseDataset/default.xml

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,33 @@
11
<?xml version="1.0" encoding="UTF-8" ?>
22
<dataset>
33

4-
<folder folder_id="1" name="name Folder 1" description="Description Folder 1" left_indice="1" right_indice="2"
4+
<folder folder_id="1" name="name Folder 1" description="Description Folder 1" left_indice="1" right_indice="2" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72800'
55
parent_id="-1"/>
6-
<folder folder_id="2" name="name Folder 2" description="Description Folder 2" left_indice="3" right_indice="4"
6+
<folderpolicygroup folder_id="1" group_id="0" policy='0' />
7+
<folder folder_id="2" name="name Folder 2" description="Description Folder 2" left_indice="3" right_indice="4" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72801'
78
parent_id="-1"/>
8-
<folder folder_id="3" name="name Folder 3" description="Description Folder 3" left_indice="5" right_indice="6"
9+
<folder folder_id="3" name="name Folder 3" description="Description Folder 3" left_indice="5" right_indice="6" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72802'
910
parent_id="-1"/>
1011

11-
<folder folder_id="1000" name="User 1 name Folder 1"
12+
<folder folder_id="1000" name="User 1 name Folder 1" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72760'
1213
description="Description Folder 1" left_indice="1000" right_indice="1005"
1314
parent_id="-1" />
1415
<folderpolicyuser folder_id="1000" user_id="1" policy='2' />
15-
<folder folder_id="1001" name="User 1 name Folder 2"
16+
<folder folder_id="1001" name="User 1 name Folder 2" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72761'
1617
description="Description Folder 2" left_indice="1001" right_indice="1002"
1718
parent_id="1000" />
1819
<folderpolicyuser folder_id="1001" user_id="1" policy='2' />
19-
<folder folder_id="1002" name="User 1 name Folder 3"
20+
<folder folder_id="1002" name="User 1 name Folder 3" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72762'
2021
description="Description Folder 3" left_indice="1003" right_indice="1004"
2122
parent_id="1000" />
2223
<folderpolicyuser folder_id="1002" user_id="1" policy='2' />
23-
<folder folder_id="1003" name="Community test User 1 name Folder 1"
24+
<folder folder_id="1003" name="Community test User 1 name Folder 1" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72763'
2425
description="Description Folder 1" left_indice="1006" right_indice="10011"
2526
parent_id="-2" />
26-
<folder folder_id="1004" name="Community test User 1 name Folder 2"
27+
<folder folder_id="1004" name="Community test User 1 name Folder 2" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72764'
2728
description="Description Folder 2" left_indice="1007" right_indice="1008"
2829
parent_id="1003" />
29-
<folder folder_id="1005" name="Community test User 1 name Folder 3"
30+
<folder folder_id="1005" name="Community test User 1 name Folder 3" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72765'
3031
description="Description Folder 3" left_indice="1009" right_indice="1010"
3132
parent_id="1003" />
3233

@@ -51,19 +52,19 @@
5152
<user2group group_id="3000" user_id="1" />
5253
<user2group group_id="3002" user_id="1" />
5354

54-
<item item_id="1" name="name 1" description="Description 1" type="1" />
55+
<item item_id="1" name="name 1" description="Description 1" type="1" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72750' />
5556
<itemrevision itemrevision_id="1" item_id="1" revision="1"
5657
date="2011-01-27 12:09:02" user_id='1' changes="Description 1" />
5758
<itemrevision itemrevision_id="3" item_id="1" revision="2"
5859
date="2011-01-27 12:09:02" user_id='1' changes="Description 1" />
5960
<itempolicygroup item_id="1" group_id="0" policy='0' />
6061
<item2folder item_id="1" folder_id='1001' />
61-
<item item_id="2" name="name 2" description="Description 2" type="4" />
62+
<item item_id="2" name="name 2" description="Description 2" type="4" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72751' />
6263
<itemrevision itemrevision_id="2" item_id="2" revision="1"
6364
date="2011-01-27 12:09:02" user_id='1' changes="Description 1" />
6465
<itempolicyuser item_id="2" user_id="1" policy='2' />
6566
<item2folder item_id="2" folder_id='1001' />
66-
<item item_id="3" name="name 3" description="Description 3" type="3" />
67+
<item item_id="3" name="name 3" description="Description 3" type="3" uuid='4e311fdf82007c245b07d8d6c4fcb4205f2621eb72752' />
6768

6869

6970

modules/oai/AppController.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?php
2+
3+
class Oai_AppController extends MIDAS_GlobalModule
4+
{
5+
public $moduleName='oai';
6+
7+
/**completion eclipse*/
8+
/**
9+
* Api_Userapi Model
10+
* @var Api_UserapiModelBase
11+
*/
12+
var $Api_Userapi;
13+
} //end class
14+
?>

modules/oai/Notification.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
/** notification manager*/
3+
class Oai_Notification extends MIDAS_Notification
4+
{
5+
public $_models=array();
6+
7+
/** init notification process*/
8+
public function init()
9+
{
10+
}//end init
11+
12+
} //end class
13+
?>

modules/oai/configs/.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
*.local.ini
2+
*.local.ini.old

modules/oai/configs/module.ini

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
[global]
2+
; version of the module
3+
version = 1.0.0
4+
; full name
5+
fullname= OAI
6+
; description
7+
description= Open Archives Initiative Protocol for Metadata Harvesting
8+
;Category
9+
category= Core
10+
11+
repositoryname=Midas
12+
adminemail=admin@foo.com
13+
repositoryidentifier=midas.foo.com

modules/oai/constant/module.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
<?php
2+
//define("MIDAS_EXAMPLE", 0);
3+
?>

0 commit comments

Comments
 (0)