|
| 1 | +-- References: |
| 2 | +-- |
| 3 | +-- https://github.com/geiszla/iOSLib/wiki/ZGENERICASSET-contents |
| 4 | +-- https://github.com/geiszla/iOSLib/wiki/ZADDITIONALASSETATTRIBUTES-contents |
| 5 | +-- https://forensenellanebbia.blogspot.com/2015/10/apple-ios-recently-deleted-images.html |
| 6 | + |
| 7 | +select |
| 8 | +Z_PRIMARYKEY.Z_NAME as 'Type', |
| 9 | +case zgenericasset.ZSAVEDASSETTYPE |
| 10 | + when 0 then 'Saved from other source' |
| 11 | + when 2 then 'Photo Streams Data' |
| 12 | + when 3 then 'Made/saved with this device' |
| 13 | + when 4 then 'Default row' |
| 14 | + when 7 then 'Deleted' |
| 15 | + else zgenericasset.ZSAVEDASSETTYPE |
| 16 | + end as 'AssetType', |
| 17 | +ZDIRECTORY as 'Directory', |
| 18 | +ZFILENAME as 'FileName', |
| 19 | +ZADDITIONALASSETATTRIBUTES.ZORIGINALFILENAME as 'OriginalFilename', |
| 20 | +ZADDITIONALASSETATTRIBUTES.ZORIGINALFILESIZE as 'OriginalSize', |
| 21 | +ZUNIFORMTYPEIDENTIFIER as 'FormTypeIdentifier', |
| 22 | +ZIMAGEURLDATA as 'ImageURLdata', |
| 23 | +ZTHUMBNAILURLDATA as 'ThumbnailURLdata', |
| 24 | +case ZCLOUDDOWNLOADREQUESTS |
| 25 | + when 0 then 'No' |
| 26 | + when 1 then 'Yes' |
| 27 | + end as 'CLOUDDOWNLOADREQUESTS', |
| 28 | +case ZCLOUDISDELETABLE |
| 29 | + when 1 then 'Yes' |
| 30 | + end as 'CLOUDISDELETABLE', |
| 31 | +case ZCLOUDISMYASSET |
| 32 | + when 1 then 'Yes' |
| 33 | + end as 'CLOUDISMYASSET', |
| 34 | +case ZCLOUDLOCALSTATE |
| 35 | + when 0 then 'Local' |
| 36 | + when 1 then 'Remote' |
| 37 | + end as 'CLOUDLOCALSTATE', |
| 38 | +case ZFAVORITE |
| 39 | + when 0 then 'No' |
| 40 | + when 1 then 'Yes' |
| 41 | + end as 'Favorite', |
| 42 | +case ZHASADJUSTMENTS |
| 43 | + when 0 then 'No' |
| 44 | + when 1 then 'Yes' |
| 45 | + end as 'Modified', |
| 46 | +ZWIDTH||' x '||ZHEIGHT as 'Dimenasions(WxH)', |
| 47 | +ZADDITIONALASSETATTRIBUTES.ZEMBEDDEDTHUMBNAILWIDTH||' x '||ZADDITIONALASSETATTRIBUTES.ZEMBEDDEDTHUMBNAILHEIGHT as 'EmbeddedThumbnail(WxH)', |
| 48 | +ZADDITIONALASSETATTRIBUTES.ZEMBEDDEDTHUMBNAILOFFSET as 'EmbeddedThumbnailOffset', |
| 49 | +ZADDITIONALASSETATTRIBUTES.ZEMBEDDEDTHUMBNAILLENGTH as 'ETNLength', |
| 50 | +time(ZDURATION,'unixepoch') as 'Duration', |
| 51 | +case ZORIENTATION |
| 52 | + when 1 then 'Horizontal (left)' |
| 53 | + when 3 then 'Horizontal (right)' |
| 54 | + when 6 then 'Vertical (up)' |
| 55 | + when 8 then 'Vertical (down)' |
| 56 | + else ZORIENTATION |
| 57 | + end as 'Orientation', |
| 58 | +case ZKIND |
| 59 | + when 0 then 'Photo' |
| 60 | + when 1 then 'Video' |
| 61 | + end as 'Kind', |
| 62 | +case ZKINDSUBTYPE |
| 63 | + when 0 then 'Normal' |
| 64 | + when 1 then 'Panorama' |
| 65 | + when 100 then 'Default row' |
| 66 | + when 101 then 'Slo-mo' |
| 67 | + when 102 then 'Timelapse' |
| 68 | + else ZKINDSUBTYPE |
| 69 | + end as 'SubType', |
| 70 | +case zgenericasset.ZHIGHDYNAMICRANGETYPE |
| 71 | + when 0 then 'No HDR' |
| 72 | + when 1 then 'Low' |
| 73 | + when 6 then 'High' |
| 74 | + else zgenericasset.ZHIGHDYNAMICRANGETYPE |
| 75 | + end as 'HDRtype', --Seen values 0, 1 and 6 |
| 76 | +case zgenericasset.ZTRASHEDSTATE |
| 77 | + when 1 then 'Deleted' |
| 78 | + when 0 then 'Not Deleted' |
| 79 | + else zgenericasset.ZTRASHEDSTATE |
| 80 | + end as 'TrashState', |
| 81 | +datetime('2001-01-01', ZTRASHEDDATE || ' seconds') as 'TrashedDate', |
| 82 | +case ZCOMPLETE |
| 83 | + when 1 then 'Yes' |
| 84 | + end as 'Complete', |
| 85 | +case ZVISIBILITYSTATE |
| 86 | + when 0 then 'Visible' |
| 87 | + when 1 then 'Photo Streams Data' |
| 88 | + when 2 then 'Burst' |
| 89 | + else ZVISIBILITYSTATE |
| 90 | + end as 'VisibilityState', |
| 91 | +ZADDITIONALASSETATTRIBUTES.ZCREATORBUNDLEID as 'CreatorBundleID', |
| 92 | +ZADDITIONALASSETATTRIBUTES.ZEDITORBUNDLEID as 'EditorBundleID', |
| 93 | +ZUNMANAGEDADJUSTMENT.ZADJUSTMENTFORMATIDENTIFIER||' ('||ZUNMANAGEDADJUSTMENT.ZADJUSTMENTFORMATVERSION||')' as 'AdjustmentFormatIdentifier', |
| 94 | +datetime('2001-01-01', ZUNMANAGEDADJUSTMENT.ZADJUSTMENTTIMESTAMP || ' seconds') as 'AdjustmentTimestamp', |
| 95 | +datetime('2001-01-01', ZMODIFICATIONDATE || ' seconds') as 'ModificationDate', |
| 96 | +datetime('2001-01-01', ZADDEDDATE || ' seconds') as 'AddedDate', |
| 97 | +datetime('2001-01-01', ZDATECREATED || ' seconds') as 'CreatedDate', |
| 98 | +ZADDITIONALASSETATTRIBUTES.ZEXIFTIMESTAMPSTRING as 'EXIFtimestamp', |
| 99 | +datetime('2001-01-01', ZMOMENT.ZSTARTDATE || ' seconds') as 'MomentStartDate', |
| 100 | +datetime('2001-01-01', ZMOMENT.ZENDDATE || ' seconds') as 'MomentEndDate', |
| 101 | +datetime('2001-01-01', zgenericasset.ZLASTSHAREDDATE || ' seconds') as 'LastSharedDate', |
| 102 | +ZADDITIONALASSETATTRIBUTES.ZTIMEZONENAME||' ('||ZADDITIONALASSETATTRIBUTES.ZTIMEZONEOFFSET||')' as 'TimeZone', |
| 103 | +ZMOMENT.ZAPPROXIMATELOCATIONDATA as 'ApproximateLocationData(bplist)', |
| 104 | +ZMOMENT.ZREVERSELOCATIONDATA as 'ReverseLocationData0(bplist)', |
| 105 | +case ZMOMENT.ZREVERSELOCATIONDATAISVALID |
| 106 | + when 0 then 'No' |
| 107 | + when 1 then 'Yes' |
| 108 | + end as 'LocationValid', |
| 109 | +ZMOMENTLIST.ZREVERSELOCATIONDATA as 'ReverseLocationData1(bplist)', |
| 110 | +case ZMOMENTLIST.ZREVERSELOCATIONDATAISVALID |
| 111 | + when 0 then 'No' |
| 112 | + when 1 then 'Yes' |
| 113 | + end as 'LocationValid', |
| 114 | +ZADDITIONALASSETATTRIBUTES.ZREVERSELOCATIONDATA as 'ReverseLocationData2(bplist)' |
| 115 | + |
| 116 | +-- case ZADDITIONALASSETATTRIBUTES.ZSHIFTEDLOCATIONISVALID -- Field does not exist in IOS 8.3 |
| 117 | +-- when 0 then 'No' |
| 118 | +-- when 1 then 'Yes' |
| 119 | +-- end as 'ShiftedLocationValid' |
| 120 | + |
| 121 | + |
| 122 | +from zgenericasset |
| 123 | +join Z_PRIMARYKEY on zgenericasset.z_ent = Z_PRIMARYKEY.z_ent |
| 124 | +left join ZMOMENTLIST on zgenericasset.ZMOMENT = ZMOMENTLIST.Z_PK |
| 125 | +left join ZMOMENT on ZGENERICASSET."ZMOMENT" = ZMOMENT.Z_PK |
| 126 | +join ZADDITIONALASSETATTRIBUTES on ZGENERICASSET.ZADDITIONALATTRIBUTES = ZADDITIONALASSETATTRIBUTES.Z_PK |
| 127 | +left join ZUNMANAGEDADJUSTMENT on ZADDITIONALASSETATTRIBUTES."ZUNMANAGEDADJUSTMENT" = ZUNMANAGEDADJUSTMENT.Z_PK |
| 128 | +order by MomentStartDate desc |
| 129 | + |
0 commit comments