diff options
| author | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-09-08 10:38:39 +0200 |
|---|---|---|
| committer | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-09-08 10:38:39 +0200 |
| commit | a5e25cc05e5e33e114331cc826211c89adbcfa6a (patch) | |
| tree | 2ea647b5117e5c3b530ec66d4caafd04969e0fbe /Types | |
| parent | 0f26c5c3b3e606c89724067d4785323de3fee751 (diff) | |
Reorganize code, WIP save for tag handling
Diffstat (limited to 'Types')
| -rw-r--r-- | Types/SocialSite.h | 23 | ||||
| -rw-r--r-- | Types/SocialSite.m | 55 |
2 files changed, 78 insertions, 0 deletions
diff --git a/Types/SocialSite.h b/Types/SocialSite.h new file mode 100644 index 0000000..f2c848c --- /dev/null +++ b/Types/SocialSite.h @@ -0,0 +1,23 @@ +// +// SocialSite.h +// QSDeliciousPlugIn +// +// Social bookmark site enumeration +// + +#import <Foundation/Foundation.h> + +typedef NS_ENUM(NSInteger, SocialSite) { + SocialSiteDelicious = 0, + SocialSiteMagnolia = 1, + SocialSitePinboard = 2, + SocialSiteLinkding = 3 +}; + +@interface SocialSiteHelper : NSObject + ++ (NSString *)displayNameForSite:(SocialSite)site; ++ (NSString *)siteURLForSite:(SocialSite)site; ++ (NSString *)reversedSiteURLForSite:(SocialSite)site; + +@end
\ No newline at end of file diff --git a/Types/SocialSite.m b/Types/SocialSite.m new file mode 100644 index 0000000..d002235 --- /dev/null +++ b/Types/SocialSite.m @@ -0,0 +1,55 @@ +// +// SocialSite.m +// QSDeliciousPlugIn +// + +#import "SocialSite.h" + +@implementation SocialSiteHelper + ++ (NSString *)displayNameForSite:(SocialSite)site { + switch (site) { + case SocialSiteDelicious: + return @"del.icio.us"; + case SocialSiteMagnolia: + return @"ma.gnolia.com"; + case SocialSitePinboard: + return @"Pinboard"; + case SocialSiteLinkding: + return @"Linkding"; + default: + return @"Unknown"; + } +} + ++ (NSString *)siteURLForSite:(SocialSite)site { + switch (site) { + case SocialSiteDelicious: + return @"del.icio.us"; + case SocialSiteMagnolia: + return @"ma.gnolia.com"; + case SocialSitePinboard: + return @"pinboard.in"; + case SocialSiteLinkding: + return @""; // Will be provided by user as host + default: + return nil; + } +} + ++ (NSString *)reversedSiteURLForSite:(SocialSite)site { + switch (site) { + case SocialSiteDelicious: + return @"us.icio.del"; + case SocialSiteMagnolia: + return @"com.gnolia.ma"; + case SocialSitePinboard: + return @"in.pinboard"; + case SocialSiteLinkding: + return @"linkding"; // Generic identifier + default: + return nil; + } +} + +@end
\ No newline at end of file |