Merge pull request #2 from zhijie/redmine-ios
merge code in ios branch to master
This commit is contained in:
commit
5ef688dfed
|
@ -10,7 +10,6 @@
|
||||||
2B62D0DF1796498800AC3C19 /* OZLIssueCreateViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2B62D0DE1796498800AC3C19 /* OZLIssueCreateViewController.storyboard */; };
|
2B62D0DF1796498800AC3C19 /* OZLIssueCreateViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2B62D0DE1796498800AC3C19 /* OZLIssueCreateViewController.storyboard */; };
|
||||||
2B62D0E1179649A800AC3C19 /* OZLIssueDetailViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2B62D0E0179649A800AC3C19 /* OZLIssueDetailViewController.storyboard */; };
|
2B62D0E1179649A800AC3C19 /* OZLIssueDetailViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2B62D0E0179649A800AC3C19 /* OZLIssueDetailViewController.storyboard */; };
|
||||||
2B62D0E31796A15C00AC3C19 /* OZLProjectCreateViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2B62D0E21796A15C00AC3C19 /* OZLProjectCreateViewController.storyboard */; };
|
2B62D0E31796A15C00AC3C19 /* OZLProjectCreateViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2B62D0E21796A15C00AC3C19 /* OZLProjectCreateViewController.storyboard */; };
|
||||||
2B62D0E51796A8C800AC3C19 /* OZLIssueFilterViewController.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2B62D0E41796A8C800AC3C19 /* OZLIssueFilterViewController.storyboard */; };
|
|
||||||
2B62D0E81796A8D800AC3C19 /* OZLIssueFilterViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B62D0E71796A8D800AC3C19 /* OZLIssueFilterViewController.m */; };
|
2B62D0E81796A8D800AC3C19 /* OZLIssueFilterViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B62D0E71796A8D800AC3C19 /* OZLIssueFilterViewController.m */; };
|
||||||
2B6F382F1797A00A00D06F51 /* MLTableAlertBackground.png in Resources */ = {isa = PBXBuildFile; fileRef = 2B6F38251797A00A00D06F51 /* MLTableAlertBackground.png */; };
|
2B6F382F1797A00A00D06F51 /* MLTableAlertBackground.png in Resources */ = {isa = PBXBuildFile; fileRef = 2B6F38251797A00A00D06F51 /* MLTableAlertBackground.png */; };
|
||||||
2B6F38301797A00A00D06F51 /* MLTableAlertBackground@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 2B6F38261797A00A00D06F51 /* MLTableAlertBackground@2x.png */; };
|
2B6F38301797A00A00D06F51 /* MLTableAlertBackground@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 2B6F38261797A00A00D06F51 /* MLTableAlertBackground@2x.png */; };
|
||||||
|
@ -26,6 +25,11 @@
|
||||||
2B9968AB1794F71B0086F115 /* OZLModelIssueCategory.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B9968AA1794F71B0086F115 /* OZLModelIssueCategory.m */; };
|
2B9968AB1794F71B0086F115 /* OZLModelIssueCategory.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B9968AA1794F71B0086F115 /* OZLModelIssueCategory.m */; };
|
||||||
2B9968AF1794FC0A0086F115 /* OZLProjectCreateViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B9968AD1794FC0A0086F115 /* OZLProjectCreateViewController.m */; };
|
2B9968AF1794FC0A0086F115 /* OZLProjectCreateViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B9968AD1794FC0A0086F115 /* OZLProjectCreateViewController.m */; };
|
||||||
2B9968B417951A5C0086F115 /* OZLIssueCreateViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B9968B217951A5C0086F115 /* OZLIssueCreateViewController.m */; };
|
2B9968B417951A5C0086F115 /* OZLIssueCreateViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2B9968B217951A5C0086F115 /* OZLIssueCreateViewController.m */; };
|
||||||
|
2BC4DD8C179928C80090F52C /* SenTestingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2BC4DD8B179928C80090F52C /* SenTestingKit.framework */; };
|
||||||
|
2BC4DD8D179928C80090F52C /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D5DB80591792F2BF0081662A /* UIKit.framework */; };
|
||||||
|
2BC4DD8E179928C80090F52C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D5DB805B1792F2BF0081662A /* Foundation.framework */; };
|
||||||
|
2BC4DD94179928C80090F52C /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 2BC4DD92179928C80090F52C /* InfoPlist.strings */; };
|
||||||
|
2BC4DD97179928C80090F52C /* RedmineMobileUnitTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BC4DD96179928C80090F52C /* RedmineMobileUnitTest.m */; };
|
||||||
2BCCA0541795312E00FA8B1A /* OZLConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BCCA0531795312E00FA8B1A /* OZLConstants.m */; };
|
2BCCA0541795312E00FA8B1A /* OZLConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BCCA0531795312E00FA8B1A /* OZLConstants.m */; };
|
||||||
2BCF880C1793A26A006FC859 /* MBProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BCF880B1793A26A006FC859 /* MBProgressHUD.m */; };
|
2BCF880C1793A26A006FC859 /* MBProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BCF880B1793A26A006FC859 /* MBProgressHUD.m */; };
|
||||||
2BCF88101793ABA0006FC859 /* Reachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BCF880F1793ABA0006FC859 /* Reachability.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
|
2BCF88101793ABA0006FC859 /* Reachability.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BCF880F1793ABA0006FC859 /* Reachability.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
|
||||||
|
@ -72,11 +76,20 @@
|
||||||
D5DB80C217931C8B0081662A /* OZLModelProject.m in Sources */ = {isa = PBXBuildFile; fileRef = D5DB80C117931C8B0081662A /* OZLModelProject.m */; };
|
D5DB80C217931C8B0081662A /* OZLModelProject.m in Sources */ = {isa = PBXBuildFile; fileRef = D5DB80C117931C8B0081662A /* OZLModelProject.m */; };
|
||||||
/* End PBXBuildFile section */
|
/* End PBXBuildFile section */
|
||||||
|
|
||||||
|
/* Begin PBXContainerItemProxy section */
|
||||||
|
2BC4DD9C17992A4D0090F52C /* PBXContainerItemProxy */ = {
|
||||||
|
isa = PBXContainerItemProxy;
|
||||||
|
containerPortal = D5DB804E1792F2BF0081662A /* Project object */;
|
||||||
|
proxyType = 1;
|
||||||
|
remoteGlobalIDString = D5DB80551792F2BF0081662A;
|
||||||
|
remoteInfo = RedmineMobile;
|
||||||
|
};
|
||||||
|
/* End PBXContainerItemProxy section */
|
||||||
|
|
||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
2B62D0DE1796498800AC3C19 /* OZLIssueCreateViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = OZLIssueCreateViewController.storyboard; path = ViewControllers/OZLIssueCreateViewController.storyboard; sourceTree = "<group>"; };
|
2B62D0DE1796498800AC3C19 /* OZLIssueCreateViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = OZLIssueCreateViewController.storyboard; path = ViewControllers/OZLIssueCreateViewController.storyboard; sourceTree = "<group>"; };
|
||||||
2B62D0E0179649A800AC3C19 /* OZLIssueDetailViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = OZLIssueDetailViewController.storyboard; path = ViewControllers/OZLIssueDetailViewController.storyboard; sourceTree = "<group>"; };
|
2B62D0E0179649A800AC3C19 /* OZLIssueDetailViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = OZLIssueDetailViewController.storyboard; path = ViewControllers/OZLIssueDetailViewController.storyboard; sourceTree = "<group>"; };
|
||||||
2B62D0E21796A15C00AC3C19 /* OZLProjectCreateViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = OZLProjectCreateViewController.storyboard; path = ViewControllers/OZLProjectCreateViewController.storyboard; sourceTree = "<group>"; };
|
2B62D0E21796A15C00AC3C19 /* OZLProjectCreateViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = OZLProjectCreateViewController.storyboard; path = ViewControllers/OZLProjectCreateViewController.storyboard; sourceTree = "<group>"; };
|
||||||
2B62D0E41796A8C800AC3C19 /* OZLIssueFilterViewController.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = OZLIssueFilterViewController.storyboard; path = ViewControllers/OZLIssueFilterViewController.storyboard; sourceTree = "<group>"; };
|
|
||||||
2B62D0E61796A8D800AC3C19 /* OZLIssueFilterViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OZLIssueFilterViewController.h; path = ViewControllers/OZLIssueFilterViewController.h; sourceTree = "<group>"; };
|
2B62D0E61796A8D800AC3C19 /* OZLIssueFilterViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OZLIssueFilterViewController.h; path = ViewControllers/OZLIssueFilterViewController.h; sourceTree = "<group>"; };
|
||||||
2B62D0E71796A8D800AC3C19 /* OZLIssueFilterViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OZLIssueFilterViewController.m; path = ViewControllers/OZLIssueFilterViewController.m; sourceTree = "<group>"; };
|
2B62D0E71796A8D800AC3C19 /* OZLIssueFilterViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OZLIssueFilterViewController.m; path = ViewControllers/OZLIssueFilterViewController.m; sourceTree = "<group>"; };
|
||||||
2B6F38251797A00A00D06F51 /* MLTableAlertBackground.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MLTableAlertBackground.png; sourceTree = "<group>"; };
|
2B6F38251797A00A00D06F51 /* MLTableAlertBackground.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MLTableAlertBackground.png; sourceTree = "<group>"; };
|
||||||
|
@ -98,6 +111,13 @@
|
||||||
2B9968AD1794FC0A0086F115 /* OZLProjectCreateViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OZLProjectCreateViewController.m; path = ViewControllers/OZLProjectCreateViewController.m; sourceTree = "<group>"; };
|
2B9968AD1794FC0A0086F115 /* OZLProjectCreateViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OZLProjectCreateViewController.m; path = ViewControllers/OZLProjectCreateViewController.m; sourceTree = "<group>"; };
|
||||||
2B9968B117951A5C0086F115 /* OZLIssueCreateViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OZLIssueCreateViewController.h; path = ViewControllers/OZLIssueCreateViewController.h; sourceTree = "<group>"; };
|
2B9968B117951A5C0086F115 /* OZLIssueCreateViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OZLIssueCreateViewController.h; path = ViewControllers/OZLIssueCreateViewController.h; sourceTree = "<group>"; };
|
||||||
2B9968B217951A5C0086F115 /* OZLIssueCreateViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OZLIssueCreateViewController.m; path = ViewControllers/OZLIssueCreateViewController.m; sourceTree = "<group>"; };
|
2B9968B217951A5C0086F115 /* OZLIssueCreateViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OZLIssueCreateViewController.m; path = ViewControllers/OZLIssueCreateViewController.m; sourceTree = "<group>"; };
|
||||||
|
2BC4DD8A179928C80090F52C /* RedmineMobileUnitTest.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RedmineMobileUnitTest.octest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
|
2BC4DD8B179928C80090F52C /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; };
|
||||||
|
2BC4DD91179928C80090F52C /* RedmineMobileUnitTest-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "RedmineMobileUnitTest-Info.plist"; sourceTree = "<group>"; };
|
||||||
|
2BC4DD93179928C80090F52C /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||||
|
2BC4DD95179928C80090F52C /* RedmineMobileUnitTest.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RedmineMobileUnitTest.h; sourceTree = "<group>"; };
|
||||||
|
2BC4DD96179928C80090F52C /* RedmineMobileUnitTest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RedmineMobileUnitTest.m; sourceTree = "<group>"; };
|
||||||
|
2BC4DD98179928C80090F52C /* RedmineMobileUnitTest-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "RedmineMobileUnitTest-Prefix.pch"; sourceTree = "<group>"; };
|
||||||
2BCCA0521795312E00FA8B1A /* OZLConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OZLConstants.h; path = Models/OZLConstants.h; sourceTree = "<group>"; };
|
2BCCA0521795312E00FA8B1A /* OZLConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OZLConstants.h; path = Models/OZLConstants.h; sourceTree = "<group>"; };
|
||||||
2BCCA0531795312E00FA8B1A /* OZLConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OZLConstants.m; path = Models/OZLConstants.m; sourceTree = "<group>"; };
|
2BCCA0531795312E00FA8B1A /* OZLConstants.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OZLConstants.m; path = Models/OZLConstants.m; sourceTree = "<group>"; };
|
||||||
2BCF880A1793A26A006FC859 /* MBProgressHUD.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MBProgressHUD.h; sourceTree = "<group>"; };
|
2BCF880A1793A26A006FC859 /* MBProgressHUD.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MBProgressHUD.h; sourceTree = "<group>"; };
|
||||||
|
@ -179,6 +199,16 @@
|
||||||
/* End PBXFileReference section */
|
/* End PBXFileReference section */
|
||||||
|
|
||||||
/* Begin PBXFrameworksBuildPhase section */
|
/* Begin PBXFrameworksBuildPhase section */
|
||||||
|
2BC4DD86179928C80090F52C /* Frameworks */ = {
|
||||||
|
isa = PBXFrameworksBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
2BC4DD8C179928C80090F52C /* SenTestingKit.framework in Frameworks */,
|
||||||
|
2BC4DD8D179928C80090F52C /* UIKit.framework in Frameworks */,
|
||||||
|
2BC4DD8E179928C80090F52C /* Foundation.framework in Frameworks */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
D5DB80531792F2BF0081662A /* Frameworks */ = {
|
D5DB80531792F2BF0081662A /* Frameworks */ = {
|
||||||
isa = PBXFrameworksBuildPhase;
|
isa = PBXFrameworksBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
|
@ -220,6 +250,26 @@
|
||||||
path = Images;
|
path = Images;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
2BC4DD8F179928C80090F52C /* RedmineMobileUnitTest */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
2BC4DD95179928C80090F52C /* RedmineMobileUnitTest.h */,
|
||||||
|
2BC4DD96179928C80090F52C /* RedmineMobileUnitTest.m */,
|
||||||
|
2BC4DD90179928C80090F52C /* Supporting Files */,
|
||||||
|
);
|
||||||
|
path = RedmineMobileUnitTest;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
|
2BC4DD90179928C80090F52C /* Supporting Files */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
2BC4DD91179928C80090F52C /* RedmineMobileUnitTest-Info.plist */,
|
||||||
|
2BC4DD92179928C80090F52C /* InfoPlist.strings */,
|
||||||
|
2BC4DD98179928C80090F52C /* RedmineMobileUnitTest-Prefix.pch */,
|
||||||
|
);
|
||||||
|
name = "Supporting Files";
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
2BCB50FD1796370F006845AC /* Views */ = {
|
2BCB50FD1796370F006845AC /* Views */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
@ -273,7 +323,6 @@
|
||||||
2B8A11E017963CE500906D34 /* OZLIssueDetailViewController.h */,
|
2B8A11E017963CE500906D34 /* OZLIssueDetailViewController.h */,
|
||||||
2B8A11E117963CE500906D34 /* OZLIssueDetailViewController.m */,
|
2B8A11E117963CE500906D34 /* OZLIssueDetailViewController.m */,
|
||||||
2B62D0E0179649A800AC3C19 /* OZLIssueDetailViewController.storyboard */,
|
2B62D0E0179649A800AC3C19 /* OZLIssueDetailViewController.storyboard */,
|
||||||
2B62D0E41796A8C800AC3C19 /* OZLIssueFilterViewController.storyboard */,
|
|
||||||
2B62D0E61796A8D800AC3C19 /* OZLIssueFilterViewController.h */,
|
2B62D0E61796A8D800AC3C19 /* OZLIssueFilterViewController.h */,
|
||||||
2B62D0E71796A8D800AC3C19 /* OZLIssueFilterViewController.m */,
|
2B62D0E71796A8D800AC3C19 /* OZLIssueFilterViewController.m */,
|
||||||
);
|
);
|
||||||
|
@ -285,6 +334,7 @@
|
||||||
children = (
|
children = (
|
||||||
D5DB80761792F3EE0081662A /* Libs */,
|
D5DB80761792F3EE0081662A /* Libs */,
|
||||||
D5DB805F1792F2BF0081662A /* RedmineMobile */,
|
D5DB805F1792F2BF0081662A /* RedmineMobile */,
|
||||||
|
2BC4DD8F179928C80090F52C /* RedmineMobileUnitTest */,
|
||||||
D5DB80581792F2BF0081662A /* Frameworks */,
|
D5DB80581792F2BF0081662A /* Frameworks */,
|
||||||
D5DB80571792F2BF0081662A /* Products */,
|
D5DB80571792F2BF0081662A /* Products */,
|
||||||
);
|
);
|
||||||
|
@ -294,6 +344,7 @@
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
D5DB80561792F2BF0081662A /* RedmineMobile.app */,
|
D5DB80561792F2BF0081662A /* RedmineMobile.app */,
|
||||||
|
2BC4DD8A179928C80090F52C /* RedmineMobileUnitTest.octest */,
|
||||||
);
|
);
|
||||||
name = Products;
|
name = Products;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
|
@ -307,6 +358,7 @@
|
||||||
D5DB80591792F2BF0081662A /* UIKit.framework */,
|
D5DB80591792F2BF0081662A /* UIKit.framework */,
|
||||||
D5DB805B1792F2BF0081662A /* Foundation.framework */,
|
D5DB805B1792F2BF0081662A /* Foundation.framework */,
|
||||||
D5DB805D1792F2BF0081662A /* CoreGraphics.framework */,
|
D5DB805D1792F2BF0081662A /* CoreGraphics.framework */,
|
||||||
|
2BC4DD8B179928C80090F52C /* SenTestingKit.framework */,
|
||||||
);
|
);
|
||||||
name = Frameworks;
|
name = Frameworks;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
|
@ -459,6 +511,25 @@
|
||||||
/* End PBXGroup section */
|
/* End PBXGroup section */
|
||||||
|
|
||||||
/* Begin PBXNativeTarget section */
|
/* Begin PBXNativeTarget section */
|
||||||
|
2BC4DD89179928C80090F52C /* RedmineMobileUnitTest */ = {
|
||||||
|
isa = PBXNativeTarget;
|
||||||
|
buildConfigurationList = 2BC4DD99179928C80090F52C /* Build configuration list for PBXNativeTarget "RedmineMobileUnitTest" */;
|
||||||
|
buildPhases = (
|
||||||
|
2BC4DD85179928C80090F52C /* Sources */,
|
||||||
|
2BC4DD86179928C80090F52C /* Frameworks */,
|
||||||
|
2BC4DD87179928C80090F52C /* Resources */,
|
||||||
|
2BC4DD88179928C80090F52C /* ShellScript */,
|
||||||
|
);
|
||||||
|
buildRules = (
|
||||||
|
);
|
||||||
|
dependencies = (
|
||||||
|
2BC4DD9D17992A4D0090F52C /* PBXTargetDependency */,
|
||||||
|
);
|
||||||
|
name = RedmineMobileUnitTest;
|
||||||
|
productName = RedmineMobileUnitTest;
|
||||||
|
productReference = 2BC4DD8A179928C80090F52C /* RedmineMobileUnitTest.octest */;
|
||||||
|
productType = "com.apple.product-type.bundle";
|
||||||
|
};
|
||||||
D5DB80551792F2BF0081662A /* RedmineMobile */ = {
|
D5DB80551792F2BF0081662A /* RedmineMobile */ = {
|
||||||
isa = PBXNativeTarget;
|
isa = PBXNativeTarget;
|
||||||
buildConfigurationList = D5DB80731792F2BF0081662A /* Build configuration list for PBXNativeTarget "RedmineMobile" */;
|
buildConfigurationList = D5DB80731792F2BF0081662A /* Build configuration list for PBXNativeTarget "RedmineMobile" */;
|
||||||
|
@ -499,11 +570,20 @@
|
||||||
projectRoot = "";
|
projectRoot = "";
|
||||||
targets = (
|
targets = (
|
||||||
D5DB80551792F2BF0081662A /* RedmineMobile */,
|
D5DB80551792F2BF0081662A /* RedmineMobile */,
|
||||||
|
2BC4DD89179928C80090F52C /* RedmineMobileUnitTest */,
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
/* End PBXProject section */
|
/* End PBXProject section */
|
||||||
|
|
||||||
/* Begin PBXResourcesBuildPhase section */
|
/* Begin PBXResourcesBuildPhase section */
|
||||||
|
2BC4DD87179928C80090F52C /* Resources */ = {
|
||||||
|
isa = PBXResourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
2BC4DD94179928C80090F52C /* InfoPlist.strings in Resources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
D5DB80541792F2BF0081662A /* Resources */ = {
|
D5DB80541792F2BF0081662A /* Resources */ = {
|
||||||
isa = PBXResourcesBuildPhase;
|
isa = PBXResourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
|
@ -519,7 +599,6 @@
|
||||||
2B62D0DF1796498800AC3C19 /* OZLIssueCreateViewController.storyboard in Resources */,
|
2B62D0DF1796498800AC3C19 /* OZLIssueCreateViewController.storyboard in Resources */,
|
||||||
2B62D0E1179649A800AC3C19 /* OZLIssueDetailViewController.storyboard in Resources */,
|
2B62D0E1179649A800AC3C19 /* OZLIssueDetailViewController.storyboard in Resources */,
|
||||||
2B62D0E31796A15C00AC3C19 /* OZLProjectCreateViewController.storyboard in Resources */,
|
2B62D0E31796A15C00AC3C19 /* OZLProjectCreateViewController.storyboard in Resources */,
|
||||||
2B62D0E51796A8C800AC3C19 /* OZLIssueFilterViewController.storyboard in Resources */,
|
|
||||||
2B6F382F1797A00A00D06F51 /* MLTableAlertBackground.png in Resources */,
|
2B6F382F1797A00A00D06F51 /* MLTableAlertBackground.png in Resources */,
|
||||||
2B6F38301797A00A00D06F51 /* MLTableAlertBackground@2x.png in Resources */,
|
2B6F38301797A00A00D06F51 /* MLTableAlertBackground@2x.png in Resources */,
|
||||||
2B6F38311797A00A00D06F51 /* MLTableAlertButton.png in Resources */,
|
2B6F38311797A00A00D06F51 /* MLTableAlertButton.png in Resources */,
|
||||||
|
@ -533,7 +612,31 @@
|
||||||
};
|
};
|
||||||
/* End PBXResourcesBuildPhase section */
|
/* End PBXResourcesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXShellScriptBuildPhase section */
|
||||||
|
2BC4DD88179928C80090F52C /* ShellScript */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
);
|
||||||
|
outputPaths = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n";
|
||||||
|
};
|
||||||
|
/* End PBXShellScriptBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXSourcesBuildPhase section */
|
/* Begin PBXSourcesBuildPhase section */
|
||||||
|
2BC4DD85179928C80090F52C /* Sources */ = {
|
||||||
|
isa = PBXSourcesBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
2BC4DD97179928C80090F52C /* RedmineMobileUnitTest.m in Sources */,
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
};
|
||||||
D5DB80521792F2BF0081662A /* Sources */ = {
|
D5DB80521792F2BF0081662A /* Sources */ = {
|
||||||
isa = PBXSourcesBuildPhase;
|
isa = PBXSourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
|
@ -580,7 +683,23 @@
|
||||||
};
|
};
|
||||||
/* End PBXSourcesBuildPhase section */
|
/* End PBXSourcesBuildPhase section */
|
||||||
|
|
||||||
|
/* Begin PBXTargetDependency section */
|
||||||
|
2BC4DD9D17992A4D0090F52C /* PBXTargetDependency */ = {
|
||||||
|
isa = PBXTargetDependency;
|
||||||
|
target = D5DB80551792F2BF0081662A /* RedmineMobile */;
|
||||||
|
targetProxy = 2BC4DD9C17992A4D0090F52C /* PBXContainerItemProxy */;
|
||||||
|
};
|
||||||
|
/* End PBXTargetDependency section */
|
||||||
|
|
||||||
/* Begin PBXVariantGroup section */
|
/* Begin PBXVariantGroup section */
|
||||||
|
2BC4DD92179928C80090F52C /* InfoPlist.strings */ = {
|
||||||
|
isa = PBXVariantGroup;
|
||||||
|
children = (
|
||||||
|
2BC4DD93179928C80090F52C /* en */,
|
||||||
|
);
|
||||||
|
name = InfoPlist.strings;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
D5DB80621792F2BF0081662A /* InfoPlist.strings */ = {
|
D5DB80621792F2BF0081662A /* InfoPlist.strings */ = {
|
||||||
isa = PBXVariantGroup;
|
isa = PBXVariantGroup;
|
||||||
children = (
|
children = (
|
||||||
|
@ -592,6 +711,40 @@
|
||||||
/* End PBXVariantGroup section */
|
/* End PBXVariantGroup section */
|
||||||
|
|
||||||
/* Begin XCBuildConfiguration section */
|
/* Begin XCBuildConfiguration section */
|
||||||
|
2BC4DD9A179928C80090F52C /* Debug */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/RedmineMobile.app/RedmineMobile";
|
||||||
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
|
"\"$(SDKROOT)/Developer/Library/Frameworks\"",
|
||||||
|
"\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"",
|
||||||
|
);
|
||||||
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
GCC_PREFIX_HEADER = "RedmineMobileUnitTest/RedmineMobileUnitTest-Prefix.pch";
|
||||||
|
INFOPLIST_FILE = "RedmineMobileUnitTest/RedmineMobileUnitTest-Info.plist";
|
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
TEST_HOST = "$(BUNDLE_LOADER)";
|
||||||
|
WRAPPER_EXTENSION = octest;
|
||||||
|
};
|
||||||
|
name = Debug;
|
||||||
|
};
|
||||||
|
2BC4DD9B179928C80090F52C /* Release */ = {
|
||||||
|
isa = XCBuildConfiguration;
|
||||||
|
buildSettings = {
|
||||||
|
BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/RedmineMobile.app/RedmineMobile";
|
||||||
|
FRAMEWORK_SEARCH_PATHS = (
|
||||||
|
"\"$(SDKROOT)/Developer/Library/Frameworks\"",
|
||||||
|
"\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"",
|
||||||
|
);
|
||||||
|
GCC_PRECOMPILE_PREFIX_HEADER = YES;
|
||||||
|
GCC_PREFIX_HEADER = "RedmineMobileUnitTest/RedmineMobileUnitTest-Prefix.pch";
|
||||||
|
INFOPLIST_FILE = "RedmineMobileUnitTest/RedmineMobileUnitTest-Info.plist";
|
||||||
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
TEST_HOST = "$(BUNDLE_LOADER)";
|
||||||
|
WRAPPER_EXTENSION = octest;
|
||||||
|
};
|
||||||
|
name = Release;
|
||||||
|
};
|
||||||
D5DB80711792F2BF0081662A /* Debug */ = {
|
D5DB80711792F2BF0081662A /* Debug */ = {
|
||||||
isa = XCBuildConfiguration;
|
isa = XCBuildConfiguration;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
|
@ -617,7 +770,7 @@
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
IPHONEOS_DEPLOYMENT_TARGET = 5.0;
|
||||||
ONLY_ACTIVE_ARCH = YES;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2";
|
TARGETED_DEVICE_FAMILY = "1,2";
|
||||||
|
@ -642,7 +795,7 @@
|
||||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 6.1;
|
IPHONEOS_DEPLOYMENT_TARGET = 5.0;
|
||||||
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
|
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2";
|
TARGETED_DEVICE_FAMILY = "1,2";
|
||||||
|
@ -677,6 +830,14 @@
|
||||||
/* End XCBuildConfiguration section */
|
/* End XCBuildConfiguration section */
|
||||||
|
|
||||||
/* Begin XCConfigurationList section */
|
/* Begin XCConfigurationList section */
|
||||||
|
2BC4DD99179928C80090F52C /* Build configuration list for PBXNativeTarget "RedmineMobileUnitTest" */ = {
|
||||||
|
isa = XCConfigurationList;
|
||||||
|
buildConfigurations = (
|
||||||
|
2BC4DD9A179928C80090F52C /* Debug */,
|
||||||
|
2BC4DD9B179928C80090F52C /* Release */,
|
||||||
|
);
|
||||||
|
defaultConfigurationIsVisible = 0;
|
||||||
|
};
|
||||||
D5DB80511792F2BF0081662A /* Build configuration list for PBXProject "RedmineMobile" */ = {
|
D5DB80511792F2BF0081662A /* Build configuration list for PBXProject "RedmineMobile" */ = {
|
||||||
isa = XCConfigurationList;
|
isa = XCConfigurationList;
|
||||||
buildConfigurations = (
|
buildConfigurations = (
|
||||||
|
|
|
@ -3,9 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/16/13.
|
// Created by lizhijie on 7/16/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
//
|
|
||||||
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
extern const NSString* NOTIFICATION_REDMINE_ACCOUNT_CHANGED;
|
extern const NSString* NOTIFICATION_REDMINE_ACCOUNT_CHANGED;
|
||||||
|
|
|
@ -3,9 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/16/13.
|
// Created by lizhijie on 7/16/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
//
|
|
||||||
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
#import "OZLConstants.h"
|
#import "OZLConstants.h"
|
||||||
|
|
||||||
const NSString* NOTIFICATION_REDMINE_ACCOUNT_CHANGED = @"NOTIFICATION_REDMINE_ACCOUNT_CHANGED";
|
const NSString* NOTIFICATION_REDMINE_ACCOUNT_CHANGED = @"NOTIFICATION_REDMINE_ACCOUNT_CHANGED";
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
#import "OZLModelTracker.h"
|
#import "OZLModelTracker.h"
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLModelIssue.h"
|
#import "OZLModelIssue.h"
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/16/13.
|
// Created by lizhijie on 7/16/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/16/13.
|
// Created by lizhijie on 7/16/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLModelIssueCategory.h"
|
#import "OZLModelIssueCategory.h"
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLModelIssuePriority.h"
|
#import "OZLModelIssuePriority.h"
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLModelIssueStatus.h"
|
#import "OZLModelIssueStatus.h"
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLModelTracker.h"
|
#import "OZLModelTracker.h"
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLModelUser.h"
|
#import "OZLModelUser.h"
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,11 @@
|
||||||
@property(nonatomic,strong) NSString* redmineUserName;
|
@property(nonatomic,strong) NSString* redmineUserName;
|
||||||
@property(nonatomic,strong) NSString* redminePassword;
|
@property(nonatomic,strong) NSString* redminePassword;
|
||||||
|
|
||||||
|
// issue list option
|
||||||
|
@property(nonatomic) int issueListFilterType;
|
||||||
|
@property(nonatomic) int issueListSortType;
|
||||||
|
@property(nonatomic) int issueListSortAscending;
|
||||||
|
|
||||||
//app status
|
//app status
|
||||||
@property(nonatomic) int lastProjectID;// last viewed project id
|
@property(nonatomic) int lastProjectID;// last viewed project id
|
||||||
|
|
||||||
|
|
|
@ -37,6 +37,11 @@ NSString* USER_DEFUALTS_LAST_PROJECT_ID = @"USER_DEFUALTS_LAST_PROJECT_ID";
|
||||||
NSString* USER_DEFUALTS_REDMINE_USER_NAME = @"USER_DEFUALTS_REDMINE_USER_NAME";
|
NSString* USER_DEFUALTS_REDMINE_USER_NAME = @"USER_DEFUALTS_REDMINE_USER_NAME";
|
||||||
NSString* USER_DEFUALTS_REDMINE_PASSWORD = @"USER_DEFUALTS_REDMINE_PASSWORD";
|
NSString* USER_DEFUALTS_REDMINE_PASSWORD = @"USER_DEFUALTS_REDMINE_PASSWORD";
|
||||||
|
|
||||||
|
//issue list option
|
||||||
|
NSString* USER_DEFAULTS_ISSUE_LIST_ASCEND = @"USER_DEFUALTS_ISSUE_LIST_ASCEND";// ascend or descend
|
||||||
|
NSString* USER_DEFAULTS_ISSUE_LIST_FILTER = @"USER_DEFAULTS_ISSUE_LIST_FILTER";
|
||||||
|
NSString* USER_DEFAULTS_ISSUE_LIST_SORT = @"USER_DEFAULTS_ISSUE_LIST_SORT";
|
||||||
|
|
||||||
static OZLSingleton* sharedInstance = nil;
|
static OZLSingleton* sharedInstance = nil;
|
||||||
+(OZLSingleton*) sharedInstance
|
+(OZLSingleton*) sharedInstance
|
||||||
{
|
{
|
||||||
|
@ -50,6 +55,9 @@ static OZLSingleton* sharedInstance = nil;
|
||||||
[NSNumber numberWithInt:-1],USER_DEFUALTS_LAST_PROJECT_ID,
|
[NSNumber numberWithInt:-1],USER_DEFUALTS_LAST_PROJECT_ID,
|
||||||
@"",USER_DEFUALTS_REDMINE_USER_NAME,
|
@"",USER_DEFUALTS_REDMINE_USER_NAME,
|
||||||
@"",USER_DEFUALTS_REDMINE_PASSWORD,
|
@"",USER_DEFUALTS_REDMINE_PASSWORD,
|
||||||
|
[NSNumber numberWithInt:0],USER_DEFAULTS_ISSUE_LIST_FILTER,
|
||||||
|
[NSNumber numberWithInt:0],USER_DEFAULTS_ISSUE_LIST_SORT,
|
||||||
|
[NSNumber numberWithInt:0],USER_DEFAULTS_ISSUE_LIST_ASCEND,
|
||||||
nil];
|
nil];
|
||||||
[defaults registerDefaults:dic];
|
[defaults registerDefaults:dic];
|
||||||
}
|
}
|
||||||
|
@ -116,4 +124,40 @@ static OZLSingleton* sharedInstance = nil;
|
||||||
[userdefaults setObject:redminePassword forKey:USER_DEFUALTS_REDMINE_PASSWORD];
|
[userdefaults setObject:redminePassword forKey:USER_DEFUALTS_REDMINE_PASSWORD];
|
||||||
[userdefaults synchronize];
|
[userdefaults synchronize];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-(int)issueListFilterType
|
||||||
|
{
|
||||||
|
NSUserDefaults* userdefaults = [NSUserDefaults standardUserDefaults];
|
||||||
|
return [[userdefaults objectForKey:USER_DEFAULTS_ISSUE_LIST_FILTER] intValue];
|
||||||
|
}
|
||||||
|
-(void)setIssueListFilterType:(int)issueListFilterType
|
||||||
|
{
|
||||||
|
NSUserDefaults* userdefaults = [NSUserDefaults standardUserDefaults];
|
||||||
|
[userdefaults setObject:[NSNumber numberWithInt:issueListFilterType] forKey:USER_DEFAULTS_ISSUE_LIST_FILTER];
|
||||||
|
[userdefaults synchronize];
|
||||||
|
}
|
||||||
|
|
||||||
|
-(int)issueListSortAscending
|
||||||
|
{
|
||||||
|
NSUserDefaults* userdefaults = [NSUserDefaults standardUserDefaults];
|
||||||
|
return [[userdefaults objectForKey:USER_DEFAULTS_ISSUE_LIST_ASCEND] intValue];
|
||||||
|
}
|
||||||
|
-(void)setIssueListSortAscending:(int)issueListSortAscending
|
||||||
|
{
|
||||||
|
NSUserDefaults* userdefaults = [NSUserDefaults standardUserDefaults];
|
||||||
|
[userdefaults setObject:[NSNumber numberWithInt:issueListSortAscending] forKey:USER_DEFAULTS_ISSUE_LIST_ASCEND];
|
||||||
|
[userdefaults synchronize];
|
||||||
|
}
|
||||||
|
|
||||||
|
-(int)issueListSortType
|
||||||
|
{
|
||||||
|
NSUserDefaults* userdefaults = [NSUserDefaults standardUserDefaults];
|
||||||
|
return [[userdefaults objectForKey:USER_DEFAULTS_ISSUE_LIST_SORT] intValue];
|
||||||
|
}
|
||||||
|
-(void)setIssueListSortType:(int)issueListSortType
|
||||||
|
{
|
||||||
|
NSUserDefaults* userdefaults = [NSUserDefaults standardUserDefaults];
|
||||||
|
[userdefaults setObject:[NSNumber numberWithInt:issueListSortType] forKey:USER_DEFAULTS_ISSUE_LIST_SORT];
|
||||||
|
[userdefaults synchronize];
|
||||||
|
}
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/16/13.
|
// Created by lizhijie on 7/16/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
#import "OZLModelIssue.h"
|
#import "OZLModelIssue.h"
|
||||||
|
@ -14,6 +34,12 @@
|
||||||
- (IBAction)onCancel:(id)sender;
|
- (IBAction)onCancel:(id)sender;
|
||||||
- (IBAction)onSave:(id)sender;
|
- (IBAction)onSave:(id)sender;
|
||||||
|
|
||||||
|
@property (weak, nonatomic) NSArray* trackerList;
|
||||||
|
@property (weak, nonatomic) NSArray* priorityList;
|
||||||
|
@property (weak, nonatomic) NSArray* statusList;
|
||||||
|
@property (weak, nonatomic) NSArray* userList;
|
||||||
|
|
||||||
|
|
||||||
// neccessory
|
// neccessory
|
||||||
@property (weak, nonatomic) IBOutlet UITextField *subjectTextField;
|
@property (weak, nonatomic) IBOutlet UITextField *subjectTextField;
|
||||||
@property (weak, nonatomic) IBOutlet UILabel *trackerLabel;
|
@property (weak, nonatomic) IBOutlet UILabel *trackerLabel;
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/16/13.
|
// Created by lizhijie on 7/16/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLIssueCreateViewController.h"
|
#import "OZLIssueCreateViewController.h"
|
||||||
#import "OZLNetwork.h"
|
#import "OZLNetwork.h"
|
||||||
|
@ -16,10 +36,6 @@
|
||||||
#import "MLTableAlert.h"
|
#import "MLTableAlert.h"
|
||||||
|
|
||||||
@interface OZLIssueCreateViewController () {
|
@interface OZLIssueCreateViewController () {
|
||||||
NSArray* _trackerList;
|
|
||||||
NSArray* _priorityList;
|
|
||||||
NSArray* _statusList;
|
|
||||||
NSArray* _userList;
|
|
||||||
|
|
||||||
OZLModelTracker* _currentTracker;
|
OZLModelTracker* _currentTracker;
|
||||||
OZLModelIssuePriority* _currentPriority;
|
OZLModelIssuePriority* _currentPriority;
|
||||||
|
@ -62,7 +78,6 @@
|
||||||
[self.view addSubview:_HUD];
|
[self.view addSubview:_HUD];
|
||||||
_HUD.labelText = @"Loading...";
|
_HUD.labelText = @"Loading...";
|
||||||
|
|
||||||
[self loadIssueRelatedData];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void) setupInputviews
|
-(void) setupInputviews
|
||||||
|
@ -103,57 +118,6 @@
|
||||||
_doneProgressLabel.delegate = self;
|
_doneProgressLabel.delegate = self;
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void)loadIssueRelatedData
|
|
||||||
{
|
|
||||||
static int doneCount = 0;
|
|
||||||
[_HUD show:YES];
|
|
||||||
[OZLNetwork getTrackerListWithParams:nil andBlock:^(NSArray *result, NSError *error) {
|
|
||||||
if (!error) {
|
|
||||||
_trackerList = result;
|
|
||||||
}else {
|
|
||||||
NSLog(@"get tracker list error : %@",error.description);
|
|
||||||
}
|
|
||||||
doneCount ++;
|
|
||||||
if (doneCount == 4) {
|
|
||||||
[_HUD hide:YES];
|
|
||||||
}
|
|
||||||
}];
|
|
||||||
|
|
||||||
[OZLNetwork getIssueStatusListWithParams:nil andBlock:^(NSArray *result, NSError *error) {
|
|
||||||
if (!error) {
|
|
||||||
_statusList = result;
|
|
||||||
}else {
|
|
||||||
NSLog(@"get issue status list error : %@",error.description);
|
|
||||||
}
|
|
||||||
doneCount ++;
|
|
||||||
if (doneCount == 4) {
|
|
||||||
[_HUD hide:YES];
|
|
||||||
}
|
|
||||||
}];
|
|
||||||
[OZLNetwork getPriorityListWithParams:nil andBlock:^(NSArray *result, NSError *error) {
|
|
||||||
if (!error) {
|
|
||||||
_priorityList = result;
|
|
||||||
}else {
|
|
||||||
NSLog(@"get priority list error : %@",error.description);
|
|
||||||
}
|
|
||||||
doneCount ++;
|
|
||||||
if (doneCount == 4) {
|
|
||||||
[_HUD hide:YES];
|
|
||||||
}
|
|
||||||
}];
|
|
||||||
[OZLNetwork getUserListWithParams:nil andBlock:^(NSArray *result, NSError *error) {
|
|
||||||
if (!error) {
|
|
||||||
_userList = result;
|
|
||||||
}else {
|
|
||||||
NSLog(@"get user list error : %@",error.description);
|
|
||||||
}
|
|
||||||
doneCount ++;
|
|
||||||
if (doneCount == 4) {
|
|
||||||
[_HUD hide:YES];
|
|
||||||
}
|
|
||||||
}];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)didReceiveMemoryWarning
|
- (void)didReceiveMemoryWarning
|
||||||
{
|
{
|
||||||
[super didReceiveMemoryWarning];
|
[super didReceiveMemoryWarning];
|
||||||
|
@ -341,12 +305,12 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[self.tableView reloadData];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark -
|
#pragma mark -
|
||||||
#pragma mark delegate of textfield inputview
|
#pragma mark delegate of textfield inputview
|
||||||
|
|
||||||
|
|
||||||
#pragma mark data picker value changed
|
#pragma mark data picker value changed
|
||||||
-(void)datePickerValueChanged:(id)sender
|
-(void)datePickerValueChanged:(id)sender
|
||||||
{
|
{
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/17/13.
|
// Created by lizhijie on 7/17/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
#import "OZLModelIssue.h"
|
#import "OZLModelIssue.h"
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/17/13.
|
// Created by lizhijie on 7/17/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLIssueDetailViewController.h"
|
#import "OZLIssueDetailViewController.h"
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/17/13.
|
// Created by lizhijie on 7/17/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
|
|
||||||
|
|
|
@ -3,13 +3,38 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/17/13.
|
// Created by lizhijie on 7/17/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLIssueFilterViewController.h"
|
#import "OZLIssueFilterViewController.h"
|
||||||
|
#import "OZLSingleton.h"
|
||||||
|
|
||||||
@interface OZLIssueFilterViewController ()
|
@interface OZLIssueFilterViewController () {
|
||||||
|
NSArray* _cellArray;
|
||||||
|
NSArray* _headerArray;
|
||||||
|
int _checkedCell[3];
|
||||||
|
|
||||||
|
}
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation OZLIssueFilterViewController
|
@implementation OZLIssueFilterViewController
|
||||||
|
@ -27,11 +52,38 @@
|
||||||
{
|
{
|
||||||
[super viewDidLoad];
|
[super viewDidLoad];
|
||||||
|
|
||||||
// Uncomment the following line to preserve selection between presentations.
|
UIBarButtonItem* cancelBtn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(onCancel:)];
|
||||||
// self.clearsSelectionOnViewWillAppear = NO;
|
[self.navigationItem setLeftBarButtonItem:cancelBtn];
|
||||||
|
UIBarButtonItem* saveBtn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSave target:self action:@selector(onSave:)];
|
||||||
// Uncomment the following line to display an Edit button in the navigation bar for this view controller.
|
[self.navigationItem setRightBarButtonItem:saveBtn];
|
||||||
// self.navigationItem.rightBarButtonItem = self.editButtonItem;
|
|
||||||
|
_cellArray = @[
|
||||||
|
@[@"Assigned to me",@"Open",@"Reported by me"],
|
||||||
|
@[@"Id", @"Tracker", @"Status", @"Priority", @"Category", @"Asssigned to", @"Fixed Version", @"Start Date", @"Due Date", @"Estimated Date", @"Done", @"Updated on"],
|
||||||
|
@[@"Ascending", @"Descending"]];
|
||||||
|
_headerArray = @[@"Filter by", @"Sort by", @""];
|
||||||
|
|
||||||
|
OZLSingleton* singleton =[OZLSingleton sharedInstance];
|
||||||
|
_checkedCell[0] = [singleton issueListFilterType];
|
||||||
|
_checkedCell[1] = [singleton issueListSortType];
|
||||||
|
_checkedCell[2] = [singleton issueListSortAscending];
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void) onCancel:(id)sender
|
||||||
|
{
|
||||||
|
[self.navigationController popViewControllerAnimated:YES];
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void) onSave:(id) sender
|
||||||
|
{
|
||||||
|
|
||||||
|
OZLSingleton* singleton =[OZLSingleton sharedInstance];
|
||||||
|
|
||||||
|
[singleton setIssueListFilterType:_checkedCell[0]];
|
||||||
|
[singleton setIssueListSortType:_checkedCell[1]];
|
||||||
|
[singleton setIssueListSortAscending:_checkedCell[2]];
|
||||||
|
|
||||||
|
[self.navigationController popViewControllerAnimated:YES];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)didReceiveMemoryWarning
|
- (void)didReceiveMemoryWarning
|
||||||
|
@ -44,78 +96,44 @@
|
||||||
|
|
||||||
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
|
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
|
||||||
{
|
{
|
||||||
#warning Potentially incomplete method implementation.
|
return _cellArray.count;
|
||||||
// Return the number of sections.
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
|
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
|
||||||
{
|
{
|
||||||
#warning Incomplete method implementation.
|
|
||||||
// Return the number of rows in the section.
|
return [[_cellArray objectAtIndex:section] count];
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
|
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
|
||||||
{
|
{
|
||||||
static NSString *CellIdentifier = @"Cell";
|
static NSString *CellIdentifier = @"OZLIssueFilterViewControllerCell";
|
||||||
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
|
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier ];
|
||||||
|
if (!cell) {
|
||||||
// Configure the cell...
|
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
|
||||||
|
}
|
||||||
|
if (_checkedCell[indexPath.section] == indexPath.row ) {
|
||||||
|
cell.accessoryType = UITableViewCellAccessoryCheckmark;
|
||||||
|
}else {
|
||||||
|
cell.accessoryType = UITableViewCellAccessoryNone;
|
||||||
|
}
|
||||||
|
cell.textLabel.text = [[_cellArray objectAtIndex:indexPath.section] objectAtIndex:indexPath.row];
|
||||||
|
cell.selectionStyle = UITableViewCellSelectionStyleNone;
|
||||||
|
|
||||||
return cell;
|
return cell;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
-(NSString*) tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
|
||||||
// Override to support conditional editing of the table view.
|
|
||||||
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
|
|
||||||
{
|
{
|
||||||
// Return NO if you do not want the specified item to be editable.
|
return [_headerArray objectAtIndex:section];
|
||||||
return YES;
|
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
// Override to support editing the table view.
|
|
||||||
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
|
|
||||||
{
|
|
||||||
if (editingStyle == UITableViewCellEditingStyleDelete) {
|
|
||||||
// Delete the row from the data source
|
|
||||||
[tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
|
|
||||||
}
|
|
||||||
else if (editingStyle == UITableViewCellEditingStyleInsert) {
|
|
||||||
// Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
// Override to support rearranging the table view.
|
|
||||||
- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath
|
|
||||||
{
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
// Override to support conditional rearranging of the table view.
|
|
||||||
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
|
|
||||||
{
|
|
||||||
// Return NO if you do not want the item to be re-orderable.
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
#pragma mark - Table view delegate
|
#pragma mark - Table view delegate
|
||||||
|
|
||||||
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
|
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
|
||||||
{
|
{
|
||||||
// Navigation logic may go here. Create and push another view controller.
|
_checkedCell[indexPath.section] = indexPath.row;
|
||||||
/*
|
|
||||||
<#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil];
|
[self.tableView reloadData];
|
||||||
// ...
|
|
||||||
// Pass the selected object to the new view controller.
|
|
||||||
[self.navigationController pushViewController:detailViewController animated:YES];
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -1,96 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="2.0" toolsVersion="3084" systemVersion="11G63" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" initialViewController="FDq-Gc-7oy">
|
|
||||||
<dependencies>
|
|
||||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="2083"/>
|
|
||||||
</dependencies>
|
|
||||||
<scenes>
|
|
||||||
<!--Table View Controller-->
|
|
||||||
<scene sceneID="dst-4x-xj4">
|
|
||||||
<objects>
|
|
||||||
<tableViewController id="FDq-Gc-7oy" sceneMemberID="viewController">
|
|
||||||
<tableView key="view" opaque="NO" clipsSubviews="YES" clearsContextBeforeDrawing="NO" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="grouped" separatorStyle="singleLineEtched" rowHeight="44" sectionHeaderHeight="10" sectionFooterHeight="10" id="xPs-Tk-Pes">
|
|
||||||
<rect key="frame" x="0.0" y="64" width="320" height="504"/>
|
|
||||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
|
||||||
<color key="backgroundColor" cocoaTouchSystemColor="groupTableViewBackgroundColor"/>
|
|
||||||
<sections>
|
|
||||||
<tableViewSection headerTitle="Filter by" id="tvE-Df-yno">
|
|
||||||
<cells>
|
|
||||||
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="Zdv-GK-W98">
|
|
||||||
<rect key="frame" x="0.0" y="46" width="320" height="45"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
|
||||||
<rect key="frame" x="10" y="1" width="300" height="43"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
|
||||||
</view>
|
|
||||||
</tableViewCell>
|
|
||||||
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="Zhk-nD-FvL">
|
|
||||||
<rect key="frame" x="0.0" y="91" width="320" height="44"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
|
||||||
<rect key="frame" x="10" y="0.0" width="300" height="43"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
|
||||||
</view>
|
|
||||||
</tableViewCell>
|
|
||||||
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="5Em-A7-gNM">
|
|
||||||
<rect key="frame" x="0.0" y="135" width="320" height="45"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
|
||||||
<rect key="frame" x="10" y="0.0" width="300" height="43"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
|
||||||
</view>
|
|
||||||
</tableViewCell>
|
|
||||||
</cells>
|
|
||||||
</tableViewSection>
|
|
||||||
<tableViewSection headerTitle="Filter by" id="oa3-r2-aE4">
|
|
||||||
<cells>
|
|
||||||
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="Pjv-oQ-aD7">
|
|
||||||
<rect key="frame" x="0.0" y="226" width="320" height="45"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
|
||||||
<rect key="frame" x="10" y="1" width="300" height="43"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
|
||||||
</view>
|
|
||||||
</tableViewCell>
|
|
||||||
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="SZB-QB-U1E">
|
|
||||||
<rect key="frame" x="0.0" y="271" width="320" height="44"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
|
||||||
<rect key="frame" x="10" y="0.0" width="300" height="43"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
|
||||||
</view>
|
|
||||||
</tableViewCell>
|
|
||||||
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" id="0qh-y8-zpT">
|
|
||||||
<rect key="frame" x="0.0" y="315" width="320" height="45"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
|
|
||||||
<rect key="frame" x="10" y="0.0" width="300" height="43"/>
|
|
||||||
<autoresizingMask key="autoresizingMask"/>
|
|
||||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
|
||||||
</view>
|
|
||||||
</tableViewCell>
|
|
||||||
</cells>
|
|
||||||
</tableViewSection>
|
|
||||||
</sections>
|
|
||||||
<connections>
|
|
||||||
<outlet property="dataSource" destination="FDq-Gc-7oy" id="87R-ad-RoU"/>
|
|
||||||
<outlet property="delegate" destination="FDq-Gc-7oy" id="iER-Vf-Npm"/>
|
|
||||||
</connections>
|
|
||||||
</tableView>
|
|
||||||
<simulatedNavigationBarMetrics key="simulatedTopBarMetrics" prompted="NO"/>
|
|
||||||
</tableViewController>
|
|
||||||
<placeholder placeholderIdentifier="IBFirstResponder" id="9rI-8Y-7n8" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
|
||||||
</objects>
|
|
||||||
<point key="canvasLocation" x="247" y="7"/>
|
|
||||||
</scene>
|
|
||||||
</scenes>
|
|
||||||
<simulatedMetricsContainer key="defaultSimulatedMetrics">
|
|
||||||
<simulatedStatusBarMetrics key="statusBar"/>
|
|
||||||
<simulatedOrientationMetrics key="orientation"/>
|
|
||||||
<simulatedScreenMetrics key="destination" type="retina4"/>
|
|
||||||
</simulatedMetricsContainer>
|
|
||||||
</document>
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/16/13.
|
// Created by lizhijie on 7/16/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
#import "OZLModelProject.h"
|
#import "OZLModelProject.h"
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/16/13.
|
// Created by lizhijie on 7/16/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLProjectCreateViewController.h"
|
#import "OZLProjectCreateViewController.h"
|
||||||
#import "MBProgressHUD.h"
|
#import "MBProgressHUD.h"
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
#import "OZLModelProject.h"
|
#import "OZLModelProject.h"
|
||||||
|
|
|
@ -3,8 +3,28 @@
|
||||||
// RedmineMobile
|
// RedmineMobile
|
||||||
//
|
//
|
||||||
// Created by lizhijie on 7/15/13.
|
// Created by lizhijie on 7/15/13.
|
||||||
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
|
||||||
|
// This code is distributed under the terms and conditions of the MIT license.
|
||||||
|
|
||||||
|
// Copyright (c) 2013 Zhijie Lee(onezeros.lee@gmail.com)
|
||||||
//
|
//
|
||||||
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
// of this software and associated documentation files (the "Software"), to deal
|
||||||
|
// in the Software without restriction, including without limitation the rights
|
||||||
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
// copies of the Software, and to permit persons to whom the Software is
|
||||||
|
// furnished to do so, subject to the following conditions:
|
||||||
|
//
|
||||||
|
// The above copyright notice and this permission notice shall be included in
|
||||||
|
// all copies or substantial portions of the Software.
|
||||||
|
//
|
||||||
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
// THE SOFTWARE.
|
||||||
|
|
||||||
#import "OZLProjectDetailViewController.h"
|
#import "OZLProjectDetailViewController.h"
|
||||||
|
|
||||||
|
|
|
@ -33,4 +33,12 @@
|
||||||
@property (weak, nonatomic) IBOutlet UITableView *issuesTableview;
|
@property (weak, nonatomic) IBOutlet UITableView *issuesTableview;
|
||||||
@property (nonatomic,strong) OZLModelProject* projectData;
|
@property (nonatomic,strong) OZLModelProject* projectData;
|
||||||
- (IBAction)onNewIssue:(id)sender;
|
- (IBAction)onNewIssue:(id)sender;
|
||||||
|
- (IBAction)onSortSetting:(id)sender;
|
||||||
|
|
||||||
|
|
||||||
|
@property (weak, nonatomic) NSArray* trackerList;
|
||||||
|
@property (weak, nonatomic) NSArray* priorityList;
|
||||||
|
@property (weak, nonatomic) NSArray* statusList;
|
||||||
|
@property (weak, nonatomic) NSArray* userList;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -34,6 +34,7 @@
|
||||||
#import "OZLProjectDetailViewController.h"
|
#import "OZLProjectDetailViewController.h"
|
||||||
#import "OZLIssueDetailViewController.h"
|
#import "OZLIssueDetailViewController.h"
|
||||||
#import "OZLIssueCreateViewController.h"
|
#import "OZLIssueCreateViewController.h"
|
||||||
|
#import "OZLIssueFilterViewController.h"
|
||||||
#import "OZLSingleton.h"
|
#import "OZLSingleton.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -42,6 +43,8 @@
|
||||||
|
|
||||||
float _sideviewOffset;
|
float _sideviewOffset;
|
||||||
MBProgressHUD * _HUD;
|
MBProgressHUD * _HUD;
|
||||||
|
|
||||||
|
NSMutableDictionary* _issueListOption;
|
||||||
}
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
@ -70,12 +73,15 @@
|
||||||
_HUD = [[MBProgressHUD alloc] initWithView:self.view];
|
_HUD = [[MBProgressHUD alloc] initWithView:self.view];
|
||||||
[self.view addSubview:_HUD];
|
[self.view addSubview:_HUD];
|
||||||
_HUD.labelText = @"Loading...";
|
_HUD.labelText = @"Loading...";
|
||||||
|
|
||||||
[self reloadData];
|
|
||||||
|
|
||||||
[[OZLSingleton sharedInstance] setLastProjectID:_projectData.index];
|
[[OZLSingleton sharedInstance] setLastProjectID:_projectData.index];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-(void) viewWillAppear:(BOOL)animated
|
||||||
|
{
|
||||||
|
[self reloadData];
|
||||||
|
}
|
||||||
|
|
||||||
-(void) reloadData
|
-(void) reloadData
|
||||||
{
|
{
|
||||||
if (_projectData == nil) {
|
if (_projectData == nil) {
|
||||||
|
@ -83,6 +89,38 @@
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
[_HUD show:YES];
|
[_HUD show:YES];
|
||||||
|
|
||||||
|
if (_issueListOption == nil) {
|
||||||
|
[self loadIssueRelatedData];
|
||||||
|
}else {
|
||||||
|
[self loadProjectDetail];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)loadProjectDetail
|
||||||
|
{
|
||||||
|
// TODO: issue filter not working yet
|
||||||
|
|
||||||
|
// prepare parameters
|
||||||
|
OZLSingleton* singleton = [OZLSingleton sharedInstance];
|
||||||
|
// meaning of these values is defined in OZLIssueFilterViewController
|
||||||
|
int filterType = [singleton issueListFilterType];
|
||||||
|
int sortType = [singleton issueListSortType];
|
||||||
|
int scendingType = [singleton issueListSortAscending];
|
||||||
|
if (filterType == 0) {// assigned to me
|
||||||
|
// TODO:
|
||||||
|
}else if(filterType == 1) {// open
|
||||||
|
|
||||||
|
[_issueListOption setObject:@"open" forKey:@"status_id"];
|
||||||
|
|
||||||
|
}else if(filterType == 2) {// reported by me
|
||||||
|
// TODO:
|
||||||
|
}
|
||||||
|
|
||||||
|
NSArray* sortCol = @[@"id",@"tracker",@"status",@"priority",@"category",@"assigned_to_id",@"fixed_version",@"start_date",@"due_date",@"estimated_hours",@"done_ratio",@"updated_on"];
|
||||||
|
NSString* sortstring = [NSString stringWithFormat:@"%@%@",[sortCol objectAtIndex:sortType],(scendingType == 0 ? @"" : @":desc")];
|
||||||
|
[_issueListOption setObject:sortstring forKey:@"sort"];
|
||||||
|
|
||||||
[OZLNetwork getDetailForProject:_projectData.index withParams:nil andBlock:^(OZLModelProject *result, NSError *error) {
|
[OZLNetwork getDetailForProject:_projectData.index withParams:nil andBlock:^(OZLModelProject *result, NSError *error) {
|
||||||
if (error) {
|
if (error) {
|
||||||
NSLog(@"error getDetailForProject: %@",error.description);
|
NSLog(@"error getDetailForProject: %@",error.description);
|
||||||
|
@ -90,9 +128,9 @@
|
||||||
}else {
|
}else {
|
||||||
_projectData = result;
|
_projectData = result;
|
||||||
[self.navigationItem setTitle:_projectData.name];
|
[self.navigationItem setTitle:_projectData.name];
|
||||||
|
|
||||||
// load issues
|
// load issues
|
||||||
[OZLNetwork getIssueListForProject:_projectData.index withParams:nil andBlock:^(NSArray *result, NSError *error) {
|
[OZLNetwork getIssueListForProject:_projectData.index withParams:_issueListOption andBlock:^(NSArray *result, NSError *error) {
|
||||||
if (error) {
|
if (error) {
|
||||||
NSLog(@"error getIssueListForProject: %@",error.description);
|
NSLog(@"error getIssueListForProject: %@",error.description);
|
||||||
}else {
|
}else {
|
||||||
|
@ -106,10 +144,67 @@
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-(void)loadIssueRelatedData
|
||||||
|
{
|
||||||
|
_issueListOption = [[NSMutableDictionary alloc] init];
|
||||||
|
|
||||||
|
static int doneCount = 0;
|
||||||
|
[OZLNetwork getTrackerListWithParams:nil andBlock:^(NSArray *result, NSError *error) {
|
||||||
|
if (!error) {
|
||||||
|
_trackerList = result;
|
||||||
|
}else {
|
||||||
|
NSLog(@"get tracker list error : %@",error.description);
|
||||||
|
}
|
||||||
|
doneCount ++;
|
||||||
|
if (doneCount == 4) {
|
||||||
|
[self loadProjectDetail];
|
||||||
|
doneCount = 0;
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
|
||||||
|
[OZLNetwork getIssueStatusListWithParams:nil andBlock:^(NSArray *result, NSError *error) {
|
||||||
|
if (!error) {
|
||||||
|
_statusList = result;
|
||||||
|
}else {
|
||||||
|
NSLog(@"get issue status list error : %@",error.description);
|
||||||
|
}
|
||||||
|
doneCount ++;
|
||||||
|
if (doneCount == 4) {
|
||||||
|
[self loadProjectDetail];
|
||||||
|
doneCount = 0;
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
[OZLNetwork getPriorityListWithParams:nil andBlock:^(NSArray *result, NSError *error) {
|
||||||
|
if (!error) {
|
||||||
|
_priorityList = result;
|
||||||
|
}else {
|
||||||
|
NSLog(@"get priority list error : %@",error.description);
|
||||||
|
}
|
||||||
|
doneCount ++;
|
||||||
|
if (doneCount == 4) {
|
||||||
|
[self loadProjectDetail];
|
||||||
|
doneCount = 0;
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
[OZLNetwork getUserListWithParams:nil andBlock:^(NSArray *result, NSError *error) {
|
||||||
|
if (!error) {
|
||||||
|
_userList = result;
|
||||||
|
}else {
|
||||||
|
NSLog(@"get user list error : %@",error.description);
|
||||||
|
}
|
||||||
|
doneCount ++;
|
||||||
|
if (doneCount == 4) {
|
||||||
|
[self loadProjectDetail];
|
||||||
|
doneCount = 0;
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
- (void) viewDidAppear:(BOOL)animated {
|
- (void) viewDidAppear:(BOOL)animated {
|
||||||
[super viewDidAppear:animated];
|
[super viewDidAppear:animated];
|
||||||
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(preloadLeft) object:nil];
|
// [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(preloadLeft) object:nil];
|
||||||
[self performSelector:@selector(preloadLeft) withObject:nil afterDelay:0.3];
|
// [self performSelector:@selector(preloadLeft) withObject:nil afterDelay:0.3];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -253,7 +348,16 @@
|
||||||
UIStoryboard *tableViewStoryboard = [UIStoryboard storyboardWithName:@"OZLIssueCreateViewController" bundle:nil];
|
UIStoryboard *tableViewStoryboard = [UIStoryboard storyboardWithName:@"OZLIssueCreateViewController" bundle:nil];
|
||||||
OZLIssueCreateViewController* creator = [tableViewStoryboard instantiateViewControllerWithIdentifier:@"OZLIssueCreateViewController"];
|
OZLIssueCreateViewController* creator = [tableViewStoryboard instantiateViewControllerWithIdentifier:@"OZLIssueCreateViewController"];
|
||||||
[creator setParentProject:_projectData];
|
[creator setParentProject:_projectData];
|
||||||
|
creator.userList = _userList;
|
||||||
|
creator.trackerList = _trackerList;
|
||||||
|
creator.priorityList = _priorityList;
|
||||||
|
creator.statusList = _statusList;
|
||||||
//[self.navigationController presentModalViewController:creator animated:YES];
|
//[self.navigationController presentModalViewController:creator animated:YES];
|
||||||
[self.navigationController pushViewController:creator animated:YES];
|
[self.navigationController pushViewController:creator animated:YES];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (IBAction)onSortSetting:(id)sender {
|
||||||
|
OZLIssueFilterViewController* filter = [[OZLIssueFilterViewController alloc] initWithStyle:UITableViewStyleGrouped];
|
||||||
|
[self.navigationController pushViewController:filter animated:YES];
|
||||||
|
}
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -74,6 +74,12 @@
|
||||||
<reference key="IBUIToolbar" ref="366696023"/>
|
<reference key="IBUIToolbar" ref="366696023"/>
|
||||||
<int key="IBUISystemItemIdentifier">4</int>
|
<int key="IBUISystemItemIdentifier">4</int>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="IBUIBarButtonItem" id="917877130">
|
||||||
|
<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
|
||||||
|
<int key="IBUIStyle">1</int>
|
||||||
|
<reference key="IBUIToolbar" ref="366696023"/>
|
||||||
|
<int key="IBUISystemItemIdentifier">10</int>
|
||||||
|
</object>
|
||||||
</array>
|
</array>
|
||||||
</object>
|
</object>
|
||||||
</array>
|
</array>
|
||||||
|
@ -153,6 +159,14 @@
|
||||||
</object>
|
</object>
|
||||||
<int key="connectionID">11</int>
|
<int key="connectionID">11</int>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="IBConnectionRecord">
|
||||||
|
<object class="IBCocoaTouchEventConnection" key="connection">
|
||||||
|
<string key="label">onSortSetting:</string>
|
||||||
|
<reference key="source" ref="917877130"/>
|
||||||
|
<reference key="destination" ref="372490531"/>
|
||||||
|
</object>
|
||||||
|
<int key="connectionID">14</int>
|
||||||
|
</object>
|
||||||
</array>
|
</array>
|
||||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||||
<array key="orderedObjects">
|
<array key="orderedObjects">
|
||||||
|
@ -187,6 +201,7 @@
|
||||||
<reference key="object" ref="366696023"/>
|
<reference key="object" ref="366696023"/>
|
||||||
<array class="NSMutableArray" key="children">
|
<array class="NSMutableArray" key="children">
|
||||||
<reference ref="512025889"/>
|
<reference ref="512025889"/>
|
||||||
|
<reference ref="917877130"/>
|
||||||
</array>
|
</array>
|
||||||
<reference key="parent" ref="191373211"/>
|
<reference key="parent" ref="191373211"/>
|
||||||
</object>
|
</object>
|
||||||
|
@ -200,6 +215,11 @@
|
||||||
<reference key="object" ref="593675336"/>
|
<reference key="object" ref="593675336"/>
|
||||||
<reference key="parent" ref="191373211"/>
|
<reference key="parent" ref="191373211"/>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">13</int>
|
||||||
|
<reference key="object" ref="917877130"/>
|
||||||
|
<reference key="parent" ref="366696023"/>
|
||||||
|
</object>
|
||||||
</array>
|
</array>
|
||||||
</object>
|
</object>
|
||||||
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
||||||
|
@ -208,6 +228,7 @@
|
||||||
<string key="-2.CustomClassName">UIResponder</string>
|
<string key="-2.CustomClassName">UIResponder</string>
|
||||||
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||||
<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||||
|
<string key="13.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||||
<string key="6.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
<string key="6.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||||
<string key="7.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
<string key="7.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||||
<string key="8.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
<string key="8.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
|
||||||
|
@ -216,7 +237,7 @@
|
||||||
<nil key="activeLocalization"/>
|
<nil key="activeLocalization"/>
|
||||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||||
<nil key="sourceID"/>
|
<nil key="sourceID"/>
|
||||||
<int key="maxID">12</int>
|
<int key="maxID">14</int>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBClassDescriber" key="IBDocument.Classes"/>
|
<object class="IBClassDescriber" key="IBDocument.Classes"/>
|
||||||
<int key="IBDocument.localizationMode">0</int>
|
<int key="IBDocument.localizationMode">0</int>
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
|
<string>en</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>${EXECUTABLE_NAME}</string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>com.zhijie.${PRODUCT_NAME:rfc1034identifier}</string>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>BNDL</string>
|
||||||
|
<key>CFBundleShortVersionString</key>
|
||||||
|
<string>1.0</string>
|
||||||
|
<key>CFBundleSignature</key>
|
||||||
|
<string>????</string>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>1</string>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
|
@ -0,0 +1,8 @@
|
||||||
|
//
|
||||||
|
// Prefix header for all source files of the 'RedmineMobileUnitTest' target in the 'RedmineMobileUnitTest' project
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifdef __OBJC__
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#endif
|
|
@ -0,0 +1,13 @@
|
||||||
|
//
|
||||||
|
// RedmineMobileUnitTest.h
|
||||||
|
// RedmineMobileUnitTest
|
||||||
|
//
|
||||||
|
// Created by lizhijie on 7/19/13.
|
||||||
|
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <SenTestingKit/SenTestingKit.h>
|
||||||
|
|
||||||
|
@interface RedmineMobileUnitTest : SenTestCase
|
||||||
|
|
||||||
|
@end
|
|
@ -0,0 +1,32 @@
|
||||||
|
//
|
||||||
|
// RedmineMobileUnitTest.m
|
||||||
|
// RedmineMobileUnitTest
|
||||||
|
//
|
||||||
|
// Created by lizhijie on 7/19/13.
|
||||||
|
// Copyright (c) 2013 Lee Zhijie. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "RedmineMobileUnitTest.h"
|
||||||
|
|
||||||
|
@implementation RedmineMobileUnitTest
|
||||||
|
|
||||||
|
- (void)setUp
|
||||||
|
{
|
||||||
|
[super setUp];
|
||||||
|
|
||||||
|
// Set-up code here.
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)tearDown
|
||||||
|
{
|
||||||
|
// Tear-down code here.
|
||||||
|
|
||||||
|
[super tearDown];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)testExample
|
||||||
|
{
|
||||||
|
STFail(@"Unit tests are not implemented yet in RedmineMobileUnitTest");
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
|
@ -0,0 +1,2 @@
|
||||||
|
/* Localized versions of Info.plist keys */
|
||||||
|
|
Loading…
Reference in New Issue