PageRenderTime 48ms CodeModel.GetById 24ms RepoModel.GetById 1ms app.codeStats 0ms

/package/app/app/alpha/apps/kaltura/modules/system/actions/flavorParamsAction.class.php

https://github.com/richhl/kalturaCE
PHP | 140 lines | 119 code | 11 blank | 10 comment | 19 complexity | ec715692441180fcff30d43432e17a81 MD5 | raw file
  1. <?php
  2. /**
  3. * @package Core
  4. * @subpackage system
  5. * @deprecated
  6. */
  7. require_once ( "kalturaSystemAction.class.php" );
  8. /**
  9. * @package Core
  10. * @subpackage system
  11. * @deprecated
  12. */
  13. class flavorParamsAction extends kalturaSystemAction
  14. {
  15. public function execute()
  16. {
  17. $this->forceSystemAuthentication();
  18. $this->pid = $this->getRequestParameter("pid", 0);
  19. if (!is_null($this->getRequestParameter("advanced")))
  20. {
  21. $this->getResponse()->setCookie('flavor-params-advanced', $this->getRequestParameter("advanced"));
  22. $this->advanced = (int)$this->getRequestParameter("advanced");
  23. }
  24. else
  25. {
  26. $this->advanced = (int)$this->getRequest()->getCookie('flavor-params-advanced');
  27. }
  28. myDbHelper::$use_alternative_con = null;
  29. $this->editFlavorParam = null;
  30. if ($this->getRequestParameter("id"))
  31. {
  32. $this->editFlavorParam = flavorParamsPeer::retrieveByPK($this->getRequestParameter("id"));
  33. if ($this->getRequestParameter("clone"))
  34. {
  35. $newFalvorParams = $this->editFlavorParam->copy();
  36. $newFalvorParams->setIsDefault(false);
  37. $newFalvorParams->setPartnerId(-1);
  38. $newFalvorParams->save();
  39. $this->redirect("system/flavorParams?pid=".$this->pid."&id=".$newFalvorParams->getId());
  40. }
  41. if ($this->getRequestParameter("delete"))
  42. {
  43. if ($this->advanced || $this->editFlavorParam->getPartnerId() != 0)
  44. {
  45. $this->editFlavorParam->setDeletedAt(time());
  46. $this->editFlavorParam->save();
  47. }
  48. $this->redirect("system/flavorParams?pid=".$this->pid);
  49. }
  50. if ($this->getRequest()->getMethod() == sfRequest::POST)
  51. {
  52. if ($this->advanced || $this->editFlavorParam->getPartnerId() != 0)
  53. {
  54. $partnerId = $this->getRequestParameter("partner-id");
  55. if ($this->advanced)
  56. {
  57. $this->editFlavorParam->setPartnerId($partnerId);
  58. }
  59. else
  60. {
  61. if ($partnerId != 0)
  62. $this->editFlavorParam->setPartnerId($partnerId);
  63. }
  64. if ($this->advanced >= 1)
  65. {
  66. $this->editFlavorParam->setName($this->getRequestParameter("name"));
  67. $this->editFlavorParam->setDescription($this->getRequestParameter("description"));
  68. $this->editFlavorParam->setIsDefault($this->getRequestParameter("is-default", false));
  69. $this->editFlavorParam->setReadyBehavior($this->getRequestParameter("ready-behavior"));
  70. $this->editFlavorParam->setTags($this->getRequestParameter("tags"));
  71. $this->editFlavorParam->setFormat($this->getRequestParameter("format"));
  72. $this->editFlavorParam->setTwoPass($this->getRequestParameter("two-pass", false));
  73. $this->editFlavorParam->setWidth($this->getRequestParameter("width"));
  74. $this->editFlavorParam->setHeight($this->getRequestParameter("height"));
  75. $this->editFlavorParam->setVideoCodec($this->getRequestParameter("video-codec"));
  76. $this->editFlavorParam->setVideoBitrate($this->getRequestParameter("video-bitrate"));
  77. $this->editFlavorParam->setFrameRate($this->getRequestParameter("frame-rate"));
  78. $this->editFlavorParam->setGopSize($this->getRequestParameter("gop-size"));
  79. $this->editFlavorParam->setAudioCodec($this->getRequestParameter("audio-codec"));
  80. $this->editFlavorParam->setAudioBitrate($this->getRequestParameter("audio-bitrate"));
  81. $this->editFlavorParam->setAudioChannels($this->getRequestParameter("audio-channels"));
  82. $this->editFlavorParam->setAudioSampleRate($this->getRequestParameter("audio-sample-rate"));
  83. $this->editFlavorParam->setAudioResolution($this->getRequestParameter("audio-resolution"));
  84. $this->editFlavorParam->setConversionEngines($this->getRequestParameter("conversion-engines"));
  85. $this->editFlavorParam->setConversionEnginesExtraParams($this->getRequestParameter("conversion-engines-extra-params"));
  86. $this->editFlavorParam->setOperators($this->getRequestParameter("operators"));
  87. $this->editFlavorParam->setEngineVersion($this->getRequestParameter("engine-version"));
  88. }
  89. $this->editFlavorParam->save();
  90. }
  91. $this->redirect("system/flavorParams?pid=".$this->editFlavorParam->getPartnerId());
  92. }
  93. }
  94. $c = new Criteria();
  95. $c->add(flavorParamsPeer::PARTNER_ID, array(0, $this->pid), Criteria::IN);
  96. $this->flavorParams = flavorParamsPeer::doSelect($c);
  97. $this->formats = self::getEnumValues("flavorParams", "CONTAINER_FORMAT");
  98. $this->videoCodecs = self::getEnumValues("flavorParams", "VIDEO_CODEC");
  99. $this->audioCodecs = self::getEnumValues("flavorParams", "AUDIO_CODEC");
  100. $this->readyBehaviors = self::getEnumValues("flavorParamsConversionProfile", "READY_BEHAVIOR");
  101. $this->creationModes = self::getEnumValues("flavorParams", "CREATION_MODE");
  102. }
  103. private function getEnumValues($peer, $prefix)
  104. {
  105. $reflectionClass = new ReflectionClass($peer);
  106. $allConsts = $reflectionClass->getConstants();
  107. $consts = array();
  108. foreach($allConsts as $key => $value)
  109. {
  110. if (strpos($key, $prefix) === 0)
  111. {
  112. $consts[str_replace($prefix.'_', '', $key)] = $value;
  113. }
  114. }
  115. return $consts;
  116. }
  117. static function getEnumValue($peer, $prefix, $value)
  118. {
  119. $reflectionClass = new ReflectionClass($peer);
  120. $allConsts = $reflectionClass->getConstants();
  121. foreach($allConsts as $key => $enumVal)
  122. {
  123. if ($enumVal == $value)
  124. return str_replace($prefix.'_', '', $key);
  125. }
  126. return '';
  127. }
  128. }
  129. ?>